vercel 28.3.0 → 28.4.0

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.
Files changed (2) hide show
  1. package/dist/index.js +222 -124
  2. package/package.json +13 -13
package/dist/index.js CHANGED
@@ -189383,14 +189383,18 @@ function cloneEnv(...envs) {
189383
189383
  if (env === undefined || env === null) {
189384
189384
  return obj;
189385
189385
  }
189386
- // the system path is called `Path` on Windows and Node.js will
189387
- // automatically return the system path when accessing `PATH`,
189388
- // however we lose this proxied value when we destructure and
189389
- // thus we must explicitly copy it
189390
- if (hasOwnProperty.call(env, 'PATH') || hasOwnProperty.call(env, 'Path')) {
189391
- obj.PATH = env.PATH;
189392
- }
189393
- return Object.assign(obj, env);
189386
+ // mixin the env first
189387
+ obj = Object.assign(obj, env);
189388
+ if (hasOwnProperty.call(env, 'Path')) {
189389
+ // the system path is called `Path` on Windows and Node.js will
189390
+ // automatically return the system path when accessing `PATH`,
189391
+ // however we lose this proxied value when we destructure and
189392
+ // thus we must explicitly copy it, but we must also remove the
189393
+ // `Path` property since we can't have both a `PATH` and `Path`
189394
+ obj.PATH = obj.Path;
189395
+ delete obj.Path;
189396
+ }
189397
+ return obj;
189394
189398
  }, {});
189395
189399
  }
189396
189400
  exports.cloneEnv = cloneEnv;
@@ -189399,12 +189403,12 @@ exports.cloneEnv = cloneEnv;
189399
189403
  /***/ }),
189400
189404
 
189401
189405
  /***/ 1868:
189402
- /***/ ((__unused_webpack_module, exports, __nested_webpack_require_834453__) => {
189406
+ /***/ ((__unused_webpack_module, exports, __nested_webpack_require_834617__) => {
189403
189407
 
189404
189408
  "use strict";
189405
189409
 
189406
189410
  Object.defineProperty(exports, "__esModule", ({ value: true }));
189407
- const get_platform_env_1 = __nested_webpack_require_834453__(4678);
189411
+ const get_platform_env_1 = __nested_webpack_require_834617__(4678);
189408
189412
  function debug(message, ...additional) {
189409
189413
  if (get_platform_env_1.getPlatformEnv('BUILDER_DEBUG')) {
189410
189414
  console.log(message, ...additional);
@@ -189539,7 +189543,7 @@ function getSuggestion(topLevelProp, additionalProperty) {
189539
189543
  /***/ }),
189540
189544
 
189541
189545
  /***/ 2397:
189542
- /***/ (function(__unused_webpack_module, exports, __nested_webpack_require_838803__) {
189546
+ /***/ (function(__unused_webpack_module, exports, __nested_webpack_require_838967__) {
189543
189547
 
189544
189548
  "use strict";
189545
189549
 
@@ -189547,8 +189551,8 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
189547
189551
  return (mod && mod.__esModule) ? mod : { "default": mod };
189548
189552
  };
189549
189553
  Object.defineProperty(exports, "__esModule", ({ value: true }));
189550
- const assert_1 = __importDefault(__nested_webpack_require_838803__(2357));
189551
- const into_stream_1 = __importDefault(__nested_webpack_require_838803__(6130));
189554
+ const assert_1 = __importDefault(__nested_webpack_require_838967__(2357));
189555
+ const into_stream_1 = __importDefault(__nested_webpack_require_838967__(6130));
189552
189556
  class FileBlob {
189553
189557
  constructor({ mode = 0o100644, contentType, data }) {
189554
189558
  assert_1.default(typeof mode === 'number');
@@ -189583,7 +189587,7 @@ exports.default = FileBlob;
189583
189587
  /***/ }),
189584
189588
 
189585
189589
  /***/ 9331:
189586
- /***/ (function(__unused_webpack_module, exports, __nested_webpack_require_840321__) {
189590
+ /***/ (function(__unused_webpack_module, exports, __nested_webpack_require_840485__) {
189587
189591
 
189588
189592
  "use strict";
189589
189593
 
@@ -189591,11 +189595,11 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
189591
189595
  return (mod && mod.__esModule) ? mod : { "default": mod };
189592
189596
  };
189593
189597
  Object.defineProperty(exports, "__esModule", ({ value: true }));
189594
- const assert_1 = __importDefault(__nested_webpack_require_840321__(2357));
189595
- const fs_extra_1 = __importDefault(__nested_webpack_require_840321__(5392));
189596
- const multistream_1 = __importDefault(__nested_webpack_require_840321__(8179));
189597
- const path_1 = __importDefault(__nested_webpack_require_840321__(5622));
189598
- const async_sema_1 = __importDefault(__nested_webpack_require_840321__(5758));
189598
+ const assert_1 = __importDefault(__nested_webpack_require_840485__(2357));
189599
+ const fs_extra_1 = __importDefault(__nested_webpack_require_840485__(5392));
189600
+ const multistream_1 = __importDefault(__nested_webpack_require_840485__(8179));
189601
+ const path_1 = __importDefault(__nested_webpack_require_840485__(5622));
189602
+ const async_sema_1 = __importDefault(__nested_webpack_require_840485__(5758));
189599
189603
  const semaToPreventEMFILE = new async_sema_1.default(20);
189600
189604
  class FileFsRef {
189601
189605
  constructor({ mode = 0o100644, contentType, fsPath }) {
@@ -189661,7 +189665,7 @@ exports.default = FileFsRef;
189661
189665
  /***/ }),
189662
189666
 
189663
189667
  /***/ 5187:
189664
- /***/ (function(__unused_webpack_module, exports, __nested_webpack_require_843125__) {
189668
+ /***/ (function(__unused_webpack_module, exports, __nested_webpack_require_843289__) {
189665
189669
 
189666
189670
  "use strict";
189667
189671
 
@@ -189669,11 +189673,11 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
189669
189673
  return (mod && mod.__esModule) ? mod : { "default": mod };
189670
189674
  };
189671
189675
  Object.defineProperty(exports, "__esModule", ({ value: true }));
189672
- const assert_1 = __importDefault(__nested_webpack_require_843125__(2357));
189673
- const node_fetch_1 = __importDefault(__nested_webpack_require_843125__(2197));
189674
- const multistream_1 = __importDefault(__nested_webpack_require_843125__(8179));
189675
- const async_retry_1 = __importDefault(__nested_webpack_require_843125__(3691));
189676
- const async_sema_1 = __importDefault(__nested_webpack_require_843125__(5758));
189676
+ const assert_1 = __importDefault(__nested_webpack_require_843289__(2357));
189677
+ const node_fetch_1 = __importDefault(__nested_webpack_require_843289__(2197));
189678
+ const multistream_1 = __importDefault(__nested_webpack_require_843289__(8179));
189679
+ const async_retry_1 = __importDefault(__nested_webpack_require_843289__(3691));
189680
+ const async_sema_1 = __importDefault(__nested_webpack_require_843289__(5758));
189677
189681
  const semaToDownloadFromS3 = new async_sema_1.default(5);
189678
189682
  class BailableError extends Error {
189679
189683
  constructor(...args) {
@@ -189754,7 +189758,7 @@ exports.default = FileRef;
189754
189758
  /***/ }),
189755
189759
 
189756
189760
  /***/ 1611:
189757
- /***/ (function(__unused_webpack_module, exports, __nested_webpack_require_846526__) {
189761
+ /***/ (function(__unused_webpack_module, exports, __nested_webpack_require_846690__) {
189758
189762
 
189759
189763
  "use strict";
189760
189764
 
@@ -189763,11 +189767,11 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
189763
189767
  };
189764
189768
  Object.defineProperty(exports, "__esModule", ({ value: true }));
189765
189769
  exports.downloadFile = exports.isSymbolicLink = void 0;
189766
- const path_1 = __importDefault(__nested_webpack_require_846526__(5622));
189767
- const debug_1 = __importDefault(__nested_webpack_require_846526__(1868));
189768
- const file_fs_ref_1 = __importDefault(__nested_webpack_require_846526__(9331));
189769
- const fs_extra_1 = __nested_webpack_require_846526__(5392);
189770
- const stream_to_buffer_1 = __importDefault(__nested_webpack_require_846526__(2560));
189770
+ const path_1 = __importDefault(__nested_webpack_require_846690__(5622));
189771
+ const debug_1 = __importDefault(__nested_webpack_require_846690__(1868));
189772
+ const file_fs_ref_1 = __importDefault(__nested_webpack_require_846690__(9331));
189773
+ const fs_extra_1 = __nested_webpack_require_846690__(5392);
189774
+ const stream_to_buffer_1 = __importDefault(__nested_webpack_require_846690__(2560));
189771
189775
  const S_IFMT = 61440; /* 0170000 type of file */
189772
189776
  const S_IFLNK = 40960; /* 0120000 symbolic link */
189773
189777
  function isSymbolicLink(mode) {
@@ -189858,14 +189862,14 @@ exports.default = download;
189858
189862
  /***/ }),
189859
189863
 
189860
189864
  /***/ 3838:
189861
- /***/ ((__unused_webpack_module, exports, __nested_webpack_require_850961__) => {
189865
+ /***/ ((__unused_webpack_module, exports, __nested_webpack_require_851125__) => {
189862
189866
 
189863
189867
  "use strict";
189864
189868
 
189865
189869
  Object.defineProperty(exports, "__esModule", ({ value: true }));
189866
- const path_1 = __nested_webpack_require_850961__(5622);
189867
- const os_1 = __nested_webpack_require_850961__(2087);
189868
- const fs_extra_1 = __nested_webpack_require_850961__(5392);
189870
+ const path_1 = __nested_webpack_require_851125__(5622);
189871
+ const os_1 = __nested_webpack_require_851125__(2087);
189872
+ const fs_extra_1 = __nested_webpack_require_851125__(5392);
189869
189873
  async function getWritableDirectory() {
189870
189874
  const name = Math.floor(Math.random() * 0x7fffffff).toString(16);
189871
189875
  const directory = path_1.join(os_1.tmpdir(), name);
@@ -189878,7 +189882,7 @@ exports.default = getWritableDirectory;
189878
189882
  /***/ }),
189879
189883
 
189880
189884
  /***/ 4240:
189881
- /***/ (function(__unused_webpack_module, exports, __nested_webpack_require_851541__) {
189885
+ /***/ (function(__unused_webpack_module, exports, __nested_webpack_require_851705__) {
189882
189886
 
189883
189887
  "use strict";
189884
189888
 
@@ -189886,13 +189890,13 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
189886
189890
  return (mod && mod.__esModule) ? mod : { "default": mod };
189887
189891
  };
189888
189892
  Object.defineProperty(exports, "__esModule", ({ value: true }));
189889
- const path_1 = __importDefault(__nested_webpack_require_851541__(5622));
189890
- const assert_1 = __importDefault(__nested_webpack_require_851541__(2357));
189891
- const glob_1 = __importDefault(__nested_webpack_require_851541__(1104));
189892
- const util_1 = __nested_webpack_require_851541__(1669);
189893
- const fs_extra_1 = __nested_webpack_require_851541__(5392);
189894
- const normalize_path_1 = __nested_webpack_require_851541__(6261);
189895
- const file_fs_ref_1 = __importDefault(__nested_webpack_require_851541__(9331));
189893
+ const path_1 = __importDefault(__nested_webpack_require_851705__(5622));
189894
+ const assert_1 = __importDefault(__nested_webpack_require_851705__(2357));
189895
+ const glob_1 = __importDefault(__nested_webpack_require_851705__(1104));
189896
+ const util_1 = __nested_webpack_require_851705__(1669);
189897
+ const fs_extra_1 = __nested_webpack_require_851705__(5392);
189898
+ const normalize_path_1 = __nested_webpack_require_851705__(6261);
189899
+ const file_fs_ref_1 = __importDefault(__nested_webpack_require_851705__(9331));
189896
189900
  const vanillaGlob = util_1.promisify(glob_1.default);
189897
189901
  async function glob(pattern, opts, mountpoint) {
189898
189902
  let options;
@@ -189939,7 +189943,7 @@ exports.default = glob;
189939
189943
  /***/ }),
189940
189944
 
189941
189945
  /***/ 7903:
189942
- /***/ (function(__unused_webpack_module, exports, __nested_webpack_require_853762__) {
189946
+ /***/ (function(__unused_webpack_module, exports, __nested_webpack_require_853926__) {
189943
189947
 
189944
189948
  "use strict";
189945
189949
 
@@ -189948,9 +189952,9 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
189948
189952
  };
189949
189953
  Object.defineProperty(exports, "__esModule", ({ value: true }));
189950
189954
  exports.getSupportedNodeVersion = exports.getDiscontinuedNodeVersions = exports.getLatestNodeVersion = void 0;
189951
- const semver_1 = __nested_webpack_require_853762__(2879);
189952
- const errors_1 = __nested_webpack_require_853762__(3983);
189953
- const debug_1 = __importDefault(__nested_webpack_require_853762__(1868));
189955
+ const semver_1 = __nested_webpack_require_853926__(2879);
189956
+ const errors_1 = __nested_webpack_require_853926__(3983);
189957
+ const debug_1 = __importDefault(__nested_webpack_require_853926__(1868));
189954
189958
  const allOptions = [
189955
189959
  { major: 16, range: '16.x', runtime: 'nodejs16.x' },
189956
189960
  { major: 14, range: '14.x', runtime: 'nodejs14.x' },
@@ -190049,7 +190053,7 @@ exports.normalizePath = normalizePath;
190049
190053
  /***/ }),
190050
190054
 
190051
190055
  /***/ 7792:
190052
- /***/ (function(__unused_webpack_module, exports, __nested_webpack_require_857616__) {
190056
+ /***/ (function(__unused_webpack_module, exports, __nested_webpack_require_857780__) {
190053
190057
 
190054
190058
  "use strict";
190055
190059
 
@@ -190058,9 +190062,9 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
190058
190062
  };
190059
190063
  Object.defineProperty(exports, "__esModule", ({ value: true }));
190060
190064
  exports.readConfigFile = void 0;
190061
- const js_yaml_1 = __importDefault(__nested_webpack_require_857616__(6540));
190062
- const toml_1 = __importDefault(__nested_webpack_require_857616__(9434));
190063
- const fs_extra_1 = __nested_webpack_require_857616__(5392);
190065
+ const js_yaml_1 = __importDefault(__nested_webpack_require_857780__(6540));
190066
+ const toml_1 = __importDefault(__nested_webpack_require_857780__(9434));
190067
+ const fs_extra_1 = __nested_webpack_require_857780__(5392);
190064
190068
  async function readFileOrNull(file) {
190065
190069
  try {
190066
190070
  const data = await fs_extra_1.readFile(file);
@@ -190115,7 +190119,7 @@ exports.default = rename;
190115
190119
  /***/ }),
190116
190120
 
190117
190121
  /***/ 1442:
190118
- /***/ (function(__unused_webpack_module, exports, __nested_webpack_require_859409__) {
190122
+ /***/ (function(__unused_webpack_module, exports, __nested_webpack_require_859573__) {
190119
190123
 
190120
190124
  "use strict";
190121
190125
 
@@ -190124,18 +190128,18 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
190124
190128
  };
190125
190129
  Object.defineProperty(exports, "__esModule", ({ value: true }));
190126
190130
  exports.installDependencies = exports.getScriptName = exports.runPipInstall = exports.runBundleInstall = exports.runPackageJsonScript = exports.runCustomInstallCommand = exports.getEnvForPackageManager = exports.runNpmInstall = exports.walkParentDirs = exports.scanParentDirs = exports.getNodeVersion = exports.getSpawnOptions = exports.runShellScript = exports.getNodeBinPath = exports.execCommand = exports.spawnCommand = exports.execAsync = exports.spawnAsync = void 0;
190127
- const assert_1 = __importDefault(__nested_webpack_require_859409__(2357));
190128
- const fs_extra_1 = __importDefault(__nested_webpack_require_859409__(5392));
190129
- const path_1 = __importDefault(__nested_webpack_require_859409__(5622));
190130
- const async_sema_1 = __importDefault(__nested_webpack_require_859409__(5758));
190131
- const cross_spawn_1 = __importDefault(__nested_webpack_require_859409__(7618));
190132
- const semver_1 = __nested_webpack_require_859409__(2879);
190133
- const util_1 = __nested_webpack_require_859409__(1669);
190134
- const debug_1 = __importDefault(__nested_webpack_require_859409__(1868));
190135
- const errors_1 = __nested_webpack_require_859409__(3983);
190136
- const node_version_1 = __nested_webpack_require_859409__(7903);
190137
- const read_config_file_1 = __nested_webpack_require_859409__(7792);
190138
- const clone_env_1 = __nested_webpack_require_859409__(6548);
190131
+ const assert_1 = __importDefault(__nested_webpack_require_859573__(2357));
190132
+ const fs_extra_1 = __importDefault(__nested_webpack_require_859573__(5392));
190133
+ const path_1 = __importDefault(__nested_webpack_require_859573__(5622));
190134
+ const async_sema_1 = __importDefault(__nested_webpack_require_859573__(5758));
190135
+ const cross_spawn_1 = __importDefault(__nested_webpack_require_859573__(7618));
190136
+ const semver_1 = __nested_webpack_require_859573__(2879);
190137
+ const util_1 = __nested_webpack_require_859573__(1669);
190138
+ const debug_1 = __importDefault(__nested_webpack_require_859573__(1868));
190139
+ const errors_1 = __nested_webpack_require_859573__(3983);
190140
+ const node_version_1 = __nested_webpack_require_859573__(7903);
190141
+ const read_config_file_1 = __nested_webpack_require_859573__(7792);
190142
+ const clone_env_1 = __nested_webpack_require_859573__(6548);
190139
190143
  // Only allow one `runNpmInstall()` invocation to run concurrently
190140
190144
  const runNpmInstallSema = new async_sema_1.default(1);
190141
190145
  function spawnAsync(command, args, opts = {}) {
@@ -190424,14 +190428,17 @@ async function runNpmInstall(destPath, args = [], spawnOpts, meta, nodeVersion)
190424
190428
  env,
190425
190429
  });
190426
190430
  let commandArgs;
190431
+ const isPotentiallyBrokenNpm = cliType === 'npm' &&
190432
+ nodeVersion?.major === 16 &&
190433
+ !args.includes('--legacy-peer-deps') &&
190434
+ spawnOpts?.env?.ENABLE_EXPERIMENTAL_COREPACK !== '1';
190427
190435
  if (cliType === 'npm') {
190428
190436
  opts.prettyCommand = 'npm install';
190429
190437
  commandArgs = args
190430
190438
  .filter(a => a !== '--prefer-offline')
190431
190439
  .concat(['install', '--no-audit', '--unsafe-perm']);
190432
- if (nodeVersion?.major === 16 &&
190433
- spawnOpts?.env?.VERCEL_NPM_LEGACY_PEER_DEPS === '1' &&
190434
- spawnOpts?.env?.ENABLE_EXPERIMENTAL_COREPACK !== '1') {
190440
+ if (isPotentiallyBrokenNpm &&
190441
+ spawnOpts?.env?.VERCEL_NPM_LEGACY_PEER_DEPS === '1') {
190435
190442
  // Starting in npm@8.6.0, if you ran `npm install --legacy-peer-deps`,
190436
190443
  // and then later ran `npm install`, it would fail. So the only way
190437
190444
  // to safely upgrade npm from npm@8.5.0 is to set this flag. The docs
@@ -190456,7 +190463,19 @@ async function runNpmInstall(destPath, args = [], spawnOpts, meta, nodeVersion)
190456
190463
  if (process.env.NPM_ONLY_PRODUCTION) {
190457
190464
  commandArgs.push('--production');
190458
190465
  }
190459
- await spawnAsync(cliType, commandArgs, opts);
190466
+ try {
190467
+ await spawnAsync(cliType, commandArgs, opts);
190468
+ }
190469
+ catch (_) {
190470
+ const potentialErrorPath = path_1.default.join(process.env.HOME || '/', '.npm', 'eresolve-report.txt');
190471
+ if (isPotentiallyBrokenNpm &&
190472
+ !commandArgs.includes('--legacy-peer-deps') &&
190473
+ fs_extra_1.default.existsSync(potentialErrorPath)) {
190474
+ console.warn('Warning: Retrying "Install Command" with `--legacy-peer-deps` which may accept a potentially broken dependency and slow install time.');
190475
+ commandArgs.push('--legacy-peer-deps');
190476
+ await spawnAsync(cliType, commandArgs, opts);
190477
+ }
190478
+ }
190460
190479
  debug_1.default(`Install complete [${Date.now() - installTime}ms]`);
190461
190480
  return true;
190462
190481
  }
@@ -190592,7 +190611,7 @@ exports.installDependencies = util_1.deprecate(runNpmInstall, 'installDependenci
190592
190611
  /***/ }),
190593
190612
 
190594
190613
  /***/ 2560:
190595
- /***/ (function(__unused_webpack_module, exports, __nested_webpack_require_878974__) {
190614
+ /***/ (function(__unused_webpack_module, exports, __nested_webpack_require_879929__) {
190596
190615
 
190597
190616
  "use strict";
190598
190617
 
@@ -190600,7 +190619,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
190600
190619
  return (mod && mod.__esModule) ? mod : { "default": mod };
190601
190620
  };
190602
190621
  Object.defineProperty(exports, "__esModule", ({ value: true }));
190603
- const end_of_stream_1 = __importDefault(__nested_webpack_require_878974__(687));
190622
+ const end_of_stream_1 = __importDefault(__nested_webpack_require_879929__(687));
190604
190623
  function streamToBuffer(stream) {
190605
190624
  return new Promise((resolve, reject) => {
190606
190625
  const buffers = [];
@@ -190629,7 +190648,7 @@ exports.default = streamToBuffer;
190629
190648
  /***/ }),
190630
190649
 
190631
190650
  /***/ 1148:
190632
- /***/ (function(__unused_webpack_module, exports, __nested_webpack_require_880042__) {
190651
+ /***/ (function(__unused_webpack_module, exports, __nested_webpack_require_880997__) {
190633
190652
 
190634
190653
  "use strict";
190635
190654
 
@@ -190637,9 +190656,9 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
190637
190656
  return (mod && mod.__esModule) ? mod : { "default": mod };
190638
190657
  };
190639
190658
  Object.defineProperty(exports, "__esModule", ({ value: true }));
190640
- const path_1 = __importDefault(__nested_webpack_require_880042__(5622));
190641
- const fs_extra_1 = __importDefault(__nested_webpack_require_880042__(5392));
190642
- const ignore_1 = __importDefault(__nested_webpack_require_880042__(3556));
190659
+ const path_1 = __importDefault(__nested_webpack_require_880997__(5622));
190660
+ const fs_extra_1 = __importDefault(__nested_webpack_require_880997__(5392));
190661
+ const ignore_1 = __importDefault(__nested_webpack_require_880997__(3556));
190643
190662
  function isCodedError(error) {
190644
190663
  return (error !== null &&
190645
190664
  error !== undefined &&
@@ -190696,13 +190715,13 @@ exports.default = default_1;
190696
190715
  /***/ }),
190697
190716
 
190698
190717
  /***/ 4678:
190699
- /***/ ((__unused_webpack_module, exports, __nested_webpack_require_882416__) => {
190718
+ /***/ ((__unused_webpack_module, exports, __nested_webpack_require_883371__) => {
190700
190719
 
190701
190720
  "use strict";
190702
190721
 
190703
190722
  Object.defineProperty(exports, "__esModule", ({ value: true }));
190704
190723
  exports.getPlatformEnv = void 0;
190705
- const errors_1 = __nested_webpack_require_882416__(3983);
190724
+ const errors_1 = __nested_webpack_require_883371__(3983);
190706
190725
  /**
190707
190726
  * Helper function to support both `VERCEL_` and legacy `NOW_` env vars.
190708
190727
  * Throws an error if *both* env vars are defined.
@@ -190766,7 +190785,7 @@ exports.getPrefixedEnvVars = getPrefixedEnvVars;
190766
190785
  /***/ }),
190767
190786
 
190768
190787
  /***/ 2855:
190769
- /***/ (function(__unused_webpack_module, exports, __nested_webpack_require_884675__) {
190788
+ /***/ (function(__unused_webpack_module, exports, __nested_webpack_require_885630__) {
190770
190789
 
190771
190790
  "use strict";
190772
190791
 
@@ -190797,31 +190816,31 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
190797
190816
  };
190798
190817
  Object.defineProperty(exports, "__esModule", ({ value: true }));
190799
190818
  exports.normalizePath = exports.readConfigFile = exports.EdgeFunction = exports.cloneEnv = exports.getIgnoreFilter = exports.scanParentDirs = exports.getLambdaOptionsFromFunction = exports.isSymbolicLink = exports.debug = exports.streamToBuffer = exports.getPrefixedEnvVars = exports.getPlatformEnv = exports.getSpawnOptions = exports.getDiscontinuedNodeVersions = exports.getLatestNodeVersion = exports.getNodeVersion = exports.getEnvForPackageManager = exports.runCustomInstallCommand = exports.runShellScript = exports.runPipInstall = exports.runBundleInstall = exports.runNpmInstall = exports.getNodeBinPath = exports.walkParentDirs = exports.spawnCommand = exports.execCommand = exports.runPackageJsonScript = exports.installDependencies = exports.getScriptName = exports.spawnAsync = exports.execAsync = exports.rename = exports.glob = exports.getWriteableDirectory = exports.downloadFile = exports.download = exports.Prerender = exports.createLambda = exports.NodejsLambda = exports.Lambda = exports.FileRef = exports.FileFsRef = exports.FileBlob = void 0;
190800
- const file_blob_1 = __importDefault(__nested_webpack_require_884675__(2397));
190819
+ const file_blob_1 = __importDefault(__nested_webpack_require_885630__(2397));
190801
190820
  exports.FileBlob = file_blob_1.default;
190802
- const file_fs_ref_1 = __importDefault(__nested_webpack_require_884675__(9331));
190821
+ const file_fs_ref_1 = __importDefault(__nested_webpack_require_885630__(9331));
190803
190822
  exports.FileFsRef = file_fs_ref_1.default;
190804
- const file_ref_1 = __importDefault(__nested_webpack_require_884675__(5187));
190823
+ const file_ref_1 = __importDefault(__nested_webpack_require_885630__(5187));
190805
190824
  exports.FileRef = file_ref_1.default;
190806
- const lambda_1 = __nested_webpack_require_884675__(6721);
190825
+ const lambda_1 = __nested_webpack_require_885630__(6721);
190807
190826
  Object.defineProperty(exports, "Lambda", ({ enumerable: true, get: function () { return lambda_1.Lambda; } }));
190808
190827
  Object.defineProperty(exports, "createLambda", ({ enumerable: true, get: function () { return lambda_1.createLambda; } }));
190809
190828
  Object.defineProperty(exports, "getLambdaOptionsFromFunction", ({ enumerable: true, get: function () { return lambda_1.getLambdaOptionsFromFunction; } }));
190810
- const nodejs_lambda_1 = __nested_webpack_require_884675__(7049);
190829
+ const nodejs_lambda_1 = __nested_webpack_require_885630__(7049);
190811
190830
  Object.defineProperty(exports, "NodejsLambda", ({ enumerable: true, get: function () { return nodejs_lambda_1.NodejsLambda; } }));
190812
- const prerender_1 = __nested_webpack_require_884675__(2850);
190831
+ const prerender_1 = __nested_webpack_require_885630__(2850);
190813
190832
  Object.defineProperty(exports, "Prerender", ({ enumerable: true, get: function () { return prerender_1.Prerender; } }));
190814
- const download_1 = __importStar(__nested_webpack_require_884675__(1611));
190833
+ const download_1 = __importStar(__nested_webpack_require_885630__(1611));
190815
190834
  exports.download = download_1.default;
190816
190835
  Object.defineProperty(exports, "downloadFile", ({ enumerable: true, get: function () { return download_1.downloadFile; } }));
190817
190836
  Object.defineProperty(exports, "isSymbolicLink", ({ enumerable: true, get: function () { return download_1.isSymbolicLink; } }));
190818
- const get_writable_directory_1 = __importDefault(__nested_webpack_require_884675__(3838));
190837
+ const get_writable_directory_1 = __importDefault(__nested_webpack_require_885630__(3838));
190819
190838
  exports.getWriteableDirectory = get_writable_directory_1.default;
190820
- const glob_1 = __importDefault(__nested_webpack_require_884675__(4240));
190839
+ const glob_1 = __importDefault(__nested_webpack_require_885630__(4240));
190821
190840
  exports.glob = glob_1.default;
190822
- const rename_1 = __importDefault(__nested_webpack_require_884675__(6718));
190841
+ const rename_1 = __importDefault(__nested_webpack_require_885630__(6718));
190823
190842
  exports.rename = rename_1.default;
190824
- const run_user_scripts_1 = __nested_webpack_require_884675__(1442);
190843
+ const run_user_scripts_1 = __nested_webpack_require_885630__(1442);
190825
190844
  Object.defineProperty(exports, "execAsync", ({ enumerable: true, get: function () { return run_user_scripts_1.execAsync; } }));
190826
190845
  Object.defineProperty(exports, "spawnAsync", ({ enumerable: true, get: function () { return run_user_scripts_1.spawnAsync; } }));
190827
190846
  Object.defineProperty(exports, "execCommand", ({ enumerable: true, get: function () { return run_user_scripts_1.execCommand; } }));
@@ -190840,37 +190859,37 @@ Object.defineProperty(exports, "getNodeVersion", ({ enumerable: true, get: funct
190840
190859
  Object.defineProperty(exports, "getSpawnOptions", ({ enumerable: true, get: function () { return run_user_scripts_1.getSpawnOptions; } }));
190841
190860
  Object.defineProperty(exports, "getNodeBinPath", ({ enumerable: true, get: function () { return run_user_scripts_1.getNodeBinPath; } }));
190842
190861
  Object.defineProperty(exports, "scanParentDirs", ({ enumerable: true, get: function () { return run_user_scripts_1.scanParentDirs; } }));
190843
- const node_version_1 = __nested_webpack_require_884675__(7903);
190862
+ const node_version_1 = __nested_webpack_require_885630__(7903);
190844
190863
  Object.defineProperty(exports, "getLatestNodeVersion", ({ enumerable: true, get: function () { return node_version_1.getLatestNodeVersion; } }));
190845
190864
  Object.defineProperty(exports, "getDiscontinuedNodeVersions", ({ enumerable: true, get: function () { return node_version_1.getDiscontinuedNodeVersions; } }));
190846
- const stream_to_buffer_1 = __importDefault(__nested_webpack_require_884675__(2560));
190865
+ const stream_to_buffer_1 = __importDefault(__nested_webpack_require_885630__(2560));
190847
190866
  exports.streamToBuffer = stream_to_buffer_1.default;
190848
- const debug_1 = __importDefault(__nested_webpack_require_884675__(1868));
190867
+ const debug_1 = __importDefault(__nested_webpack_require_885630__(1868));
190849
190868
  exports.debug = debug_1.default;
190850
- const get_ignore_filter_1 = __importDefault(__nested_webpack_require_884675__(1148));
190869
+ const get_ignore_filter_1 = __importDefault(__nested_webpack_require_885630__(1148));
190851
190870
  exports.getIgnoreFilter = get_ignore_filter_1.default;
190852
- const get_platform_env_1 = __nested_webpack_require_884675__(4678);
190871
+ const get_platform_env_1 = __nested_webpack_require_885630__(4678);
190853
190872
  Object.defineProperty(exports, "getPlatformEnv", ({ enumerable: true, get: function () { return get_platform_env_1.getPlatformEnv; } }));
190854
- const get_prefixed_env_vars_1 = __nested_webpack_require_884675__(6838);
190873
+ const get_prefixed_env_vars_1 = __nested_webpack_require_885630__(6838);
190855
190874
  Object.defineProperty(exports, "getPrefixedEnvVars", ({ enumerable: true, get: function () { return get_prefixed_env_vars_1.getPrefixedEnvVars; } }));
190856
- const clone_env_1 = __nested_webpack_require_884675__(6548);
190875
+ const clone_env_1 = __nested_webpack_require_885630__(6548);
190857
190876
  Object.defineProperty(exports, "cloneEnv", ({ enumerable: true, get: function () { return clone_env_1.cloneEnv; } }));
190858
- var edge_function_1 = __nested_webpack_require_884675__(8038);
190877
+ var edge_function_1 = __nested_webpack_require_885630__(8038);
190859
190878
  Object.defineProperty(exports, "EdgeFunction", ({ enumerable: true, get: function () { return edge_function_1.EdgeFunction; } }));
190860
- var read_config_file_1 = __nested_webpack_require_884675__(7792);
190879
+ var read_config_file_1 = __nested_webpack_require_885630__(7792);
190861
190880
  Object.defineProperty(exports, "readConfigFile", ({ enumerable: true, get: function () { return read_config_file_1.readConfigFile; } }));
190862
- var normalize_path_1 = __nested_webpack_require_884675__(6261);
190881
+ var normalize_path_1 = __nested_webpack_require_885630__(6261);
190863
190882
  Object.defineProperty(exports, "normalizePath", ({ enumerable: true, get: function () { return normalize_path_1.normalizePath; } }));
190864
- __exportStar(__nested_webpack_require_884675__(2564), exports);
190865
- __exportStar(__nested_webpack_require_884675__(2416), exports);
190866
- __exportStar(__nested_webpack_require_884675__(5748), exports);
190867
- __exportStar(__nested_webpack_require_884675__(3983), exports);
190883
+ __exportStar(__nested_webpack_require_885630__(2564), exports);
190884
+ __exportStar(__nested_webpack_require_885630__(2416), exports);
190885
+ __exportStar(__nested_webpack_require_885630__(5748), exports);
190886
+ __exportStar(__nested_webpack_require_885630__(3983), exports);
190868
190887
 
190869
190888
 
190870
190889
  /***/ }),
190871
190890
 
190872
190891
  /***/ 6721:
190873
- /***/ (function(__unused_webpack_module, exports, __nested_webpack_require_893493__) {
190892
+ /***/ (function(__unused_webpack_module, exports, __nested_webpack_require_894448__) {
190874
190893
 
190875
190894
  "use strict";
190876
190895
 
@@ -190879,13 +190898,13 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
190879
190898
  };
190880
190899
  Object.defineProperty(exports, "__esModule", ({ value: true }));
190881
190900
  exports.getLambdaOptionsFromFunction = exports.createZip = exports.createLambda = exports.Lambda = void 0;
190882
- const assert_1 = __importDefault(__nested_webpack_require_893493__(2357));
190883
- const async_sema_1 = __importDefault(__nested_webpack_require_893493__(5758));
190884
- const yazl_1 = __nested_webpack_require_893493__(1223);
190885
- const minimatch_1 = __importDefault(__nested_webpack_require_893493__(9566));
190886
- const fs_extra_1 = __nested_webpack_require_893493__(5392);
190887
- const download_1 = __nested_webpack_require_893493__(1611);
190888
- const stream_to_buffer_1 = __importDefault(__nested_webpack_require_893493__(2560));
190901
+ const assert_1 = __importDefault(__nested_webpack_require_894448__(2357));
190902
+ const async_sema_1 = __importDefault(__nested_webpack_require_894448__(5758));
190903
+ const yazl_1 = __nested_webpack_require_894448__(1223);
190904
+ const minimatch_1 = __importDefault(__nested_webpack_require_894448__(9566));
190905
+ const fs_extra_1 = __nested_webpack_require_894448__(5392);
190906
+ const download_1 = __nested_webpack_require_894448__(1611);
190907
+ const stream_to_buffer_1 = __importDefault(__nested_webpack_require_894448__(2560));
190889
190908
  class Lambda {
190890
190909
  constructor(opts) {
190891
190910
  const { handler, runtime, maxDuration, memory, environment = {}, allowQuery, regions, supportsMultiPayloads, supportsWrapper, } = opts;
@@ -191011,13 +191030,13 @@ exports.getLambdaOptionsFromFunction = getLambdaOptionsFromFunction;
191011
191030
  /***/ }),
191012
191031
 
191013
191032
  /***/ 7049:
191014
- /***/ ((__unused_webpack_module, exports, __nested_webpack_require_899176__) => {
191033
+ /***/ ((__unused_webpack_module, exports, __nested_webpack_require_900131__) => {
191015
191034
 
191016
191035
  "use strict";
191017
191036
 
191018
191037
  Object.defineProperty(exports, "__esModule", ({ value: true }));
191019
191038
  exports.NodejsLambda = void 0;
191020
- const lambda_1 = __nested_webpack_require_899176__(6721);
191039
+ const lambda_1 = __nested_webpack_require_900131__(6721);
191021
191040
  class NodejsLambda extends lambda_1.Lambda {
191022
191041
  constructor({ shouldAddHelpers, shouldAddSourcemapSupport, awsLambdaHandler, ...opts }) {
191023
191042
  super(opts);
@@ -191154,13 +191173,13 @@ exports.buildsSchema = {
191154
191173
  /***/ }),
191155
191174
 
191156
191175
  /***/ 2564:
191157
- /***/ ((__unused_webpack_module, exports, __nested_webpack_require_903521__) => {
191176
+ /***/ ((__unused_webpack_module, exports, __nested_webpack_require_904476__) => {
191158
191177
 
191159
191178
  "use strict";
191160
191179
 
191161
191180
  Object.defineProperty(exports, "__esModule", ({ value: true }));
191162
191181
  exports.shouldServe = void 0;
191163
- const path_1 = __nested_webpack_require_903521__(5622);
191182
+ const path_1 = __nested_webpack_require_904476__(5622);
191164
191183
  const shouldServe = ({ entrypoint, files, requestPath, }) => {
191165
191184
  requestPath = requestPath.replace(/\/$/, ''); // sanitize trailing '/'
191166
191185
  entrypoint = entrypoint.replace(/\\/, '/'); // windows compatibility
@@ -191405,7 +191424,7 @@ module.exports = __webpack_require__(78761);
191405
191424
  /******/ var __webpack_module_cache__ = {};
191406
191425
  /******/
191407
191426
  /******/ // The require function
191408
- /******/ function __nested_webpack_require_1280886__(moduleId) {
191427
+ /******/ function __nested_webpack_require_1281841__(moduleId) {
191409
191428
  /******/ // Check if module is in cache
191410
191429
  /******/ if(__webpack_module_cache__[moduleId]) {
191411
191430
  /******/ return __webpack_module_cache__[moduleId].exports;
@@ -191420,7 +191439,7 @@ module.exports = __webpack_require__(78761);
191420
191439
  /******/ // Execute the module function
191421
191440
  /******/ var threw = true;
191422
191441
  /******/ try {
191423
- /******/ __webpack_modules__[moduleId].call(module.exports, module, module.exports, __nested_webpack_require_1280886__);
191442
+ /******/ __webpack_modules__[moduleId].call(module.exports, module, module.exports, __nested_webpack_require_1281841__);
191424
191443
  /******/ threw = false;
191425
191444
  /******/ } finally {
191426
191445
  /******/ if(threw) delete __webpack_module_cache__[moduleId];
@@ -191433,11 +191452,11 @@ module.exports = __webpack_require__(78761);
191433
191452
  /************************************************************************/
191434
191453
  /******/ /* webpack/runtime/compat */
191435
191454
  /******/
191436
- /******/ __nested_webpack_require_1280886__.ab = __dirname + "/";/************************************************************************/
191455
+ /******/ __nested_webpack_require_1281841__.ab = __dirname + "/";/************************************************************************/
191437
191456
  /******/ // module exports must be returned from runtime so entry inlining is disabled
191438
191457
  /******/ // startup
191439
191458
  /******/ // Load entry module and return exports
191440
- /******/ return __nested_webpack_require_1280886__(2855);
191459
+ /******/ return __nested_webpack_require_1281841__(2855);
191441
191460
  /******/ })()
191442
191461
  ;
191443
191462
 
@@ -227483,7 +227502,82 @@ async function doBuild(client, project, buildsJson, cwd, outputDir) {
227483
227502
  userRoutes: routesResult.routes,
227484
227503
  builds: builderRoutes,
227485
227504
  });
227486
- const mergedImages = mergeImages(buildResults.values());
227505
+ const images = vercelConfig?.images;
227506
+ if (images) {
227507
+ if (typeof images !== 'object') {
227508
+ throw new Error(`vercel.json "images" should be an object received ${typeof images}.`);
227509
+ }
227510
+ if (!Array.isArray(images.domains)) {
227511
+ throw new Error(`vercel.json "images.domains" should be an Array received ${typeof images.domains}.`);
227512
+ }
227513
+ if (images.domains.length > 50) {
227514
+ throw new Error(`vercel.json "images.domains" exceeds length of 50 received length (${images.domains.length}).`);
227515
+ }
227516
+ const invalidImageDomains = images.domains.filter((d) => typeof d !== 'string');
227517
+ if (invalidImageDomains.length > 0) {
227518
+ throw new Error(`vercel.json "images.domains" should be an Array of strings received invalid values (${invalidImageDomains.join(', ')}).`);
227519
+ }
227520
+ if (images.remotePatterns) {
227521
+ if (!Array.isArray(images.remotePatterns)) {
227522
+ throw new Error(`vercel.json "images.remotePatterns" should be an Array received ${typeof images.remotePatterns}.`);
227523
+ }
227524
+ if (images.remotePatterns.length > 50) {
227525
+ throw new Error(`vercel.json "images.remotePatterns" exceeds length of 50, received length (${images.remotePatterns.length}).`);
227526
+ }
227527
+ const validProps = new Set(['protocol', 'hostname', 'pathname', 'port']);
227528
+ const requiredProps = ['hostname'];
227529
+ const invalidPatterns = images.remotePatterns.filter((d) => !d ||
227530
+ typeof d !== 'object' ||
227531
+ Object.entries(d).some(([k, v]) => !validProps.has(k) || typeof v !== 'string') ||
227532
+ requiredProps.some(k => !(k in d)));
227533
+ if (invalidPatterns.length > 0) {
227534
+ throw new Error(`vercel.json "images.remotePatterns" received invalid values:\n${invalidPatterns
227535
+ .map(item => JSON.stringify(item))
227536
+ .join('\n')}\n\nremotePatterns value must follow format { protocol: 'https', hostname: 'example.com', port: '', pathname: '/imgs/**' }.`);
227537
+ }
227538
+ }
227539
+ if (!Array.isArray(images.sizes)) {
227540
+ throw new Error(`vercel.json "images.sizes" should be an Array received ${typeof images.sizes}.`);
227541
+ }
227542
+ if (images.sizes.length < 1 || images.sizes.length > 50) {
227543
+ throw new Error(`vercel.json "images.sizes" should be an Array of length between 1 to 50 received length (${images.sizes.length}).`);
227544
+ }
227545
+ const invalidImageSizes = images.sizes.filter((d) => {
227546
+ return typeof d !== 'number' || d < 1 || d > 10000;
227547
+ });
227548
+ if (invalidImageSizes.length > 0) {
227549
+ throw new Error(`vercel.json "images.sizes" should be an Array of numbers that are between 1 and 10000, received invalid values (${invalidImageSizes.join(', ')}).`);
227550
+ }
227551
+ if (images.minimumCacheTTL) {
227552
+ if (!Number.isInteger(images.minimumCacheTTL) ||
227553
+ images.minimumCacheTTL < 0) {
227554
+ throw new Error(`vercel.json "images.minimumCacheTTL" should be an integer 0 or more received (${images.minimumCacheTTL}).`);
227555
+ }
227556
+ }
227557
+ if (images.formats) {
227558
+ if (!Array.isArray(images.formats)) {
227559
+ throw new Error(`vercel.json "images.formats" should be an Array received ${typeof images.formats}.`);
227560
+ }
227561
+ if (images.formats.length < 1 || images.formats.length > 2) {
227562
+ throw new Error(`vercel.json "images.formats" must be length 1 or 2, received length (${images.formats.length}).`);
227563
+ }
227564
+ const invalid = images.formats.filter(f => {
227565
+ return f !== 'image/avif' && f !== 'image/webp';
227566
+ });
227567
+ if (invalid.length > 0) {
227568
+ throw new Error(`vercel.json "images.formats" should be an Array of mime type strings, received invalid values (${invalid.join(', ')}).`);
227569
+ }
227570
+ }
227571
+ if (typeof images.dangerouslyAllowSVG !== 'undefined' &&
227572
+ typeof images.dangerouslyAllowSVG !== 'boolean') {
227573
+ throw new Error(`vercel.json "images.dangerouslyAllowSVG" should be a boolean received (${images.dangerouslyAllowSVG}).`);
227574
+ }
227575
+ if (typeof images.contentSecurityPolicy !== 'undefined' &&
227576
+ typeof images.contentSecurityPolicy !== 'string') {
227577
+ throw new Error(`vercel.json "images.contentSecurityPolicy" should be a string received ${images.contentSecurityPolicy}`);
227578
+ }
227579
+ }
227580
+ const mergedImages = mergeImages(images, buildResults.values());
227487
227581
  const mergedWildcard = mergeWildcard(buildResults.values());
227488
227582
  const mergedOverrides = overrides.length > 0 ? Object.assign({}, ...overrides) : undefined;
227489
227583
  // Write out the final `config.json` file based on the
@@ -227532,8 +227626,7 @@ function expandBuild(files, build) {
227532
227626
  };
227533
227627
  });
227534
227628
  }
227535
- function mergeImages(buildResults) {
227536
- let images = undefined;
227629
+ function mergeImages(images, buildResults) {
227537
227630
  for (const result of buildResults) {
227538
227631
  if ('images' in result && result.images) {
227539
227632
  images = Object.assign({}, images, result.images);
@@ -228550,7 +228643,12 @@ exports.default = async (client) => {
228550
228643
  quiet,
228551
228644
  wantsPublic: argv['--public'] || localConfig.public,
228552
228645
  type: null,
228553
- nowConfig: localConfig,
228646
+ nowConfig: {
228647
+ ...localConfig,
228648
+ // `images` is allowed in "vercel.json" and processed
228649
+ // by `vc build`, but don't send it to the API endpoint
228650
+ images: undefined,
228651
+ },
228554
228652
  regions,
228555
228653
  meta,
228556
228654
  gitMetadata,
@@ -249212,7 +249310,7 @@ module.exports = JSON.parse("{\"application/1d-interleaved-parityfec\":{\"source
249212
249310
  /***/ ((module) => {
249213
249311
 
249214
249312
  "use strict";
249215
- module.exports = JSON.parse("{\"name\":\"vercel\",\"version\":\"28.3.0\",\"preferGlobal\":true,\"license\":\"Apache-2.0\",\"description\":\"The command-line interface for Vercel\",\"homepage\":\"https://vercel.com\",\"repository\":{\"type\":\"git\",\"url\":\"https://github.com/vercel/vercel.git\",\"directory\":\"packages/cli\"},\"scripts\":{\"preinstall\":\"node ./scripts/preinstall.js\",\"test\":\"jest --env node --verbose --runInBand --bail --forceExit\",\"test-unit\":\"yarn test test/unit/\",\"test-integration-cli\":\"rimraf test/fixtures/integration && ava test/integration.js --serial --fail-fast --verbose\",\"test-integration-dev\":\"yarn test test/dev/\",\"coverage\":\"codecov\",\"build\":\"ts-node ./scripts/build.ts\",\"dev\":\"ts-node ./src/index.ts\"},\"bin\":{\"vc\":\"./dist/index.js\",\"vercel\":\"./dist/index.js\"},\"files\":[\"dist\",\"scripts/preinstall.js\"],\"ava\":{\"extensions\":[\"ts\"],\"require\":[\"ts-node/register/transpile-only\",\"esm\"]},\"engines\":{\"node\":\">= 14\"},\"dependencies\":{\"@vercel/build-utils\":\"5.4.3\",\"@vercel/go\":\"2.2.6\",\"@vercel/hydrogen\":\"0.0.19\",\"@vercel/next\":\"3.1.26\",\"@vercel/node\":\"2.5.15\",\"@vercel/python\":\"3.1.15\",\"@vercel/redwood\":\"1.0.24\",\"@vercel/remix\":\"1.0.25\",\"@vercel/ruby\":\"1.3.32\",\"@vercel/static-build\":\"1.0.24\",\"update-notifier\":\"5.1.0\"},\"devDependencies\":{\"@alex_neo/jest-expect-message\":\"1.0.5\",\"@next/env\":\"11.1.2\",\"@sentry/node\":\"5.5.0\",\"@sindresorhus/slugify\":\"0.11.0\",\"@swc/core\":\"1.2.218\",\"@tootallnate/once\":\"1.1.2\",\"@types/ansi-escapes\":\"3.0.0\",\"@types/ansi-regex\":\"4.0.0\",\"@types/async-retry\":\"1.2.1\",\"@types/bytes\":\"3.0.0\",\"@types/chance\":\"1.1.3\",\"@types/debug\":\"0.0.31\",\"@types/dotenv\":\"6.1.1\",\"@types/escape-html\":\"0.0.20\",\"@types/express\":\"4.17.13\",\"@types/fs-extra\":\"9.0.13\",\"@types/glob\":\"7.1.1\",\"@types/http-proxy\":\"1.16.2\",\"@types/ini\":\"1.3.31\",\"@types/inquirer\":\"7.3.1\",\"@types/jest\":\"27.4.1\",\"@types/jest-expect-message\":\"1.0.3\",\"@types/load-json-file\":\"2.0.7\",\"@types/mime-types\":\"2.1.0\",\"@types/minimatch\":\"3.0.3\",\"@types/mri\":\"1.1.0\",\"@types/ms\":\"0.7.30\",\"@types/node\":\"11.11.0\",\"@types/node-fetch\":\"2.5.10\",\"@types/npm-package-arg\":\"6.1.0\",\"@types/pluralize\":\"0.0.29\",\"@types/psl\":\"1.1.0\",\"@types/semver\":\"6.0.1\",\"@types/tar-fs\":\"1.16.1\",\"@types/text-table\":\"0.2.0\",\"@types/title\":\"3.4.1\",\"@types/universal-analytics\":\"0.4.2\",\"@types/update-notifier\":\"5.1.0\",\"@types/which\":\"1.3.2\",\"@types/write-json-file\":\"2.2.1\",\"@types/yauzl-promise\":\"2.1.0\",\"@vercel/client\":\"12.2.5\",\"@vercel/frameworks\":\"1.1.6\",\"@vercel/fs-detectors\":\"3.3.0\",\"@vercel/fun\":\"1.0.4\",\"@vercel/ncc\":\"0.24.0\",\"@zeit/source-map-support\":\"0.6.2\",\"ajv\":\"6.12.2\",\"alpha-sort\":\"2.0.1\",\"ansi-escapes\":\"3.0.0\",\"ansi-regex\":\"3.0.0\",\"arg\":\"5.0.0\",\"async-listen\":\"1.2.0\",\"async-retry\":\"1.1.3\",\"async-sema\":\"2.1.4\",\"ava\":\"2.2.0\",\"boxen\":\"4.2.0\",\"bytes\":\"3.0.0\",\"chalk\":\"4.1.0\",\"chance\":\"1.1.7\",\"chokidar\":\"3.3.1\",\"codecov\":\"3.8.2\",\"cpy\":\"7.2.0\",\"date-fns\":\"1.29.0\",\"debug\":\"3.1.0\",\"dot\":\"1.1.3\",\"dotenv\":\"4.0.0\",\"email-prompt\":\"0.3.2\",\"email-validator\":\"1.1.1\",\"epipebomb\":\"1.0.0\",\"escape-html\":\"1.0.3\",\"esm\":\"3.1.4\",\"execa\":\"3.2.0\",\"express\":\"4.17.1\",\"fast-deep-equal\":\"3.1.3\",\"fs-extra\":\"10.0.0\",\"get-port\":\"5.1.1\",\"git-last-commit\":\"1.0.1\",\"glob\":\"7.1.2\",\"http-proxy\":\"1.18.1\",\"ini\":\"3.0.0\",\"inquirer\":\"7.0.4\",\"is-docker\":\"2.2.1\",\"is-port-reachable\":\"3.1.0\",\"is-url\":\"1.2.2\",\"jaro-winkler\":\"0.2.8\",\"jsonlines\":\"0.1.1\",\"load-json-file\":\"3.0.0\",\"mime-types\":\"2.1.24\",\"minimatch\":\"3.0.4\",\"mri\":\"1.1.5\",\"ms\":\"2.1.2\",\"node-fetch\":\"2.6.7\",\"npm-package-arg\":\"6.1.0\",\"open\":\"8.4.0\",\"ora\":\"3.4.0\",\"pcre-to-regexp\":\"1.0.0\",\"pluralize\":\"7.0.0\",\"promisepipe\":\"3.0.0\",\"psl\":\"1.1.31\",\"qr-image\":\"3.2.0\",\"raw-body\":\"2.4.1\",\"rimraf\":\"3.0.2\",\"semver\":\"5.5.0\",\"serve-handler\":\"6.1.1\",\"strip-ansi\":\"5.2.0\",\"stripe\":\"5.1.0\",\"tar-fs\":\"1.16.3\",\"test-listen\":\"1.1.0\",\"text-table\":\"0.2.0\",\"title\":\"3.4.1\",\"tmp-promise\":\"1.0.3\",\"tree-kill\":\"1.2.2\",\"ts-node\":\"10.9.1\",\"typescript\":\"4.7.4\",\"universal-analytics\":\"0.4.20\",\"utility-types\":\"2.1.0\",\"which\":\"2.0.2\",\"write-json-file\":\"2.2.0\",\"xdg-app-paths\":\"5.1.0\",\"yauzl-promise\":\"2.1.3\"},\"jest\":{\"preset\":\"ts-jest\",\"globals\":{\"ts-jest\":{\"diagnostics\":false,\"isolatedModules\":true}},\"setupFilesAfterEnv\":[\"@alex_neo/jest-expect-message\"],\"verbose\":false,\"testEnvironment\":\"node\",\"testMatch\":[\"<rootDir>/test/**/*.test.ts\"]}}");
249313
+ module.exports = JSON.parse("{\"name\":\"vercel\",\"version\":\"28.4.0\",\"preferGlobal\":true,\"license\":\"Apache-2.0\",\"description\":\"The command-line interface for Vercel\",\"homepage\":\"https://vercel.com\",\"repository\":{\"type\":\"git\",\"url\":\"https://github.com/vercel/vercel.git\",\"directory\":\"packages/cli\"},\"scripts\":{\"preinstall\":\"node ./scripts/preinstall.js\",\"test\":\"jest --env node --verbose --runInBand --bail --forceExit\",\"test-unit\":\"yarn test test/unit/\",\"test-integration-cli\":\"rimraf test/fixtures/integration && ava test/integration.js --serial --fail-fast --verbose\",\"test-integration-dev\":\"yarn test test/dev/\",\"coverage\":\"codecov\",\"build\":\"ts-node ./scripts/build.ts\",\"dev\":\"ts-node ./src/index.ts\"},\"bin\":{\"vc\":\"./dist/index.js\",\"vercel\":\"./dist/index.js\"},\"files\":[\"dist\",\"scripts/preinstall.js\"],\"ava\":{\"extensions\":[\"ts\"],\"require\":[\"ts-node/register/transpile-only\",\"esm\"]},\"engines\":{\"node\":\">= 14\"},\"dependencies\":{\"@vercel/build-utils\":\"5.4.4\",\"@vercel/go\":\"2.2.7\",\"@vercel/hydrogen\":\"0.0.20\",\"@vercel/next\":\"3.1.27\",\"@vercel/node\":\"2.5.16\",\"@vercel/python\":\"3.1.16\",\"@vercel/redwood\":\"1.0.25\",\"@vercel/remix\":\"1.0.26\",\"@vercel/ruby\":\"1.3.33\",\"@vercel/static-build\":\"1.0.25\",\"update-notifier\":\"5.1.0\"},\"devDependencies\":{\"@alex_neo/jest-expect-message\":\"1.0.5\",\"@next/env\":\"11.1.2\",\"@sentry/node\":\"5.5.0\",\"@sindresorhus/slugify\":\"0.11.0\",\"@swc/core\":\"1.2.218\",\"@tootallnate/once\":\"1.1.2\",\"@types/ansi-escapes\":\"3.0.0\",\"@types/ansi-regex\":\"4.0.0\",\"@types/async-retry\":\"1.2.1\",\"@types/bytes\":\"3.0.0\",\"@types/chance\":\"1.1.3\",\"@types/debug\":\"0.0.31\",\"@types/dotenv\":\"6.1.1\",\"@types/escape-html\":\"0.0.20\",\"@types/express\":\"4.17.13\",\"@types/fs-extra\":\"9.0.13\",\"@types/glob\":\"7.1.1\",\"@types/http-proxy\":\"1.16.2\",\"@types/ini\":\"1.3.31\",\"@types/inquirer\":\"7.3.1\",\"@types/jest\":\"27.4.1\",\"@types/jest-expect-message\":\"1.0.3\",\"@types/load-json-file\":\"2.0.7\",\"@types/mime-types\":\"2.1.0\",\"@types/minimatch\":\"3.0.3\",\"@types/mri\":\"1.1.0\",\"@types/ms\":\"0.7.30\",\"@types/node\":\"11.11.0\",\"@types/node-fetch\":\"2.5.10\",\"@types/npm-package-arg\":\"6.1.0\",\"@types/pluralize\":\"0.0.29\",\"@types/psl\":\"1.1.0\",\"@types/semver\":\"6.0.1\",\"@types/tar-fs\":\"1.16.1\",\"@types/text-table\":\"0.2.0\",\"@types/title\":\"3.4.1\",\"@types/universal-analytics\":\"0.4.2\",\"@types/update-notifier\":\"5.1.0\",\"@types/which\":\"1.3.2\",\"@types/write-json-file\":\"2.2.1\",\"@types/yauzl-promise\":\"2.1.0\",\"@vercel/client\":\"12.2.6\",\"@vercel/frameworks\":\"1.1.6\",\"@vercel/fs-detectors\":\"3.3.0\",\"@vercel/fun\":\"1.0.4\",\"@vercel/ncc\":\"0.24.0\",\"@zeit/source-map-support\":\"0.6.2\",\"ajv\":\"6.12.2\",\"alpha-sort\":\"2.0.1\",\"ansi-escapes\":\"3.0.0\",\"ansi-regex\":\"3.0.0\",\"arg\":\"5.0.0\",\"async-listen\":\"1.2.0\",\"async-retry\":\"1.1.3\",\"async-sema\":\"2.1.4\",\"ava\":\"2.2.0\",\"boxen\":\"4.2.0\",\"bytes\":\"3.0.0\",\"chalk\":\"4.1.0\",\"chance\":\"1.1.7\",\"chokidar\":\"3.3.1\",\"codecov\":\"3.8.2\",\"cpy\":\"7.2.0\",\"date-fns\":\"1.29.0\",\"debug\":\"3.1.0\",\"dot\":\"1.1.3\",\"dotenv\":\"4.0.0\",\"email-prompt\":\"0.3.2\",\"email-validator\":\"1.1.1\",\"epipebomb\":\"1.0.0\",\"escape-html\":\"1.0.3\",\"esm\":\"3.1.4\",\"execa\":\"3.2.0\",\"express\":\"4.17.1\",\"fast-deep-equal\":\"3.1.3\",\"fs-extra\":\"10.0.0\",\"get-port\":\"5.1.1\",\"git-last-commit\":\"1.0.1\",\"glob\":\"7.1.2\",\"http-proxy\":\"1.18.1\",\"ini\":\"3.0.0\",\"inquirer\":\"7.0.4\",\"is-docker\":\"2.2.1\",\"is-port-reachable\":\"3.1.0\",\"is-url\":\"1.2.2\",\"jaro-winkler\":\"0.2.8\",\"jsonlines\":\"0.1.1\",\"load-json-file\":\"3.0.0\",\"mime-types\":\"2.1.24\",\"minimatch\":\"3.0.4\",\"mri\":\"1.1.5\",\"ms\":\"2.1.2\",\"node-fetch\":\"2.6.7\",\"npm-package-arg\":\"6.1.0\",\"open\":\"8.4.0\",\"ora\":\"3.4.0\",\"pcre-to-regexp\":\"1.0.0\",\"pluralize\":\"7.0.0\",\"promisepipe\":\"3.0.0\",\"psl\":\"1.1.31\",\"qr-image\":\"3.2.0\",\"raw-body\":\"2.4.1\",\"rimraf\":\"3.0.2\",\"semver\":\"5.5.0\",\"serve-handler\":\"6.1.1\",\"strip-ansi\":\"5.2.0\",\"stripe\":\"5.1.0\",\"tar-fs\":\"1.16.3\",\"test-listen\":\"1.1.0\",\"text-table\":\"0.2.0\",\"title\":\"3.4.1\",\"tmp-promise\":\"1.0.3\",\"tree-kill\":\"1.2.2\",\"ts-node\":\"10.9.1\",\"typescript\":\"4.7.4\",\"universal-analytics\":\"0.4.20\",\"utility-types\":\"2.1.0\",\"which\":\"2.0.2\",\"write-json-file\":\"2.2.0\",\"xdg-app-paths\":\"5.1.0\",\"yauzl-promise\":\"2.1.3\"},\"jest\":{\"preset\":\"ts-jest\",\"globals\":{\"ts-jest\":{\"diagnostics\":false,\"isolatedModules\":true}},\"setupFilesAfterEnv\":[\"@alex_neo/jest-expect-message\"],\"verbose\":false,\"testEnvironment\":\"node\",\"testMatch\":[\"<rootDir>/test/**/*.test.ts\"]}}");
249216
249314
 
249217
249315
  /***/ }),
249218
249316
 
@@ -249220,7 +249318,7 @@ module.exports = JSON.parse("{\"name\":\"vercel\",\"version\":\"28.3.0\",\"prefe
249220
249318
  /***/ ((module) => {
249221
249319
 
249222
249320
  "use strict";
249223
- module.exports = JSON.parse("{\"name\":\"@vercel/client\",\"version\":\"12.2.5\",\"main\":\"dist/index.js\",\"typings\":\"dist/index.d.ts\",\"homepage\":\"https://vercel.com\",\"license\":\"MIT\",\"files\":[\"dist\"],\"repository\":{\"type\":\"git\",\"url\":\"https://github.com/vercel/vercel.git\",\"directory\":\"packages/client\"},\"scripts\":{\"build\":\"tsc\",\"test-integration-once\":\"yarn test tests/create-deployment.test.ts tests/create-legacy-deployment.test.ts tests/paths.test.ts\",\"test\":\"jest --env node --verbose --runInBand --bail\",\"test-unit\":\"yarn test tests/unit.*test.*\"},\"engines\":{\"node\":\">= 14\"},\"devDependencies\":{\"@types/async-retry\":\"1.4.1\",\"@types/fs-extra\":\"7.0.0\",\"@types/jest\":\"27.4.1\",\"@types/minimatch\":\"3.0.5\",\"@types/ms\":\"0.7.30\",\"@types/node\":\"12.0.4\",\"@types/node-fetch\":\"2.5.4\",\"@types/recursive-readdir\":\"2.2.0\",\"@types/tar-fs\":\"1.16.1\",\"typescript\":\"4.3.4\"},\"jest\":{\"preset\":\"ts-jest\",\"testEnvironment\":\"node\",\"verbose\":false,\"setupFilesAfterEnv\":[\"<rootDir>/tests/setup/index.ts\"]},\"dependencies\":{\"@vercel/build-utils\":\"5.4.3\",\"@vercel/routing-utils\":\"2.0.2\",\"@zeit/fetch\":\"5.2.0\",\"async-retry\":\"1.2.3\",\"async-sema\":\"3.0.0\",\"fs-extra\":\"8.0.1\",\"ignore\":\"4.0.6\",\"minimatch\":\"5.0.1\",\"ms\":\"2.1.2\",\"node-fetch\":\"2.6.7\",\"querystring\":\"^0.2.0\",\"sleep-promise\":\"8.0.1\",\"tar-fs\":\"1.16.3\"}}");
249321
+ module.exports = JSON.parse("{\"name\":\"@vercel/client\",\"version\":\"12.2.6\",\"main\":\"dist/index.js\",\"typings\":\"dist/index.d.ts\",\"homepage\":\"https://vercel.com\",\"license\":\"MIT\",\"files\":[\"dist\"],\"repository\":{\"type\":\"git\",\"url\":\"https://github.com/vercel/vercel.git\",\"directory\":\"packages/client\"},\"scripts\":{\"build\":\"tsc\",\"test-integration-once\":\"yarn test tests/create-deployment.test.ts tests/create-legacy-deployment.test.ts tests/paths.test.ts\",\"test\":\"jest --env node --verbose --runInBand --bail\",\"test-unit\":\"yarn test tests/unit.*test.*\"},\"engines\":{\"node\":\">= 14\"},\"devDependencies\":{\"@types/async-retry\":\"1.4.1\",\"@types/fs-extra\":\"7.0.0\",\"@types/jest\":\"27.4.1\",\"@types/minimatch\":\"3.0.5\",\"@types/ms\":\"0.7.30\",\"@types/node\":\"12.0.4\",\"@types/node-fetch\":\"2.5.4\",\"@types/recursive-readdir\":\"2.2.0\",\"@types/tar-fs\":\"1.16.1\",\"typescript\":\"4.3.4\"},\"jest\":{\"preset\":\"ts-jest\",\"testEnvironment\":\"node\",\"verbose\":false,\"setupFilesAfterEnv\":[\"<rootDir>/tests/setup/index.ts\"]},\"dependencies\":{\"@vercel/build-utils\":\"5.4.4\",\"@vercel/routing-utils\":\"2.0.2\",\"@zeit/fetch\":\"5.2.0\",\"async-retry\":\"1.2.3\",\"async-sema\":\"3.0.0\",\"fs-extra\":\"8.0.1\",\"ignore\":\"4.0.6\",\"minimatch\":\"5.0.1\",\"ms\":\"2.1.2\",\"node-fetch\":\"2.6.7\",\"querystring\":\"^0.2.0\",\"sleep-promise\":\"8.0.1\",\"tar-fs\":\"1.16.3\"}}");
249224
249322
 
249225
249323
  /***/ }),
249226
249324
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "vercel",
3
- "version": "28.3.0",
3
+ "version": "28.4.0",
4
4
  "preferGlobal": true,
5
5
  "license": "Apache-2.0",
6
6
  "description": "The command-line interface for Vercel",
@@ -41,16 +41,16 @@
41
41
  "node": ">= 14"
42
42
  },
43
43
  "dependencies": {
44
- "@vercel/build-utils": "5.4.3",
45
- "@vercel/go": "2.2.6",
46
- "@vercel/hydrogen": "0.0.19",
47
- "@vercel/next": "3.1.26",
48
- "@vercel/node": "2.5.15",
49
- "@vercel/python": "3.1.15",
50
- "@vercel/redwood": "1.0.24",
51
- "@vercel/remix": "1.0.25",
52
- "@vercel/ruby": "1.3.32",
53
- "@vercel/static-build": "1.0.24",
44
+ "@vercel/build-utils": "5.4.4",
45
+ "@vercel/go": "2.2.7",
46
+ "@vercel/hydrogen": "0.0.20",
47
+ "@vercel/next": "3.1.27",
48
+ "@vercel/node": "2.5.16",
49
+ "@vercel/python": "3.1.16",
50
+ "@vercel/redwood": "1.0.25",
51
+ "@vercel/remix": "1.0.26",
52
+ "@vercel/ruby": "1.3.33",
53
+ "@vercel/static-build": "1.0.25",
54
54
  "update-notifier": "5.1.0"
55
55
  },
56
56
  "devDependencies": {
@@ -95,7 +95,7 @@
95
95
  "@types/which": "1.3.2",
96
96
  "@types/write-json-file": "2.2.1",
97
97
  "@types/yauzl-promise": "2.1.0",
98
- "@vercel/client": "12.2.5",
98
+ "@vercel/client": "12.2.6",
99
99
  "@vercel/frameworks": "1.1.6",
100
100
  "@vercel/fs-detectors": "3.3.0",
101
101
  "@vercel/fun": "1.0.4",
@@ -193,5 +193,5 @@
193
193
  "<rootDir>/test/**/*.test.ts"
194
194
  ]
195
195
  },
196
- "gitHead": "619ca9342156758efdb0db8adaf20e0d4a1493e4"
196
+ "gitHead": "27f4034bdce427953fea094b1c4dfbfb00342b54"
197
197
  }