nitro-nightly 3.0.1-20251112-134056-7a52fbf4 → 3.0.1-20251113-100129-fde97b54

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.
@@ -23,7 +23,7 @@ import { n as writeBuildInfo } from "./common.mjs";
23
23
  import { i as watch$1 } from "../_libs/chokidar.mjs";
24
24
  import "../_libs/estree-walker.mjs";
25
25
  import "../_libs/plugin-commonjs.mjs";
26
- import { n as getChunkName, r as baseBuildConfig, t as baseBuildPlugins } from "../_chunks/B0N2RRrF.mjs";
26
+ import { n as getChunkName, r as baseBuildConfig, t as baseBuildPlugins } from "../_chunks/DuA6iypR.mjs";
27
27
  import "../_libs/remapping.mjs";
28
28
  import "../_libs/unwasm.mjs";
29
29
  import "../_libs/plugin-replace.mjs";
@@ -25,7 +25,7 @@ import { t as alias } from "../_libs/plugin-alias.mjs";
25
25
  import "../_libs/estree-walker.mjs";
26
26
  import { t as commonjs } from "../_libs/plugin-commonjs.mjs";
27
27
  import { t as inject } from "../_libs/plugin-inject.mjs";
28
- import { n as getChunkName, r as baseBuildConfig, t as baseBuildPlugins } from "../_chunks/B0N2RRrF.mjs";
28
+ import { n as getChunkName, r as baseBuildConfig, t as baseBuildPlugins } from "../_chunks/DuA6iypR.mjs";
29
29
  import "../_libs/remapping.mjs";
30
30
  import "../_libs/unwasm.mjs";
31
31
  import "../_libs/plugin-replace.mjs";
@@ -13,7 +13,7 @@ import "../_libs/tinyglobby.mjs";
13
13
  import "../_libs/compatx.mjs";
14
14
  import "../_libs/klona.mjs";
15
15
  import { r as a } from "../_libs/std-env.mjs";
16
- import "../_chunks/Dn4SwKy8.mjs";
16
+ import "../_chunks/Clc3YR4F.mjs";
17
17
  import "../_libs/escape-string-regexp.mjs";
18
18
  import "../_libs/tsconfck.mjs";
19
19
  import "../_libs/dot-prop.mjs";
@@ -33,7 +33,7 @@ import "../_libs/plugin-alias.mjs";
33
33
  import "../_libs/estree-walker.mjs";
34
34
  import "../_libs/plugin-commonjs.mjs";
35
35
  import "../_libs/plugin-inject.mjs";
36
- import "../_chunks/B0N2RRrF.mjs";
36
+ import "../_chunks/DuA6iypR.mjs";
37
37
  import "../_libs/remapping.mjs";
38
38
  import "../_libs/unwasm.mjs";
39
39
  import "../_libs/plugin-replace.mjs";
@@ -2,7 +2,7 @@ import { C as isAbsolute$1, O as relative$1, b as basename$1, h as resolveModule
2
2
  import { f as sanitizeFilePath } from "../_libs/local-pkg.mjs";
3
3
  import { t as formatCompatibilityDate } from "../_libs/compatx.mjs";
4
4
  import { n as T, r as a } from "../_libs/std-env.mjs";
5
- import { a as createNitro, n as prepare, r as copyPublicAssets } from "../_chunks/Dn4SwKy8.mjs";
5
+ import { a as createNitro, n as prepare, r as copyPublicAssets } from "../_chunks/Clc3YR4F.mjs";
6
6
  import { n as prettyPath } from "../_chunks/DJvLZH4H.mjs";
7
7
  import { i as scanHandlers } from "../_chunks/XHOrB-Xs.mjs";
8
8
  import { n as writeBuildInfo, t as getBuildInfo } from "./common.mjs";
@@ -10,7 +10,7 @@ import { i as NodeDevWorker, r as NitroDevApp } from "../_dev.mjs";
10
10
  import { i as watch$1 } from "../_libs/chokidar.mjs";
11
11
  import { t as alias } from "../_libs/plugin-alias.mjs";
12
12
  import { t as inject } from "../_libs/plugin-inject.mjs";
13
- import { n as getChunkName, r as baseBuildConfig, t as baseBuildPlugins } from "../_chunks/B0N2RRrF.mjs";
13
+ import { n as getChunkName, r as baseBuildConfig, t as baseBuildPlugins } from "../_chunks/DuA6iypR.mjs";
14
14
  import { t as assetsPlugin } from "../_libs/vite-plugin-fullstack.mjs";
15
15
  import consola$1 from "consola";
16
16
  import { join, resolve } from "node:path";
@@ -360,7 +360,7 @@ function createNitroEnvironment(ctx) {
360
360
  commonjsOptions: { ...ctx.nitro.options.commonJS }
361
361
  },
362
362
  resolve: {
363
- noExternal: ctx.nitro.options.dev ? [...ctx.rollupConfig.base.noExternal, ...runtimeDependencies] : true,
363
+ noExternal: ctx.nitro.options.dev ? [...ctx.rollupConfig.base.noExternal.filter((i) => typeof i === "string" || i instanceof RegExp), ...runtimeDependencies] : true,
364
364
  conditions: ctx.nitro.options.exportConditions,
365
365
  externalConditions: ctx.nitro.options.exportConditions
366
366
  },
@@ -162,7 +162,7 @@ async function resolveExportConditionsOptions(options) {
162
162
  options.exportConditions = _resolveExportConditions(options.exportConditions || [], {
163
163
  dev: options.dev,
164
164
  node: options.node,
165
- wasm: options.experimental.wasm
165
+ wasm: options.wasm !== false
166
166
  });
167
167
  }
168
168
  function _resolveExportConditions(conditions, opts) {
@@ -62,7 +62,7 @@ function baseBuildConfig(nitro) {
62
62
  nitro.options.serverDir,
63
63
  nitro.options.buildDir,
64
64
  dirname(nitro.options.entry),
65
- ...nitro.options.experimental.wasm ? [(id) => id?.endsWith(".wasm")] : [],
65
+ ...nitro.options.wasm === false ? [] : [(id) => id.endsWith(".wasm")],
66
66
  ...nitro.options.handlers.map((m) => m.handler).filter((i) => typeof i === "string"),
67
67
  ...nitro.options.dev || nitro.options.preset === "nitro-prerender" ? [] : runtimeDependencies
68
68
  ].filter(Boolean);
@@ -761,7 +761,7 @@ function runtimeConfig(nitro) {
761
761
  function baseBuildPlugins(nitro, base) {
762
762
  const plugins = [];
763
763
  if (nitro.options.imports) plugins.push(unplugin.rollup(nitro.options.imports));
764
- if (nitro.options.experimental.wasm) plugins.push(unwasm(nitro.options.wasm || {}));
764
+ if (nitro.options.wasm !== false) plugins.push(unwasm(nitro.options.wasm || {}));
765
765
  plugins.push(serverMain(nitro));
766
766
  const nitroPlugins = [...new Set(nitro.options.plugins)];
767
767
  plugins.push(virtual({ "#nitro-internal-virtual/plugins": `
@@ -4,7 +4,7 @@ import { a as genString, i as genSafeVariableName, n as genObjectFromRaw, t as g
4
4
  import { existsSync, promises } from "node:fs";
5
5
  import { createHash } from "node:crypto";
6
6
 
7
- //#region node_modules/.pnpm/unwasm@0.4.2/node_modules/unwasm/dist/plugin/index.mjs
7
+ //#region node_modules/.pnpm/unwasm@0.5.0/node_modules/unwasm/dist/plugin/index.mjs
8
8
  var __create = Object.create;
9
9
  var __defProp = Object.defineProperty;
10
10
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
@@ -5553,16 +5553,13 @@ async function getWasmImports(asset, _opts) {
5553
5553
  for (const moduleName of importNames) {
5554
5554
  const importNames$1 = asset.imports[moduleName];
5555
5555
  const importAlias = pkg.imports?.[moduleName] || pkg.imports?.[`#${moduleName}`];
5556
- const resolved$1 = importAlias && typeof importAlias === "string" ? importAlias : resolveModulePath(moduleName, {
5557
- from: asset.id,
5558
- try: true
5559
- });
5556
+ const resolved$1 = importAlias && typeof importAlias === "string" ? importAlias : resolveModulePath(moduleName, { from: asset.id });
5560
5557
  const importName = "_imports_" + genSafeVariableName(moduleName);
5561
- if (resolved$1) imports.push(genImport(resolved$1, {
5558
+ imports.push(genImport(resolved$1, {
5562
5559
  name: "*",
5563
5560
  as: importName
5564
5561
  }));
5565
- importsObject[moduleName] = Object.fromEntries(importNames$1.map((name) => [name, resolved$1 ? `${importName}[${genString(name)}]` : `() => { throw new Error(${genString(moduleName + "." + importName)} + " is not provided!")}`]));
5562
+ importsObject[moduleName] = Object.fromEntries(importNames$1.map((name) => [name, `${importName}[${genString(name)}]`]));
5566
5563
  }
5567
5564
  return {
5568
5565
  code: `${imports.join("\n")}\n\nconst _imports = ${genObjectFromRaw(importsObject)}`,
@@ -5781,12 +5778,22 @@ function unwasm(opts) {
5781
5778
  async handler(code, id) {
5782
5779
  if (!WASM_ID_RE.test(id)) return;
5783
5780
  const buff = Buffer.from(code, "binary");
5784
- const isModule = id.endsWith("?module");
5781
+ let isModule = id.endsWith("?module");
5785
5782
  const name = `wasm/${basename(id.split("?")[0], ".wasm")}-${sha1(buff)}.wasm`;
5786
- const parsed = isModule ? {
5787
- imports: [],
5783
+ let parsed = {
5784
+ imports: {},
5788
5785
  exports: ["default"]
5789
- } : parse(name, buff);
5786
+ };
5787
+ if (!isModule) try {
5788
+ parsed = parse(name, buff);
5789
+ } catch (error) {
5790
+ if (!opts.silent) this.warn({
5791
+ id,
5792
+ cause: error,
5793
+ message: "Failed to parse the WebAssembly module; falling back to module mode."
5794
+ });
5795
+ isModule = true;
5796
+ }
5790
5797
  const asset = assets[name] = {
5791
5798
  name,
5792
5799
  id,
@@ -5795,7 +5802,14 @@ function unwasm(opts) {
5795
5802
  exports: parsed.exports
5796
5803
  };
5797
5804
  return {
5798
- code: isModule ? await getWasmModuleBinding(asset, opts) : await getWasmESMBinding(asset, opts),
5805
+ code: isModule ? await getWasmModuleBinding(asset, opts) : await getWasmESMBinding(asset, opts).catch((error) => {
5806
+ if (!opts.silent) this.warn({
5807
+ id,
5808
+ cause: error,
5809
+ message: "Failed to load the WebAssembly module; falling back to module mode: " + error.message
5810
+ });
5811
+ return getWasmModuleBinding(asset, opts);
5812
+ }),
5799
5813
  map: { mappings: "" }
5800
5814
  };
5801
5815
  }
package/dist/builder.mjs CHANGED
@@ -13,7 +13,7 @@ import "./_libs/tinyglobby.mjs";
13
13
  import "./_libs/compatx.mjs";
14
14
  import "./_libs/klona.mjs";
15
15
  import "./_libs/std-env.mjs";
16
- import { a as createNitro, c as loadOptions, i as build, n as prepare, o as listTasks, r as copyPublicAssets, s as runTask, t as prerender } from "./_chunks/Dn4SwKy8.mjs";
16
+ import { a as createNitro, c as loadOptions, i as build, n as prepare, o as listTasks, r as copyPublicAssets, s as runTask, t as prerender } from "./_chunks/Clc3YR4F.mjs";
17
17
  import "./_libs/escape-string-regexp.mjs";
18
18
  import "./_libs/tsconfck.mjs";
19
19
  import "./_libs/dot-prop.mjs";
@@ -2864,11 +2864,10 @@ interface NitroOptions extends PresetOptions {
2864
2864
  websocket: boolean;
2865
2865
  };
2866
2866
  /**
2867
- * @experimental Requires `experimental.wasm` to work
2868
2867
  *
2869
2868
  * @see https://github.com/unjs/unwasm
2870
2869
  */
2871
- wasm?: UnwasmPluginOptions;
2870
+ wasm?: false | UnwasmPluginOptions;
2872
2871
  openAPI?: NitroOpenAPIConfig;
2873
2872
  experimental: {
2874
2873
  openAPI?: boolean;
@@ -2880,12 +2879,6 @@ interface NitroOptions extends PresetOptions {
2880
2879
  * Enable native async context support for useRequest()
2881
2880
  */
2882
2881
  asyncContext?: boolean;
2883
- /**
2884
- * Enable Experimental WebAssembly Support
2885
- *
2886
- * @see https://github.com/unjs/unwasm
2887
- */
2888
- wasm?: boolean;
2889
2882
  /**
2890
2883
  * Disable Experimental Sourcemap Minification
2891
2884
  */
package/dist/vite.mjs CHANGED
@@ -13,7 +13,7 @@ import "./_libs/tinyglobby.mjs";
13
13
  import "./_libs/compatx.mjs";
14
14
  import "./_libs/klona.mjs";
15
15
  import "./_libs/std-env.mjs";
16
- import "./_chunks/Dn4SwKy8.mjs";
16
+ import "./_chunks/Clc3YR4F.mjs";
17
17
  import "./_libs/escape-string-regexp.mjs";
18
18
  import "./_libs/tsconfck.mjs";
19
19
  import "./_libs/dot-prop.mjs";
@@ -33,7 +33,7 @@ import "./_libs/plugin-alias.mjs";
33
33
  import "./_libs/estree-walker.mjs";
34
34
  import "./_libs/plugin-commonjs.mjs";
35
35
  import "./_libs/plugin-inject.mjs";
36
- import "./_chunks/B0N2RRrF.mjs";
36
+ import "./_chunks/DuA6iypR.mjs";
37
37
  import "./_libs/remapping.mjs";
38
38
  import "./_libs/unwasm.mjs";
39
39
  import "./_libs/plugin-replace.mjs";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "nitro-nightly",
3
- "version": "3.0.1-20251112-134056-7a52fbf4",
3
+ "version": "3.0.1-20251113-100129-fde97b54",
4
4
  "description": "Build and Deploy Universal JavaScript Servers",
5
5
  "homepage": "https://nitro.build",
6
6
  "repository": "nitrojs/nitro",
@@ -156,7 +156,7 @@
156
156
  "unctx": "^2.4.1",
157
157
  "unimport": "^5.5.0",
158
158
  "untyped": "^2.0.0",
159
- "unwasm": "^0.4.2",
159
+ "unwasm": "^0.5.0",
160
160
  "vitest": "^4.0.8",
161
161
  "wrangler": "^4.46.0",
162
162
  "xml2js": "^0.6.2",
@@ -183,7 +183,7 @@
183
183
  "optional": true
184
184
  }
185
185
  },
186
- "packageManager": "pnpm@10.21.0",
186
+ "packageManager": "pnpm@10.22.0",
187
187
  "engines": {
188
188
  "node": "^20.19.0 || >=22.12.0"
189
189
  }