vitejs · GitHub

We're starting a discussion to gather early feedback from the downstream ecosystem and users about their needs for Vite's next Major.

Before commenting, please review current open issues and check the previous Vite Major discussions:

Feel free to bring back proposals if you want to expand on them. If possible, create an issue for your feature and link it to this discussion so we can better track the proposal. For substantial changes to how Vite works, you may create an RFC.

Timeline

We've been aligning Vite's major releases with Node EOL. This year the Node team decided to move forward 7 months the EOL of Node v16, so we discussed with the Vite team, and the initial consensus is that it is better to skip the Node 14 EOL and release Vite 5 after September 2023-09-11 dropping support for both Node 14 and Node 16 (feedback welcome in case this affects your projects release schedule). Non Active LTS versions (Node 15, Node 17, Node 19) will also be dropped.

Node.js versions EOL

image

@lukastaegert, we're interested in the release schedule for Rollup. IIRC, you mentioned you wanted to start doing Major releases more often and aligning with Node EOL too. If there will be a Rollup major after the Node 16 EOL, we'll align with it. We can develop the alpha/beta for Rollup and Vite in parallel so we can release Vite after Rollup is out (how much we wait would depend on whether rollup introduces breaking changes to the plugin ecosystem).

As a tentative timeline, PRs and issues that require breaking changes will be added to the Vite 5 milestone during the next 3 months. Given that we will only have one Major this year, we could enter the alpha period for Vite 5 ~3 months before Node 16 EOL to give us time for more significant changes.

Initial thoughts

Vite has been focusing on a great performance story without compromising the flexibility of its rollup-based plugin API. We should double down on this vision. Work that improves performance should be prioritized for Vite 5. Some of this work may land in the next minors (see improvements to Vite's resolve logic at #12441, #12461, #12450). Vite 5 will give us a new opportunity to introduce breaking changes (that will probably be needed if we end up using Lightning CSS instead of PostCSS for example).

We've also been discussing moving vite-node (that now powers Vitest, Nuxt 3 Dev SSR, Histoire) to Vite core as an alternative to Vite current SSR primitives to add support for source maps and HMR during SSR. You can check out @sheremet-va's early work at #12165.

Check out the Vite 5 milestone, we'll keep it updated with new issues and PRs as we work towards the next Major. We're eager to hear your feedback and ideas.

Read the original on github.com ↗