@vercel/fs-detectors 3.8.8 → 3.8.10

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.
@@ -9,6 +9,7 @@ const monorepo_managers_1 = require("./monorepo-managers");
9
9
  const package_managers_1 = require("../package-managers/package-managers");
10
10
  const detect_framework_1 = require("../detect-framework");
11
11
  const json5_1 = __importDefault(require("json5"));
12
+ const semver_1 = __importDefault(require("semver"));
12
13
  class MissingBuildPipeline extends Error {
13
14
  constructor() {
14
15
  super('Missing required `build` pipeline in turbo.json or package.json Turbo configuration.');
@@ -21,6 +22,15 @@ class MissingBuildTarget extends Error {
21
22
  }
22
23
  }
23
24
  exports.MissingBuildTarget = MissingBuildTarget;
25
+ function supportsRootCommand(turboSemVer) {
26
+ if (!turboSemVer) {
27
+ return false;
28
+ }
29
+ if (!semver_1.default.validRange(turboSemVer)) {
30
+ return false;
31
+ }
32
+ return !semver_1.default.intersects(turboSemVer, '<1.8.0');
33
+ }
24
34
  async function getMonorepoDefaultSettings(projectName, projectPath, relativeToRoot, detectorFilesystem) {
25
35
  const [monorepoManager, packageManager] = await Promise.all([
26
36
  detect_framework_1.detectFramework({
@@ -38,17 +48,22 @@ async function getMonorepoDefaultSettings(projectName, projectPath, relativeToRo
38
48
  detectorFilesystem.readFile('package.json').catch(() => null),
39
49
  ]);
40
50
  let hasBuildPipeline = false;
51
+ let turboSemVer = null;
41
52
  if (turboJSONBuf !== null) {
42
53
  const turboJSON = json5_1.default.parse(turboJSONBuf.toString('utf-8'));
43
54
  if (turboJSON?.pipeline?.build) {
44
55
  hasBuildPipeline = true;
45
56
  }
46
57
  }
47
- else if (packageJSONBuf !== null) {
58
+ if (packageJSONBuf !== null) {
48
59
  const packageJSON = JSON.parse(packageJSONBuf.toString('utf-8'));
49
60
  if (packageJSON?.turbo?.pipeline?.build) {
50
61
  hasBuildPipeline = true;
51
62
  }
63
+ turboSemVer =
64
+ packageJSON?.dependencies?.turbo ||
65
+ packageJSON?.devDependencies?.turbo ||
66
+ null;
52
67
  }
53
68
  if (!hasBuildPipeline) {
54
69
  throw new MissingBuildPipeline();
@@ -56,16 +71,24 @@ async function getMonorepoDefaultSettings(projectName, projectPath, relativeToRo
56
71
  if (projectPath === '/') {
57
72
  return {
58
73
  monorepoManager: 'turbo',
59
- buildCommand: 'npx turbo run build',
74
+ buildCommand: 'turbo run build',
60
75
  installCommand: packageManager ? `${packageManager} install` : null,
61
76
  commandForIgnoringBuildStep: 'npx turbo-ignore',
62
77
  };
63
78
  }
79
+ let buildCommand = null;
80
+ if (projectPath) {
81
+ if (supportsRootCommand(turboSemVer)) {
82
+ buildCommand = `turbo run build`;
83
+ }
84
+ else {
85
+ // We don't know for sure if the local `turbo` supports inference.
86
+ buildCommand = `cd ${relativeToRoot} && turbo run build --filter={${projectPath}}...`;
87
+ }
88
+ }
64
89
  return {
65
90
  monorepoManager: 'turbo',
66
- buildCommand: projectPath
67
- ? `cd ${relativeToRoot} && npx turbo run build --filter={${projectPath}}...`
68
- : null,
91
+ buildCommand,
69
92
  installCommand: packageManager === 'npm'
70
93
  ? `${packageManager} install --prefix=${relativeToRoot}`
71
94
  : packageManager
@@ -1 +1 @@
1
- {"version":3,"file":"get-monorepo-default-settings.js","sourceRoot":"","sources":["../../src/monorepos/get-monorepo-default-settings.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"get-monorepo-default-settings.js","sourceRoot":"","sources":["../../src/monorepos/get-monorepo-default-settings.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vercel/fs-detectors",
3
- "version": "3.8.8",
3
+ "version": "3.8.10",
4
4
  "description": "Vercel filesystem detectors",
5
5
  "main": "./dist/index.js",
6
6
  "types": "./dist/index.d.ts",
@@ -12,20 +12,20 @@
12
12
  "url": "https://github.com/vercel/vercel.git",
13
13
  "directory": "packages/fs-detectors"
14
14
  },
15
- "license": "MIT",
15
+ "license": "Apache-2.0",
16
16
  "scripts": {
17
17
  "build": "tsc",
18
18
  "test": "jest --env node --verbose --runInBand --bail test/unit.*test.*",
19
19
  "test-unit": "pnpm test"
20
20
  },
21
21
  "dependencies": {
22
- "@vercel/error-utils": "1.0.8",
23
- "@vercel/frameworks": "1.3.3",
24
- "@vercel/routing-utils": "2.1.11",
22
+ "@vercel/error-utils": "1.0.9",
23
+ "@vercel/frameworks": "1.3.4",
24
+ "@vercel/routing-utils": "2.2.0",
25
25
  "glob": "8.0.3",
26
26
  "js-yaml": "4.1.0",
27
27
  "json5": "2.2.2",
28
- "minimatch": "3.0.4",
28
+ "minimatch": "3.1.2",
29
29
  "semver": "6.1.1"
30
30
  },
31
31
  "devDependencies": {
@@ -35,8 +35,8 @@
35
35
  "@types/minimatch": "3.0.5",
36
36
  "@types/node": "14.18.33",
37
37
  "@types/semver": "7.3.10",
38
- "@vercel/build-utils": "6.7.0",
38
+ "@vercel/build-utils": "6.7.1",
39
39
  "typescript": "4.3.4"
40
40
  },
41
- "gitHead": "46348201b4eadb03b403f99dc5574c31d2b3926e"
41
+ "gitHead": "14ece4111aed844a92e0024c5933f41b8ae717a0"
42
42
  }