Releases: nitrojs/nitro
Releases · nitrojs/nitro
v3-alpha.1
🌟 Highlights (since alpha.0)
- Fully supporting rolldown and rolldown-vite
- Even smaller: install size is down to 9MB with ongoing efforts to reduce more
- Runtime performance can get close to 98% of native performances (tested with standard preset on Bun)
- We have bunch of fresh examples
- Removed lots of old hacks, fixed stability issues
- WebSockets supported
- Vite plugins can extend Nitro (RFC)
Join Nitro Discord Server if you have feedbacks and ideas!
🚀 Enhancements
- vite: Support
?assetsimport (#3662) - vercel: Support Bun runtime (#3678)
- vite: HMR client when server routes change (#3700)
- vercel: Add back node handler format under a flag (#3709)
- vite: Interoperability between nitro modules and vite plugins (#3712)
- Support
nodehandler format (#3717) routesconfig (#3718)- Opt-in filesystem routing using
serverDirconfig (#3719) - vite:
rolldown-vitesupport (#3723) - routing: Use
baseURLconfig (#3724) - Export
defineConfigand runtime utils from"nitro"(#3726) - Server fetch utils (#3731)
- vite: Load dot env in preview mode (#3735)
- Improve build info loading (#3743)
- vercel: Switch to node compat if one handler format is node (#3749)
- Automatically detect deno and bun as preset (#3750)
nitro/tsconfigpreset (#3754)- core: Autoload project
tsconfig.jsonfor aliases and JSX options (#3757) ⚠️ Migrate tooxc-transformandoxc-minify(#3763)renderer.staticconfig (#3765)- Websocket Support (#3766)
- cloudflare: Enable
nodeCompatanddeployConfigby default (#3768) - Auto detect builder (making rollup optional) (#3769)
- Improve sourcemap support (disabled by default) (2753e1cf)
- cloudflare: Enable
no_bundleby default (6d7c4b0f) - cli: Support
nitro build --builder(07b725f5)
🔥 Performance
- Upgrade hookable (#3684)
- app: Tree-shake extra routing logic when not needed (#3685)
- Reduce error handler bundle impact (af7f1565)
- app: Tree-shake extra condition (74134d25)
- standard: Only accept standard
req(6420d784) - app: Directly passthrough
req(13f66ac2) - Tree-shake plugins and hooks when not used (#3698)
- Reduce
nitroApp.fetch()overhead (#3699)
🩹 Fixes
- vite: Skip pre nitro middleware if path has extension (#3649)
- cloudflare: Properly resolve dev plugin (3afbc402)
- vite: Remove
noExternal: truefrom each service build (#3665) - build: Avoid replacing unexpected words (#3671)
- cloudflare: Add
cloudflare:workersalias in dev (#3663) - Support
autoimportstypeFrom property for declaration gen (#3670) - vite: Call
rollup:beforehook in dev mode for compatibility (2d199369) - vite: Consistently call
rollup:before. after resolving config (aec6dd26) - Add hookable sub-dep to
runtimeDependencies(5349f852) - rolldown: Pass
minifyoption (264ba29b) - vite: Always enable
noExternalfor prod (cdeb667d) - Automatically add
bunanddenoexport conditions (#3695) - vercel: Move bun detection to earlier stage (b34f0492)
- vite: Disable cors in dev (#3692)
- app: Unwrap
_requestwithout in operator (7fcd1568) - Handle sync callHook value (d3b720f0)
- Improve internal dependency resolution (#3702)
- node, bun, deno: Add back unhandled error/rejection traps (#3710)
- vite: Improvements on #3712 (#3712)
- dev: Trap unhandled errors (#3710)
- routing: Normalize and resolve handlers (15669702)
- routing: Filter invalid final handlers (c1a3be05)
- vite: Ignore invalid SSR env without entry (aefcdb31)
- config: Resolve
errorHandlerconfig (16b10fb0) - rolldown, vite: Escape non-safe chars from
chunkFileNames(491dc128) - vite: Set correct builder (fa27a9a2)
- Retry last-build link once (25fa2e9e)
- vite: Only pass
transformoptions in rolldown mode (737f4e6e) - vite: Use
configEnv.commandto determine dev mode (#3730) - vite: Send full-reload to server (#3732)
- vite: Update
<!--ssr-outlet-->for prod (ebb040f3) - Apply
baseURLto production assets (#3734) - vercel: Properly parse
x-now-route-matchesheader (c0ee44bf) - cloudflare: Workround for rolldown minify issue (#3748)
- Standard preset aliases (5419b335)
- node, bun, deno: Use static import only (#3751)
- vite: Use
noExternallist for dev (#3761) - Resolve full path of strings in
modules: [](23f7bea2) - Add
buildDirtonoExternal(c21a33ba) - cloudflare: Push unenv externals preset to resolved config (5faf0f5e)
- Make nitro/meta side-effect free (2292c661)
- cloudflare: Only enable
no_bundlefor workers (not pages) (409ecf3c) - vite: Add route rules only if
assetsDirgenerated (#3774)
💅 Refactors
- vite: Avoid empty lines in CI and test (44b2f091)
- vite: Show original plugin name/hook when failed (b0a49d41)
- vite: Overhaul plugin setup (#3676)
- vite: Enable back nf3 (57503e42)
- vercel: Rename
__fallbackto__server(4aad3595) - rollup: Hide
THIS_IS_UNDEFINEDwarn (5f6da290) - rolldown: Update transform config (3be802f2)
- ESM imports with erasable syntax (#3704)
⚠️ Cleanup deno, bun and node presets (#3705)⚠️ RemovedefineRenderutil (#3706)- vite: Remove
__VITE_MANIFEST__(#3714) ⚠️ Registe...
v2.12.9
v2.12.8
v3 alpha
v2.12.7
v2.12.6
🩹 Fixes
- vercel: Better o11y for ISR cached routes (#3560, bde8ce85)
- vercel: Generate prerender config for o11y routes matching
isrroute rule (#3562) - vercel: Skip o11y routes matching
isrroute rule (#3563) - vercel: Move
/ISR route before wildcard matches (81c2f9cd)
❤️ Contributors
- Pooya Parsa (@pi0)
- Daniel Roe (@danielroe)
v2.12.5
🩹 Fixes
- vercel: Prefix o11y routes with
baseURL(5c58de9b) - Allow accessing VFS through unix sockets (#3533)
- cloudflare-module: Output
_headersfile to the correct directory (#3517) - bun: Respect
HOSTandNITRO_HOST(#3547)
💅 Refactors
- vercel: Rename
__nitrofunction to__fallback(#3502, 4b28c706) - vercel: Update function config types (#3505)
- cloudflare: Update node-compat (#3558)
📖 Documentation
📦 Build
🏡 Chore
❤️ Contributors
- Pooya Parsa (@pi0)
- MrlingXD (@wling-art)
- Adam DeHaven (@adamdehaven)
- Julien Huang (@huang-julien)
- Luke Nelson (@luc122c)
- Anthony Shew (@anthonyshew)