fix: implement NTFS hardlink fallback and updated warnings#39
Closed
unpetrifiedstone2005 wants to merge 1 commit intomainfrom
Closed
fix: implement NTFS hardlink fallback and updated warnings#39unpetrifiedstone2005 wants to merge 1 commit intomainfrom
unpetrifiedstone2005 wants to merge 1 commit intomainfrom
Conversation
This commit adds a fallback to hardlinks when reflinks fail on NTFS/WSL and updates user messaging to guide users toward the correct flags. Closes #34
Rakshat28
reviewed
Mar 25, 2026
Owner
Rakshat28
left a comment
There was a problem hiding this comment.
we shouldn't hardcode 'NTFS' or 'WSL' into our core error messages. While WSL/NTFS is the most common way users hit this bug, the actual underlying system error is an EXDEV (Cross-device link) failure. This OS-level error occurs whenever a hardlink is attempted across any two different partitions, drives, or filesystems.
To fully resolve Issue #34, we need to address the root architecture:
- Generic Error Handling: The error messages should indicate a 'Cross-device link' or 'Filesystem boundary' failure, rather than assuming
NTFS. - Testing: We need a test case that triggers a cross-boundary failure to prove the fallback works.
- The Vault Location: Currently,
vault::vault_root()defaults to~/.imprint/store. If a user targets an external drive,std::fs::hard_linkwill always fail. We likely need to discuss modifying the engine to initialize localized.imprintvaults at the root of the target drive.
Owner
|
Closing this PR because we need to address the root |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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 commit adds a fallback to hardlinks when reflinks fail on NTFS/WSL and updates user messaging to guide users toward the correct flags.
Closes #34