Skip to content

Conversation

@ShGKme
Copy link
Contributor

@ShGKme ShGKme commented Oct 1, 2025

☑️ Resolves

https://rspack.rs

Motivation:

  • MUCH faster (~5 times) with less RAM usage
  • Smaller bundle size due to better tree-shaking
  • Great ecosystem with bundle analysers
  • Webpack-compatible API - super simple migration

Why not Vite:

  • Vite is slow (for Talk slower than Webpack and x2 RAM usage)
  • No good chunks support for web apps: generates hundreds of microchunks

Why not Rolldown:

  • It is released but still under active development
  • Let's see later
Metric Before After
dev build 25 s 4.5 s
prod build 48 s 10 s
bundle size JS 46 MB 38 MB
bundle size CSS 5 MB 2 MB
talk-main.js 6.4 MB 5.9 MB

🏁 Checklist

  • 🌏 Tested with different browsers / clients:
    • Chromium (Chrome / Edge / Opera / Brave)
    • Firefox
    • Safari
    • Talk Desktop
    • Integrations with Files sidebar and other apps
    • Not risky to browser differences / client
  • 🖌️ Design was reviewed, approved or inspired by the design team
  • ⛑️ Tests are included or not possible
  • 📗 User documentation in https://github.com/nextcloud/documentation/tree/master/user_manual/talk has been updated or is not required

ShGKme added 4 commits October 2, 2025 00:01
```
npm i -D @rspack/cli @rspack/core @rspack/plugin-node-polyfill \
  css-loader sass-loader vue-loader
```

Signed-off-by: Grigorii K. Shartsev <[email protected]>
Needed for RSPack compatibility

Signed-off-by: Grigorii K. Shartsev <[email protected]>
Signed-off-by: Grigorii K. Shartsev <[email protected]>
```
npm un @nextcloud/webpack-vue-config \
  babel-loader-exclude-node-modules-except esbuild-loader \
  mini-css-extract-plugin webpack-bundle-analyzer worker-loader
```

Signed-off-by: Grigorii K. Shartsev <[email protected]>
@ShGKme ShGKme marked this pull request as ready for review October 2, 2025 00:08
@ShGKme ShGKme merged commit 9afd8f8 into main Oct 2, 2025
59 checks passed
@ShGKme ShGKme deleted the chore/rspack branch October 2, 2025 12:16
@ShGKme
Copy link
Contributor Author

ShGKme commented Oct 2, 2025

Let me know if you also want it on 32 👀

It also makes the app smaller

@nickvergessen
Copy link
Member

Not for now as I understood?
But we can leave the label for "later"

@ShGKme
Copy link
Contributor Author

ShGKme commented Nov 24, 2025

/backport to stable32

@ShGKme
Copy link
Contributor Author

ShGKme commented Nov 24, 2025

  • Talk Desktop doesn't depend on Talk's bundler anymore
  • New features are compatible with both

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants