esbuild 0.14.16 → 0.14.20

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/install.js CHANGED
@@ -1,4 +1,3 @@
1
- #!/usr/bin/env node
2
1
  var __create = Object.create;
3
2
  var __defProp = Object.defineProperty;
4
3
  var __defProps = Object.defineProperties;
@@ -93,9 +92,11 @@ var toPath = path2.join(__dirname, "bin", "esbuild");
93
92
  var isToPathJS = true;
94
93
  function validateBinaryVersion(...command) {
95
94
  command.push("--version");
96
- const stdout = child_process.execFileSync(command.shift(), command).toString().trim();
97
- if (stdout !== "0.14.16") {
98
- throw new Error(`Expected ${JSON.stringify("0.14.16")} but got ${JSON.stringify(stdout)}`);
95
+ const stdout = child_process.execFileSync(command.shift(), command, {
96
+ stdio: "pipe"
97
+ }).toString().trim();
98
+ if (stdout !== "0.14.20") {
99
+ throw new Error(`Expected ${JSON.stringify("0.14.20")} but got ${JSON.stringify(stdout)}`);
99
100
  }
100
101
  }
101
102
  function isYarn() {
@@ -146,7 +147,7 @@ function installUsingNPM(pkg, subpath, binPath) {
146
147
  fs2.mkdirSync(installDir);
147
148
  try {
148
149
  fs2.writeFileSync(path2.join(installDir, "package.json"), "{}");
149
- child_process.execSync(`npm install --loglevel=error --prefer-offline --no-audit --progress=false ${pkg}@${"0.14.16"}`, { cwd: installDir, stdio: "pipe", env });
150
+ child_process.execSync(`npm install --loglevel=error --prefer-offline --no-audit --progress=false ${pkg}@${"0.14.20"}`, { cwd: installDir, stdio: "pipe", env });
150
151
  const installedBinPath = path2.join(installDir, "node_modules", pkg, subpath);
151
152
  fs2.renameSync(installedBinPath, binPath);
152
153
  } finally {
@@ -195,7 +196,7 @@ function maybeOptimizePackage(binPath) {
195
196
  }
196
197
  }
197
198
  async function downloadDirectlyFromNPM(pkg, subpath, binPath) {
198
- const url = `https://registry.npmjs.org/${pkg}/-/${pkg}-${"0.14.16"}.tgz`;
199
+ const url = `https://registry.npmjs.org/${pkg}/-/${pkg}-${"0.14.20"}.tgz`;
199
200
  console.error(`[esbuild] Trying to download ${JSON.stringify(url)}`);
200
201
  try {
201
202
  fs2.writeFileSync(binPath, extractFileFromTarGzip(await fetch(url), subpath));
package/lib/main.d.ts CHANGED
@@ -26,6 +26,8 @@ interface CommonOptions {
26
26
  mangleProps?: RegExp;
27
27
  /** Documentation: https://esbuild.github.io/api/#mangle-props */
28
28
  reserveProps?: RegExp;
29
+ /** Documentation: https://esbuild.github.io/api/#mangle-props */
30
+ mangleCache?: Record<string, string | false>;
29
31
  /** Documentation: https://esbuild.github.io/api/#drop */
30
32
  drop?: Drop[];
31
33
  /** Documentation: https://esbuild.github.io/api/#minify */
@@ -200,6 +202,8 @@ export interface BuildResult {
200
202
  stop?: () => void;
201
203
  /** Only when "metafile: true" */
202
204
  metafile?: Metafile;
205
+ /** Only when "mangleCache" is present */
206
+ mangleCache?: Record<string, string | false>;
203
207
  }
204
208
 
205
209
  export interface BuildFailure extends Error {
@@ -253,6 +257,8 @@ export interface TransformResult {
253
257
  code: string;
254
258
  map: string;
255
259
  warnings: Message[];
260
+ /** Only when "mangleCache" is present */
261
+ mangleCache?: Record<string, string | false>;
256
262
  }
257
263
 
258
264
  export interface TransformFailure extends Error {
package/lib/main.js CHANGED
@@ -272,6 +272,21 @@ function validateInitializeOptions(options) {
272
272
  worker
273
273
  };
274
274
  }
275
+ function validateMangleCache(mangleCache) {
276
+ let validated;
277
+ if (mangleCache !== void 0) {
278
+ validated = /* @__PURE__ */ Object.create(null);
279
+ for (let key of Object.keys(mangleCache)) {
280
+ let value = mangleCache[key];
281
+ if (typeof value === "string" || value === false) {
282
+ validated[key] = value;
283
+ } else {
284
+ throw new Error(`Expected ${JSON.stringify(key)} in mangle cache to map to either a string or false`);
285
+ }
286
+ }
287
+ }
288
+ return validated;
289
+ }
275
290
  function pushLogFlags(flags, options, keys, isTTY2, logLevelDefault) {
276
291
  let color = getFlag(options, keys, "color", mustBeBoolean);
277
292
  let logLevel = getFlag(options, keys, "logLevel", mustBeString);
@@ -403,6 +418,7 @@ function flagsForBuildOptions(callName, options, isTTY2, logLevelDefault, writeD
403
418
  let write = (_a2 = getFlag(options, keys, "write", mustBeBoolean)) != null ? _a2 : writeDefault;
404
419
  let allowOverwrite = getFlag(options, keys, "allowOverwrite", mustBeBoolean);
405
420
  let incremental = getFlag(options, keys, "incremental", mustBeBoolean) === true;
421
+ let mangleCache = getFlag(options, keys, "mangleCache", mustBeObject);
406
422
  keys.plugins = true;
407
423
  checkForInvalidFlags(options, keys, `in ${callName}() call`);
408
424
  if (sourcemap)
@@ -552,7 +568,8 @@ function flagsForBuildOptions(callName, options, isTTY2, logLevelDefault, writeD
552
568
  absWorkingDir,
553
569
  incremental,
554
570
  nodePaths,
555
- watch: watchMode
571
+ watch: watchMode,
572
+ mangleCache: validateMangleCache(mangleCache)
556
573
  };
557
574
  }
558
575
  function flagsForTransformOptions(callName, options, isTTY2, logLevelDefault) {
@@ -566,6 +583,7 @@ function flagsForTransformOptions(callName, options, isTTY2, logLevelDefault) {
566
583
  let loader = getFlag(options, keys, "loader", mustBeString);
567
584
  let banner = getFlag(options, keys, "banner", mustBeString);
568
585
  let footer = getFlag(options, keys, "footer", mustBeString);
586
+ let mangleCache = getFlag(options, keys, "mangleCache", mustBeObject);
569
587
  checkForInvalidFlags(options, keys, `in ${callName}() call`);
570
588
  if (sourcemap)
571
589
  flags.push(`--sourcemap=${sourcemap === true ? "external" : sourcemap}`);
@@ -579,7 +597,10 @@ function flagsForTransformOptions(callName, options, isTTY2, logLevelDefault) {
579
597
  flags.push(`--banner=${banner}`);
580
598
  if (footer)
581
599
  flags.push(`--footer=${footer}`);
582
- return flags;
600
+ return {
601
+ flags,
602
+ mangleCache: validateMangleCache(mangleCache)
603
+ };
583
604
  }
584
605
  function createChannel(streamIn) {
585
606
  let responseCallbacks = /* @__PURE__ */ new Map();
@@ -723,8 +744,8 @@ function createChannel(streamIn) {
723
744
  if (isFirstPacket) {
724
745
  isFirstPacket = false;
725
746
  let binaryVersion = String.fromCharCode(...bytes);
726
- if (binaryVersion !== "0.14.16") {
727
- throw new Error(`Cannot start service: Host version "${"0.14.16"}" does not match binary version ${JSON.stringify(binaryVersion)}`);
747
+ if (binaryVersion !== "0.14.20") {
748
+ throw new Error(`Cannot start service: Host version "${"0.14.20"}" does not match binary version ${JSON.stringify(binaryVersion)}`);
728
749
  }
729
750
  return;
730
751
  }
@@ -1183,7 +1204,8 @@ function createChannel(streamIn) {
1183
1204
  absWorkingDir,
1184
1205
  incremental,
1185
1206
  nodePaths,
1186
- watch
1207
+ watch,
1208
+ mangleCache
1187
1209
  } = flagsForBuildOptions(callName, options, isTTY2, buildLogLevelDefault, writeDefault);
1188
1210
  let request = {
1189
1211
  command: "build",
@@ -1199,6 +1221,8 @@ function createChannel(streamIn) {
1199
1221
  };
1200
1222
  if (requestPlugins)
1201
1223
  request.plugins = requestPlugins;
1224
+ if (mangleCache)
1225
+ request.mangleCache = mangleCache;
1202
1226
  let serve2 = serveOptions && buildServeData(refs, serveOptions, request, key);
1203
1227
  let rebuild;
1204
1228
  let stop;
@@ -1207,6 +1231,8 @@ function createChannel(streamIn) {
1207
1231
  result.outputFiles = response.outputFiles.map(convertOutputFiles);
1208
1232
  if (response.metafile)
1209
1233
  result.metafile = JSON.parse(response.metafile);
1234
+ if (response.mangleCache)
1235
+ result.mangleCache = response.mangleCache;
1210
1236
  if (response.writeToStdout !== void 0)
1211
1237
  console.log(decodeUTF8(response.writeToStdout).replace(/\n$/, ""));
1212
1238
  };
@@ -1334,20 +1360,32 @@ function createChannel(streamIn) {
1334
1360
  try {
1335
1361
  if (typeof input !== "string")
1336
1362
  throw new Error('The input to "transform" must be a string');
1337
- let flags = flagsForTransformOptions(callName, options, isTTY2, transformLogLevelDefault);
1363
+ let {
1364
+ flags,
1365
+ mangleCache
1366
+ } = flagsForTransformOptions(callName, options, isTTY2, transformLogLevelDefault);
1338
1367
  let request = {
1339
1368
  command: "transform",
1340
1369
  flags,
1341
1370
  inputFS: inputPath !== null,
1342
1371
  input: inputPath !== null ? inputPath : input
1343
1372
  };
1373
+ if (mangleCache)
1374
+ request.mangleCache = mangleCache;
1344
1375
  sendRequest(refs, request, (error, response) => {
1345
1376
  if (error)
1346
1377
  return callback(new Error(error), null);
1347
1378
  let errors = replaceDetailsInMessages(response.errors, details);
1348
1379
  let warnings = replaceDetailsInMessages(response.warnings, details);
1349
1380
  let outstanding = 1;
1350
- let next = () => --outstanding === 0 && callback(null, { warnings, code: response.code, map: response.map });
1381
+ let next = () => {
1382
+ if (--outstanding === 0) {
1383
+ let result = { warnings, code: response.code, map: response.map };
1384
+ if (response.mangleCache)
1385
+ result.mangleCache = response == null ? void 0 : response.mangleCache;
1386
+ callback(null, result);
1387
+ }
1388
+ };
1351
1389
  if (errors.length > 0)
1352
1390
  return callback(failureErrorWithLog("Transform failed", errors, warnings), null);
1353
1391
  if (response.codeFS) {
@@ -1810,7 +1848,7 @@ if (process.env.ESBUILD_WORKER_THREADS !== "0") {
1810
1848
  }
1811
1849
  }
1812
1850
  var _a;
1813
- var isInternalWorkerThread = ((_a = worker_threads == null ? void 0 : worker_threads.workerData) == null ? void 0 : _a.esbuildVersion) === "0.14.16";
1851
+ var isInternalWorkerThread = ((_a = worker_threads == null ? void 0 : worker_threads.workerData) == null ? void 0 : _a.esbuildVersion) === "0.14.20";
1814
1852
  var esbuildCommandAndArgs = () => {
1815
1853
  if ((!ESBUILD_BINARY_PATH || false) && (path2.basename(__filename) !== "main.js" || path2.basename(__dirname) !== "lib")) {
1816
1854
  throw new Error(`The esbuild JavaScript API cannot be bundled. Please mark the "esbuild" package as external so it's not included in the bundle.
@@ -1869,7 +1907,7 @@ var fsAsync = {
1869
1907
  }
1870
1908
  }
1871
1909
  };
1872
- var version = "0.14.16";
1910
+ var version = "0.14.20";
1873
1911
  var build = (options) => ensureServiceIsRunning().build(options);
1874
1912
  var serve = (serveOptions, buildOptions) => ensureServiceIsRunning().serve(serveOptions, buildOptions);
1875
1913
  var transform = (input, options) => ensureServiceIsRunning().transform(input, options);
@@ -1978,7 +2016,7 @@ var ensureServiceIsRunning = () => {
1978
2016
  if (longLivedService)
1979
2017
  return longLivedService;
1980
2018
  let [command, args] = esbuildCommandAndArgs();
1981
- let child = child_process.spawn(command, args.concat(`--service=${"0.14.16"}`, "--ping"), {
2019
+ let child = child_process.spawn(command, args.concat(`--service=${"0.14.20"}`, "--ping"), {
1982
2020
  windowsHide: true,
1983
2021
  stdio: ["pipe", "pipe", "inherit"],
1984
2022
  cwd: defaultWD
@@ -2087,7 +2125,7 @@ var runServiceSync = (callback) => {
2087
2125
  esbuild: node_exports
2088
2126
  });
2089
2127
  callback(service);
2090
- let stdout = child_process.execFileSync(command, args.concat(`--service=${"0.14.16"}`), {
2128
+ let stdout = child_process.execFileSync(command, args.concat(`--service=${"0.14.20"}`), {
2091
2129
  cwd: defaultWD,
2092
2130
  windowsHide: true,
2093
2131
  input: stdin,
@@ -2103,7 +2141,7 @@ var workerThreadService = null;
2103
2141
  var startWorkerThreadService = (worker_threads2) => {
2104
2142
  let { port1: mainPort, port2: workerPort } = new worker_threads2.MessageChannel();
2105
2143
  let worker = new worker_threads2.Worker(__filename, {
2106
- workerData: { workerPort, defaultWD, esbuildVersion: "0.14.16" },
2144
+ workerData: { workerPort, defaultWD, esbuildVersion: "0.14.20" },
2107
2145
  transferList: [workerPort],
2108
2146
  execArgv: []
2109
2147
  });
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "esbuild",
3
- "version": "0.14.16",
3
+ "version": "0.14.20",
4
4
  "description": "An extremely fast JavaScript and CSS bundler and minifier.",
5
5
  "repository": "https://github.com/evanw/esbuild",
6
6
  "scripts": {
@@ -15,24 +15,24 @@
15
15
  "esbuild": "bin/esbuild"
16
16
  },
17
17
  "optionalDependencies": {
18
- "esbuild-android-arm64": "0.14.16",
19
- "esbuild-darwin-64": "0.14.16",
20
- "esbuild-darwin-arm64": "0.14.16",
21
- "esbuild-freebsd-64": "0.14.16",
22
- "esbuild-freebsd-arm64": "0.14.16",
23
- "esbuild-linux-32": "0.14.16",
24
- "esbuild-linux-64": "0.14.16",
25
- "esbuild-linux-arm": "0.14.16",
26
- "esbuild-linux-arm64": "0.14.16",
27
- "esbuild-linux-mips64le": "0.14.16",
28
- "esbuild-linux-ppc64le": "0.14.16",
29
- "esbuild-linux-s390x": "0.14.16",
30
- "esbuild-netbsd-64": "0.14.16",
31
- "esbuild-openbsd-64": "0.14.16",
32
- "esbuild-sunos-64": "0.14.16",
33
- "esbuild-windows-32": "0.14.16",
34
- "esbuild-windows-64": "0.14.16",
35
- "esbuild-windows-arm64": "0.14.16"
18
+ "esbuild-android-arm64": "0.14.20",
19
+ "esbuild-darwin-64": "0.14.20",
20
+ "esbuild-darwin-arm64": "0.14.20",
21
+ "esbuild-freebsd-64": "0.14.20",
22
+ "esbuild-freebsd-arm64": "0.14.20",
23
+ "esbuild-linux-32": "0.14.20",
24
+ "esbuild-linux-64": "0.14.20",
25
+ "esbuild-linux-arm": "0.14.20",
26
+ "esbuild-linux-arm64": "0.14.20",
27
+ "esbuild-linux-mips64le": "0.14.20",
28
+ "esbuild-linux-ppc64le": "0.14.20",
29
+ "esbuild-linux-s390x": "0.14.20",
30
+ "esbuild-netbsd-64": "0.14.20",
31
+ "esbuild-openbsd-64": "0.14.20",
32
+ "esbuild-sunos-64": "0.14.20",
33
+ "esbuild-windows-32": "0.14.20",
34
+ "esbuild-windows-64": "0.14.20",
35
+ "esbuild-windows-arm64": "0.14.20"
36
36
  },
37
37
  "license": "MIT"
38
38
  }