pnpm 7.0.0-alpha.1 → 7.0.0-alpha.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -11,7 +11,7 @@ packageManager: pnpm@7.0.0-alpha.0
11
11
  pendingBuilds:
12
12
  - /node-gyp/8.4.1
13
13
  - /encoding/0.1.13
14
- prunedAt: Wed, 16 Feb 2022 02:07:00 GMT
14
+ prunedAt: Sat, 19 Feb 2022 19:00:13 GMT
15
15
  publicHoistPattern:
16
16
  - '*types*'
17
17
  - '*eslint*'
@@ -8,15 +8,15 @@ optionalDependencies:
8
8
 
9
9
  packages:
10
10
 
11
- /@gar/promisify/1.1.2:
12
- resolution: {integrity: sha512-82cpyJyKRoQoRi+14ibCeGPu0CwypgtBAdBhq1WfvagpCZNKqwXbKwXllYSMG91DhmG4jt9gN8eP6lGOtozuaw==}
11
+ /@gar/promisify/1.1.3:
12
+ resolution: {integrity: sha512-k2Ty1JcVojjJFwrg/ThKi2ujJ7XNLYaFGNB/bWT9wGR+oSMJHMa5w+CUq6p/pVrKeNNgA7pCqEcjSnHVoqJQFw==}
13
13
  dev: false
14
14
  optional: true
15
15
 
16
16
  /@npmcli/fs/1.1.1:
17
17
  resolution: {integrity: sha512-8KG5RD0GVP4ydEzRn/I4BNDuxDtqVbOdm8675T49OIG/NGhaK0pjPX7ZcDlvKYbA+ulvVK3ztfcF4uBdOxuJbQ==}
18
18
  dependencies:
19
- '@gar/promisify': 1.1.2
19
+ '@gar/promisify': 1.1.3
20
20
  semver: 7.3.5
21
21
  dev: false
22
22
  optional: true
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@gar/promisify",
3
- "version": "1.1.2",
3
+ "version": "1.1.3",
4
4
  "description": "Promisify an entire class or object",
5
5
  "main": "index.js",
6
6
  "repository": {
package/dist/pnpm.cjs CHANGED
@@ -3170,7 +3170,7 @@ var require_lib4 = __commonJS({
3170
3170
  var load_json_file_1 = __importDefault(require_load_json_file());
3171
3171
  var defaultManifest = {
3172
3172
  name: "pnpm" != null && true ? "pnpm" : "pnpm",
3173
- version: "7.0.0-alpha.1" != null && true ? "7.0.0-alpha.1" : "0.0.0"
3173
+ version: "7.0.0-alpha.2" != null && true ? "7.0.0-alpha.2" : "0.0.0"
3174
3174
  };
3175
3175
  var pkgJson;
3176
3176
  if (require.main == null) {
@@ -62498,17 +62498,17 @@ var require_brace_expansion = __commonJS({
62498
62498
  }
62499
62499
  });
62500
62500
 
62501
- // ../../node_modules/.pnpm/minimatch@3.0.5/node_modules/minimatch/minimatch.js
62501
+ // ../../node_modules/.pnpm/minimatch@3.1.2/node_modules/minimatch/minimatch.js
62502
62502
  var require_minimatch = __commonJS({
62503
- "../../node_modules/.pnpm/minimatch@3.0.5/node_modules/minimatch/minimatch.js"(exports2, module2) {
62503
+ "../../node_modules/.pnpm/minimatch@3.1.2/node_modules/minimatch/minimatch.js"(exports2, module2) {
62504
62504
  module2.exports = minimatch;
62505
62505
  minimatch.Minimatch = Minimatch;
62506
- var path2 = (() => {
62506
+ var path2 = function() {
62507
62507
  try {
62508
62508
  return require("path");
62509
62509
  } catch (e) {
62510
62510
  }
62511
- })() || {
62511
+ }() || {
62512
62512
  sep: "/"
62513
62513
  };
62514
62514
  minimatch.sep = path2.sep;
@@ -62541,9 +62541,8 @@ var require_minimatch = __commonJS({
62541
62541
  };
62542
62542
  }
62543
62543
  function ext(a, b) {
62544
- a = a || {};
62545
62544
  b = b || {};
62546
- const t = {};
62545
+ var t = {};
62547
62546
  Object.keys(a).forEach(function(k) {
62548
62547
  t[k] = a[k];
62549
62548
  });
@@ -62556,14 +62555,14 @@ var require_minimatch = __commonJS({
62556
62555
  if (!def || typeof def !== "object" || !Object.keys(def).length) {
62557
62556
  return minimatch;
62558
62557
  }
62559
- const orig = minimatch;
62560
- const m = function minimatch2(p, pattern, options) {
62558
+ var orig = minimatch;
62559
+ var m = function minimatch2(p, pattern, options) {
62561
62560
  return orig(p, pattern, ext(def, options));
62562
62561
  };
62563
62562
  m.Minimatch = function Minimatch2(pattern, options) {
62564
62563
  return new orig.Minimatch(pattern, ext(def, options));
62565
62564
  };
62566
- m.Minimatch.defaults = (options) => {
62565
+ m.Minimatch.defaults = function defaults2(options) {
62567
62566
  return orig.defaults(ext(def, options)).Minimatch;
62568
62567
  };
62569
62568
  m.filter = function filter3(pattern, options) {
@@ -62593,8 +62592,6 @@ var require_minimatch = __commonJS({
62593
62592
  if (!options.nocomment && pattern.charAt(0) === "#") {
62594
62593
  return false;
62595
62594
  }
62596
- if (pattern.trim() === "")
62597
- return p === "";
62598
62595
  return new Minimatch(pattern, options).match(p);
62599
62596
  }
62600
62597
  function Minimatch(pattern, options) {
@@ -62605,7 +62602,7 @@ var require_minimatch = __commonJS({
62605
62602
  if (!options)
62606
62603
  options = {};
62607
62604
  pattern = pattern.trim();
62608
- if (path2.sep !== "/") {
62605
+ if (!options.allowWindowsEscape && path2.sep !== "/") {
62609
62606
  pattern = pattern.split(path2.sep).join("/");
62610
62607
  }
62611
62608
  this.options = options;
@@ -62615,14 +62612,13 @@ var require_minimatch = __commonJS({
62615
62612
  this.negate = false;
62616
62613
  this.comment = false;
62617
62614
  this.empty = false;
62615
+ this.partial = !!options.partial;
62618
62616
  this.make();
62619
62617
  }
62620
62618
  Minimatch.prototype.debug = function() {
62621
62619
  };
62622
62620
  Minimatch.prototype.make = make;
62623
62621
  function make() {
62624
- if (this._made)
62625
- return;
62626
62622
  var pattern = this.pattern;
62627
62623
  var options = this.options;
62628
62624
  if (!options.nocomment && pattern.charAt(0) === "#") {
@@ -62636,7 +62632,9 @@ var require_minimatch = __commonJS({
62636
62632
  this.parseNegate();
62637
62633
  var set = this.globSet = this.braceExpand();
62638
62634
  if (options.debug)
62639
- this.debug = console.error;
62635
+ this.debug = function debug() {
62636
+ console.error.apply(console, arguments);
62637
+ };
62640
62638
  this.debug(this.pattern, set);
62641
62639
  set = this.globParts = set.map(function(s) {
62642
62640
  return s.split(slashSplit);
@@ -62688,7 +62686,7 @@ var require_minimatch = __commonJS({
62688
62686
  return expand(pattern);
62689
62687
  }
62690
62688
  var MAX_PATTERN_LENGTH = 1024 * 64;
62691
- var assertValidPattern = (pattern) => {
62689
+ var assertValidPattern = function(pattern) {
62692
62690
  if (typeof pattern !== "string") {
62693
62691
  throw new TypeError("invalid pattern");
62694
62692
  }
@@ -62701,12 +62699,16 @@ var require_minimatch = __commonJS({
62701
62699
  function parse(pattern, isSub) {
62702
62700
  assertValidPattern(pattern);
62703
62701
  var options = this.options;
62704
- if (!options.noglobstar && pattern === "**")
62705
- return GLOBSTAR;
62702
+ if (pattern === "**") {
62703
+ if (!options.noglobstar)
62704
+ return GLOBSTAR;
62705
+ else
62706
+ pattern = "*";
62707
+ }
62706
62708
  if (pattern === "")
62707
62709
  return "";
62708
62710
  var re = "";
62709
- var hasMagic = false;
62711
+ var hasMagic = !!options.nocase;
62710
62712
  var escaping = false;
62711
62713
  var patternListStack = [];
62712
62714
  var negativeLists = [];
@@ -62829,17 +62831,15 @@ var require_minimatch = __commonJS({
62829
62831
  escaping = false;
62830
62832
  continue;
62831
62833
  }
62832
- if (inClass) {
62833
- var cs = pattern.substring(classStart + 1, i);
62834
- try {
62835
- RegExp("[" + cs + "]");
62836
- } catch (er) {
62837
- var sp = this.parse(cs, SUBPARSE);
62838
- re = re.substr(0, reClassStart) + "\\[" + sp[0] + "\\]";
62839
- hasMagic = hasMagic || sp[1];
62840
- inClass = false;
62841
- continue;
62842
- }
62834
+ var cs = pattern.substring(classStart + 1, i);
62835
+ try {
62836
+ RegExp("[" + cs + "]");
62837
+ } catch (er) {
62838
+ var sp = this.parse(cs, SUBPARSE);
62839
+ re = re.substr(0, reClassStart) + "\\[" + sp[0] + "\\]";
62840
+ hasMagic = hasMagic || sp[1];
62841
+ inClass = false;
62842
+ continue;
62843
62843
  }
62844
62844
  hasMagic = true;
62845
62845
  inClass = false;
@@ -62881,8 +62881,8 @@ var require_minimatch = __commonJS({
62881
62881
  }
62882
62882
  var addPatternStart = false;
62883
62883
  switch (re.charAt(0)) {
62884
- case ".":
62885
62884
  case "[":
62885
+ case ".":
62886
62886
  case "(":
62887
62887
  addPatternStart = true;
62888
62888
  }
@@ -62960,7 +62960,7 @@ var require_minimatch = __commonJS({
62960
62960
  }
62961
62961
  minimatch.match = function(list, pattern, options) {
62962
62962
  options = options || {};
62963
- const mm = new Minimatch(pattern, options);
62963
+ var mm = new Minimatch(pattern, options);
62964
62964
  list = list.filter(function(f) {
62965
62965
  return mm.match(f);
62966
62966
  });
@@ -62969,8 +62969,9 @@ var require_minimatch = __commonJS({
62969
62969
  }
62970
62970
  return list;
62971
62971
  };
62972
- Minimatch.prototype.match = match;
62973
- function match(f, partial2) {
62972
+ Minimatch.prototype.match = function match(f, partial2) {
62973
+ if (typeof partial2 === "undefined")
62974
+ partial2 = this.partial;
62974
62975
  this.debug("match", f, this.pattern);
62975
62976
  if (this.comment)
62976
62977
  return false;
@@ -63009,7 +63010,7 @@ var require_minimatch = __commonJS({
63009
63010
  if (options.flipNegate)
63010
63011
  return false;
63011
63012
  return this.negate;
63012
- }
63013
+ };
63013
63014
  Minimatch.prototype.matchOne = function(file, pattern, partial2) {
63014
63015
  var options = this.options;
63015
63016
  this.debug("matchOne", { "this": this, file, pattern });
@@ -63057,11 +63058,7 @@ var require_minimatch = __commonJS({
63057
63058
  }
63058
63059
  var hit;
63059
63060
  if (typeof p === "string") {
63060
- if (options.nocase) {
63061
- hit = f.toLowerCase() === p.toLowerCase();
63062
- } else {
63063
- hit = f === p;
63064
- }
63061
+ hit = f === p;
63065
63062
  this.debug("string match", p, f, hit);
63066
63063
  } else {
63067
63064
  hit = f.match(p);
@@ -87812,6 +87809,7 @@ var require_sortLockfileKeys = __commonJS({
87812
87809
  var ROOT_KEYS_ORDER = {
87813
87810
  lockfileVersion: 1,
87814
87811
  neverBuiltDependencies: 2,
87812
+ onlyBuiltDependencies: 2,
87815
87813
  overrides: 3,
87816
87814
  packageExtensionsChecksum: 4,
87817
87815
  specifiers: 10,
@@ -87973,6 +87971,9 @@ var require_write = __commonJS({
87973
87971
  lockfileToSave.neverBuiltDependencies = lockfileToSave.neverBuiltDependencies.sort();
87974
87972
  }
87975
87973
  }
87974
+ if (lockfileToSave.onlyBuiltDependencies != null) {
87975
+ lockfileToSave.onlyBuiltDependencies = lockfileToSave.onlyBuiltDependencies.sort();
87976
+ }
87976
87977
  if (!lockfileToSave.packageExtensionsChecksum) {
87977
87978
  delete lockfileToSave.packageExtensionsChecksum;
87978
87979
  }
@@ -116054,11 +116055,11 @@ var require_resolveDependencies = __commonJS({
116054
116055
  status: "resolved"
116055
116056
  });
116056
116057
  ctx.resolvedPackagesByDepPath[depPath] = getResolvedPackage({
116058
+ allowBuild: ctx.allowBuild,
116057
116059
  dependencyLockfile: currentPkg.dependencyLockfile,
116058
116060
  depPath,
116059
116061
  force: ctx.force,
116060
116062
  hasBin,
116061
- neverBuiltDependencies: ctx.neverBuiltDependencies,
116062
116063
  pkg,
116063
116064
  pkgResponse,
116064
116065
  prepare,
@@ -116107,6 +116108,7 @@ var require_resolveDependencies = __commonJS({
116107
116108
  function getResolvedPackage(options) {
116108
116109
  var _a, _b;
116109
116110
  const peerDependencies = peerDependenciesWithoutOwn(options.pkg);
116111
+ const requiresBuild = options.allowBuild == null || options.allowBuild(options.pkg.name) ? options.dependencyLockfile != null ? Boolean(options.dependencyLockfile.requiresBuild) : void 0 : false;
116110
116112
  return {
116111
116113
  additionalInfo: {
116112
116114
  bundledDependencies: options.pkg.bundledDependencies,
@@ -116132,7 +116134,7 @@ var require_resolveDependencies = __commonJS({
116132
116134
  peerDependenciesMeta: options.pkg.peerDependenciesMeta,
116133
116135
  prepare: options.prepare,
116134
116136
  prod: !options.wantedDependency.dev && !options.wantedDependency.optional,
116135
- requiresBuild: options.neverBuiltDependencies.has(options.pkg.name) ? false : options.dependencyLockfile != null ? Boolean(options.dependencyLockfile.requiresBuild) : void 0,
116137
+ requiresBuild,
116136
116138
  resolution: options.pkgResponse.body.resolution,
116137
116139
  version: options.pkg.version
116138
116140
  };
@@ -116200,10 +116202,11 @@ var require_resolveDependencyTree = __commonJS({
116200
116202
  var resolveDependencies_1 = __importDefault(require_resolveDependencies());
116201
116203
  __exportStar(require_nodeIdUtils(), exports2);
116202
116204
  async function default_1(importers, opts) {
116203
- var _a, _b;
116205
+ var _a;
116204
116206
  const directDepsByImporterId = {};
116205
116207
  const wantedToBeSkippedPackageIds = /* @__PURE__ */ new Set();
116206
116208
  const ctx = {
116209
+ allowBuild: opts.allowBuild,
116207
116210
  childrenByParentDepPath: {},
116208
116211
  currentLockfile: opts.currentLockfile,
116209
116212
  defaultTag: opts.tag,
@@ -116214,7 +116217,6 @@ var require_resolveDependencyTree = __commonJS({
116214
116217
  forceFullResolution: opts.forceFullResolution,
116215
116218
  linkWorkspacePackagesDepth: (_a = opts.linkWorkspacePackagesDepth) !== null && _a !== void 0 ? _a : -1,
116216
116219
  lockfileDir: opts.lockfileDir,
116217
- neverBuiltDependencies: (_b = opts.neverBuiltDependencies) !== null && _b !== void 0 ? _b : /* @__PURE__ */ new Set(),
116218
116220
  nodeVersion: opts.nodeVersion,
116219
116221
  outdatedDependencies: {},
116220
116222
  pendingNodes: [],
@@ -117973,7 +117975,7 @@ var require_lib93 = __commonJS({
117973
117975
  var updateLockfile_1 = __importDefault(require_updateLockfile());
117974
117976
  var updateProjectManifest_1 = __importDefault(require_updateProjectManifest());
117975
117977
  async function default_1(importers, opts) {
117976
- var _a, _b, _c, _d, _e;
117978
+ var _a, _b, _c, _d;
117977
117979
  const _toResolveImporter = toResolveImporter_1.default.bind(null, {
117978
117980
  defaultUpdateDepth: opts.defaultUpdateDepth,
117979
117981
  lockfileOnly: opts.dryRun,
@@ -118056,7 +118058,7 @@ var require_lib93 = __commonJS({
118056
118058
  const { newLockfile, pendingRequiresBuilds } = (0, updateLockfile_1.default)(dependenciesGraph, opts.wantedLockfile, opts.virtualStoreDir, opts.registries);
118057
118059
  if (opts.forceFullResolution && opts.wantedLockfile != null) {
118058
118060
  for (const [depPath, pkg] of Object.entries(dependenciesGraph)) {
118059
- if (((_d = opts.neverBuiltDependencies) === null || _d === void 0 ? void 0 : _d.has(pkg.name)) || ((_e = opts.wantedLockfile.packages) === null || _e === void 0 ? void 0 : _e[depPath]) == null || pkg.requiresBuild)
118061
+ if (opts.allowBuild != null && !opts.allowBuild(pkg.name) || ((_d = opts.wantedLockfile.packages) === null || _d === void 0 ? void 0 : _d[depPath]) == null || pkg.requiresBuild)
118060
118062
  continue;
118061
118063
  pendingRequiresBuilds.push(depPath);
118062
118064
  }
@@ -118266,7 +118268,7 @@ var require_parseWantedDependencies = __commonJS({
118266
118268
  var which_version_is_pinned_1 = __importDefault(require_lib92());
118267
118269
  function parseWantedDependencies(rawWantedDependencies, opts) {
118268
118270
  return rawWantedDependencies.map((rawWantedDependency) => {
118269
- var _a;
118271
+ var _a, _b;
118270
118272
  const parsed = (0, parse_wanted_dependency_1.default)(rawWantedDependency);
118271
118273
  const alias = parsed["alias"];
118272
118274
  let pref = parsed["pref"];
@@ -118300,6 +118302,13 @@ var require_parseWantedDependencies = __commonJS({
118300
118302
  raw: `${rawWantedDependency}@${opts.preferredSpecs[alias]}`
118301
118303
  };
118302
118304
  }
118305
+ if (alias && ((_b = opts.overrides) === null || _b === void 0 ? void 0 : _b[alias])) {
118306
+ return {
118307
+ ...result2,
118308
+ pref: opts.overrides[alias],
118309
+ raw: `${alias}@${opts.overrides[alias]}`
118310
+ };
118311
+ }
118303
118312
  return {
118304
118313
  ...result2,
118305
118314
  pref: opts.defaultTag
@@ -118873,6 +118882,9 @@ var require_extendInstallOptions = __commonJS({
118873
118882
  }
118874
118883
  }
118875
118884
  }
118885
+ if (opts.onlyBuiltDependencies && opts.neverBuiltDependencies) {
118886
+ throw new error_1.default("CONFIG_CONFLICT_BUILT_DEPENDENCIES", "Cannot have both neverBuiltDependencies and onlyBuiltDependencies");
118887
+ }
118876
118888
  const defaultOpts = await defaults2(opts);
118877
118889
  const extendedOpts = {
118878
118890
  ...defaultOpts,
@@ -119454,7 +119466,7 @@ var require_install = __commonJS({
119454
119466
  }
119455
119467
  return result2;
119456
119468
  async function _install() {
119457
- var _a2, _b2, _c2, _d, _e, _f, _g, _h, _j, _k;
119469
+ var _a2, _b2, _c2, _d, _e, _f;
119458
119470
  const scriptsOpts = {
119459
119471
  extraBinPaths: opts.extraBinPaths,
119460
119472
  rawConfig: opts.rawConfig,
@@ -119474,10 +119486,16 @@ var require_install = __commonJS({
119474
119486
  });
119475
119487
  }
119476
119488
  const packageExtensionsChecksum = (0, isEmpty_1.default)((_b2 = opts.packageExtensions) !== null && _b2 !== void 0 ? _b2 : {}) ? void 0 : createObjectChecksum(opts.packageExtensions);
119477
- let needsFullResolution = !maybeOpts.ignorePackageManifest && (!(0, equals_1.default)((_c2 = ctx.wantedLockfile.overrides) !== null && _c2 !== void 0 ? _c2 : {}, (_d = opts.overrides) !== null && _d !== void 0 ? _d : {}) || !(0, equals_1.default)(((_e = ctx.wantedLockfile.neverBuiltDependencies) !== null && _e !== void 0 ? _e : []).sort(), ((_f = opts.neverBuiltDependencies) !== null && _f !== void 0 ? _f : []).sort()) || ctx.wantedLockfile.packageExtensionsChecksum !== packageExtensionsChecksum) || opts.fixLockfile;
119489
+ let needsFullResolution = !maybeOpts.ignorePackageManifest && lockfileIsUpToDate(ctx.wantedLockfile, {
119490
+ overrides: opts.overrides,
119491
+ neverBuiltDependencies: opts.neverBuiltDependencies,
119492
+ onlyBuiltDependencies: opts.onlyBuiltDependencies,
119493
+ packageExtensionsChecksum
119494
+ }) || opts.fixLockfile;
119478
119495
  if (needsFullResolution) {
119479
119496
  ctx.wantedLockfile.overrides = opts.overrides;
119480
119497
  ctx.wantedLockfile.neverBuiltDependencies = opts.neverBuiltDependencies;
119498
+ ctx.wantedLockfile.onlyBuiltDependencies = opts.onlyBuiltDependencies;
119481
119499
  ctx.wantedLockfile.packageExtensionsChecksum = packageExtensionsChecksum;
119482
119500
  }
119483
119501
  const frozenLockfile = opts.frozenLockfile || opts.frozenLockfileIfExists && ctx.existsWantedLockfile;
@@ -119510,7 +119528,7 @@ var require_install = __commonJS({
119510
119528
  pnpmVersion: opts.packageManager.name === "pnpm" ? opts.packageManager.version : ""
119511
119529
  },
119512
119530
  projects: ctx.projects,
119513
- prunedAt: (_g = ctx.modulesFile) === null || _g === void 0 ? void 0 : _g.prunedAt,
119531
+ prunedAt: (_c2 = ctx.modulesFile) === null || _c2 === void 0 ? void 0 : _c2.prunedAt,
119514
119532
  pruneVirtualStore,
119515
119533
  wantedLockfile: maybeOpts.ignorePackageManifest ? void 0 : ctx.wantedLockfile
119516
119534
  });
@@ -119547,7 +119565,7 @@ var require_install = __commonJS({
119547
119565
  case "install": {
119548
119566
  await installCase({
119549
119567
  ...project,
119550
- updatePackageManifest: (_h = opts.updatePackageManifest) !== null && _h !== void 0 ? _h : opts.update
119568
+ updatePackageManifest: (_d = opts.updatePackageManifest) !== null && _d !== void 0 ? _d : opts.update
119551
119569
  });
119552
119570
  break;
119553
119571
  }
@@ -119575,8 +119593,8 @@ var require_install = __commonJS({
119575
119593
  break;
119576
119594
  }
119577
119595
  case "unlinkSome": {
119578
- if (((_j = project.manifest) === null || _j === void 0 ? void 0 : _j.name) && opts.globalBin) {
119579
- await (0, remove_bins_1.removeBin)(path_1.default.join(opts.globalBin, (_k = project.manifest) === null || _k === void 0 ? void 0 : _k.name));
119596
+ if (((_e = project.manifest) === null || _e === void 0 ? void 0 : _e.name) && opts.globalBin) {
119597
+ await (0, remove_bins_1.removeBin)(path_1.default.join(opts.globalBin, (_f = project.manifest) === null || _f === void 0 ? void 0 : _f.name));
119580
119598
  }
119581
119599
  const packagesToInstall = [];
119582
119600
  const allDeps = (0, manifest_utils_1.getAllDependenciesFromManifest)(project.manifest);
@@ -119645,7 +119663,8 @@ var require_install = __commonJS({
119645
119663
  optional: project.targetDependenciesField === "optionalDependencies",
119646
119664
  optionalDependencies,
119647
119665
  updateWorkspaceDependencies: opts.update,
119648
- preferredSpecs
119666
+ preferredSpecs,
119667
+ overrides: opts.overrides
119649
119668
  });
119650
119669
  projectsToInstall.push({
119651
119670
  pruneDirectDependencies: false,
@@ -119667,6 +119686,10 @@ var require_install = __commonJS({
119667
119686
  }
119668
119687
  }
119669
119688
  exports2.mutateModules = mutateModules;
119689
+ function lockfileIsUpToDate(lockfile, { neverBuiltDependencies, onlyBuiltDependencies, overrides, packageExtensionsChecksum }) {
119690
+ var _a, _b;
119691
+ return !(0, equals_1.default)((_a = lockfile.overrides) !== null && _a !== void 0 ? _a : {}, overrides !== null && overrides !== void 0 ? overrides : {}) || !(0, equals_1.default)(((_b = lockfile.neverBuiltDependencies) !== null && _b !== void 0 ? _b : []).sort(), (neverBuiltDependencies !== null && neverBuiltDependencies !== void 0 ? neverBuiltDependencies : []).sort()) || !(0, equals_1.default)(onlyBuiltDependencies === null || onlyBuiltDependencies === void 0 ? void 0 : onlyBuiltDependencies.sort(), lockfile.onlyBuiltDependencies) || lockfile.packageExtensionsChecksum !== packageExtensionsChecksum;
119692
+ }
119670
119693
  function createObjectChecksum(obj) {
119671
119694
  const s = JSON.stringify(obj);
119672
119695
  return crypto_1.default.createHash("md5").update(s).digest("hex");
@@ -119789,6 +119812,7 @@ var require_install = __commonJS({
119789
119812
  }), {});
119790
119813
  }
119791
119814
  let { dependenciesGraph, dependenciesByProjectId, finishLockfileUpdates, linkedDependenciesByProjectId, newLockfile, outdatedDependencies, peerDependencyIssuesByProjects, wantedToBeSkippedPackageIds, waitTillAllFetchingsFinish } = await (0, resolve_dependencies_1.default)(projects, {
119815
+ allowBuild: createAllowBuildFunction(opts),
119792
119816
  currentLockfile: ctx.currentLockfile,
119793
119817
  defaultUpdateDepth: opts.update || opts.updateMatching != null ? opts.depth : -1,
119794
119818
  dryRun: opts.lockfileOnly,
@@ -119798,7 +119822,6 @@ var require_install = __commonJS({
119798
119822
  hooks: opts.hooks,
119799
119823
  linkWorkspacePackagesDepth: (_b = opts.linkWorkspacePackagesDepth) !== null && _b !== void 0 ? _b : opts.saveWorkspaceProtocol ? 0 : -1,
119800
119824
  lockfileDir: opts.lockfileDir,
119801
- neverBuiltDependencies: new Set(opts.neverBuiltDependencies),
119802
119825
  nodeVersion: opts.nodeVersion,
119803
119826
  pnpmVersion: opts.packageManager.name === "pnpm" ? opts.packageManager.version : "",
119804
119827
  preferWorkspacePackages: opts.preferWorkspacePackages,
@@ -120020,6 +120043,16 @@ var require_install = __commonJS({
120020
120043
  }))
120021
120044
  };
120022
120045
  };
120046
+ function createAllowBuildFunction(opts) {
120047
+ if (opts.neverBuiltDependencies != null && opts.neverBuiltDependencies.length > 0) {
120048
+ const neverBuiltDependencies = new Set(opts.neverBuiltDependencies);
120049
+ return (pkgName) => !neverBuiltDependencies.has(pkgName);
120050
+ } else if (opts.onlyBuiltDependencies != null) {
120051
+ const onlyBuiltDependencies = new Set(opts.onlyBuiltDependencies);
120052
+ return (pkgName) => onlyBuiltDependencies.has(pkgName);
120053
+ }
120054
+ return void 0;
120055
+ }
120023
120056
  var installInContext = async (projects, ctx, opts) => {
120024
120057
  var _a;
120025
120058
  try {
@@ -120248,14 +120281,16 @@ var require_getOptionsFromRootManifest = __commonJS({
120248
120281
  "use strict";
120249
120282
  Object.defineProperty(exports2, "__esModule", { value: true });
120250
120283
  function getOptionsFromRootManifest(manifest) {
120251
- var _a, _b, _c, _d, _e, _f;
120284
+ var _a, _b, _c, _d, _e, _f, _g;
120252
120285
  const overrides = (_b = (_a = manifest.pnpm) === null || _a === void 0 ? void 0 : _a.overrides) !== null && _b !== void 0 ? _b : manifest.resolutions;
120253
120286
  const neverBuiltDependencies = (_d = (_c = manifest.pnpm) === null || _c === void 0 ? void 0 : _c.neverBuiltDependencies) !== null && _d !== void 0 ? _d : [];
120254
- const packageExtensions = (_e = manifest.pnpm) === null || _e === void 0 ? void 0 : _e.packageExtensions;
120255
- const peerDependencyRules = (_f = manifest.pnpm) === null || _f === void 0 ? void 0 : _f.peerDependencyRules;
120287
+ const onlyBuiltDependencies = (_e = manifest.pnpm) === null || _e === void 0 ? void 0 : _e.onlyBuiltDependencies;
120288
+ const packageExtensions = (_f = manifest.pnpm) === null || _f === void 0 ? void 0 : _f.packageExtensions;
120289
+ const peerDependencyRules = (_g = manifest.pnpm) === null || _g === void 0 ? void 0 : _g.peerDependencyRules;
120256
120290
  return {
120257
120291
  overrides,
120258
120292
  neverBuiltDependencies,
120293
+ onlyBuiltDependencies,
120259
120294
  packageExtensions,
120260
120295
  peerDependencyRules
120261
120296
  };
@@ -180857,7 +180892,8 @@ var require_shorthands = __commonJS({
180857
180892
  "frozen-shrinkwrap": "--frozen-lockfile",
180858
180893
  "prefer-frozen-shrinkwrap": "--prefer-frozen-lockfile",
180859
180894
  w: "--workspace-root",
180860
- i: "--interactive"
180895
+ i: "--interactive",
180896
+ F: "--filter"
180861
180897
  };
180862
180898
  }
180863
180899
  });
package/dist/pnpx.cjs CHANGED
@@ -57495,17 +57495,17 @@ var require_brace_expansion = __commonJS({
57495
57495
  }
57496
57496
  });
57497
57497
 
57498
- // ../../node_modules/.pnpm/minimatch@3.0.5/node_modules/minimatch/minimatch.js
57498
+ // ../../node_modules/.pnpm/minimatch@3.1.2/node_modules/minimatch/minimatch.js
57499
57499
  var require_minimatch = __commonJS({
57500
- "../../node_modules/.pnpm/minimatch@3.0.5/node_modules/minimatch/minimatch.js"(exports2, module2) {
57500
+ "../../node_modules/.pnpm/minimatch@3.1.2/node_modules/minimatch/minimatch.js"(exports2, module2) {
57501
57501
  module2.exports = minimatch;
57502
57502
  minimatch.Minimatch = Minimatch;
57503
- var path2 = (() => {
57503
+ var path2 = function() {
57504
57504
  try {
57505
57505
  return require("path");
57506
57506
  } catch (e) {
57507
57507
  }
57508
- })() || {
57508
+ }() || {
57509
57509
  sep: "/"
57510
57510
  };
57511
57511
  minimatch.sep = path2.sep;
@@ -57538,9 +57538,8 @@ var require_minimatch = __commonJS({
57538
57538
  };
57539
57539
  }
57540
57540
  function ext(a, b) {
57541
- a = a || {};
57542
57541
  b = b || {};
57543
- const t = {};
57542
+ var t = {};
57544
57543
  Object.keys(a).forEach(function(k) {
57545
57544
  t[k] = a[k];
57546
57545
  });
@@ -57553,14 +57552,14 @@ var require_minimatch = __commonJS({
57553
57552
  if (!def || typeof def !== "object" || !Object.keys(def).length) {
57554
57553
  return minimatch;
57555
57554
  }
57556
- const orig = minimatch;
57557
- const m = function minimatch2(p, pattern, options) {
57555
+ var orig = minimatch;
57556
+ var m = function minimatch2(p, pattern, options) {
57558
57557
  return orig(p, pattern, ext(def, options));
57559
57558
  };
57560
57559
  m.Minimatch = function Minimatch2(pattern, options) {
57561
57560
  return new orig.Minimatch(pattern, ext(def, options));
57562
57561
  };
57563
- m.Minimatch.defaults = (options) => {
57562
+ m.Minimatch.defaults = function defaults2(options) {
57564
57563
  return orig.defaults(ext(def, options)).Minimatch;
57565
57564
  };
57566
57565
  m.filter = function filter3(pattern, options) {
@@ -57590,8 +57589,6 @@ var require_minimatch = __commonJS({
57590
57589
  if (!options.nocomment && pattern.charAt(0) === "#") {
57591
57590
  return false;
57592
57591
  }
57593
- if (pattern.trim() === "")
57594
- return p === "";
57595
57592
  return new Minimatch(pattern, options).match(p);
57596
57593
  }
57597
57594
  function Minimatch(pattern, options) {
@@ -57602,7 +57599,7 @@ var require_minimatch = __commonJS({
57602
57599
  if (!options)
57603
57600
  options = {};
57604
57601
  pattern = pattern.trim();
57605
- if (path2.sep !== "/") {
57602
+ if (!options.allowWindowsEscape && path2.sep !== "/") {
57606
57603
  pattern = pattern.split(path2.sep).join("/");
57607
57604
  }
57608
57605
  this.options = options;
@@ -57612,14 +57609,13 @@ var require_minimatch = __commonJS({
57612
57609
  this.negate = false;
57613
57610
  this.comment = false;
57614
57611
  this.empty = false;
57612
+ this.partial = !!options.partial;
57615
57613
  this.make();
57616
57614
  }
57617
57615
  Minimatch.prototype.debug = function() {
57618
57616
  };
57619
57617
  Minimatch.prototype.make = make;
57620
57618
  function make() {
57621
- if (this._made)
57622
- return;
57623
57619
  var pattern = this.pattern;
57624
57620
  var options = this.options;
57625
57621
  if (!options.nocomment && pattern.charAt(0) === "#") {
@@ -57633,7 +57629,9 @@ var require_minimatch = __commonJS({
57633
57629
  this.parseNegate();
57634
57630
  var set = this.globSet = this.braceExpand();
57635
57631
  if (options.debug)
57636
- this.debug = console.error;
57632
+ this.debug = function debug() {
57633
+ console.error.apply(console, arguments);
57634
+ };
57637
57635
  this.debug(this.pattern, set);
57638
57636
  set = this.globParts = set.map(function(s) {
57639
57637
  return s.split(slashSplit);
@@ -57685,7 +57683,7 @@ var require_minimatch = __commonJS({
57685
57683
  return expand(pattern);
57686
57684
  }
57687
57685
  var MAX_PATTERN_LENGTH = 1024 * 64;
57688
- var assertValidPattern = (pattern) => {
57686
+ var assertValidPattern = function(pattern) {
57689
57687
  if (typeof pattern !== "string") {
57690
57688
  throw new TypeError("invalid pattern");
57691
57689
  }
@@ -57698,12 +57696,16 @@ var require_minimatch = __commonJS({
57698
57696
  function parse(pattern, isSub) {
57699
57697
  assertValidPattern(pattern);
57700
57698
  var options = this.options;
57701
- if (!options.noglobstar && pattern === "**")
57702
- return GLOBSTAR;
57699
+ if (pattern === "**") {
57700
+ if (!options.noglobstar)
57701
+ return GLOBSTAR;
57702
+ else
57703
+ pattern = "*";
57704
+ }
57703
57705
  if (pattern === "")
57704
57706
  return "";
57705
57707
  var re = "";
57706
- var hasMagic = false;
57708
+ var hasMagic = !!options.nocase;
57707
57709
  var escaping = false;
57708
57710
  var patternListStack = [];
57709
57711
  var negativeLists = [];
@@ -57826,17 +57828,15 @@ var require_minimatch = __commonJS({
57826
57828
  escaping = false;
57827
57829
  continue;
57828
57830
  }
57829
- if (inClass) {
57830
- var cs = pattern.substring(classStart + 1, i);
57831
- try {
57832
- RegExp("[" + cs + "]");
57833
- } catch (er) {
57834
- var sp = this.parse(cs, SUBPARSE);
57835
- re = re.substr(0, reClassStart) + "\\[" + sp[0] + "\\]";
57836
- hasMagic = hasMagic || sp[1];
57837
- inClass = false;
57838
- continue;
57839
- }
57831
+ var cs = pattern.substring(classStart + 1, i);
57832
+ try {
57833
+ RegExp("[" + cs + "]");
57834
+ } catch (er) {
57835
+ var sp = this.parse(cs, SUBPARSE);
57836
+ re = re.substr(0, reClassStart) + "\\[" + sp[0] + "\\]";
57837
+ hasMagic = hasMagic || sp[1];
57838
+ inClass = false;
57839
+ continue;
57840
57840
  }
57841
57841
  hasMagic = true;
57842
57842
  inClass = false;
@@ -57878,8 +57878,8 @@ var require_minimatch = __commonJS({
57878
57878
  }
57879
57879
  var addPatternStart = false;
57880
57880
  switch (re.charAt(0)) {
57881
- case ".":
57882
57881
  case "[":
57882
+ case ".":
57883
57883
  case "(":
57884
57884
  addPatternStart = true;
57885
57885
  }
@@ -57957,7 +57957,7 @@ var require_minimatch = __commonJS({
57957
57957
  }
57958
57958
  minimatch.match = function(list, pattern, options) {
57959
57959
  options = options || {};
57960
- const mm = new Minimatch(pattern, options);
57960
+ var mm = new Minimatch(pattern, options);
57961
57961
  list = list.filter(function(f) {
57962
57962
  return mm.match(f);
57963
57963
  });
@@ -57966,8 +57966,9 @@ var require_minimatch = __commonJS({
57966
57966
  }
57967
57967
  return list;
57968
57968
  };
57969
- Minimatch.prototype.match = match;
57970
- function match(f, partial2) {
57969
+ Minimatch.prototype.match = function match(f, partial2) {
57970
+ if (typeof partial2 === "undefined")
57971
+ partial2 = this.partial;
57971
57972
  this.debug("match", f, this.pattern);
57972
57973
  if (this.comment)
57973
57974
  return false;
@@ -58006,7 +58007,7 @@ var require_minimatch = __commonJS({
58006
58007
  if (options.flipNegate)
58007
58008
  return false;
58008
58009
  return this.negate;
58009
- }
58010
+ };
58010
58011
  Minimatch.prototype.matchOne = function(file, pattern, partial2) {
58011
58012
  var options = this.options;
58012
58013
  this.debug("matchOne", { "this": this, file, pattern });
@@ -58054,11 +58055,7 @@ var require_minimatch = __commonJS({
58054
58055
  }
58055
58056
  var hit;
58056
58057
  if (typeof p === "string") {
58057
- if (options.nocase) {
58058
- hit = f.toLowerCase() === p.toLowerCase();
58059
- } else {
58060
- hit = f === p;
58061
- }
58058
+ hit = f === p;
58062
58059
  this.debug("string match", p, f, hit);
58063
58060
  } else {
58064
58061
  hit = f.match(p);
@@ -82809,6 +82806,7 @@ var require_sortLockfileKeys = __commonJS({
82809
82806
  var ROOT_KEYS_ORDER = {
82810
82807
  lockfileVersion: 1,
82811
82808
  neverBuiltDependencies: 2,
82809
+ onlyBuiltDependencies: 2,
82812
82810
  overrides: 3,
82813
82811
  packageExtensionsChecksum: 4,
82814
82812
  specifiers: 10,
@@ -82970,6 +82968,9 @@ var require_write = __commonJS({
82970
82968
  lockfileToSave.neverBuiltDependencies = lockfileToSave.neverBuiltDependencies.sort();
82971
82969
  }
82972
82970
  }
82971
+ if (lockfileToSave.onlyBuiltDependencies != null) {
82972
+ lockfileToSave.onlyBuiltDependencies = lockfileToSave.onlyBuiltDependencies.sort();
82973
+ }
82973
82974
  if (!lockfileToSave.packageExtensionsChecksum) {
82974
82975
  delete lockfileToSave.packageExtensionsChecksum;
82975
82976
  }
@@ -111051,11 +111052,11 @@ var require_resolveDependencies = __commonJS({
111051
111052
  status: "resolved"
111052
111053
  });
111053
111054
  ctx.resolvedPackagesByDepPath[depPath] = getResolvedPackage({
111055
+ allowBuild: ctx.allowBuild,
111054
111056
  dependencyLockfile: currentPkg.dependencyLockfile,
111055
111057
  depPath,
111056
111058
  force: ctx.force,
111057
111059
  hasBin,
111058
- neverBuiltDependencies: ctx.neverBuiltDependencies,
111059
111060
  pkg,
111060
111061
  pkgResponse,
111061
111062
  prepare,
@@ -111104,6 +111105,7 @@ var require_resolveDependencies = __commonJS({
111104
111105
  function getResolvedPackage(options) {
111105
111106
  var _a, _b;
111106
111107
  const peerDependencies = peerDependenciesWithoutOwn(options.pkg);
111108
+ const requiresBuild = options.allowBuild == null || options.allowBuild(options.pkg.name) ? options.dependencyLockfile != null ? Boolean(options.dependencyLockfile.requiresBuild) : void 0 : false;
111107
111109
  return {
111108
111110
  additionalInfo: {
111109
111111
  bundledDependencies: options.pkg.bundledDependencies,
@@ -111129,7 +111131,7 @@ var require_resolveDependencies = __commonJS({
111129
111131
  peerDependenciesMeta: options.pkg.peerDependenciesMeta,
111130
111132
  prepare: options.prepare,
111131
111133
  prod: !options.wantedDependency.dev && !options.wantedDependency.optional,
111132
- requiresBuild: options.neverBuiltDependencies.has(options.pkg.name) ? false : options.dependencyLockfile != null ? Boolean(options.dependencyLockfile.requiresBuild) : void 0,
111134
+ requiresBuild,
111133
111135
  resolution: options.pkgResponse.body.resolution,
111134
111136
  version: options.pkg.version
111135
111137
  };
@@ -111197,10 +111199,11 @@ var require_resolveDependencyTree = __commonJS({
111197
111199
  var resolveDependencies_1 = __importDefault2(require_resolveDependencies());
111198
111200
  __exportStar(require_nodeIdUtils(), exports2);
111199
111201
  async function default_1(importers, opts) {
111200
- var _a, _b;
111202
+ var _a;
111201
111203
  const directDepsByImporterId = {};
111202
111204
  const wantedToBeSkippedPackageIds = /* @__PURE__ */ new Set();
111203
111205
  const ctx = {
111206
+ allowBuild: opts.allowBuild,
111204
111207
  childrenByParentDepPath: {},
111205
111208
  currentLockfile: opts.currentLockfile,
111206
111209
  defaultTag: opts.tag,
@@ -111211,7 +111214,6 @@ var require_resolveDependencyTree = __commonJS({
111211
111214
  forceFullResolution: opts.forceFullResolution,
111212
111215
  linkWorkspacePackagesDepth: (_a = opts.linkWorkspacePackagesDepth) !== null && _a !== void 0 ? _a : -1,
111213
111216
  lockfileDir: opts.lockfileDir,
111214
- neverBuiltDependencies: (_b = opts.neverBuiltDependencies) !== null && _b !== void 0 ? _b : /* @__PURE__ */ new Set(),
111215
111217
  nodeVersion: opts.nodeVersion,
111216
111218
  outdatedDependencies: {},
111217
111219
  pendingNodes: [],
@@ -112970,7 +112972,7 @@ var require_lib92 = __commonJS({
112970
112972
  var updateLockfile_1 = __importDefault2(require_updateLockfile());
112971
112973
  var updateProjectManifest_1 = __importDefault2(require_updateProjectManifest());
112972
112974
  async function default_1(importers, opts) {
112973
- var _a, _b, _c, _d, _e;
112975
+ var _a, _b, _c, _d;
112974
112976
  const _toResolveImporter = toResolveImporter_1.default.bind(null, {
112975
112977
  defaultUpdateDepth: opts.defaultUpdateDepth,
112976
112978
  lockfileOnly: opts.dryRun,
@@ -113053,7 +113055,7 @@ var require_lib92 = __commonJS({
113053
113055
  const { newLockfile, pendingRequiresBuilds } = (0, updateLockfile_1.default)(dependenciesGraph, opts.wantedLockfile, opts.virtualStoreDir, opts.registries);
113054
113056
  if (opts.forceFullResolution && opts.wantedLockfile != null) {
113055
113057
  for (const [depPath, pkg] of Object.entries(dependenciesGraph)) {
113056
- if (((_d = opts.neverBuiltDependencies) === null || _d === void 0 ? void 0 : _d.has(pkg.name)) || ((_e = opts.wantedLockfile.packages) === null || _e === void 0 ? void 0 : _e[depPath]) == null || pkg.requiresBuild)
113058
+ if (opts.allowBuild != null && !opts.allowBuild(pkg.name) || ((_d = opts.wantedLockfile.packages) === null || _d === void 0 ? void 0 : _d[depPath]) == null || pkg.requiresBuild)
113057
113059
  continue;
113058
113060
  pendingRequiresBuilds.push(depPath);
113059
113061
  }
@@ -113263,7 +113265,7 @@ var require_parseWantedDependencies = __commonJS({
113263
113265
  var which_version_is_pinned_1 = __importDefault2(require_lib91());
113264
113266
  function parseWantedDependencies(rawWantedDependencies, opts) {
113265
113267
  return rawWantedDependencies.map((rawWantedDependency) => {
113266
- var _a;
113268
+ var _a, _b;
113267
113269
  const parsed = (0, parse_wanted_dependency_1.default)(rawWantedDependency);
113268
113270
  const alias = parsed["alias"];
113269
113271
  let pref = parsed["pref"];
@@ -113297,6 +113299,13 @@ var require_parseWantedDependencies = __commonJS({
113297
113299
  raw: `${rawWantedDependency}@${opts.preferredSpecs[alias]}`
113298
113300
  };
113299
113301
  }
113302
+ if (alias && ((_b = opts.overrides) === null || _b === void 0 ? void 0 : _b[alias])) {
113303
+ return {
113304
+ ...result2,
113305
+ pref: opts.overrides[alias],
113306
+ raw: `${alias}@${opts.overrides[alias]}`
113307
+ };
113308
+ }
113300
113309
  return {
113301
113310
  ...result2,
113302
113311
  pref: opts.defaultTag
@@ -113870,6 +113879,9 @@ var require_extendInstallOptions = __commonJS({
113870
113879
  }
113871
113880
  }
113872
113881
  }
113882
+ if (opts.onlyBuiltDependencies && opts.neverBuiltDependencies) {
113883
+ throw new error_1.default("CONFIG_CONFLICT_BUILT_DEPENDENCIES", "Cannot have both neverBuiltDependencies and onlyBuiltDependencies");
113884
+ }
113873
113885
  const defaultOpts = await defaults2(opts);
113874
113886
  const extendedOpts = {
113875
113887
  ...defaultOpts,
@@ -114451,7 +114463,7 @@ var require_install = __commonJS({
114451
114463
  }
114452
114464
  return result2;
114453
114465
  async function _install() {
114454
- var _a2, _b2, _c2, _d, _e, _f, _g, _h, _j, _k;
114466
+ var _a2, _b2, _c2, _d, _e, _f;
114455
114467
  const scriptsOpts = {
114456
114468
  extraBinPaths: opts.extraBinPaths,
114457
114469
  rawConfig: opts.rawConfig,
@@ -114471,10 +114483,16 @@ var require_install = __commonJS({
114471
114483
  });
114472
114484
  }
114473
114485
  const packageExtensionsChecksum = (0, isEmpty_1.default)((_b2 = opts.packageExtensions) !== null && _b2 !== void 0 ? _b2 : {}) ? void 0 : createObjectChecksum(opts.packageExtensions);
114474
- let needsFullResolution = !maybeOpts.ignorePackageManifest && (!(0, equals_1.default)((_c2 = ctx.wantedLockfile.overrides) !== null && _c2 !== void 0 ? _c2 : {}, (_d = opts.overrides) !== null && _d !== void 0 ? _d : {}) || !(0, equals_1.default)(((_e = ctx.wantedLockfile.neverBuiltDependencies) !== null && _e !== void 0 ? _e : []).sort(), ((_f = opts.neverBuiltDependencies) !== null && _f !== void 0 ? _f : []).sort()) || ctx.wantedLockfile.packageExtensionsChecksum !== packageExtensionsChecksum) || opts.fixLockfile;
114486
+ let needsFullResolution = !maybeOpts.ignorePackageManifest && lockfileIsUpToDate(ctx.wantedLockfile, {
114487
+ overrides: opts.overrides,
114488
+ neverBuiltDependencies: opts.neverBuiltDependencies,
114489
+ onlyBuiltDependencies: opts.onlyBuiltDependencies,
114490
+ packageExtensionsChecksum
114491
+ }) || opts.fixLockfile;
114475
114492
  if (needsFullResolution) {
114476
114493
  ctx.wantedLockfile.overrides = opts.overrides;
114477
114494
  ctx.wantedLockfile.neverBuiltDependencies = opts.neverBuiltDependencies;
114495
+ ctx.wantedLockfile.onlyBuiltDependencies = opts.onlyBuiltDependencies;
114478
114496
  ctx.wantedLockfile.packageExtensionsChecksum = packageExtensionsChecksum;
114479
114497
  }
114480
114498
  const frozenLockfile = opts.frozenLockfile || opts.frozenLockfileIfExists && ctx.existsWantedLockfile;
@@ -114507,7 +114525,7 @@ var require_install = __commonJS({
114507
114525
  pnpmVersion: opts.packageManager.name === "pnpm" ? opts.packageManager.version : ""
114508
114526
  },
114509
114527
  projects: ctx.projects,
114510
- prunedAt: (_g = ctx.modulesFile) === null || _g === void 0 ? void 0 : _g.prunedAt,
114528
+ prunedAt: (_c2 = ctx.modulesFile) === null || _c2 === void 0 ? void 0 : _c2.prunedAt,
114511
114529
  pruneVirtualStore,
114512
114530
  wantedLockfile: maybeOpts.ignorePackageManifest ? void 0 : ctx.wantedLockfile
114513
114531
  });
@@ -114544,7 +114562,7 @@ var require_install = __commonJS({
114544
114562
  case "install": {
114545
114563
  await installCase({
114546
114564
  ...project,
114547
- updatePackageManifest: (_h = opts.updatePackageManifest) !== null && _h !== void 0 ? _h : opts.update
114565
+ updatePackageManifest: (_d = opts.updatePackageManifest) !== null && _d !== void 0 ? _d : opts.update
114548
114566
  });
114549
114567
  break;
114550
114568
  }
@@ -114572,8 +114590,8 @@ var require_install = __commonJS({
114572
114590
  break;
114573
114591
  }
114574
114592
  case "unlinkSome": {
114575
- if (((_j = project.manifest) === null || _j === void 0 ? void 0 : _j.name) && opts.globalBin) {
114576
- await (0, remove_bins_1.removeBin)(path_1.default.join(opts.globalBin, (_k = project.manifest) === null || _k === void 0 ? void 0 : _k.name));
114593
+ if (((_e = project.manifest) === null || _e === void 0 ? void 0 : _e.name) && opts.globalBin) {
114594
+ await (0, remove_bins_1.removeBin)(path_1.default.join(opts.globalBin, (_f = project.manifest) === null || _f === void 0 ? void 0 : _f.name));
114577
114595
  }
114578
114596
  const packagesToInstall = [];
114579
114597
  const allDeps = (0, manifest_utils_1.getAllDependenciesFromManifest)(project.manifest);
@@ -114642,7 +114660,8 @@ var require_install = __commonJS({
114642
114660
  optional: project.targetDependenciesField === "optionalDependencies",
114643
114661
  optionalDependencies,
114644
114662
  updateWorkspaceDependencies: opts.update,
114645
- preferredSpecs
114663
+ preferredSpecs,
114664
+ overrides: opts.overrides
114646
114665
  });
114647
114666
  projectsToInstall.push({
114648
114667
  pruneDirectDependencies: false,
@@ -114664,6 +114683,10 @@ var require_install = __commonJS({
114664
114683
  }
114665
114684
  }
114666
114685
  exports2.mutateModules = mutateModules;
114686
+ function lockfileIsUpToDate(lockfile, { neverBuiltDependencies, onlyBuiltDependencies, overrides, packageExtensionsChecksum }) {
114687
+ var _a, _b;
114688
+ return !(0, equals_1.default)((_a = lockfile.overrides) !== null && _a !== void 0 ? _a : {}, overrides !== null && overrides !== void 0 ? overrides : {}) || !(0, equals_1.default)(((_b = lockfile.neverBuiltDependencies) !== null && _b !== void 0 ? _b : []).sort(), (neverBuiltDependencies !== null && neverBuiltDependencies !== void 0 ? neverBuiltDependencies : []).sort()) || !(0, equals_1.default)(onlyBuiltDependencies === null || onlyBuiltDependencies === void 0 ? void 0 : onlyBuiltDependencies.sort(), lockfile.onlyBuiltDependencies) || lockfile.packageExtensionsChecksum !== packageExtensionsChecksum;
114689
+ }
114667
114690
  function createObjectChecksum(obj) {
114668
114691
  const s = JSON.stringify(obj);
114669
114692
  return crypto_1.default.createHash("md5").update(s).digest("hex");
@@ -114786,6 +114809,7 @@ var require_install = __commonJS({
114786
114809
  }), {});
114787
114810
  }
114788
114811
  let { dependenciesGraph, dependenciesByProjectId, finishLockfileUpdates, linkedDependenciesByProjectId, newLockfile, outdatedDependencies, peerDependencyIssuesByProjects, wantedToBeSkippedPackageIds, waitTillAllFetchingsFinish } = await (0, resolve_dependencies_1.default)(projects, {
114812
+ allowBuild: createAllowBuildFunction(opts),
114789
114813
  currentLockfile: ctx.currentLockfile,
114790
114814
  defaultUpdateDepth: opts.update || opts.updateMatching != null ? opts.depth : -1,
114791
114815
  dryRun: opts.lockfileOnly,
@@ -114795,7 +114819,6 @@ var require_install = __commonJS({
114795
114819
  hooks: opts.hooks,
114796
114820
  linkWorkspacePackagesDepth: (_b = opts.linkWorkspacePackagesDepth) !== null && _b !== void 0 ? _b : opts.saveWorkspaceProtocol ? 0 : -1,
114797
114821
  lockfileDir: opts.lockfileDir,
114798
- neverBuiltDependencies: new Set(opts.neverBuiltDependencies),
114799
114822
  nodeVersion: opts.nodeVersion,
114800
114823
  pnpmVersion: opts.packageManager.name === "pnpm" ? opts.packageManager.version : "",
114801
114824
  preferWorkspacePackages: opts.preferWorkspacePackages,
@@ -115017,6 +115040,16 @@ var require_install = __commonJS({
115017
115040
  }))
115018
115041
  };
115019
115042
  };
115043
+ function createAllowBuildFunction(opts) {
115044
+ if (opts.neverBuiltDependencies != null && opts.neverBuiltDependencies.length > 0) {
115045
+ const neverBuiltDependencies = new Set(opts.neverBuiltDependencies);
115046
+ return (pkgName) => !neverBuiltDependencies.has(pkgName);
115047
+ } else if (opts.onlyBuiltDependencies != null) {
115048
+ const onlyBuiltDependencies = new Set(opts.onlyBuiltDependencies);
115049
+ return (pkgName) => onlyBuiltDependencies.has(pkgName);
115050
+ }
115051
+ return void 0;
115052
+ }
115020
115053
  var installInContext = async (projects, ctx, opts) => {
115021
115054
  var _a;
115022
115055
  try {
@@ -115245,14 +115278,16 @@ var require_getOptionsFromRootManifest = __commonJS({
115245
115278
  "use strict";
115246
115279
  Object.defineProperty(exports2, "__esModule", { value: true });
115247
115280
  function getOptionsFromRootManifest(manifest) {
115248
- var _a, _b, _c, _d, _e, _f;
115281
+ var _a, _b, _c, _d, _e, _f, _g;
115249
115282
  const overrides = (_b = (_a = manifest.pnpm) === null || _a === void 0 ? void 0 : _a.overrides) !== null && _b !== void 0 ? _b : manifest.resolutions;
115250
115283
  const neverBuiltDependencies = (_d = (_c = manifest.pnpm) === null || _c === void 0 ? void 0 : _c.neverBuiltDependencies) !== null && _d !== void 0 ? _d : [];
115251
- const packageExtensions = (_e = manifest.pnpm) === null || _e === void 0 ? void 0 : _e.packageExtensions;
115252
- const peerDependencyRules = (_f = manifest.pnpm) === null || _f === void 0 ? void 0 : _f.peerDependencyRules;
115284
+ const onlyBuiltDependencies = (_e = manifest.pnpm) === null || _e === void 0 ? void 0 : _e.onlyBuiltDependencies;
115285
+ const packageExtensions = (_f = manifest.pnpm) === null || _f === void 0 ? void 0 : _f.packageExtensions;
115286
+ const peerDependencyRules = (_g = manifest.pnpm) === null || _g === void 0 ? void 0 : _g.peerDependencyRules;
115253
115287
  return {
115254
115288
  overrides,
115255
115289
  neverBuiltDependencies,
115290
+ onlyBuiltDependencies,
115256
115291
  packageExtensions,
115257
115292
  peerDependencyRules
115258
115293
  };
@@ -180857,7 +180892,8 @@ var require_shorthands = __commonJS({
180857
180892
  "frozen-shrinkwrap": "--frozen-lockfile",
180858
180893
  "prefer-frozen-shrinkwrap": "--prefer-frozen-lockfile",
180859
180894
  w: "--workspace-root",
180860
- i: "--interactive"
180895
+ i: "--interactive",
180896
+ F: "--filter"
180861
180897
  };
180862
180898
  }
180863
180899
  });
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "pnpm",
3
3
  "description": "Fast, disk space efficient package manager",
4
- "version": "7.0.0-alpha.1",
4
+ "version": "7.0.0-alpha.2",
5
5
  "bin": {
6
6
  "pnpm": "bin/pnpm.cjs",
7
7
  "pnpx": "bin/pnpx.cjs"