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

fix(packageRelativePath): fix 'where' for file deps #137

Closed
wants to merge 2 commits into from

Conversation

aeschright
Copy link
Contributor

Reopening #95 by @larsgw

Fix 'where' for file deps. This usually doesn't matter, and local dependencies should be put in bundledDependencies when packed if possible. However, IMO, it makes more sense for the 'where' to be the directory the file is in (and was possibly built in) than it being the file itself, having no use whatsoever.

See https://npm.community/t/3364

Fix 'where' for file deps. It makes more sense for the 'where' to be the 
directory the file is in (and was possibly built in) than it being the 
file itself, having no use whatsoever.

See https://npm.community/t/3364
@aeschright aeschright requested a review from a team as a code owner January 15, 2019 19:54
@larsgw
Copy link
Contributor

larsgw commented Jan 15, 2019

Hmm, looks like the tests for "optional": true and "dev": true, I'll take a look.

@larsgw
Copy link
Contributor

larsgw commented Jan 15, 2019

fetchPackageMetadata is getting these specs, which... aren't really incorrect either.

EDIT: or are they? Is where used to resolve the current spec, or the spec of it's dependencies? Because it seems to be both right now.

{ type: 'file',
  registry: undefined,
  where:
   '/[...]/npm-cli/test/tap/install-dep-classification/testdir',
  raw: 'a@../a-1.0.0.tgz',
  name: 'a',
  escapedName: 'a',
  scope: undefined,
  rawSpec: '../a-1.0.0.tgz',
  saveSpec: 'file:../a-1.0.0.tgz',
  fetchSpec:
   '/[...]/npm-cli/test/tap/install-dep-classification/a-1.0.0.tgz',
  gitRange: undefined,
  gitCommittish: undefined,
  hosted: undefined }

This causes an ENOENT in pacote, which then (silently?) doesn't install them.

@larsgw
Copy link
Contributor

larsgw commented Jan 15, 2019

So the problems seems to be that the tarballs used in those tests are the ones overcompensating, by requesting ../b-1.0.0.tgz which works with the old behaviour, but not the new. I updated the hashes, but can't create a commit or attach a .diff file. Also, this may have to be considered a breaking change, then.

From a46a4fc594dddea5d66f7be514d30604d921ee8f Mon Sep 17 00:00:00 2001
From: Lars Willighagen <lars.willighagen@gmail.com>
Date: Tue, 15 Jan 2019 23:18:24 +0100
Subject: [PATCH] test: update tarballs

---
 test/tap/install-dep-classification.js | 24 ++++++++++++------------
 1 file changed, 12 insertions(+), 12 deletions(-)

diff --git a/test/tap/install-dep-classification.js b/test/tap/install-dep-classification.js
index 153a7f392..cc6c671e8 100644
--- a/test/tap/install-dep-classification.js
+++ b/test/tap/install-dep-classification.js
@@ -29,12 +29,12 @@ const fixture = new Tacks(Dir({
   tmp: Dir(),
   testdir: Dir({
     'a-1.0.0.tgz': File(Buffer.from(
-      '1f8b0800000000000003edcfc10e82300c0660ce3ec5d2b38e4eb71d789b' +
-      '010d41e358187890f0ee56493c71319218937d977feb9aa50daebab886f2' +
-      'b0a43cc7ce671b4344abb558ab3f2934223b198b4a598bdcc707a38f9c5b' +
-      '0fb2668c83eb79946fff597611effc131378772528c0c11e6ed4c7b6f37c' +
-      '53122572a5a640be265fb514a198a0e43729f3f2f06a9043738779defd7a' +
-      '89244992e4630fd69e456800080000',
+      '1f8b0800000000000003edcfc10a83300c06e09df71492f35653567bf06d' +
+      'a2067163b558b7c3c4775f54f0e4654c18837e973f4da0249eca1bd59cfa' +
+      '25d535b4eeb03344b4c6245bfd8946995d328b5a5b3bd55264464beebdc8' +
+      '9647e8a99355befd67b92559f34f0ce0e8ce9003c1099edc85a675f2d20a' +
+      '154aa762cfae6257361c201fa090994a8bf33c577dfd82713cfefa86288a' +
+      'a2e8736f68a0ff4400080000',
       'hex'
     )),
     'b-1.0.0.tgz': File(Buffer.from(
@@ -55,12 +55,12 @@ const fixture = new Tacks(Dir({
       })
     }),
     'example-1.0.0.tgz': File(Buffer.from(
-      '1f8b0800000000000003ed8fc10ac2300c8677f62946cedaa5d8f5e0db64' +
-      '5b1853d795758a38f6ee4607e261370722f4bbfce5cb4f493c9527aa39f3' +
-      '73aa63e85cb23288688d4997fc136d304df6b945adad45e9c923375a72ed' +
-      '4596b884817a59e5db7fe65bd277fe0923386a190ec0376afd99610b57ee' +
-      '43d339715aa14231157b7615bbb2e100871148664a65b47b15d450dfa554' +
-      'ccb2f890d3b4f9f57d9148241259e60112d8208a00080000',
+      '1f8b0800000000000003ed8fc10a83300c863def2924e7ada6587bf06daa' +
+      '06719bb55837c6c4775fa6307670a70963d0ef92f02584fcce94275353e2' +
+      '962a8ebeb3d1c620a2562a5ef34f64aae328cd344aa935f21e379962875b' +
+      '3fb2c6c50fa6e757bebdb364895ff54f18c19a962007ba99d69d09f670a5' +
+      'de379d6527050a645391235b912d1bf2908f607826127398e762a8efbc53' +
+      'ccae7873d3b4fb75ba402010087ce2014747c9d500080000',
       'hex'
     )),
     optional: Dir({
-- 
2.20.1

@zkat zkat closed this Jan 18, 2019
@zkat zkat deleted the pr/95 branch January 18, 2019 00:13
@larsgw
Copy link
Contributor

larsgw commented Jan 18, 2019

Sorry for asking, but why was this closed?

@zkat
Copy link
Contributor

zkat commented Jan 18, 2019

:ohno: This was an error because using pr/95 as a remote branch was breaking my git. I didn't realize it was actually a PR. Do you mind just proposing a new PR with your remote branch, @larsgw?

@larsgw
Copy link
Contributor

larsgw commented Jan 18, 2019

@zkat Here it is: #142

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.

None yet

3 participants