Skip to content

Handle a symlink edge case - #88

Merged
woodruffw merged 2 commits into
mainfrom
ww/symlink-bug
Jun 24, 2026
Merged

Handle a symlink edge case#88
woodruffw merged 2 commits into
mainfrom
ww/symlink-bug

Conversation

@woodruffw

Copy link
Copy Markdown
Member

We defer symlink creation always.

On case-insensitive filesystems (APFS...) that means that we treat Foo and foo as distinct when doing our initial conflict check. Then, when we actually finalize the symlink graph, foo conflicts with Foo when materialized on the filesystem.

We now handle that correctly: when overwrites are allowed we allow the second symlink to clobber the first (effectively a no-op). When overwrites are disabled we fail with our original PathCollision error.

Signed-off-by: William Woodruff <william@yossarian.net>
@woodruffw
woodruffw marked this pull request as ready for review June 24, 2026 22:21
Signed-off-by: William Woodruff <william@yossarian.net>
@woodruffw
woodruffw merged commit 8987288 into main Jun 24, 2026
5 checks passed
@woodruffw
woodruffw deleted the ww/symlink-bug branch June 24, 2026 22:23
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant