github: shorthand deps fall back to npm registry on package-lock.json install
#335
-
SummaryFor a Repro
{ "dependencies": { "<pkg>": "github:<owner>/<repo>#<sha>" } }
"node_modules/<pkg>": {
"version": "<x.y.z>",
"resolved": "git+ssh://git@github.com/<owner>/<repo>.git#<sha>",
"integrity": "sha512-..."
}(
Expectedaube honors the git source — follow Environment
Related
|
Beta Was this translation helpful? Give feedback.
Replies: 1 comment 3 replies
-
|
Thanks for the clear repro. I tracked this to the Draft fix is up in #338. It now parses git Validation passed locally: |
Beta Was this translation helpful? Give feedback.
Sorry about that — the #338 fix only got us as far as recognizing the lockfile entry as a git source. Once recognized, aube was passing the
git+ssh://…URL straight togit fetch, which fails when SSH isn't configured. npm and pnpm both sidestep that: for github/gitlab/bitbucket they treat the lockfile URL as canonical-identity only and re-derive an HTTPS fetch URL from(host, owner, repo, sha)each install.PR up: #394. After it lands, github SHA-pinned deps fetch over
https://codeload.github.com/<owner>/<repo>/tar.gz/<sha>(nogitbinary, no SSH key). On any HTTP error — most commonly a private repo, since codeload doesn't accept npm-registry auth — aube falls back to a shallowgit clone…