Skip to content

builder: Note that append_dir_all doesn't hardlink#368

Open
cgwalters wants to merge 1 commit into
composefs:mainfrom
cgwalters:note-no-hardlinks
Open

builder: Note that append_dir_all doesn't hardlink#368
cgwalters wants to merge 1 commit into
composefs:mainfrom
cgwalters:note-no-hardlinks

Conversation

@cgwalters
Copy link
Copy Markdown
Collaborator

I got caught out by this not generating hardlinks. At this point it's probably part of our "ABI", so just add a note in the docs.

I got caught out by this not generating hardlinks. At this
point it's probably part of our "ABI", so just add a note
in the docs.

Signed-off-by: Colin Walters <walters@verbum.org>
Comment thread src/builder.rs
///
/// This function will never create hardlinks; to do that, you will
/// need to implement a custom recursive walk.
///
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Not the maintainer (thanks for the review of my PRs!). I'm also a newb when it comes to a lot of the details of tar implementations and details. Leaving a comment here so you can dismiss/hide it and it won't take up space on the main thread.

  1. What is the behavior when it encounters hardlinks? Will it copy them like Add doc hint that default is different than tar #366? Would it make sense to spell out what "never create[ing] hardlinks" means in practice? I would appreciate that info when viewing the docs.
  2. Do you know if that behavior is intentional or accidental? I.e. Could this perhaps be a bug to be fixed rather than a behavior to be documented? Genuine question.
  3. If it's intentional, could adding a method to the builder like preserve_hardlinks(bool) be a way forward?

My goal here is to better understand the library and its existing behavior and to explore and understand the possibility of ways we could improve this library or possibly the PR.

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.

2 participants