dependabot-npm_and_yarn 0.125.2 → 0.125.3

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: ae99e6c36cdc88f0f62dec813df98ff581a0468d356457eef51008b847f034c6
4
- data.tar.gz: 4a3eb575fab37826d0f2dfa1cb443a63c347602d30448b4e30688d99ae880353
3
+ metadata.gz: 8c481909f17f43d71e97d7cbe218288953ba2ef5671dd165f6d68b381030f9a4
4
+ data.tar.gz: '09795e1ad695c58f948430b6ed8223db340e16d925659bd8d4954204d826f6b6'
5
5
  SHA512:
6
- metadata.gz: '08c996cc22935cfa3945f517e3c10954d26290d94276c380f1cbca824e3dd92a2a147f4d37612ed3251f8729f39ee1d997511b3954cb579f1dcc17ad71d42264'
7
- data.tar.gz: 9c636874c74ed0818fa1d79b0eb2e545a293435d89cdc97b1ec045e9e1566af851eb6e004c6e1b4004f365054c4db633a626e343c6d3996592d252562f837144
6
+ metadata.gz: c89dadf7d2ac717d475678958c4e552ea4366ebf659ef86a3f8369c72aebec245ad9da9e0679eecd885d5110e5bc349dcea7059d7f4fffa5f4bda765342dfa6a
7
+ data.tar.gz: 9d0699ff42e496bc667912ddecff429143327bc04008c36c433a2a7943c8ee95219b3efda3f5942c5fbd830b97f88b91b9d747d1e09383168d160c259743d510
@@ -0,0 +1,29 @@
1
+ Native JavaScript helpers
2
+ -------------------------
3
+
4
+ This directory contains helper functions for npm and yarn, natively written in
5
+ Javascript so that we can utilize the package managers internal APIs and other
6
+ native tooling for these ecosystems.
7
+
8
+ These helpers are called from the Ruby code via `run.js`, they are passed
9
+ arguments via stdin and return JSON data to stdout.
10
+
11
+ ## Testing
12
+
13
+ When working on these helpers, it's convenient to write some high level tests in
14
+ JavaScript to make it easier to debug the code.
15
+
16
+ You can now run the tests from this directory by running:
17
+
18
+ ```
19
+ yarn test path/to/test.js
20
+ ```
21
+
22
+ ### Debugging
23
+
24
+ In order to run an interactive debugger:
25
+
26
+ - `node --inspect-brk node_modules/.bin/jest --runInBand pat/to/test/test.js`
27
+ - In Chrome, nativate to chrome://inspect
28
+ - Click `Open dedicated DevTools for Node`
29
+ - You'll now be able to interactively debug using the chrome dev tools.
@@ -18,22 +18,19 @@ async function findConflictingDependencies(directory, depName, targetVersion) {
18
18
  });
19
19
 
20
20
  return await arb.loadVirtual().then((tree) => {
21
- var parents = [];
22
-
21
+ const parents = [];
23
22
  for (const node of tree.inventory.query("name", depName)) {
24
23
  for (const edge of node.edgesIn) {
25
24
  if (!semver.satisfies(targetVersion, edge.spec)) {
26
- var parentVersion;
27
- for (const fromEdge of edge.from.edgesIn.values()) {
28
- if (fromEdge.name == edge.from.name) {
29
- parentVersion = edge.from.version;
30
- }
31
- }
32
-
33
- parents.push({
34
- name: edge.from.name,
35
- version: parentVersion,
36
- requirement: edge.spec,
25
+ findTopLevelEdges(edge).forEach((topLevel) => {
26
+ explanation = buildExplanation(node, edge, topLevel);
27
+
28
+ parents.push({
29
+ explanation: explanation,
30
+ name: edge.from.name,
31
+ version: edge.from.version,
32
+ requirement: edge.spec,
33
+ });
37
34
  });
38
35
  }
39
36
  }
@@ -43,4 +40,37 @@ async function findConflictingDependencies(directory, depName, targetVersion) {
43
40
  });
44
41
  }
45
42
 
43
+ function buildExplanation(node, directEdge, topLevelEdge) {
44
+ if (directEdge.from === topLevelEdge.to) {
45
+ // The nodes parent is top-level
46
+ return `${directEdge.from.name}@${directEdge.from.version} requires ${directEdge.to.name}@${directEdge.spec}`;
47
+ } else if (topLevelEdge.to.edgesOut.has(directEdge.from.name)) {
48
+ // The nodes parent is a direct dependency of the top-level dependency
49
+ return (
50
+ `${topLevelEdge.to.name}@${topLevelEdge.to.version} requires ${directEdge.to.name}@${directEdge.spec} ` +
51
+ `via ${directEdge.from.name}@${directEdge.from.version}`
52
+ );
53
+ } else {
54
+ // The nodes parent is a transitive dependency of the top-level dependency
55
+ return (
56
+ `${topLevelEdge.to.name}@${topLevelEdge.to.version} requires ${directEdge.to.name}@${directEdge.spec} ` +
57
+ `via a transitive dependency on ${directEdge.from.name}@${directEdge.from.version}`
58
+ );
59
+ }
60
+ }
61
+
62
+ function findTopLevelEdges(edge, parents = []) {
63
+ edge.from.edgesIn.forEach((parent) => {
64
+ if (parent.from.edgesIn.size === 0) {
65
+ if (!parents.includes(parent)) {
66
+ parents.push(parent);
67
+ }
68
+ } else {
69
+ findTopLevelEdges(parent, parents);
70
+ }
71
+ });
72
+
73
+ return parents;
74
+ }
75
+
46
76
  module.exports = { findConflictingDependencies };
@@ -24,6 +24,7 @@ async function findConflictingDependencies(directory, depName, targetVersion) {
24
24
  if (subDepName === depName && !semver.satisfies(targetVersion, spec)) {
25
25
  const [_, parentDepName] = entry.match(LOCKFILE_ENTRY_REGEX);
26
26
  parents.push({
27
+ explanation: `${parentDepName}@${pkg.version} requires ${depName}@${spec}`,
27
28
  name: parentDepName,
28
29
  version: pkg.version,
29
30
  requirement: spec,
@@ -10,7 +10,7 @@
10
10
  },
11
11
  "dependencies": {
12
12
  "@dependabot/yarn-lib": "^1.21.1",
13
- "@npmcli/arborist": "^1.0.9",
13
+ "@npmcli/arborist": "^1.0.10",
14
14
  "detect-indent": "^6.0.0",
15
15
  "npm": "6.14.8",
16
16
  "semver": "^7.3.2"
@@ -0,0 +1,67 @@
1
+ const path = require("path");
2
+ const os = require("os");
3
+ const fs = require("fs");
4
+ const rimraf = require("rimraf");
5
+ const {
6
+ findConflictingDependencies,
7
+ } = require("../../lib/npm/conflicting-dependency-parser");
8
+ const helpers = require("./helpers");
9
+
10
+ describe("findConflictingDependencies", () => {
11
+ let tempDir;
12
+ beforeEach(() => {
13
+ tempDir = fs.mkdtempSync(os.tmpdir() + path.sep);
14
+ });
15
+ afterEach(() => rimraf.sync(tempDir));
16
+
17
+ it("finds conflicting dependencies", async () => {
18
+ helpers.copyDependencies("conflicting-dependency-parser/simple", tempDir);
19
+
20
+ const result = await findConflictingDependencies(tempDir, "abind", "2.0.0");
21
+ expect(result).toEqual([
22
+ {
23
+ explanation: "objnest@4.1.2 requires abind@^1.0.0",
24
+ name: "objnest",
25
+ version: "4.1.2",
26
+ requirement: "^1.0.0",
27
+ },
28
+ ]);
29
+ });
30
+
31
+ it("finds the top-level conflicting dependency", async () => {
32
+ helpers.copyDependencies("conflicting-dependency-parser/nested", tempDir);
33
+
34
+ const result = await findConflictingDependencies(tempDir, "abind", "2.0.0");
35
+ expect(result).toEqual([
36
+ {
37
+ explanation: "askconfig@4.0.4 requires abind@^1.0.4 via objnest@5.0.10",
38
+ name: "objnest",
39
+ version: "5.0.10",
40
+ requirement: "^1.0.4",
41
+ },
42
+ ]);
43
+ });
44
+
45
+ it("explains a deeply nested dependency", async () => {
46
+ helpers.copyDependencies(
47
+ "conflicting-dependency-parser/deeply-nested",
48
+ tempDir
49
+ );
50
+
51
+ const result = await findConflictingDependencies(tempDir, "abind", "2.0.0");
52
+ expect(result).toEqual([
53
+ {
54
+ explanation: "apass@1.1.0 requires abind@^1.0.0 via cipherjson@2.1.0",
55
+ name: "cipherjson",
56
+ version: "2.1.0",
57
+ requirement: "^1.0.0",
58
+ },
59
+ {
60
+ explanation: `apass@1.1.0 requires abind@^1.0.0 via a transitive dependency on objnest@3.0.9`,
61
+ name: "objnest",
62
+ version: "3.0.9",
63
+ requirement: "^1.0.0",
64
+ },
65
+ ]);
66
+ });
67
+ });
@@ -0,0 +1,565 @@
1
+ {
2
+ "name": "test",
3
+ "version": "1.0.0",
4
+ "lockfileVersion": 1,
5
+ "requires": true,
6
+ "dependencies": {
7
+ "abind": {
8
+ "version": "1.0.5",
9
+ "resolved": "https://registry.npmjs.org/abind/-/abind-1.0.5.tgz",
10
+ "integrity": "sha512-dbaEZphdPje0ihqSdWg36Sb8S20TuqQomiz2593oIx+enQ9Q4vDZRjIzhnkWltGRKVKqC28kTribkgRLBexWVQ=="
11
+ },
12
+ "aglob": {
13
+ "version": "2.0.1",
14
+ "resolved": "https://registry.npmjs.org/aglob/-/aglob-2.0.1.tgz",
15
+ "integrity": "sha1-kl7PJC11AkLAcVrNMy+V90kGZhQ=",
16
+ "requires": {
17
+ "co": "^4.6.0",
18
+ "glob": "^7.1.1"
19
+ }
20
+ },
21
+ "ansi-regex": {
22
+ "version": "2.1.1",
23
+ "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz",
24
+ "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8="
25
+ },
26
+ "apass": {
27
+ "version": "1.1.0",
28
+ "resolved": "https://registry.npmjs.org/apass/-/apass-1.1.0.tgz",
29
+ "integrity": "sha1-WNdSImWxQTtctC/2v/CfIaKDVpc=",
30
+ "requires": {
31
+ "asfs": "^1.1.1",
32
+ "askconfig": "^3.0.5",
33
+ "cipherjson": "^2.1.0",
34
+ "co": "^4.6.0",
35
+ "colorprint": "^4.1.0",
36
+ "commander": "^2.9.0",
37
+ "execcli": "^4.0.10",
38
+ "fmtjson": "^3.0.7"
39
+ }
40
+ },
41
+ "argx": {
42
+ "version": "3.0.2",
43
+ "resolved": "https://registry.npmjs.org/argx/-/argx-3.0.2.tgz",
44
+ "integrity": "sha1-G6qI0WCrb1Rrbs4OB1lswrs0JKk=",
45
+ "requires": {
46
+ "iftype": "^3.0.0"
47
+ }
48
+ },
49
+ "arrayreduce": {
50
+ "version": "2.1.0",
51
+ "resolved": "https://registry.npmjs.org/arrayreduce/-/arrayreduce-2.1.0.tgz",
52
+ "integrity": "sha1-6lg24whra1S3pWK0eez4BpyU0Qo="
53
+ },
54
+ "asfs": {
55
+ "version": "1.2.3",
56
+ "resolved": "https://registry.npmjs.org/asfs/-/asfs-1.2.3.tgz",
57
+ "integrity": "sha1-VnE2PoPEOQjvFaJciBkcYbUICDM=",
58
+ "requires": {
59
+ "aglob": "^2.0.1",
60
+ "co": "^4.6.0",
61
+ "filecopy": "^3.0.0",
62
+ "mkdirp": "^0.5.1"
63
+ }
64
+ },
65
+ "askconfig": {
66
+ "version": "3.0.5",
67
+ "resolved": "https://registry.npmjs.org/askconfig/-/askconfig-3.0.5.tgz",
68
+ "integrity": "sha1-PwcA078U8w44yAH57QDC2Wgqne0=",
69
+ "requires": {
70
+ "argx": "^3.0.0",
71
+ "cli-color": "^1.1.0",
72
+ "co": "^4.6.0",
73
+ "objnest": "^3.0.6"
74
+ }
75
+ },
76
+ "asleep": {
77
+ "version": "1.0.3",
78
+ "resolved": "https://registry.npmjs.org/asleep/-/asleep-1.0.3.tgz",
79
+ "integrity": "sha1-oQTiSsIpVjxCXk6n51tXihnuIY4="
80
+ },
81
+ "async": {
82
+ "version": "2.6.3",
83
+ "resolved": "https://registry.npmjs.org/async/-/async-2.6.3.tgz",
84
+ "integrity": "sha512-zflvls11DCy+dQWzTW2dzuilv8Z5X/pjfmZOWba6TNIVDm+2UDaJmXSOXlasHKfNBs8oo3M0aT50fDEWfKZjXg==",
85
+ "requires": {
86
+ "lodash": "^4.17.14"
87
+ }
88
+ },
89
+ "babel-runtime": {
90
+ "version": "6.26.0",
91
+ "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz",
92
+ "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=",
93
+ "requires": {
94
+ "core-js": "^2.4.0",
95
+ "regenerator-runtime": "^0.11.0"
96
+ }
97
+ },
98
+ "balanced-match": {
99
+ "version": "1.0.0",
100
+ "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz",
101
+ "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c="
102
+ },
103
+ "brace-expansion": {
104
+ "version": "1.1.11",
105
+ "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
106
+ "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
107
+ "requires": {
108
+ "balanced-match": "^1.0.0",
109
+ "concat-map": "0.0.1"
110
+ }
111
+ },
112
+ "cipherjson": {
113
+ "version": "2.1.0",
114
+ "resolved": "https://registry.npmjs.org/cipherjson/-/cipherjson-2.1.0.tgz",
115
+ "integrity": "sha1-NxWib+PkEKL2W9jQw3jnzdei0eI=",
116
+ "requires": {
117
+ "abind": "^1.0.0",
118
+ "argx": "^3.0.2",
119
+ "async": "^2.1.4",
120
+ "objnest": "^3.0.9",
121
+ "writeout": "^2.1.0"
122
+ }
123
+ },
124
+ "cli-color": {
125
+ "version": "1.4.0",
126
+ "resolved": "https://registry.npmjs.org/cli-color/-/cli-color-1.4.0.tgz",
127
+ "integrity": "sha512-xu6RvQqqrWEo6MPR1eixqGPywhYBHRs653F9jfXB2Hx4jdM/3WxiNE1vppRmxtMIfl16SFYTpYlrnqH/HsK/2w==",
128
+ "requires": {
129
+ "ansi-regex": "^2.1.1",
130
+ "d": "1",
131
+ "es5-ext": "^0.10.46",
132
+ "es6-iterator": "^2.0.3",
133
+ "memoizee": "^0.4.14",
134
+ "timers-ext": "^0.1.5"
135
+ }
136
+ },
137
+ "co": {
138
+ "version": "4.6.0",
139
+ "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz",
140
+ "integrity": "sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ="
141
+ },
142
+ "colorprint": {
143
+ "version": "4.1.0",
144
+ "resolved": "https://registry.npmjs.org/colorprint/-/colorprint-4.1.0.tgz",
145
+ "integrity": "sha1-BSroTEv9Ed7l7xvwfC9iVYT8CYk=",
146
+ "requires": {
147
+ "cli-color": "^1.1.0",
148
+ "commander": "^2.9.0"
149
+ }
150
+ },
151
+ "commander": {
152
+ "version": "2.20.3",
153
+ "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz",
154
+ "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ=="
155
+ },
156
+ "concat-map": {
157
+ "version": "0.0.1",
158
+ "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz",
159
+ "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s="
160
+ },
161
+ "core-js": {
162
+ "version": "2.6.11",
163
+ "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.6.11.tgz",
164
+ "integrity": "sha512-5wjnpaT/3dV+XB4borEsnAYQchn00XSgTAWKDkEqv+K8KevjbzmofK6hfJ9TZIlpj2N0xQpazy7PiRQiWHqzWg=="
165
+ },
166
+ "d": {
167
+ "version": "1.0.1",
168
+ "resolved": "https://registry.npmjs.org/d/-/d-1.0.1.tgz",
169
+ "integrity": "sha512-m62ShEObQ39CfralilEQRjH6oAMtNCV1xJyEx5LpRYUVN+EviphDgUc/F3hnYbADmkiNs67Y+3ylmlG7Lnu+FA==",
170
+ "requires": {
171
+ "es5-ext": "^0.10.50",
172
+ "type": "^1.0.1"
173
+ }
174
+ },
175
+ "es5-ext": {
176
+ "version": "0.10.53",
177
+ "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.53.tgz",
178
+ "integrity": "sha512-Xs2Stw6NiNHWypzRTY1MtaG/uJlwCk8kH81920ma8mvN8Xq1gsfhZvpkImLQArw8AHnv8MT2I45J3c0R8slE+Q==",
179
+ "requires": {
180
+ "es6-iterator": "~2.0.3",
181
+ "es6-symbol": "~3.1.3",
182
+ "next-tick": "~1.0.0"
183
+ }
184
+ },
185
+ "es6-iterator": {
186
+ "version": "2.0.3",
187
+ "resolved": "https://registry.npmjs.org/es6-iterator/-/es6-iterator-2.0.3.tgz",
188
+ "integrity": "sha1-p96IkUGgWpSwhUQDstCg+/qY87c=",
189
+ "requires": {
190
+ "d": "1",
191
+ "es5-ext": "^0.10.35",
192
+ "es6-symbol": "^3.1.1"
193
+ }
194
+ },
195
+ "es6-symbol": {
196
+ "version": "3.1.3",
197
+ "resolved": "https://registry.npmjs.org/es6-symbol/-/es6-symbol-3.1.3.tgz",
198
+ "integrity": "sha512-NJ6Yn3FuDinBaBRWl/q5X/s4koRHBrgKAu+yGI6JCBeiu3qrcbJhwT2GeR/EXVfylRk8dpQVJoLEFhK+Mu31NA==",
199
+ "requires": {
200
+ "d": "^1.0.1",
201
+ "ext": "^1.1.2"
202
+ }
203
+ },
204
+ "es6-weak-map": {
205
+ "version": "2.0.3",
206
+ "resolved": "https://registry.npmjs.org/es6-weak-map/-/es6-weak-map-2.0.3.tgz",
207
+ "integrity": "sha512-p5um32HOTO1kP+w7PRnB+5lQ43Z6muuMuIMffvDN8ZB4GcnjLBV6zGStpbASIMk4DCAvEaamhe2zhyCb/QXXsA==",
208
+ "requires": {
209
+ "d": "1",
210
+ "es5-ext": "^0.10.46",
211
+ "es6-iterator": "^2.0.3",
212
+ "es6-symbol": "^3.1.1"
213
+ }
214
+ },
215
+ "event-emitter": {
216
+ "version": "0.3.5",
217
+ "resolved": "https://registry.npmjs.org/event-emitter/-/event-emitter-0.3.5.tgz",
218
+ "integrity": "sha1-34xp7vFkeSPHFXuc6DhAYQsCzDk=",
219
+ "requires": {
220
+ "d": "1",
221
+ "es5-ext": "~0.10.14"
222
+ }
223
+ },
224
+ "execcli": {
225
+ "version": "4.0.11",
226
+ "resolved": "https://registry.npmjs.org/execcli/-/execcli-4.0.11.tgz",
227
+ "integrity": "sha1-PbmCCoP6EkK5v7UNEVUdBQWSfUM=",
228
+ "requires": {
229
+ "argx": "^3.0.0",
230
+ "arrayreduce": "^2.1.0",
231
+ "babel-runtime": "^6.23.0",
232
+ "findout": "^2.0.1",
233
+ "hasbin": "^1.2.3",
234
+ "stringcase": "^3.2.1"
235
+ }
236
+ },
237
+ "ext": {
238
+ "version": "1.4.0",
239
+ "resolved": "https://registry.npmjs.org/ext/-/ext-1.4.0.tgz",
240
+ "integrity": "sha512-Key5NIsUxdqKg3vIsdw9dSuXpPCQ297y6wBjL30edxwPgt2E44WcWBZey/ZvUc6sERLTxKdyCu4gZFmUbk1Q7A==",
241
+ "requires": {
242
+ "type": "^2.0.0"
243
+ },
244
+ "dependencies": {
245
+ "type": {
246
+ "version": "2.1.0",
247
+ "resolved": "https://registry.npmjs.org/type/-/type-2.1.0.tgz",
248
+ "integrity": "sha512-G9absDWvhAWCV2gmF1zKud3OyC61nZDwWvBL2DApaVFogI07CprggiQAOOjvp2NRjYWFzPyu7vwtDrQFq8jeSA=="
249
+ }
250
+ }
251
+ },
252
+ "extend": {
253
+ "version": "3.0.2",
254
+ "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz",
255
+ "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g=="
256
+ },
257
+ "filecopy": {
258
+ "version": "3.0.1",
259
+ "resolved": "https://registry.npmjs.org/filecopy/-/filecopy-3.0.1.tgz",
260
+ "integrity": "sha1-hqX4pylo7K6qW7suPoEKh3zUmWY=",
261
+ "requires": {
262
+ "aglob": "^2.0.1",
263
+ "argx": "^3.0.0",
264
+ "co": "^4.6.0",
265
+ "mkdirp": "^0.5.1"
266
+ }
267
+ },
268
+ "filedel": {
269
+ "version": "4.1.2",
270
+ "resolved": "https://registry.npmjs.org/filedel/-/filedel-4.1.2.tgz",
271
+ "integrity": "sha512-GmCi+mLI3DgGFde0W3vsZshRtSBK5BxTkrVLioGLoARBY5Ef42anaXP1PmQTI6AI/TVoM8Mkw5mBisGy5MPlTA==",
272
+ "requires": {
273
+ "aglob": "^3.0.2",
274
+ "argx": "^4.0.4",
275
+ "asfs": "^2.3.0",
276
+ "rimraf": "^3.0.2"
277
+ },
278
+ "dependencies": {
279
+ "aglob": {
280
+ "version": "3.0.2",
281
+ "resolved": "https://registry.npmjs.org/aglob/-/aglob-3.0.2.tgz",
282
+ "integrity": "sha512-0khk6p36zn0NbYAMtNov7o4VQpWOZChVt+cQHIEb0KSqxNn5hvGU2+pPI5+6vydUhe8W3ZxREMcpkAmMEi8p9Q==",
283
+ "requires": {
284
+ "glob": "^7.1.3"
285
+ }
286
+ },
287
+ "argx": {
288
+ "version": "4.0.4",
289
+ "resolved": "https://registry.npmjs.org/argx/-/argx-4.0.4.tgz",
290
+ "integrity": "sha512-XLWeRTNBJRzQkbMweLIxdtnvpE7iYUBraPwrIJX57FjL4D1RHLMJRM1AyEP6KZHgvjW7TSnxF8MpGic7YdTGOA==",
291
+ "requires": {
292
+ "iftype": "^4.0.9"
293
+ }
294
+ },
295
+ "asfs": {
296
+ "version": "2.3.0",
297
+ "resolved": "https://registry.npmjs.org/asfs/-/asfs-2.3.0.tgz",
298
+ "integrity": "sha512-mPfLlrZuoDFjR0Cd9ructfhJ4Cq0OH3CNVaO2RjMk+I9Utfb28sxFdnAVPByziTzTh2jgd7wX7Wy+8LIBjz2nw==",
299
+ "requires": {
300
+ "aglob": "^3.0.1",
301
+ "filecopy": "^4.1.0",
302
+ "mkdirp": "^1.0.3"
303
+ }
304
+ },
305
+ "filecopy": {
306
+ "version": "4.1.0",
307
+ "resolved": "https://registry.npmjs.org/filecopy/-/filecopy-4.1.0.tgz",
308
+ "integrity": "sha512-1K2VHl+WVzODCwcZzmSrNCUIYTM37F4/yny0bI05bN3PdQHZjfszsW2L2yia7/Xb1B854f6XrA3ZTv0KjBmogA==",
309
+ "requires": {
310
+ "aglob": "^3.0.2",
311
+ "argx": "^4.0.4",
312
+ "mkdirp": "^1.0.3"
313
+ }
314
+ },
315
+ "iftype": {
316
+ "version": "4.0.9",
317
+ "resolved": "https://registry.npmjs.org/iftype/-/iftype-4.0.9.tgz",
318
+ "integrity": "sha512-01Klo+04dkDzY193D1GVfOdQzmpqaYFJTAlZKRztkT/BOaU7sSnvxGimSln+7DMqLUP4tpDTNFgxqVPLYZVypA=="
319
+ },
320
+ "mkdirp": {
321
+ "version": "1.0.4",
322
+ "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz",
323
+ "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw=="
324
+ }
325
+ }
326
+ },
327
+ "findout": {
328
+ "version": "2.1.2",
329
+ "resolved": "https://registry.npmjs.org/findout/-/findout-2.1.2.tgz",
330
+ "integrity": "sha1-eEFc9z7Z4nwC4pqbxETn0ir2AQU=",
331
+ "requires": {
332
+ "babel-runtime": "^6.11.6",
333
+ "co": "^4.6.0"
334
+ }
335
+ },
336
+ "fmtjson": {
337
+ "version": "3.0.7",
338
+ "resolved": "https://registry.npmjs.org/fmtjson/-/fmtjson-3.0.7.tgz",
339
+ "integrity": "sha1-eGM+7hRk33CotIRWfN7rS+j/08w=",
340
+ "requires": {
341
+ "aglob": "^1.0.2",
342
+ "argx": "^3.0.1",
343
+ "asfs": "^1.0.5",
344
+ "co": "^4.6.0",
345
+ "writeout": "^2.0.7"
346
+ },
347
+ "dependencies": {
348
+ "aglob": {
349
+ "version": "1.1.1",
350
+ "resolved": "https://registry.npmjs.org/aglob/-/aglob-1.1.1.tgz",
351
+ "integrity": "sha1-+VJpKq29nVKHdekUtpXgdjH58Io=",
352
+ "requires": {
353
+ "babel-runtime": "^6.11.6",
354
+ "co": "^4.6.0",
355
+ "glob": "^7.0.5"
356
+ }
357
+ }
358
+ }
359
+ },
360
+ "fs.realpath": {
361
+ "version": "1.0.0",
362
+ "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz",
363
+ "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8="
364
+ },
365
+ "glob": {
366
+ "version": "7.1.6",
367
+ "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz",
368
+ "integrity": "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==",
369
+ "requires": {
370
+ "fs.realpath": "^1.0.0",
371
+ "inflight": "^1.0.4",
372
+ "inherits": "2",
373
+ "minimatch": "^3.0.4",
374
+ "once": "^1.3.0",
375
+ "path-is-absolute": "^1.0.0"
376
+ }
377
+ },
378
+ "hasbin": {
379
+ "version": "1.2.3",
380
+ "resolved": "https://registry.npmjs.org/hasbin/-/hasbin-1.2.3.tgz",
381
+ "integrity": "sha1-eMWSaJPIAhXCtWiuH9P8q3omlrA=",
382
+ "requires": {
383
+ "async": "~1.5"
384
+ },
385
+ "dependencies": {
386
+ "async": {
387
+ "version": "1.5.2",
388
+ "resolved": "https://registry.npmjs.org/async/-/async-1.5.2.tgz",
389
+ "integrity": "sha1-7GphrlZIDAw8skHJVhjiCJL5Zyo="
390
+ }
391
+ }
392
+ },
393
+ "iftype": {
394
+ "version": "3.0.2",
395
+ "resolved": "https://registry.npmjs.org/iftype/-/iftype-3.0.2.tgz",
396
+ "integrity": "sha1-V3EmHmT7NaaA0yDTZox1Kfklq3Q=",
397
+ "requires": {
398
+ "babel-runtime": "^6.11.6"
399
+ }
400
+ },
401
+ "inflight": {
402
+ "version": "1.0.6",
403
+ "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz",
404
+ "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=",
405
+ "requires": {
406
+ "once": "^1.3.0",
407
+ "wrappy": "1"
408
+ }
409
+ },
410
+ "inherits": {
411
+ "version": "2.0.4",
412
+ "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz",
413
+ "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ=="
414
+ },
415
+ "is-promise": {
416
+ "version": "2.2.2",
417
+ "resolved": "https://registry.npmjs.org/is-promise/-/is-promise-2.2.2.tgz",
418
+ "integrity": "sha512-+lP4/6lKUBfQjZ2pdxThZvLUAafmZb8OAxFb8XXtiQmS35INgr85hdOGoEs124ez1FCnZJt6jau/T+alh58QFQ=="
419
+ },
420
+ "lodash": {
421
+ "version": "4.17.20",
422
+ "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.20.tgz",
423
+ "integrity": "sha512-PlhdFcillOINfeV7Ni6oF1TAEayyZBoZ8bcshTHqOYJYlrqzRK5hagpagky5o4HfCzzd1TRkXPMFq6cKk9rGmA=="
424
+ },
425
+ "lru-queue": {
426
+ "version": "0.1.0",
427
+ "resolved": "https://registry.npmjs.org/lru-queue/-/lru-queue-0.1.0.tgz",
428
+ "integrity": "sha1-Jzi9nw089PhEkMVzbEhpmsYyzaM=",
429
+ "requires": {
430
+ "es5-ext": "~0.10.2"
431
+ }
432
+ },
433
+ "memoizee": {
434
+ "version": "0.4.14",
435
+ "resolved": "https://registry.npmjs.org/memoizee/-/memoizee-0.4.14.tgz",
436
+ "integrity": "sha512-/SWFvWegAIYAO4NQMpcX+gcra0yEZu4OntmUdrBaWrJncxOqAziGFlHxc7yjKVK2uu3lpPW27P27wkR82wA8mg==",
437
+ "requires": {
438
+ "d": "1",
439
+ "es5-ext": "^0.10.45",
440
+ "es6-weak-map": "^2.0.2",
441
+ "event-emitter": "^0.3.5",
442
+ "is-promise": "^2.1",
443
+ "lru-queue": "0.1",
444
+ "next-tick": "1",
445
+ "timers-ext": "^0.1.5"
446
+ }
447
+ },
448
+ "minimatch": {
449
+ "version": "3.0.4",
450
+ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz",
451
+ "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==",
452
+ "requires": {
453
+ "brace-expansion": "^1.1.7"
454
+ }
455
+ },
456
+ "minimist": {
457
+ "version": "1.2.5",
458
+ "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz",
459
+ "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw=="
460
+ },
461
+ "mkdirp": {
462
+ "version": "0.5.5",
463
+ "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz",
464
+ "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==",
465
+ "requires": {
466
+ "minimist": "^1.2.5"
467
+ }
468
+ },
469
+ "next-tick": {
470
+ "version": "1.0.0",
471
+ "resolved": "https://registry.npmjs.org/next-tick/-/next-tick-1.0.0.tgz",
472
+ "integrity": "sha1-yobR/ogoFpsBICCOPchCS524NCw="
473
+ },
474
+ "objnest": {
475
+ "version": "3.0.9",
476
+ "resolved": "https://registry.npmjs.org/objnest/-/objnest-3.0.9.tgz",
477
+ "integrity": "sha1-yBHtOVXPRgO6Ncx+A0j+oZUbk5U=",
478
+ "requires": {
479
+ "abind": "^1.0.0",
480
+ "extend": "^3.0.0"
481
+ }
482
+ },
483
+ "once": {
484
+ "version": "1.4.0",
485
+ "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz",
486
+ "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=",
487
+ "requires": {
488
+ "wrappy": "1"
489
+ }
490
+ },
491
+ "path-is-absolute": {
492
+ "version": "1.0.1",
493
+ "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz",
494
+ "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18="
495
+ },
496
+ "regenerator-runtime": {
497
+ "version": "0.11.1",
498
+ "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz",
499
+ "integrity": "sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg=="
500
+ },
501
+ "rimraf": {
502
+ "version": "3.0.2",
503
+ "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz",
504
+ "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==",
505
+ "requires": {
506
+ "glob": "^7.1.3"
507
+ }
508
+ },
509
+ "stringcase": {
510
+ "version": "3.2.1",
511
+ "resolved": "https://registry.npmjs.org/stringcase/-/stringcase-3.2.1.tgz",
512
+ "integrity": "sha1-iTRRYwSXZM92q89c4Ctkv7ZHLlY="
513
+ },
514
+ "timers-ext": {
515
+ "version": "0.1.7",
516
+ "resolved": "https://registry.npmjs.org/timers-ext/-/timers-ext-0.1.7.tgz",
517
+ "integrity": "sha512-b85NUNzTSdodShTIbky6ZF02e8STtVVfD+fu4aXXShEELpozH+bCpJLYMPZbsABN2wDH7fJpqIoXxJpzbf0NqQ==",
518
+ "requires": {
519
+ "es5-ext": "~0.10.46",
520
+ "next-tick": "1"
521
+ }
522
+ },
523
+ "type": {
524
+ "version": "1.2.0",
525
+ "resolved": "https://registry.npmjs.org/type/-/type-1.2.0.tgz",
526
+ "integrity": "sha512-+5nt5AAniqsCnu2cEQQdpzCAh33kVx8n0VoFidKpB1dVVLAN/F+bgVOqOJqOnEnrhp222clB5p3vUlD+1QAnfg=="
527
+ },
528
+ "wrappy": {
529
+ "version": "1.0.2",
530
+ "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz",
531
+ "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8="
532
+ },
533
+ "writeout": {
534
+ "version": "2.3.4",
535
+ "resolved": "https://registry.npmjs.org/writeout/-/writeout-2.3.4.tgz",
536
+ "integrity": "sha512-8EO+2MdDKvyhVGGA7hXtCOWIyfpzi1PAkmYTFUhq3/duskEDYzcDvZTiYgVV/CectCRSelGdIW++ym58uNOuYw==",
537
+ "requires": {
538
+ "argx": "^4.0.4",
539
+ "asleep": "^1.0.3",
540
+ "filedel": "^4.1.2",
541
+ "mkdirp": "^1.0.4"
542
+ },
543
+ "dependencies": {
544
+ "argx": {
545
+ "version": "4.0.4",
546
+ "resolved": "https://registry.npmjs.org/argx/-/argx-4.0.4.tgz",
547
+ "integrity": "sha512-XLWeRTNBJRzQkbMweLIxdtnvpE7iYUBraPwrIJX57FjL4D1RHLMJRM1AyEP6KZHgvjW7TSnxF8MpGic7YdTGOA==",
548
+ "requires": {
549
+ "iftype": "^4.0.9"
550
+ }
551
+ },
552
+ "iftype": {
553
+ "version": "4.0.9",
554
+ "resolved": "https://registry.npmjs.org/iftype/-/iftype-4.0.9.tgz",
555
+ "integrity": "sha512-01Klo+04dkDzY193D1GVfOdQzmpqaYFJTAlZKRztkT/BOaU7sSnvxGimSln+7DMqLUP4tpDTNFgxqVPLYZVypA=="
556
+ },
557
+ "mkdirp": {
558
+ "version": "1.0.4",
559
+ "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz",
560
+ "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw=="
561
+ }
562
+ }
563
+ }
564
+ }
565
+ }
@@ -0,0 +1,14 @@
1
+ {
2
+ "name": "test",
3
+ "version": "1.0.0",
4
+ "description": "",
5
+ "main": "index.js",
6
+ "scripts": {
7
+ "test": "echo \"Error: no test specified\" && exit 1"
8
+ },
9
+ "author": "",
10
+ "license": "ISC",
11
+ "dependencies": {
12
+ "apass": "1.1.0"
13
+ }
14
+ }
@@ -0,0 +1,188 @@
1
+ {
2
+ "name": "test",
3
+ "version": "1.0.0",
4
+ "lockfileVersion": 1,
5
+ "requires": true,
6
+ "dependencies": {
7
+ "abind": {
8
+ "version": "1.0.5",
9
+ "resolved": "https://registry.npmjs.org/abind/-/abind-1.0.5.tgz",
10
+ "integrity": "sha512-dbaEZphdPje0ihqSdWg36Sb8S20TuqQomiz2593oIx+enQ9Q4vDZRjIzhnkWltGRKVKqC28kTribkgRLBexWVQ=="
11
+ },
12
+ "ansi-regex": {
13
+ "version": "2.1.1",
14
+ "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz",
15
+ "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8="
16
+ },
17
+ "argx": {
18
+ "version": "4.0.4",
19
+ "resolved": "https://registry.npmjs.org/argx/-/argx-4.0.4.tgz",
20
+ "integrity": "sha512-XLWeRTNBJRzQkbMweLIxdtnvpE7iYUBraPwrIJX57FjL4D1RHLMJRM1AyEP6KZHgvjW7TSnxF8MpGic7YdTGOA==",
21
+ "requires": {
22
+ "iftype": "^4.0.9"
23
+ }
24
+ },
25
+ "askconfig": {
26
+ "version": "4.0.4",
27
+ "resolved": "https://registry.npmjs.org/askconfig/-/askconfig-4.0.4.tgz",
28
+ "integrity": "sha512-fjB/vmAlUKxGVqcz4mLub3xF8m9rkazhqcXRvrDzeey0iaLhcAg2K8bhJL7pKjE2dFP9qDGv3+yXovYMV9XBJQ==",
29
+ "requires": {
30
+ "argx": "^4.0.2",
31
+ "cli-color": "^1.4.0",
32
+ "objnest": "^5.0.6"
33
+ }
34
+ },
35
+ "cli-color": {
36
+ "version": "1.4.0",
37
+ "resolved": "https://registry.npmjs.org/cli-color/-/cli-color-1.4.0.tgz",
38
+ "integrity": "sha512-xu6RvQqqrWEo6MPR1eixqGPywhYBHRs653F9jfXB2Hx4jdM/3WxiNE1vppRmxtMIfl16SFYTpYlrnqH/HsK/2w==",
39
+ "requires": {
40
+ "ansi-regex": "^2.1.1",
41
+ "d": "1",
42
+ "es5-ext": "^0.10.46",
43
+ "es6-iterator": "^2.0.3",
44
+ "memoizee": "^0.4.14",
45
+ "timers-ext": "^0.1.5"
46
+ }
47
+ },
48
+ "d": {
49
+ "version": "1.0.1",
50
+ "resolved": "https://registry.npmjs.org/d/-/d-1.0.1.tgz",
51
+ "integrity": "sha512-m62ShEObQ39CfralilEQRjH6oAMtNCV1xJyEx5LpRYUVN+EviphDgUc/F3hnYbADmkiNs67Y+3ylmlG7Lnu+FA==",
52
+ "requires": {
53
+ "es5-ext": "^0.10.50",
54
+ "type": "^1.0.1"
55
+ }
56
+ },
57
+ "es5-ext": {
58
+ "version": "0.10.53",
59
+ "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.53.tgz",
60
+ "integrity": "sha512-Xs2Stw6NiNHWypzRTY1MtaG/uJlwCk8kH81920ma8mvN8Xq1gsfhZvpkImLQArw8AHnv8MT2I45J3c0R8slE+Q==",
61
+ "requires": {
62
+ "es6-iterator": "~2.0.3",
63
+ "es6-symbol": "~3.1.3",
64
+ "next-tick": "~1.0.0"
65
+ }
66
+ },
67
+ "es6-iterator": {
68
+ "version": "2.0.3",
69
+ "resolved": "https://registry.npmjs.org/es6-iterator/-/es6-iterator-2.0.3.tgz",
70
+ "integrity": "sha1-p96IkUGgWpSwhUQDstCg+/qY87c=",
71
+ "requires": {
72
+ "d": "1",
73
+ "es5-ext": "^0.10.35",
74
+ "es6-symbol": "^3.1.1"
75
+ }
76
+ },
77
+ "es6-symbol": {
78
+ "version": "3.1.3",
79
+ "resolved": "https://registry.npmjs.org/es6-symbol/-/es6-symbol-3.1.3.tgz",
80
+ "integrity": "sha512-NJ6Yn3FuDinBaBRWl/q5X/s4koRHBrgKAu+yGI6JCBeiu3qrcbJhwT2GeR/EXVfylRk8dpQVJoLEFhK+Mu31NA==",
81
+ "requires": {
82
+ "d": "^1.0.1",
83
+ "ext": "^1.1.2"
84
+ }
85
+ },
86
+ "es6-weak-map": {
87
+ "version": "2.0.3",
88
+ "resolved": "https://registry.npmjs.org/es6-weak-map/-/es6-weak-map-2.0.3.tgz",
89
+ "integrity": "sha512-p5um32HOTO1kP+w7PRnB+5lQ43Z6muuMuIMffvDN8ZB4GcnjLBV6zGStpbASIMk4DCAvEaamhe2zhyCb/QXXsA==",
90
+ "requires": {
91
+ "d": "1",
92
+ "es5-ext": "^0.10.46",
93
+ "es6-iterator": "^2.0.3",
94
+ "es6-symbol": "^3.1.1"
95
+ }
96
+ },
97
+ "event-emitter": {
98
+ "version": "0.3.5",
99
+ "resolved": "https://registry.npmjs.org/event-emitter/-/event-emitter-0.3.5.tgz",
100
+ "integrity": "sha1-34xp7vFkeSPHFXuc6DhAYQsCzDk=",
101
+ "requires": {
102
+ "d": "1",
103
+ "es5-ext": "~0.10.14"
104
+ }
105
+ },
106
+ "ext": {
107
+ "version": "1.4.0",
108
+ "resolved": "https://registry.npmjs.org/ext/-/ext-1.4.0.tgz",
109
+ "integrity": "sha512-Key5NIsUxdqKg3vIsdw9dSuXpPCQ297y6wBjL30edxwPgt2E44WcWBZey/ZvUc6sERLTxKdyCu4gZFmUbk1Q7A==",
110
+ "requires": {
111
+ "type": "^2.0.0"
112
+ },
113
+ "dependencies": {
114
+ "type": {
115
+ "version": "2.1.0",
116
+ "resolved": "https://registry.npmjs.org/type/-/type-2.1.0.tgz",
117
+ "integrity": "sha512-G9absDWvhAWCV2gmF1zKud3OyC61nZDwWvBL2DApaVFogI07CprggiQAOOjvp2NRjYWFzPyu7vwtDrQFq8jeSA=="
118
+ }
119
+ }
120
+ },
121
+ "extend": {
122
+ "version": "3.0.2",
123
+ "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz",
124
+ "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g=="
125
+ },
126
+ "iftype": {
127
+ "version": "4.0.9",
128
+ "resolved": "https://registry.npmjs.org/iftype/-/iftype-4.0.9.tgz",
129
+ "integrity": "sha512-01Klo+04dkDzY193D1GVfOdQzmpqaYFJTAlZKRztkT/BOaU7sSnvxGimSln+7DMqLUP4tpDTNFgxqVPLYZVypA=="
130
+ },
131
+ "is-promise": {
132
+ "version": "2.2.2",
133
+ "resolved": "https://registry.npmjs.org/is-promise/-/is-promise-2.2.2.tgz",
134
+ "integrity": "sha512-+lP4/6lKUBfQjZ2pdxThZvLUAafmZb8OAxFb8XXtiQmS35INgr85hdOGoEs124ez1FCnZJt6jau/T+alh58QFQ=="
135
+ },
136
+ "lru-queue": {
137
+ "version": "0.1.0",
138
+ "resolved": "https://registry.npmjs.org/lru-queue/-/lru-queue-0.1.0.tgz",
139
+ "integrity": "sha1-Jzi9nw089PhEkMVzbEhpmsYyzaM=",
140
+ "requires": {
141
+ "es5-ext": "~0.10.2"
142
+ }
143
+ },
144
+ "memoizee": {
145
+ "version": "0.4.14",
146
+ "resolved": "https://registry.npmjs.org/memoizee/-/memoizee-0.4.14.tgz",
147
+ "integrity": "sha512-/SWFvWegAIYAO4NQMpcX+gcra0yEZu4OntmUdrBaWrJncxOqAziGFlHxc7yjKVK2uu3lpPW27P27wkR82wA8mg==",
148
+ "requires": {
149
+ "d": "1",
150
+ "es5-ext": "^0.10.45",
151
+ "es6-weak-map": "^2.0.2",
152
+ "event-emitter": "^0.3.5",
153
+ "is-promise": "^2.1",
154
+ "lru-queue": "0.1",
155
+ "next-tick": "1",
156
+ "timers-ext": "^0.1.5"
157
+ }
158
+ },
159
+ "next-tick": {
160
+ "version": "1.0.0",
161
+ "resolved": "https://registry.npmjs.org/next-tick/-/next-tick-1.0.0.tgz",
162
+ "integrity": "sha1-yobR/ogoFpsBICCOPchCS524NCw="
163
+ },
164
+ "objnest": {
165
+ "version": "5.0.10",
166
+ "resolved": "https://registry.npmjs.org/objnest/-/objnest-5.0.10.tgz",
167
+ "integrity": "sha512-sIXiWbzbaOszhnaioxGyaLvBUF86nnEX/zgTrGskEJsXEqjBwLCsVy+a7Na93mW474lvtSIc3tOYiaXgHQw7Mg==",
168
+ "requires": {
169
+ "abind": "^1.0.4",
170
+ "extend": "^3.0.2"
171
+ }
172
+ },
173
+ "timers-ext": {
174
+ "version": "0.1.7",
175
+ "resolved": "https://registry.npmjs.org/timers-ext/-/timers-ext-0.1.7.tgz",
176
+ "integrity": "sha512-b85NUNzTSdodShTIbky6ZF02e8STtVVfD+fu4aXXShEELpozH+bCpJLYMPZbsABN2wDH7fJpqIoXxJpzbf0NqQ==",
177
+ "requires": {
178
+ "es5-ext": "~0.10.46",
179
+ "next-tick": "1"
180
+ }
181
+ },
182
+ "type": {
183
+ "version": "1.2.0",
184
+ "resolved": "https://registry.npmjs.org/type/-/type-1.2.0.tgz",
185
+ "integrity": "sha512-+5nt5AAniqsCnu2cEQQdpzCAh33kVx8n0VoFidKpB1dVVLAN/F+bgVOqOJqOnEnrhp222clB5p3vUlD+1QAnfg=="
186
+ }
187
+ }
188
+ }
@@ -0,0 +1,14 @@
1
+ {
2
+ "name": "test",
3
+ "version": "1.0.0",
4
+ "description": "",
5
+ "main": "index.js",
6
+ "scripts": {
7
+ "test": "echo \"Error: no test specified\" && exit 1"
8
+ },
9
+ "author": "",
10
+ "license": "ISC",
11
+ "dependencies": {
12
+ "askconfig": "^4.0.4"
13
+ }
14
+ }
@@ -0,0 +1,27 @@
1
+ {
2
+ "name": "test",
3
+ "version": "1.0.0",
4
+ "lockfileVersion": 1,
5
+ "requires": true,
6
+ "dependencies": {
7
+ "abind": {
8
+ "version": "1.0.5",
9
+ "resolved": "https://registry.npmjs.org/abind/-/abind-1.0.5.tgz",
10
+ "integrity": "sha512-dbaEZphdPje0ihqSdWg36Sb8S20TuqQomiz2593oIx+enQ9Q4vDZRjIzhnkWltGRKVKqC28kTribkgRLBexWVQ=="
11
+ },
12
+ "extend": {
13
+ "version": "3.0.0",
14
+ "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.0.tgz",
15
+ "integrity": "sha512-5mYyg57hpD+sFaJmgNL9BidQ5C7dmJE3U5vzlRWbuqG+8dytvYEoxvKs6Tj5cm3LpMsFvRt20qz1ckezmsOUgQ=="
16
+ },
17
+ "objnest": {
18
+ "version": "4.1.2",
19
+ "resolved": "https://registry.npmjs.org/objnest/-/objnest-4.1.2.tgz",
20
+ "integrity": "sha512-VLMIu6RjSrHyesMnlLZBTbNlzrfBEjkcBdq5NM763AG+BLRJm27H43GUTLv3XrtlNn0Ofs+em4G84T7kkXA+1A==",
21
+ "requires": {
22
+ "abind": "^1.0.0",
23
+ "extend": "^3.0.0"
24
+ }
25
+ }
26
+ }
27
+ }
@@ -0,0 +1,14 @@
1
+ {
2
+ "name": "test",
3
+ "version": "1.0.0",
4
+ "description": "",
5
+ "main": "index.js",
6
+ "scripts": {
7
+ "test": "echo \"Error: no test specified\" && exit 1"
8
+ },
9
+ "author": "",
10
+ "license": "ISC",
11
+ "dependencies": {
12
+ "objnest": "^4.1.2"
13
+ }
14
+ }
@@ -4,4 +4,18 @@ const fs = require("fs");
4
4
  module.exports = {
5
5
  loadFixture: (fixturePath) =>
6
6
  fs.readFileSync(path.join(__dirname, "fixtures", fixturePath)).toString(),
7
+
8
+ copyDependencies: (sourceDir, destDir) => {
9
+ const srcPackageJson = path.join(
10
+ __dirname,
11
+ `fixtures/${sourceDir}/package.json`
12
+ );
13
+ fs.copyFileSync(srcPackageJson, `${destDir}/package.json`);
14
+
15
+ const srcLockfile = path.join(
16
+ __dirname,
17
+ `fixtures/${sourceDir}/package-lock.json`
18
+ );
19
+ fs.copyFileSync(srcLockfile, `${destDir}/package-lock.json`);
20
+ },
7
21
  };
@@ -12,22 +12,8 @@ describe("updater", () => {
12
12
  });
13
13
  afterEach(() => rimraf.sync(tempDir));
14
14
 
15
- function copyDependencies(sourceDir, destDir) {
16
- const srcPackageJson = path.join(
17
- __dirname,
18
- `fixtures/updater/${sourceDir}/package.json`
19
- );
20
- fs.copyFileSync(srcPackageJson, `${destDir}/package.json`);
21
-
22
- const srcLockfile = path.join(
23
- __dirname,
24
- `fixtures/updater/${sourceDir}/package-lock.json`
25
- );
26
- fs.copyFileSync(srcLockfile, `${destDir}/package-lock.json`);
27
- }
28
-
29
15
  it("generates an updated package-lock.json", async () => {
30
- copyDependencies("original", tempDir);
16
+ helpers.copyDependencies("updater/original", tempDir);
31
17
 
32
18
  const result = await updateDependencyFiles(tempDir, "package-lock.json", [
33
19
  {
@@ -543,10 +543,10 @@
543
543
  "@types/yargs" "^15.0.0"
544
544
  chalk "^4.0.0"
545
545
 
546
- "@npmcli/arborist@^1.0.9":
547
- version "1.0.9"
548
- resolved "https://registry.yarnpkg.com/@npmcli/arborist/-/arborist-1.0.9.tgz#04e1a88e0ed0a07d975b826363ee18a35da877ea"
549
- integrity sha512-bvaPKdlT4F0U2JT0eV1fprv9dWdjFxY+O7WbXMvABvyO81kUPTJTBe1HhsGTIqXTrt2cOqXtLJI31Xs7iugptg==
546
+ "@npmcli/arborist@^1.0.10":
547
+ version "1.0.10"
548
+ resolved "https://registry.yarnpkg.com/@npmcli/arborist/-/arborist-1.0.10.tgz#2ea43fecc21bb4e5be1026a6a90b03077a347ee7"
549
+ integrity sha512-k5HwMlztD7clml2PJJLMS01QWUolzw6MXOyibhipmTHtKjsh5d2WtQNvPMxNYWLyACpJu9xIfK2OGaJpuNwbjA==
550
550
  dependencies:
551
551
  "@npmcli/installed-package-contents" "^1.0.5"
552
552
  "@npmcli/map-workspaces" "^1.0.1"
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: dependabot-npm_and_yarn
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.125.2
4
+ version: 0.125.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Dependabot
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-11-11 00:00:00.000000000 Z
11
+ date: 2020-11-16 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: dependabot-common
@@ -16,14 +16,14 @@ dependencies:
16
16
  requirements:
17
17
  - - '='
18
18
  - !ruby/object:Gem::Version
19
- version: 0.125.2
19
+ version: 0.125.3
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - '='
25
25
  - !ruby/object:Gem::Version
26
- version: 0.125.2
26
+ version: 0.125.3
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: byebug
29
29
  requirement: !ruby/object:Gem::Requirement
@@ -128,14 +128,14 @@ dependencies:
128
128
  requirements:
129
129
  - - "~>"
130
130
  - !ruby/object:Gem::Version
131
- version: 0.7.2
131
+ version: 0.8.0
132
132
  type: :development
133
133
  prerelease: false
134
134
  version_requirements: !ruby/object:Gem::Requirement
135
135
  requirements:
136
136
  - - "~>"
137
137
  - !ruby/object:Gem::Version
138
- version: 0.7.2
138
+ version: 0.8.0
139
139
  - !ruby/object:Gem::Dependency
140
140
  name: vcr
141
141
  requirement: !ruby/object:Gem::Requirement
@@ -172,6 +172,7 @@ extensions: []
172
172
  extra_rdoc_files: []
173
173
  files:
174
174
  - helpers/.eslintrc
175
+ - helpers/README.md
175
176
  - helpers/build
176
177
  - helpers/lib/npm/conflicting-dependency-parser.js
177
178
  - helpers/lib/npm/helpers.js
@@ -191,6 +192,13 @@ files:
191
192
  - helpers/lib/yarn/updater.js
192
193
  - helpers/package.json
193
194
  - helpers/run.js
195
+ - helpers/test/npm/conflicting-dependency-parser.test.js
196
+ - helpers/test/npm/fixtures/conflicting-dependency-parser/deeply-nested/package-lock.json
197
+ - helpers/test/npm/fixtures/conflicting-dependency-parser/deeply-nested/package.json
198
+ - helpers/test/npm/fixtures/conflicting-dependency-parser/nested/package-lock.json
199
+ - helpers/test/npm/fixtures/conflicting-dependency-parser/nested/package.json
200
+ - helpers/test/npm/fixtures/conflicting-dependency-parser/simple/package-lock.json
201
+ - helpers/test/npm/fixtures/conflicting-dependency-parser/simple/package.json
194
202
  - helpers/test/npm/fixtures/updater/original/package-lock.json
195
203
  - helpers/test/npm/fixtures/updater/original/package.json
196
204
  - helpers/test/npm/fixtures/updater/updated/package-lock.json