nitro icon indicating copy to clipboard operation
nitro copied to clipboard

🚀 nitro v3

Open pi0 opened this issue 1 year ago • 5 comments

[!NOTE] This PR is not to merge but you can overview undergoing major nitro v2...v3 breaking changes which will be mostly breaking changes and removals in the first step.

[!NOTE] We will keep backporting fixes as much as possible to the nitro v2 until the community adoption of nitro v3. For non-breaking change improvements, please base PR branches on v2 branch. For proposing breaking changes, you can use main. Most of the upcoming features will land to v2 as well ~> v2.10.0 release tracker

⌛ ETA: Within June with the collaboration of the Nuxt team to sync releases


Beta testing via nightly channel

Directly using nitro:

  "devDependencies": {
    "nitro": "npm:nitro-nightly@3x"
  },

Using nitro with other frameworks such as Nuxt:

  "resolutions": {
    "nitropack": "npm:nitropack-nightly@3x"
  },

(use overrides for npm)


Roadmap: (breaking changes) [WIP

  • [x] Remove deprecated exports (63cc133d)
  • [x] Remove runtime/* compatibility exports (23c715aa)
  • [x] Migrate from nitropack to nitro as canonical (context: #2497) (9bdce707cbf1731495c29adc91251b8e6287f832)
  • [x] Remove /* subpath exports (d12305b7c9e6fb1fbcc8e6a1900b556891b5763a)
  • [x] Remove legacy externals (5d54ed1f661a528ca1983cc88543fb2963ed8e1f)
  • [x] Remove legacy webpack dynamic require plugin (ba3ee3c4cb0cdc1e03f5750436a65698c175a674)
  • [x] Enable AsyncContext by default (f7e1c46d529abe6461efe6d09b0e09ca3830a6d8)
  • [x] Remove appConfig support (#2526)
  • [x] Remove legacy fetch polyfill for Node < 18 (#2527)
  • [x] increase generated tsconfig.json strictness (#2533)
  • [ ] Async app+plugins (https://github.com/unjs/nitro/issues/915)
  • [ ] Disable swr by default for cached functions (https://github.com/unjs/nitro/issues/1950)
  • [ ] Migration notes

Dependencies:

pi0 avatar Jun 13 '24 14:06 pi0

May I ask what the status of v3 is? :) I see the last commit is from june.

Our team is considering to use Nitro for a huge project.

MickL avatar Jul 24 '24 12:07 MickL

@MickL Lots of things happening in h3 v2 right now to unblock last steps. (spoiler: it will be 10x faster no cheating & web apis, expect better testing ways and more)

pi0 avatar Jul 24 '24 13:07 pi0

Sounds amazing! Better testing would be huge.

Any ETA on h3 v2 and Nitro v3 from todays perspective?

MickL avatar Jul 24 '24 13:07 MickL

Sounds amazing! Better testing would be huge.

Any ETA on h3 v2 and Nitro v3 from todays perspective?

Curious as well! 10x speed and Web APIs sound awesome

Dino-Kupinic avatar Aug 03 '24 14:08 Dino-Kupinic

@pi0 you may want to update the ETA in the first post as ut kinda causes confusion on some social platforms. I think Nuxt already removed their ETA too.

bernhardberger avatar Oct 16 '24 22:10 bernhardberger

Is it correct that Nitro v3 is in beta? 😍

MickL avatar Nov 22 '24 19:11 MickL

@corbinu Why did you downvote? Latest npm release is named 3.0.0-beta-28796231.359af68d so I guess it is in beta?

MickL avatar Dec 02 '24 16:12 MickL

Is v3 still being worked on?

blouflashdb avatar Dec 18 '24 12:12 blouflashdb

Is v3 still being worked on?

You don't like v2? It's Christmas! No one work in that time :)

Maxttier avatar Dec 18 '24 12:12 Maxttier

Hi all. I can assure you we are actively working around releases. (holidays are actually best time for OSS maintainers since we can focus more haha!)

Nitro v2 is active and will include more enhancements in the parallel.

Nitro v3 release is a just milestone to adopt with ecosystem enhancements that require a breaking change to happen. h3 (v2), new cache layer, unstorage v2, and native vite(6) integration are some of the focus areas outside of this PR. This PR, is simply a placeholder to track commits.

I plan to release Nitro v3 beta.0 until end of this month but really can't promise as it depends on h3 v2 beta release and in parallel working to actively maintain current stable versions across nitro and unjs.

pi0 avatar Dec 18 '24 13:12 pi0

Thanks for the update!

I think what people dont see is the huge ecosystem around Nitro where a lot of things are happening, and eventually all of them will end up to form Nitro v3.

Btw you said Nitro will have significant performance improvements, sounded to me more than just adapting to breaking changes :)

Personally i was hoping for route roules to be fixed #2340 and some more testing utilities. But I am very excited for all the improvements that have been made! Sounds like a nice christmas present :)

MickL avatar Dec 18 '24 13:12 MickL

I personally wait for the Nitro v3, because I've heard it is the blocker for Nuxt v4 release.

malsatin avatar Dec 18 '24 20:12 malsatin

Development had been moved to new v3 (default) branch.

pi0 avatar Mar 11 '25 07:03 pi0