vercel 59.6.2 → 59.7.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 (86) hide show
  1. package/dist/chunks/{add-SIGUSM3Y.js → add-7O4TM33A.js} +5 -5
  2. package/dist/chunks/{add-HJSEM4YJ.js → add-UT6ZPA4F.js} +2 -2
  3. package/dist/chunks/{add-4GQZ22ZN.js → add-UVMFKSSY.js} +2 -2
  4. package/dist/chunks/{build-XOMJDX4M.js → build-SKKT3DIB.js} +2 -2
  5. package/dist/chunks/{chunk-3F5EGINT.js → chunk-2EH6SZRG.js} +1 -1
  6. package/dist/chunks/{chunk-DE7MBNHQ.js → chunk-2T3IZZTJ.js} +1 -1
  7. package/dist/chunks/{chunk-JH4WQRIU.js → chunk-3PA7LXYM.js} +1 -1
  8. package/dist/chunks/{chunk-R5PULMHT.js → chunk-63OX2DER.js} +1 -1
  9. package/dist/chunks/{chunk-7R6M3BHM.js → chunk-67IIZBBY.js} +1 -1
  10. package/dist/chunks/{chunk-FRZULOVH.js → chunk-7IDPPWDN.js} +1 -1
  11. package/dist/chunks/{chunk-PRH6KRUT.js → chunk-7KSICC3A.js} +1 -1
  12. package/dist/chunks/{chunk-SWI6F4X3.js → chunk-AFKB6VMO.js} +1 -1
  13. package/dist/chunks/{chunk-VJ5NAOWB.js → chunk-BQG777JE.js} +5 -4
  14. package/dist/chunks/{chunk-NGNN6WF2.js → chunk-CBHLLOGZ.js} +2 -2
  15. package/dist/chunks/{chunk-GZQQNLF5.js → chunk-CMRZ4KI4.js} +2 -2
  16. package/dist/chunks/{chunk-GISTGGBO.js → chunk-DG6IMLCF.js} +1 -1
  17. package/dist/chunks/{chunk-O26N2UPI.js → chunk-GGPE5377.js} +1 -1
  18. package/dist/chunks/{chunk-ZNMTDLYH.js → chunk-GK3RE3AC.js} +2 -2
  19. package/dist/chunks/{chunk-37V5P4VO.js → chunk-IFNCPWH5.js} +4 -4
  20. package/dist/chunks/{chunk-2O5J3KMT.js → chunk-KD2N44NG.js} +1 -1
  21. package/dist/chunks/{chunk-WZ2S3A2A.js → chunk-MHCGKUI7.js} +1 -1
  22. package/dist/chunks/{chunk-YJKZQEHS.js → chunk-MUMITVZP.js} +1 -1
  23. package/dist/chunks/{chunk-V3MDDR2X.js → chunk-NJCM5JJN.js} +1 -1
  24. package/dist/chunks/{chunk-LXZVOR6F.js → chunk-SSBYESJ5.js} +1 -1
  25. package/dist/chunks/{chunk-SF3AYAIF.js → chunk-WVPMR7XV.js} +3 -3
  26. package/dist/chunks/{chunk-6M2KZUED.js → chunk-XSYZDMUP.js} +1 -1
  27. package/dist/chunks/{clear-BWT2FJY4.js → clear-X7M4WGBC.js} +2 -2
  28. package/dist/chunks/{compile-vercel-config-DGM4NISW.js → compile-vercel-config-FBOZBWJC.js} +1 -1
  29. package/dist/chunks/{config-RSE6Z4LB.js → config-KGW667XC.js} +3 -3
  30. package/dist/chunks/{config-NJAN3RMU.js → config-RYPSCAR7.js} +2 -2
  31. package/dist/chunks/{constants-WEQVJSYS.js → constants-YMCRE6IG.js} +1 -1
  32. package/dist/chunks/{delete-SSL2PK2F.js → delete-OXYXXPHR.js} +2 -2
  33. package/dist/chunks/{delete-LROBRBAH.js → delete-VK6FTDBI.js} +2 -2
  34. package/dist/chunks/{disable-ASG5JDZR.js → disable-XRJTKNX4.js} +2 -2
  35. package/dist/chunks/{discard-PV47B6IL.js → discard-NAPSPR6Y.js} +2 -2
  36. package/dist/chunks/{edit-5ATYIOLX.js → edit-34GDLPQG.js} +3 -3
  37. package/dist/chunks/{edit-REI7HXGG.js → edit-WLG4GLU3.js} +2 -2
  38. package/dist/chunks/{enable-LZXL7XAG.js → enable-IDKKVXKB.js} +2 -2
  39. package/dist/chunks/{export-ZAZFQU2E.js → export-MPMU3FYY.js} +2 -2
  40. package/dist/chunks/{image-QPHN5V7L.js → image-RZ2A4FWP.js} +3 -3
  41. package/dist/chunks/{import-builders-W3YE2V6A.js → import-builders-GZPE5N44.js} +2 -2
  42. package/dist/chunks/{inspect-RDMC2Z3Q.js → inspect-56S2DKPO.js} +2 -2
  43. package/dist/chunks/{inspect-SJEZVGPK.js → inspect-EVDBNPP4.js} +2 -2
  44. package/dist/chunks/{inspect-FRXJRM6T.js → inspect-KGEMHV2T.js} +2 -2
  45. package/dist/chunks/{inspect-SSOM3FXS.js → inspect-OOV2ORKD.js} +2 -2
  46. package/dist/chunks/{inspect-BFGK72WY.js → inspect-X2Y5FDKR.js} +3 -3
  47. package/dist/chunks/{list-2HTR7Q3J.js → list-FWLSZYMO.js} +2 -2
  48. package/dist/chunks/{list-W33GXKDA.js → list-H357CF7M.js} +3 -3
  49. package/dist/chunks/{list-PHDUZVMR.js → list-TWSOAQRB.js} +1 -1
  50. package/dist/chunks/{login-JWAFHVDG.js → login-54OPNB5E.js} +2 -2
  51. package/dist/chunks/{ls-KDFU224B.js → ls-6JHFSJBJ.js} +2 -2
  52. package/dist/chunks/{ls-RWKNJQNT.js → ls-DU3S2GBJ.js} +2 -2
  53. package/dist/chunks/{ls-KX2VBOGV.js → ls-VDFNIR5H.js} +3 -3
  54. package/dist/chunks/{ls-3AN2DZHN.js → ls-WFMTVJOO.js} +2 -2
  55. package/dist/chunks/{ls-3MH2OCP3.js → ls-WGIRTAVM.js} +2 -2
  56. package/dist/chunks/{ls-D2POUHI7.js → ls-ZMR5RMU4.js} +2 -2
  57. package/dist/chunks/{open-IEYRB6RL.js → open-RCSCNKHF.js} +2 -2
  58. package/dist/chunks/{permissions-ZWZUMEHR.js → permissions-XNN37R4N.js} +4 -4
  59. package/dist/chunks/{publish-UWZYBDHK.js → publish-PLXEACYY.js} +2 -2
  60. package/dist/chunks/{push-IAEQ3FBF.js → push-EFYSB52Q.js} +2 -2
  61. package/dist/chunks/{query-NNOZYSED.js → query-EKTXDOL7.js} +1 -1
  62. package/dist/chunks/{reorder-TKBM244W.js → reorder-OSA7D2RG.js} +2 -2
  63. package/dist/chunks/{reply-FLBSBMTW.js → reply-6M2IYKLK.js} +2 -2
  64. package/dist/chunks/{resolve-GJYPMWUE.js → resolve-MCX5STKN.js} +2 -2
  65. package/dist/chunks/{restore-PNI3TM3U.js → restore-52OEP3NL.js} +2 -2
  66. package/dist/chunks/{rm-FN7LTIIL.js → rm-2VAJFK25.js} +2 -2
  67. package/dist/chunks/{rm-FXA5DLXQ.js → rm-4BJN2LJX.js} +2 -2
  68. package/dist/chunks/{rm-76CSSSSV.js → rm-IYEDZOMN.js} +2 -2
  69. package/dist/chunks/{rm-PGJ4KR6U.js → rm-QW35WHSK.js} +2 -2
  70. package/dist/chunks/{rm-FTE33UHE.js → rm-TXV4GB4L.js} +3 -3
  71. package/dist/chunks/{rule-inspect-LJIGPTWS.js → rule-inspect-WOBAN3Y2.js} +3 -3
  72. package/dist/chunks/{rules-6BMNO6M5.js → rules-CUJRAZYO.js} +6 -6
  73. package/dist/chunks/{schema-HATXEQDP.js → schema-VCGEJAOG.js} +1 -1
  74. package/dist/chunks/{set-C3UQUQ42.js → set-2QSXMDVF.js} +2 -2
  75. package/dist/chunks/{tags-BTVDROFG.js → tags-NHX2VQ7E.js} +2 -2
  76. package/dist/chunks/{update-B6PSOHUW.js → update-EOHXTT4N.js} +5 -5
  77. package/dist/commands/build/index.js +113 -6
  78. package/dist/commands/deploy/index.js +6 -6
  79. package/dist/commands/dev/index.js +321 -43
  80. package/dist/commands/env/index.js +2 -2
  81. package/dist/commands/link/index.js +1 -1
  82. package/dist/commands/list/index.js +2 -2
  83. package/dist/commands-bulk.js +70 -55
  84. package/dist/index.js +8 -8
  85. package/dist/version.mjs +1 -1
  86. package/package.json +47 -47
@@ -53,9 +53,9 @@ async function tags(client, argv, telemetry) {
53
53
  }
54
54
  switch (subcommand) {
55
55
  case "ls":
56
- return (await import("./ls-3MH2OCP3.js")).default(client, args, telemetry);
56
+ return (await import("./ls-WGIRTAVM.js")).default(client, args, telemetry);
57
57
  case "inspect":
58
- return (await import("./inspect-RDMC2Z3Q.js")).default(client, args, telemetry);
58
+ return (await import("./inspect-56S2DKPO.js")).default(client, args, telemetry);
59
59
  default:
60
60
  output_manager_default.error(`Unhandled tags subcommand: ${subcommand}`);
61
61
  return 1;
@@ -8,16 +8,16 @@ import {
8
8
  parseCustomAlertQueryBody,
9
9
  resolveCustomAlertProjectName,
10
10
  setMissingCustomAlertProjectScope
11
- } from "./chunk-GZQQNLF5.js";
11
+ } from "./chunk-CMRZ4KI4.js";
12
12
  import {
13
13
  emitRulesArgParseError,
14
14
  handleRulesApiError,
15
15
  parseRulesFlagsAndScope,
16
16
  rulesItemPath
17
- } from "./chunk-R5PULMHT.js";
18
- import "./chunk-2O5J3KMT.js";
17
+ } from "./chunk-63OX2DER.js";
18
+ import "./chunk-KD2N44NG.js";
19
19
  import "./chunk-3T7WSWZH.js";
20
- import "./chunk-LXZVOR6F.js";
20
+ import "./chunk-SSBYESJ5.js";
21
21
  import "./chunk-AINIBIP4.js";
22
22
  import {
23
23
  validateJsonOutput
@@ -25,7 +25,7 @@ import {
25
25
  import {
26
26
  rulesUpdateSubcommand
27
27
  } from "./chunk-XM3LOQIX.js";
28
- import "./chunk-VJ5NAOWB.js";
28
+ import "./chunk-BQG777JE.js";
29
29
  import "./chunk-FXD67VN5.js";
30
30
  import "./chunk-XNFHNTS2.js";
31
31
  import {
@@ -11,21 +11,21 @@ import {
11
11
  require_service_schedules,
12
12
  require_write_build_result,
13
13
  writeBuildResult
14
- } from "../../chunks/chunk-SWI6F4X3.js";
14
+ } from "../../chunks/chunk-AFKB6VMO.js";
15
15
  import {
16
16
  importBuilders,
17
17
  import_import_builders
18
- } from "../../chunks/chunk-WZ2S3A2A.js";
18
+ } from "../../chunks/chunk-MHCGKUI7.js";
19
19
  import {
20
20
  js_yaml_default,
21
21
  pullCommandLogic
22
- } from "../../chunks/chunk-NGNN6WF2.js";
22
+ } from "../../chunks/chunk-CBHLLOGZ.js";
23
23
  import {
24
24
  require_semver
25
25
  } from "../../chunks/chunk-IB5L4LKZ.js";
26
26
  import {
27
27
  readProjectSettings
28
- } from "../../chunks/chunk-JH4WQRIU.js";
28
+ } from "../../chunks/chunk-3PA7LXYM.js";
29
29
  import "../../chunks/chunk-7AEEQOD4.js";
30
30
  import "../../chunks/chunk-5XECIWME.js";
31
31
  import {
@@ -63,7 +63,7 @@ import {
63
63
  resolveProjectCwd,
64
64
  ua_default,
65
65
  validateConfig
66
- } from "../../chunks/chunk-VJ5NAOWB.js";
66
+ } from "../../chunks/chunk-BQG777JE.js";
67
67
  import "../../chunks/chunk-FXD67VN5.js";
68
68
  import {
69
69
  TelemetryClient
@@ -1082,12 +1082,15 @@ var require_monorepo = __commonJS({
1082
1082
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
1083
1083
  var monorepo_exports = {};
1084
1084
  __export(monorepo_exports, {
1085
+ applyServicesMonorepoDefaults: () => applyServicesMonorepoDefaults,
1085
1086
  setMonorepoDefaultSettings: () => setMonorepoDefaultSettings
1086
1087
  });
1087
1088
  module.exports = __toCommonJS(monorepo_exports);
1088
1089
  var import_path2 = __require("path");
1089
1090
  var import_fs_detectors = require_dist2();
1091
+ var import_service_topology = require_dist4();
1090
1092
  var import_title = __toESM2(require_lib2());
1093
+ var import_fs_extra2 = __toESM2(require_lib());
1091
1094
  var import_build_utils3 = __require("@vercel/build-utils");
1092
1095
  async function setMonorepoDefaultSettings(cwd, workPath, projectSettings, output) {
1093
1096
  const localFileSystem = new import_fs_detectors.LocalFileSystemDetector(cwd);
@@ -1137,6 +1140,98 @@ var require_monorepo = __commonJS({
1137
1140
  throw error;
1138
1141
  }
1139
1142
  }
1143
+ async function hasVercelBuildScript(serviceRoot) {
1144
+ try {
1145
+ const pkg = await import_fs_extra2.default.readJSON(
1146
+ (0, import_path2.join)(serviceRoot, "package.json")
1147
+ );
1148
+ return pkg?.scripts?.["vercel-build"] !== void 0;
1149
+ } catch {
1150
+ return false;
1151
+ }
1152
+ }
1153
+ async function applyServicesMonorepoDefaults(cwd, workPath, services, projectSettings, output) {
1154
+ const localFileSystem = new import_fs_detectors.LocalFileSystemDetector(cwd);
1155
+ let result;
1156
+ let announced = false;
1157
+ for (const [name, config] of Object.entries(services)) {
1158
+ if (config.buildCommand) {
1159
+ (0, import_build_utils3.debug)(
1160
+ `Skipping auto-assignment of buildCommand for service "${name}" as it is already set in the services configuration.`
1161
+ );
1162
+ continue;
1163
+ }
1164
+ const runtime = (0, import_service_topology.inferServiceRuntime)({
1165
+ runtime: config.runtime,
1166
+ framework: config.framework,
1167
+ entrypoint: config.entrypoint
1168
+ });
1169
+ if (runtime !== void 0 && runtime !== "node") {
1170
+ (0, import_build_utils3.debug)(
1171
+ `Skipping monorepo defaults for service "${name}": runtime "${runtime}" does not build via the monorepo task graph.`
1172
+ );
1173
+ continue;
1174
+ }
1175
+ const serviceRoot = (0, import_path2.resolve)(workPath, config.root ?? ".");
1176
+ const projectPath = (0, import_path2.relative)(cwd, serviceRoot);
1177
+ if ((0, import_path2.isAbsolute)(projectPath) || projectPath === ".." || projectPath.startsWith(`..${import_path2.sep}`)) {
1178
+ (0, import_build_utils3.debug)(
1179
+ `Skipping monorepo defaults for service "${name}": root "${config.root}" is outside "${cwd}".`
1180
+ );
1181
+ continue;
1182
+ }
1183
+ if (await hasVercelBuildScript(serviceRoot)) {
1184
+ (0, import_build_utils3.debug)(
1185
+ `Skipping monorepo defaults for service "${name}": a \`vercel-build\` script is defined in its root package.json.`
1186
+ );
1187
+ continue;
1188
+ }
1189
+ const posixProjectPath = (0, import_build_utils3.normalizePath)(projectPath);
1190
+ const posixRelativeToRoot = (0, import_build_utils3.normalizePath)((0, import_path2.relative)(serviceRoot, cwd));
1191
+ let settings;
1192
+ try {
1193
+ settings = await (0, import_fs_detectors.getMonorepoDefaultSettings)(
1194
+ (0, import_path2.basename)(serviceRoot),
1195
+ // `getMonorepoDefaultSettings()` expects `/` (not `''`) to mean "the
1196
+ // monorepo root", which is a valid service root.
1197
+ posixProjectPath || "/",
1198
+ posixRelativeToRoot,
1199
+ localFileSystem
1200
+ );
1201
+ } catch (error) {
1202
+ if (error instanceof import_fs_detectors.MissingBuildPipeline) {
1203
+ output.warn(`${error.message} Skipping automatic setting assignment.`);
1204
+ break;
1205
+ }
1206
+ if (error instanceof import_fs_detectors.MissingBuildTarget) {
1207
+ output.warn(
1208
+ `Service "${name}": ${error.message} Skipping automatic setting assignment.`
1209
+ );
1210
+ continue;
1211
+ }
1212
+ throw error;
1213
+ }
1214
+ if (settings === null) {
1215
+ break;
1216
+ }
1217
+ projectSettings.monorepoManager = settings.monorepoManager;
1218
+ if (!settings.buildCommand) {
1219
+ continue;
1220
+ }
1221
+ if (!announced) {
1222
+ output.log(
1223
+ `Detected ${(0, import_title.default)(settings.monorepoManager)}. Adjusting default settings...`
1224
+ );
1225
+ announced = true;
1226
+ }
1227
+ (0, import_build_utils3.debug)(
1228
+ `Assigning buildCommand "${settings.buildCommand}" to service "${name}".`
1229
+ );
1230
+ result ??= { ...services };
1231
+ result[name] = { ...config, buildCommand: settings.buildCommand };
1232
+ }
1233
+ return result ?? services;
1234
+ }
1140
1235
  }
1141
1236
  });
1142
1237
 
@@ -1550,11 +1645,23 @@ var require_do_build = __commonJS({
1550
1645
  builds = builds.flatMap((b) => expandBuild(files, b));
1551
1646
  } else {
1552
1647
  isZeroConfig = true;
1648
+ let servicesForDetection = configuredExperimentalServicesV2;
1649
+ if (process.env.VERCEL_BUILD_MONOREPO_SUPPORT === "1" && configuredExperimentalServicesV2) {
1650
+ servicesForDetection = await span.child("vc.applyServicesMonorepoDefaults").trace(
1651
+ () => (0, import_monorepo.applyServicesMonorepoDefaults)(
1652
+ cwd,
1653
+ workPath,
1654
+ configuredExperimentalServicesV2,
1655
+ projectSettings,
1656
+ output
1657
+ )
1658
+ );
1659
+ }
1553
1660
  const detectedBuilders = await span.child("vc.detectBuilders").trace(
1554
1661
  () => (0, import_detect_builders_with_services.detectBuildersWithServices)(files, pkg, {
1555
1662
  ...localConfig,
1556
1663
  services: void 0,
1557
- experimentalServicesV2: configuredExperimentalServicesV2,
1664
+ experimentalServicesV2: servicesForDetection,
1558
1665
  projectSettings,
1559
1666
  ignoreBuildScript: true,
1560
1667
  featHandleMiss: true,
@@ -6,7 +6,7 @@ const __filename = __fileURLToPath(import.meta.url);
6
6
  const __dirname = __dirname_(__filename);
7
7
  import {
8
8
  promptMissingCredentials
9
- } from "../../chunks/chunk-ZNMTDLYH.js";
9
+ } from "../../chunks/chunk-GK3RE3AC.js";
10
10
  import {
11
11
  Now,
12
12
  UploadErrorMissingArchive,
@@ -16,15 +16,15 @@ import {
16
16
  purchaseDomainIfAvailable,
17
17
  require_cjs,
18
18
  setupDomain
19
- } from "../../chunks/chunk-SF3AYAIF.js";
19
+ } from "../../chunks/chunk-WVPMR7XV.js";
20
20
  import "../../chunks/chunk-PRWJUY5U.js";
21
21
  import {
22
22
  login,
23
23
  require_ci_info
24
- } from "../../chunks/chunk-GISTGGBO.js";
24
+ } from "../../chunks/chunk-DG6IMLCF.js";
25
25
  import {
26
26
  readLocalConfig
27
- } from "../../chunks/chunk-LXZVOR6F.js";
27
+ } from "../../chunks/chunk-SSBYESJ5.js";
28
28
  import {
29
29
  highlight
30
30
  } from "../../chunks/chunk-AINIBIP4.js";
@@ -63,7 +63,7 @@ import "../../chunks/chunk-XDGOOW3K.js";
63
63
  import "../../chunks/chunk-VP5Y3SZG.js";
64
64
  import {
65
65
  pickOverrides
66
- } from "../../chunks/chunk-JH4WQRIU.js";
66
+ } from "../../chunks/chunk-3PA7LXYM.js";
67
67
  import {
68
68
  stamp_default
69
69
  } from "../../chunks/chunk-64IF634X.js";
@@ -100,7 +100,7 @@ import {
100
100
  require_lib,
101
101
  validatePaths,
102
102
  validateRootDirectory
103
- } from "../../chunks/chunk-VJ5NAOWB.js";
103
+ } from "../../chunks/chunk-BQG777JE.js";
104
104
  import "../../chunks/chunk-FXD67VN5.js";
105
105
  import {
106
106
  TelemetryClient