Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

(exa PR) 1018: Try canonicalisation when converting File to Dir #48

Closed
wants to merge 1 commit into from

Conversation

cafkafk
Copy link
Member

@cafkafk cafkafk commented Jul 29, 2023

Without this canonicalisation, if the directory is a symbolic link to
another directory, later at `reorient_target_path` [1], File and path
argument look like:

- self: File {
    name: "."
    ext: None
    path: "/tmp/test2"
    metadata: {...}
    parent_dir: Some({
      contents: vec![]
      path: "/tmp/test2"
    })
    is_all_all: true
  }
- path: "test1"

...where /tmp/test2 is a symlink to /tmp/test1 and command being used is
`exa -laa /tmp/test2`.

So the result of `dir.join(&*path)` becomes `/tmp/test2/test1`, which
doesn't exist.

The canonicalisation also makes the behaviours of `exa -laa /tmp/test2`
and `exa -laa /tmp/test2/` consistent, where `.` is not treated as a
symlink in either case. This is a bit different from coreutils `ls`
though.

Closes #952.

[1] https://github.com/ogham/exa/blob/42659f93456d9ff7cc1096cbd84d778ede26d76e/src/fs/file.rs#L215-L217
@cafkafk cafkafk changed the title (exa PR) 1018 (exa PR) 1018: Try canonicalisation when converting File to Dir Jul 29, 2023
@cafkafk cafkafk added the not ready for PRs that aren't finished label Jul 29, 2023
@sbatial sbatial mentioned this pull request Jul 30, 2023
63 tasks
@cafkafk cafkafk added this to the exa pulls done milestone Jul 31, 2023
@github-actions
Copy link

This pull request is stale because it has been open for 30 days with no activity.

@github-actions
Copy link

This pull request was closed because it has been inactive for 14 days since being marked as stale.

@github-actions github-actions bot closed this Sep 15, 2023
@cafkafk cafkafk deleted the pr-1018 branch October 12, 2023 07:53
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
not ready for PRs that aren't finished stale › pr
Projects
Status: ✅ Done
Development

Successfully merging this pull request may close these issues.

2 participants