mitsuhiko / mitsuhiko/self-replace
Support Hardlinked Shim/Proxy Deletion
Nobody has claimed this yet.
- Dominant language
- Rust
- Stars
- 823
- Forks
- 33
- PR merge metrics
- No merged PRs in 30d
Description
If one has an application that has hardlinked shims or proxies they also need to be delayed until restart. This is a problem that rustup also ran into. This would require more flexible APIs for both deletion and replacement and quite likely on windows it might require given the user some options about how to delete them.
Either the processes need to be terminated first, or the deletion has to be delayed somehow. Unfortunately MOVEFILE_DELAY_UNTIL_REBOOT requires elevated privileges.
Related rustup issues:
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reading the issue description and the linked rustup issues 988 and 2441, then inspect the library's deletion and replacement APIs. Determine how hardlinked shims and proxies behave on Windows, including the constraints around MOVEFILE_DELAY_UNTIL_REBOOT. Done means the supported behavior and required user options are clearly defined and implemented.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- rust
- Domain
- operating-systems
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 28/100