Stop vendoring import-meta-resolve (#17677)

This commit is contained in:
Nicolò Ribaudo
2025-12-19 18:29:49 +01:00
committed by GitHub
parent 0bbc29023c
commit 463bcf8914
12 changed files with 9 additions and 71 deletions
+1 -2
View File
@@ -9,7 +9,6 @@
"exclude": [
"packages/babel-standalone/**",
"packages/babel-types/**/generated/*",
"packages/babel-helpers/*/helpers/*",
"packages/babel-core/*/vendor/*"
"packages/babel-helpers/*/helpers/*"
]
}
-2
View File
@@ -108,7 +108,6 @@ jobs:
packages/babel-runtime/**/*.js
packages/babel-runtime-corejs2/**/*.js
packages/babel-runtime-corejs3/**/*.js
packages/babel-core/src/vendor/*
!**/node_modules/**
retention-days: 5
@@ -294,7 +293,6 @@ jobs:
packages/babel-runtime/**/*.js
packages/babel-runtime-corejs2/**/*.js
packages/babel-runtime-corejs3/**/*.js
packages/babel-core/src/vendor/*
!**/node_modules/**
retention-days: 5
-1
View File
@@ -2,7 +2,6 @@ package.json
packages/babel-preset-env/data
packages/babel-compat-data/data
packages/babel-compat-data/scripts/data/overlapping-plugins.js
packages/babel-core/src/vendor/**
**/test/fixtures/**
packages/babel-standalone/examples/**
packages/babel-parser/test/expressions/**
-53
View File
@@ -22,7 +22,6 @@ import rollupTerser from "@rollup/plugin-terser";
import rollupDts from "rollup-plugin-dts";
import { Worker as JestWorker } from "jest-worker";
import { Glob } from "glob";
import { resolve as importMetaResolve } from "import-meta-resolve";
// @ts-expect-error no types
import rollupBabelSource from "./scripts/rollup-plugin-babel-source.js";
@@ -982,60 +981,9 @@ gulp.task("bundle-dts", () => buildRollupDts(dtsBundles));
gulp.task("build-babel", () => buildBabel(true, /* exclude */ libBundles));
gulp.task("build-vendor", async () => {
const input = fileURLToPath(
importMetaResolve("import-meta-resolve", import.meta.url)
);
const output = "./packages/babel-core/src/vendor/import-meta-resolve.js";
const bundle = await rollup({
input,
onwarn(warning, warn) {
if (warning.code === "CIRCULAR_DEPENDENCY") return;
warn(warning);
},
plugins: [
rollupCommonJs({ defaultIsModuleExports: true }),
rollupNodeResolve({
extensions: [".js", ".mjs", ".cjs", ".json"],
preferBuiltins: true,
}),
{
// Remove the node: prefix from imports, so that it works in old Node.js version
// TODO(Babel 8): This can be removed.
name: "rollup-babel-internal-remove-node-import-prefix",
transform: code => code.replace(/(?<=from ["'])node:/g, ""),
},
],
});
await bundle.write({
file: output,
format: "es",
sourcemap: false,
exports: "named",
banner: String.raw`
/****************************************************************************\
* NOTE FROM BABEL AUTHORS *
* This file is inlined from https://github.com/wooorm/import-meta-resolve, *
* because we need to compile it to CommonJS. *
\****************************************************************************/
/*
${fs.readFileSync(path.join(path.dirname(input), "license"), "utf8")}*/
`,
});
fs.writeFileSync(
output.replace(".js", ".d.ts"),
`export function resolve(specifier: string, parent: string): string;`
);
});
gulp.task(
"build",
gulp.series(
"build-vendor",
gulp.parallel("build-rollup", "build-babel"),
gulp.parallel(
"generate-type-helpers",
@@ -1059,7 +1007,6 @@ gulp.task("build-no-bundle-watch", () => buildBabel(false));
gulp.task(
"build-dev",
gulp.series(
"build-vendor",
"build-no-bundle",
gulp.parallel(
"generate-standalone",
-1
View File
@@ -53,7 +53,6 @@ export default defineConfig([
"packages/babel-standalone/babel.js",
"packages/babel-standalone/babel.min.js",
"packages/babel-parser/test/expressions",
"packages/babel-core/src/vendor",
"packages/babel-parser/typings/**/*",
"packages/babel-plugin-transform-regenerator/test/regenerator-fixtures",
"eslint/*/lib",
-1
View File
@@ -22,7 +22,6 @@ const config = {
"<rootDir>/packages/babel-standalone/.*",
"<rootDir>/packages/babel-types/.*/generated/.*",
"<rootDir>/packages/babel-helpers/.*/helpers/.*",
"<rootDir>/packages/babel-core/.*/vendor/.*",
],
setupFiles: ["@cspotcode/source-map-support/register"],
-1
View File
@@ -67,7 +67,6 @@
"globals": "^15.9.0",
"gulp": "^5.0.0",
"husky": "^9.0.11",
"import-meta-resolve": "^4.1.0",
"is-ci": "^3.0.1",
"jest": "^30.1.1",
"jest-light-runner": "^0.7.9",
+1 -2
View File
@@ -21,8 +21,7 @@
"picocolors": "^1.1.1"
},
"devDependencies": {
"charcodes": "^0.2.0",
"import-meta-resolve": "^4.1.0"
"charcodes": "^0.2.0"
},
"engines": {
"node": "^20.19.0 || >=22.12.0"
+1
View File
@@ -58,6 +58,7 @@
"@types/gensync": "^1.0.0",
"convert-source-map": "^2.0.0",
"gensync": "^1.0.0-beta.2",
"import-meta-resolve": "^4.2.0",
"json5": "^2.2.3",
"obug": "^2.1.1",
"semver": "^7.7.3"
@@ -9,7 +9,7 @@ import { isAsync } from "../../gensync-utils/async.ts";
import loadCodeDefault from "./module-types.ts";
import { fileURLToPath, pathToFileURL } from "node:url";
import { resolve as importMetaResolve } from "../../vendor/import-meta-resolve.js";
import { resolve as importMetaResolve } from "import-meta-resolve";
import { createRequire } from "node:module";
import { existsSync } from "node:fs";
@@ -1 +0,0 @@
export function resolve(specifier: string, parent: string): string;
+5 -6
View File
@@ -344,7 +344,6 @@ __metadata:
dependencies:
"@babel/helper-validator-identifier": "workspace:^"
charcodes: "npm:^0.2.0"
import-meta-resolve: "npm:^4.1.0"
js-tokens: "npm:^10.0.0"
picocolors: "npm:^1.1.1"
languageName: unknown
@@ -475,6 +474,7 @@ __metadata:
"@types/semver": "npm:^5.4.0"
convert-source-map: "npm:^2.0.0"
gensync: "npm:^1.0.0-beta.2"
import-meta-resolve: "npm:^4.2.0"
json5: "npm:^2.2.3"
obug: "npm:^2.1.1"
semver: "npm:^7.7.3"
@@ -7507,7 +7507,6 @@ __metadata:
globals: "npm:^15.9.0"
gulp: "npm:^5.0.0"
husky: "npm:^9.0.11"
import-meta-resolve: "npm:^4.1.0"
is-ci: "npm:^3.0.1"
jest: "npm:^30.1.1"
jest-light-runner: "npm:^0.7.9"
@@ -11491,10 +11490,10 @@ __metadata:
languageName: node
linkType: hard
"import-meta-resolve@npm:^4.1.0":
version: 4.1.0
resolution: "import-meta-resolve@npm:4.1.0"
checksum: 10/40162f67eb406c8d5d49266206ef12ff07b54f5fad8cfd806db9efe3a055958e9969be51d6efaf82e34b8bea6758113dcc17bb79ff148292a4badcabc3472f22
"import-meta-resolve@npm:^4.2.0":
version: 4.2.0
resolution: "import-meta-resolve@npm:4.2.0"
checksum: 10/3499ee8b7eddb79be77067b368bcdf39e6f144306dea4686d08071ae7e65a2e3bdca3f98f2a0f4babdcd4ba9d9e7d379ae7e27c4b9bf8b08c1e812a28c674bf3
languageName: node
linkType: hard