github unjs/nitro v2.6.0

latest releases: v2.9.7, v2.9.6, v2.9.5...
13 months ago

Note
📰 Release article coming soon!

compare changes

🚀 Enhancements

  • storage: Default data storage for node and dev presets (#1352)
  • Support regexps in external options (#1388)
  • Support exportConditions and add worker default conditions (#1401)
  • event.waitUntil with Cloudflare integration (#1421)
  • experimental.typescriptBundlerResolution flag (#1384)
  • Support ignore to ignore scanned files (#1430)
  • Allow ignoring public assets with ignore options (#945)
  • Add iis server preset (#1436)
  • Auto capture errors with nitroApp.captureError (#1463)
  • vercel: Enable streaming support out of the box (#1514)
  • Fully resolve type paths for auto-import declarations (#1528)
  • Add prerender:config, prerender:init and prerender:done hooks (#1519)
  • cache: Support cached event handlers with varies (#1184)
  • app: Support request, beforeResponse and afterResponse hooks (#1545)
  • Experimental composition api via useEvent() ans async context support (#1546)
  • prerenderer: Support for query links exploration (#1474)
  • cloudflare-pages: Add config to customize generated _routes.json (#1312)
  • firebase: Add support for 2nd generation functions (#1500)
  • externals: Resolve actual subpaths before guessing (#527)
  • externals: Support aliasing traced packages (#1553)
  • wasm: Support output esm imports (#1565)
  • Enable timing in debug mode (#1577)
  • prerender: Preserve prerendered asset content-type header (#1587)
  • externals: Improved output package.json (#1607)
  • firebase: Support renaming exported server function (#1377)
  • azure: Support custom configuration (#1344)
  • node-server: Support listening to unix sockets using NITRO_UNIX_SOCKET (#1201)
  • cloudflare-module, cloudflare-pages: Experimental dynamic imports (#1172)
  • cli: Support --preset and --minify/--no-minify args for build (#1621)
  • cli: Add listhen options for dev command (#1622)
  • Handle stream and Uint8Array for lambda presets (#1624)

🔥 Performance

  • Use fsLite driver for production data: storage (dd290763)
  • Use inline http-graceful-shoutdown to reduce externals (8053cca0)
  • Remove source-map-support as node supports --enable-source-maps (9ba8fe98)
  • Bundle runtime dependencies (#1554)
  • Use local fetch for proxy route rules (#1609)

🩹 Fixes

  • rollup: Replace globalThis.process. with process. (#1360)
  • types: Enable allowSyntheticDefaultImports option by default (#1383)
  • cache: Try to call event.waitUntil (#1422)
  • defineCachedFunction: Properly infer function type (#1423)
  • static: Safe decode path (#1459)
  • Split cookie headers (#1452)
  • deno-deploy: Treat all https:// modules as external (#1438)
  • cache: Call event.waitUntil on main resolver when expired (421d6255)
  • prerender: Skip redirects (#1448)
  • aws-lambda,netlify: Base64 encode binary responses (#1274)
  • app: Enable router preemptive mode (#1504)
  • vercel: Allow arbitrary function configuration (#1508)
  • Use relative paths in tsconfig.json (#1518)
  • prerender: Free up memory after each route is written to the disk (#1536)
  • prerender: Call prerender:route before freeing up memory (#1537)
  • prerender: Only match href attribute after whitespace (#1530)
  • externals: Absolute paths are inlined (#1429)
  • openapi: Merge handlers with same route and different method (#1497)
  • prerender: Exclude encoded href attributes from link extraction (#1485)
  • externals: Increase score for npm package name patterns to avoid breaking changes (#1548)
  • deno-deploy: Decode static asset path before reading from filesystem (#1494)
  • Remove non-standard module export condition (#1559)
  • externals: Trace externals with their commonjs / esm status (#1562)
  • Use relative paths in generated tsconfig (#1572)
  • app: Use event.path instead of event.url (41a76c0f)
  • cache: Don't use _originalPath (#1576)
  • types: Use relative type path to nitro #internal/nitro (#1584)
  • Disable sourcemap minify for dev (e38f3586)
  • Use relative source map paths and add test (#1582)
  • pkg: Remove node 14 from supported engines (#1585)
  • prerender: Use decoded asset id to access prerendered asset header overrides (#1588)
  • Add consola/core alias (#1591)
  • vercel,netlify: Don't deprecate swr when cache: false (#1603)
  • build: Workaround bun's difference in function.toString() (#1606)
  • firebase: Ignore fsevent dependency (#1610)
  • Directly pass localFetch to route rules handler (#1611)
  • stormkit: Properly send buffer responses (#1616)
  • Add parent node_modules of nitro to modules dir for pnpm compat (#1618)
  • deno-server: Fix injections and enable back tests (#1625)

💅 Refactors

  • cloudflare: Use wrangler deploy instead of publish (#1372)
  • cloudflare: Use wrangler deploy in more places (#1393)
  • prerender: Improve console formatting for failed routes (#1471)
  • Reduce usage of event.node.req (#1511)
  • Reduce usage of event.node.res (#1513)
  • timing: Hide debug logs with 0ms (8a44d19c)
  • firebase: Update generated package.json (#1608)
  • Migrate from http-proxy to unjs/httpxy (#1623)

📖 Documentation

  • vercel: Add note about top level api/ directory (#1386)
  • Add nitro plugins examples (#1403)
  • Add custom preset instructions (#1409)
  • aws: Add note about inlining dynamic chunks (#650)
  • Fixed typo of the word discussions (#1433)
  • Fix typo (#1446)
  • Use defineEventHandler instead of eventHandler (#1442)
  • Remove auto-imported defineNitroConfig (#1441)
  • Add utils/ directory (#1451)
  • storage: Add runtime storage configuration examples (#1456)
  • Prefer snake_case for preset names (#1499)
  • routing: Add middleware section (#1307)
  • plugins: Add runtime hooks section (#1521)
  • config: Add runtime config and environment variables section (#1550)
  • firebase: Improve docs (#1556)
  • cloudflare: Add environment variables instructions (#1547)

✅ Tests

  • Improve external modules test (#1428)
  • Run tests even if not serveStatic (#1590)
  • Add tests for environment variables and runtime config overrides (#1549)

🤖 CI

  • Use conventional commit message for autofix (#1501)
  • Use h3-nightly@latest for edge releases (#1563)

🏡 Chore

  • Update references to nuxt/nuxt (#1465)
  • Update GitHub templates (#1502)
  • Typo in bug report template (#1507)
  • Add codeql ci (#1542)
  • Add security.md (30b3578e)
  • firebase: Fix typos in warning message (#1561)
  • Lint test files as well (#1589)
  • Add internal types for public assets (#1460)

Don't miss a new nitro release

NewReleases is sending notifications on new releases.