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

aqua v2.42.0 replaces symbolic links with linked files when unarchiving assets #3432

Closed
suzuki-shunsuke opened this issue Jan 6, 2025 · 1 comment · Fixed by #3433
Closed
Labels
bug Something isn't working
Milestone

Comments

@suzuki-shunsuke
Copy link
Member

aqua info

$ aqua info
{
  "version": "2.42.0",
  "commit_hash": "eec4e1a325fd7f0d7a618079227e374a34ccd0ed",
  "os": "darwin",
  "arch": "arm64",
  "pwd": "/Users/(USER)/Documents/aqua/aqua",
  "root_dir": "/Users/(USER)/.local/share/aquaproj-aqua",
  "env": {
    "AQUA_GLOBAL_CONFIG": ":/Users/(USER)/repos/src/github.com/aquaproj/aqua-registry/aqua-all.yaml",
    "AQUA_PROGRESS_BAR": "true"
  },
  "config_files": [
    {
      "path": "/Users/(USER)/Documents/aqua/aqua/aqua/aqua.yaml"
    }
  ]
}

Overview

At v2.42.0, we replaced mholt/archiver/v3 with mholt/archives.
Then we need to change the code to unarchive files.

aqua v2.42.0 replaces symbolic links in assets with linked files when unarchiving assets, which can break packages.

How to reproduce

aqua.yaml

---
registries:
  - type: standard
    ref: v4.292.0 # renovate: depName=aquaproj/aqua-registry
packages:
  - name: nodejs/[email protected]

Executed command and output

aqua rm node
aqua exec -- npm -v

Expected behaviour

npm succeeds.

Actual behaviour

npm fails.

$ aqua exec -- npm -v
INFO[0000] download and unarchive the package            aqua_version=2.42.0 env=darwin/arm64 exe_name=npm package_name=nodejs/node package_version=v23.5.0 program=aqua registry=standard
Downloading nodejs/node v23.5.0 100% |███████████████████████████████████████████████████████████████████████████| (49/49 MB, 49 MB/s)        
FATA[0002] aqua failed                                   aqua_version=2.42.0 env=darwin/arm64 error="it failed to start the process" exe_name=npm package_name=nodejs/node package_version=v23.5.0 program=aqua

Note

aqua v2.41.0:

$ ls -lh "$(dirname "$(aqua which npm)")"
total 121M
lrwxr-xr-x 1 shunsukesuzuki staff   45  1  6 23:18 corepack -> ../lib/node_modules/corepack/dist/corepack.js
-rwxr-xr-x 1 shunsukesuzuki staff 121M  1  6 23:18 node
lrwxr-xr-x 1 shunsukesuzuki staff   38  1  6 23:18 npm -> ../lib/node_modules/npm/bin/npm-cli.js
lrwxr-xr-x 1 shunsukesuzuki staff   38  1  6 23:18 npx -> ../lib/node_modules/npm/bin/npx-cli.js

aqua v2.42.0:

$ ls -lh "$(dirname "$(aqua which npm)")"
total 121M
-rwxr-xr-x 1 shunsukesuzuki staff    0  1  6 23:15 corepack
-rwxr-xr-x 1 shunsukesuzuki staff 121M  1  6 23:15 node
-rwxr-xr-x 1 shunsukesuzuki staff    0  1  6 23:15 npm
-rwxr-xr-x 1 shunsukesuzuki staff    0  1  6 23:15 npx
@suzuki-shunsuke suzuki-shunsuke added the bug Something isn't working label Jan 6, 2025
@suzuki-shunsuke
Copy link
Member Author

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant