Replies: 40 comments 50 replies
-
Considering the short timeframe between the two Node EOLs, I think I would follow you in skipping the first EOL for Rollup and also go for a new major in September. At the moment, I do not have anything "big" to release, and while I have some crazy ideas, time is very scarce at the moment, so going of the September release would improve the chances to have something releasable. |
Beta Was this translation helpful? Give feedback.
{{title}}
{{editor}}'s edit
{{editor}}'s edit
-
Adding vite-node into core is huge 👍 We're using it in imba to bundle server code. Another feature I'd love to see in core is Native support for tsconfig's paths resolution. We're currently using a forked version of a vite-tsconfig-paths that doesn't crash when no tsconfig file is present. |
Beta Was this translation helpful? Give feedback.
-
We're discussing removing |
Beta Was this translation helpful? Give feedback.
{{title}}
{{editor}}'s edit
{{editor}}'s edit
-
The main hurdle I am facing is, migrating existing create-react-app projects due to node12 or older dependencies and react verisons. I am all in to update everything unless it breaks anything. Just need a stable support to port my entire app. Because the performance is the best in vite so far and want to continue that. |
Beta Was this translation helpful? Give feedback.
This comment has been hidden.
This comment has been hidden.
{{title}}
{{editor}}'s edit
{{editor}}'s edit
-
I think lib mode need to be enhenced:
|
Beta Was this translation helpful? Give feedback.
-
Better error reporting API! and fully annonated errors can be super nice, can try to put together a proposal for this! |
Beta Was this translation helpful? Give feedback.
{{title}}
{{editor}}'s edit
{{editor}}'s edit
-
I really love the continued emphasis on performance, great work! Looking forward to the release of the speed improvements to resolution 😃. My number one wishlist item would be support for CommonJS in monorepo sub-dependencies. 📦 IMHO, this is by far the biggest footgun when using Vite today. CommonJS is ubiquitous in the npm ecosystem so users of Yarn/pnpm using SSR will almost certainly have issues. Users are presented with an unhelpful error message, so at the very least having a more helpful error would be great. While workarounds are possible, it's frustrating for newcomers and difficult to maintain the workarounds in configuration over time as dependencies are added. |
Beta Was this translation helpful? Give feedback.
{{title}}
{{editor}}'s edit
{{editor}}'s edit
-
I believe fixing file content hashing would make a huge difference for users, especially when migrating from webpack where this behaves differently and can potentially waste a massive amount of bandwidth having to re-fetch unchanged files |
Beta Was this translation helpful? Give feedback.
-
Just to make it clear, I think we will drop Node 19 as well. |
Beta Was this translation helpful? Give feedback.
-
Maybe a better way to conditionnaly apply plugins ? export default defineConfig({
plugins: [
!process.env.ENABLE_IMG_MIN === 'true'
? undefined
: ImageMin({
// ...
})
]
}) |
Beta Was this translation helpful? Give feedback.
-
Prioritizing fixing #2433 would be greatly appreciated. It seems to have started somewhere around v2.8.x or v2.9.x, and is effecting a significant amount of users from the reactions in the issue. |
Beta Was this translation helpful? Give feedback.
{{title}}
{{editor}}'s edit
{{editor}}'s edit
-
I've seen many comments related to the issues that different systems (esbuild, rollup) for development vs production builds cause. Has anything changed since the "Why Not Bundle with esbuild?" section on the website was made? |
Beta Was this translation helpful? Give feedback.
-
IMO, Vite 5 should restore support for CJS. Revert #11101, or provide a way to resolve CJS libraries with broken package.json exports. The JS ecosystem is not ready to fully drop CJS and move to ESM yet, the transition should be seamless. |
Beta Was this translation helpful? Give feedback.
{{title}}
{{editor}}'s edit
{{editor}}'s edit
-
I would like Vite to have built in support for building node_module-less ssr (only node builtins are externals). Just like next and nuxt does. For this a replacement for https://github.com/vercel/webpack-asset-relocator-loader would be needed. |
Beta Was this translation helpful? Give feedback.
-
I would love Vite to have better support for monorepos, as in, running one Vite instances with multiple different configs with full on-demand build and HMR across the projects. #10041 It would also be nice to have a better library build mode that can build a library to multiple files instead of a single bundled file and with externalized assets, for consumption by a bundler in a more efficient manner with tree-shaking and not inlining big assets. |
Beta Was this translation helpful? Give feedback.
-
I would you like to add the resolve.fullySpecified like |
Beta Was this translation helpful? Give feedback.
{{title}}
{{editor}}'s edit
{{editor}}'s edit
-
I'd love to see a more fine grained resolution behavior based on the current platform. I created an issue for it here #13780 This will make reusing code across platforms (web, server, ssr, workers and even tests) very smooth. The gist of it is to have Vite resolve |
Beta Was this translation helpful? Give feedback.
-
We started discussions to gather feedback about experimental features. We'd like to try to stabilize many of them in Vite 5. If you're using one of these features please share your feedback: CSS
Assets
Optimize Deps
SSR
Misc |
Beta Was this translation helpful? Give feedback.
{{title}}
{{editor}}'s edit
{{editor}}'s edit
-
May we have some customization of which modules vite should install? For example, our team use Vite to build regular non frontend apps so we don't need some frontend-related features. Also @haikyuu mentioned vite-note but it won't be used in most cases when developing the static frontend apps. Instead of downloading a whole bunch of modules and polluting the node_modules, we should be able to pick what we need ourselves or just leave everything as is. |
Beta Was this translation helpful? Give feedback.
{{title}}
{{editor}}'s edit
{{editor}}'s edit
-
Could there be made an option to bundle the JS with esbuild instead of rollup for cases where code-splitting is not needed? I recently compared vite's bundling speed to webpack and found it to be 2-3 times slower (see this and linked PR), so it seems it's really rollup that holds back vite's build performance massively and I think esbuild ought to beat webpack. |
Beta Was this translation helpful? Give feedback.
{{title}}
{{editor}}'s edit
{{editor}}'s edit
-
The ability to target browsers (e.g. only browsers in 2023) or add support for browserslist when exporting (CSS, etc). |
Beta Was this translation helpful? Give feedback.
-
@patak-dev One thing that should be improved in the variables that are created at the time of the build, I have come across the scenario that I compile two projects in vite and if I render them on the same page (microfronted), then I come across the scenario that one of the widgets is not rendered since a variable i,x,y,z, etc has already been declared. From my point of view, you should review how to increase the probability that by building an app in vite, those variables that are generated have an almost unique nomenclature to avoid these scenarios. |
Beta Was this translation helpful? Give feedback.
{{title}}
{{editor}}'s edit
{{editor}}'s edit
-
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
@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.
Beta Was this translation helpful? Give feedback.
All reactions