@vercel/build-utils 7.10.0 → 7.12.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.
- package/CHANGELOG.md +12 -0
- package/dist/get-installed-package-version.d.ts +1 -0
- package/dist/get-installed-package-version.js +53 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.js +65 -9
- package/dist/os.d.ts +3 -0
- package/dist/os.js +62 -0
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
@@ -1,5 +1,17 @@
|
|
1
1
|
# @vercel/build-utils
|
2
2
|
|
3
|
+
## 7.12.0
|
4
|
+
|
5
|
+
### Minor Changes
|
6
|
+
|
7
|
+
- Trigger release ([#11465](https://github.com/vercel/vercel/pull/11465))
|
8
|
+
|
9
|
+
## 7.11.0
|
10
|
+
|
11
|
+
### Minor Changes
|
12
|
+
|
13
|
+
- Add `getOsRelease()` and `getProvidedRuntime()` functions ([#11370](https://github.com/vercel/vercel/pull/11370))
|
14
|
+
|
3
15
|
## 7.10.0
|
4
16
|
|
5
17
|
### Minor Changes
|
@@ -0,0 +1 @@
|
|
1
|
+
export declare function getInstalledPackageVersion(packageName: string, path?: string | string[]): Promise<string | undefined>;
|
@@ -0,0 +1,53 @@
|
|
1
|
+
"use strict";
|
2
|
+
var __create = Object.create;
|
3
|
+
var __defProp = Object.defineProperty;
|
4
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
5
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
6
|
+
var __getProtoOf = Object.getPrototypeOf;
|
7
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
8
|
+
var __export = (target, all) => {
|
9
|
+
for (var name in all)
|
10
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
11
|
+
};
|
12
|
+
var __copyProps = (to, from, except, desc) => {
|
13
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
14
|
+
for (let key of __getOwnPropNames(from))
|
15
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
16
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
17
|
+
}
|
18
|
+
return to;
|
19
|
+
};
|
20
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
21
|
+
// If the importer is in node compatibility mode or this is not an ESM
|
22
|
+
// file that has been converted to a CommonJS file using a Babel-
|
23
|
+
// compatible transform (i.e. "__esModule" has not been set), then set
|
24
|
+
// "default" to the CommonJS "module.exports" for node compatibility.
|
25
|
+
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
26
|
+
mod
|
27
|
+
));
|
28
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
29
|
+
var get_installed_package_version_exports = {};
|
30
|
+
__export(get_installed_package_version_exports, {
|
31
|
+
getInstalledPackageVersion: () => getInstalledPackageVersion
|
32
|
+
});
|
33
|
+
module.exports = __toCommonJS(get_installed_package_version_exports);
|
34
|
+
var import_debug = __toESM(require("./debug"));
|
35
|
+
async function getInstalledPackageVersion(packageName, path) {
|
36
|
+
try {
|
37
|
+
const resolved = require.resolve(`${packageName}/package.json`, {
|
38
|
+
paths: path ? Array.isArray(path) ? path : [path] : [process.cwd()]
|
39
|
+
});
|
40
|
+
const version = require(resolved).version;
|
41
|
+
return version;
|
42
|
+
} catch (err) {
|
43
|
+
(0, import_debug.default)(
|
44
|
+
`Could not resolve package "${packageName}". Package is not installed.`,
|
45
|
+
err
|
46
|
+
);
|
47
|
+
return void 0;
|
48
|
+
}
|
49
|
+
}
|
50
|
+
// Annotate the CommonJS export names for ESM import in node:
|
51
|
+
0 && (module.exports = {
|
52
|
+
getInstalledPackageVersion
|
53
|
+
});
|
package/dist/index.d.ts
CHANGED
@@ -22,8 +22,10 @@ export { FileBlob, FileFsRef, FileRef, Lambda, NodejsLambda, createLambda, Prere
|
|
22
22
|
export { EdgeFunction } from './edge-function';
|
23
23
|
export { readConfigFile } from './fs/read-config-file';
|
24
24
|
export { normalizePath } from './fs/normalize-path';
|
25
|
+
export { getOsRelease, getProvidedRuntime } from './os';
|
25
26
|
export * from './should-serve';
|
26
27
|
export * from './schemas';
|
27
28
|
export * from './types';
|
28
29
|
export * from './errors';
|
29
30
|
export { NODE_VERSIONS } from './fs/node-version';
|
31
|
+
export { getInstalledPackageVersion } from './get-installed-package-version';
|
package/dist/index.js
CHANGED
@@ -2893,8 +2893,8 @@ var require_graceful_fs = __commonJS({
|
|
2893
2893
|
fs6.createReadStream = createReadStream;
|
2894
2894
|
fs6.createWriteStream = createWriteStream;
|
2895
2895
|
var fs$readFile = fs6.readFile;
|
2896
|
-
fs6.readFile =
|
2897
|
-
function
|
2896
|
+
fs6.readFile = readFile4;
|
2897
|
+
function readFile4(path7, options, cb) {
|
2898
2898
|
if (typeof options === "function")
|
2899
2899
|
cb = options, options = null;
|
2900
2900
|
return go$readFile(path7, options, cb);
|
@@ -4639,7 +4639,7 @@ var require_jsonfile = __commonJS({
|
|
4639
4639
|
}
|
4640
4640
|
return obj;
|
4641
4641
|
}
|
4642
|
-
var
|
4642
|
+
var readFile4 = universalify.fromPromise(_readFile);
|
4643
4643
|
function readFileSync(file, options = {}) {
|
4644
4644
|
if (typeof options === "string") {
|
4645
4645
|
options = { encoding: options };
|
@@ -4671,7 +4671,7 @@ var require_jsonfile = __commonJS({
|
|
4671
4671
|
return fs5.writeFileSync(file, str, options);
|
4672
4672
|
}
|
4673
4673
|
var jsonfile = {
|
4674
|
-
readFile:
|
4674
|
+
readFile: readFile4,
|
4675
4675
|
readFileSync,
|
4676
4676
|
writeFile,
|
4677
4677
|
writeFileSync
|
@@ -20379,7 +20379,7 @@ var require_dist = __commonJS({
|
|
20379
20379
|
var src_exports2 = {};
|
20380
20380
|
__export2(src_exports2, {
|
20381
20381
|
errorToString: () => errorToString,
|
20382
|
-
isErrnoException: () =>
|
20382
|
+
isErrnoException: () => isErrnoException3,
|
20383
20383
|
isError: () => isError,
|
20384
20384
|
isErrorLike: () => isErrorLike,
|
20385
20385
|
isObject: () => isObject,
|
@@ -20392,7 +20392,7 @@ var require_dist = __commonJS({
|
|
20392
20392
|
var isError = (error) => {
|
20393
20393
|
return import_node_util.default.types.isNativeError(error);
|
20394
20394
|
};
|
20395
|
-
var
|
20395
|
+
var isErrnoException3 = (error) => {
|
20396
20396
|
return isError(error) && "code" in error;
|
20397
20397
|
};
|
20398
20398
|
var isErrorLike = (error) => isObject(error) && "message" in error;
|
@@ -20410,7 +20410,7 @@ var require_dist = __commonJS({
|
|
20410
20410
|
return isErrorLike(error) ? Object.assign(new Error(errorMessage), error) : new Error(errorMessage);
|
20411
20411
|
};
|
20412
20412
|
function isSpawnError(v) {
|
20413
|
-
return
|
20413
|
+
return isErrnoException3(v) && "spawnargs" in v;
|
20414
20414
|
}
|
20415
20415
|
}
|
20416
20416
|
});
|
@@ -20729,15 +20729,18 @@ __export(src_exports, {
|
|
20729
20729
|
getDiscontinuedNodeVersions: () => getDiscontinuedNodeVersions,
|
20730
20730
|
getEnvForPackageManager: () => getEnvForPackageManager,
|
20731
20731
|
getIgnoreFilter: () => get_ignore_filter_default,
|
20732
|
+
getInstalledPackageVersion: () => getInstalledPackageVersion,
|
20732
20733
|
getLambdaOptionsFromFunction: () => getLambdaOptionsFromFunction,
|
20733
20734
|
getLatestNodeVersion: () => getLatestNodeVersion,
|
20734
20735
|
getNodeBinPath: () => getNodeBinPath,
|
20735
20736
|
getNodeBinPaths: () => getNodeBinPaths,
|
20736
20737
|
getNodeVersion: () => getNodeVersion,
|
20738
|
+
getOsRelease: () => getOsRelease,
|
20737
20739
|
getPathForPackageManager: () => getPathForPackageManager,
|
20738
20740
|
getPlatformEnv: () => getPlatformEnv,
|
20739
20741
|
getPrefixedEnvVars: () => getPrefixedEnvVars,
|
20740
20742
|
getPrettyError: () => getPrettyError,
|
20743
|
+
getProvidedRuntime: () => getProvidedRuntime,
|
20741
20744
|
getScriptName: () => getScriptName,
|
20742
20745
|
getSpawnOptions: () => getSpawnOptions,
|
20743
20746
|
getSupportedNodeVersion: () => getSupportedNodeVersion,
|
@@ -22297,7 +22300,7 @@ function clearRelative(s) {
|
|
22297
22300
|
return s.replace(/(\n|^)\.\//g, "$1");
|
22298
22301
|
}
|
22299
22302
|
async function get_ignore_filter_default(downloadPath, rootDirectory) {
|
22300
|
-
const
|
22303
|
+
const readFile4 = async (p) => {
|
22301
22304
|
try {
|
22302
22305
|
return await import_fs_extra8.default.readFile(p, "utf8");
|
22303
22306
|
} catch (error) {
|
@@ -22320,7 +22323,7 @@ async function get_ignore_filter_default(downloadPath, rootDirectory) {
|
|
22320
22323
|
const ignoreContents = [];
|
22321
22324
|
try {
|
22322
22325
|
ignoreContents.push(
|
22323
|
-
...(await Promise.all([
|
22326
|
+
...(await Promise.all([readFile4(vercelIgnorePath), readFile4(nowIgnorePath)])).filter(Boolean)
|
22324
22327
|
);
|
22325
22328
|
} catch (error) {
|
22326
22329
|
if (isCodedError(error) && error.code === "ENOTDIR") {
|
@@ -22470,6 +22473,39 @@ var EdgeFunction = class {
|
|
22470
22473
|
}
|
22471
22474
|
};
|
22472
22475
|
|
22476
|
+
// src/os.ts
|
22477
|
+
var import_fs_extra9 = __toESM(require_lib());
|
22478
|
+
var import_error_utils2 = __toESM(require_dist());
|
22479
|
+
async function getOsRelease() {
|
22480
|
+
try {
|
22481
|
+
const data = await (0, import_fs_extra9.readFile)("/etc/os-release", "utf8");
|
22482
|
+
return await parseOsRelease(data);
|
22483
|
+
} catch (err) {
|
22484
|
+
if ((0, import_error_utils2.isErrnoException)(err) && err.code === "ENOENT") {
|
22485
|
+
return null;
|
22486
|
+
}
|
22487
|
+
throw err;
|
22488
|
+
}
|
22489
|
+
}
|
22490
|
+
async function parseOsRelease(data) {
|
22491
|
+
const obj = {};
|
22492
|
+
for (const line of data.trim().split("\n")) {
|
22493
|
+
const m = /(?<key>.*)="(?<value>.*)"/.exec(line);
|
22494
|
+
if (!m?.groups) {
|
22495
|
+
continue;
|
22496
|
+
}
|
22497
|
+
obj[m.groups.key] = m.groups.value;
|
22498
|
+
}
|
22499
|
+
return obj;
|
22500
|
+
}
|
22501
|
+
async function getProvidedRuntime() {
|
22502
|
+
const os = await getOsRelease();
|
22503
|
+
if (!os) {
|
22504
|
+
return "provided.al2023";
|
22505
|
+
}
|
22506
|
+
return os.PRETTY_NAME === "Amazon Linux 2" ? "provided.al2" : "provided.al2023";
|
22507
|
+
}
|
22508
|
+
|
22473
22509
|
// src/should-serve.ts
|
22474
22510
|
var import_path9 = require("path");
|
22475
22511
|
var shouldServe = ({
|
@@ -22551,6 +22587,23 @@ var buildsSchema = {
|
|
22551
22587
|
}
|
22552
22588
|
}
|
22553
22589
|
};
|
22590
|
+
|
22591
|
+
// src/get-installed-package-version.ts
|
22592
|
+
async function getInstalledPackageVersion(packageName, path7) {
|
22593
|
+
try {
|
22594
|
+
const resolved = require.resolve(`${packageName}/package.json`, {
|
22595
|
+
paths: path7 ? Array.isArray(path7) ? path7 : [path7] : [process.cwd()]
|
22596
|
+
});
|
22597
|
+
const version = require(resolved).version;
|
22598
|
+
return version;
|
22599
|
+
} catch (err) {
|
22600
|
+
debug(
|
22601
|
+
`Could not resolve package "${packageName}". Package is not installed.`,
|
22602
|
+
err
|
22603
|
+
);
|
22604
|
+
return void 0;
|
22605
|
+
}
|
22606
|
+
}
|
22554
22607
|
// Annotate the CommonJS export names for ESM import in node:
|
22555
22608
|
0 && (module.exports = {
|
22556
22609
|
EdgeFunction,
|
@@ -22573,15 +22626,18 @@ var buildsSchema = {
|
|
22573
22626
|
getDiscontinuedNodeVersions,
|
22574
22627
|
getEnvForPackageManager,
|
22575
22628
|
getIgnoreFilter,
|
22629
|
+
getInstalledPackageVersion,
|
22576
22630
|
getLambdaOptionsFromFunction,
|
22577
22631
|
getLatestNodeVersion,
|
22578
22632
|
getNodeBinPath,
|
22579
22633
|
getNodeBinPaths,
|
22580
22634
|
getNodeVersion,
|
22635
|
+
getOsRelease,
|
22581
22636
|
getPathForPackageManager,
|
22582
22637
|
getPlatformEnv,
|
22583
22638
|
getPrefixedEnvVars,
|
22584
22639
|
getPrettyError,
|
22640
|
+
getProvidedRuntime,
|
22585
22641
|
getScriptName,
|
22586
22642
|
getSpawnOptions,
|
22587
22643
|
getSupportedNodeVersion,
|
package/dist/os.d.ts
ADDED
package/dist/os.js
ADDED
@@ -0,0 +1,62 @@
|
|
1
|
+
"use strict";
|
2
|
+
var __defProp = Object.defineProperty;
|
3
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
4
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
5
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
6
|
+
var __export = (target, all) => {
|
7
|
+
for (var name in all)
|
8
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
9
|
+
};
|
10
|
+
var __copyProps = (to, from, except, desc) => {
|
11
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
12
|
+
for (let key of __getOwnPropNames(from))
|
13
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
14
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
15
|
+
}
|
16
|
+
return to;
|
17
|
+
};
|
18
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
19
|
+
var os_exports = {};
|
20
|
+
__export(os_exports, {
|
21
|
+
getOsRelease: () => getOsRelease,
|
22
|
+
getProvidedRuntime: () => getProvidedRuntime,
|
23
|
+
parseOsRelease: () => parseOsRelease
|
24
|
+
});
|
25
|
+
module.exports = __toCommonJS(os_exports);
|
26
|
+
var import_fs_extra = require("fs-extra");
|
27
|
+
var import_error_utils = require("@vercel/error-utils");
|
28
|
+
async function getOsRelease() {
|
29
|
+
try {
|
30
|
+
const data = await (0, import_fs_extra.readFile)("/etc/os-release", "utf8");
|
31
|
+
return await parseOsRelease(data);
|
32
|
+
} catch (err) {
|
33
|
+
if ((0, import_error_utils.isErrnoException)(err) && err.code === "ENOENT") {
|
34
|
+
return null;
|
35
|
+
}
|
36
|
+
throw err;
|
37
|
+
}
|
38
|
+
}
|
39
|
+
async function parseOsRelease(data) {
|
40
|
+
const obj = {};
|
41
|
+
for (const line of data.trim().split("\n")) {
|
42
|
+
const m = /(?<key>.*)="(?<value>.*)"/.exec(line);
|
43
|
+
if (!m?.groups) {
|
44
|
+
continue;
|
45
|
+
}
|
46
|
+
obj[m.groups.key] = m.groups.value;
|
47
|
+
}
|
48
|
+
return obj;
|
49
|
+
}
|
50
|
+
async function getProvidedRuntime() {
|
51
|
+
const os = await getOsRelease();
|
52
|
+
if (!os) {
|
53
|
+
return "provided.al2023";
|
54
|
+
}
|
55
|
+
return os.PRETTY_NAME === "Amazon Linux 2" ? "provided.al2" : "provided.al2023";
|
56
|
+
}
|
57
|
+
// Annotate the CommonJS export names for ESM import in node:
|
58
|
+
0 && (module.exports = {
|
59
|
+
getOsRelease,
|
60
|
+
getProvidedRuntime,
|
61
|
+
parseOsRelease
|
62
|
+
});
|