PROOF-OF-CONCEPT: allow deleting files that are in use #4719
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This should not be merged as-is, but is intended to act as a discussion-starter.
Applying the insights of https://github.com/LloydLabs/delete-self-poc, this commit implements support for deleting files that are in-use, even if that is theoretically impossible on Windows.
The ramifications are somewhat non-trivial, though:
Many Windows applications are totally unhappy when the contract "files that are in use cannot be deleted" is broken.
Even
git.exe
itself can be used to demonstrate the dire downsides of this here patch: when switching branches ingit-sdk-64
where, say,mingw64/bin/libintl-8.dll
needs to be updated (which is a dependency ofmingw64/bin/git.exe
), acheckout.workers
value greater than 1 will letgit.exe
attempt to spawngit checkout--worker
which will fail to load because of the missing dependency (which is missing becausegit.exe
just deleted it).This is a potential alternative to #1666, without the loss of performance of that Pull Request.