ui5-tooling
ui5-tooling copied to clipboard
`ui5 serve` is very slow, can it do a pre-bundle before serving?
Expected Behavior
A hello-world
app served locally with ui5 serve
should be fast.
Current Behavior
ui5 serve
downloads the specified SAP libraries and serves several hundred unbundled JS files locally, which is pretty slow, even with browser cache enabled:
Dynamically Generated by UI5 Tooling - Browser Cache Enabled
I tried to mitigate the issue by downloading my own local copy of SAPUI5 runtime, with no improvements at all as the downloaded libs are not bundled either:
With Downloaded resource folder from https://tools.hana.ondemand.com/#sapui5
Here is the result with a CDN link, which is what we do at work:
With CDN [https://ui5.sap.com:](https://ui5.sap.com/)
It is quite a bit faster, but it just feels wrong that an Internet connection is required for local development. And the connection stability cannot be 100% guaranteed. We've encountered unstable/slow connection issues before.
Steps to Reproduce the Issue
- Create a
hello-world
app withcreate-easy-ui5
and thets-app
preset. - Start the app with
npm start
- Inspect the network tab
Context
- UI5 Module Version (output of
ui5 --version
when using the CLI):2.14.10
- Node.js Version:
16.6.0
- npm Version:
8.15.1
- OS/Platform:
Ubuntu (WSL2)
- Browser (if relevant):
Firefox & Edge
- Other information regarding your environment (optional):
nothing
Log Output / Stack Trace
N/A
So my questions are:
- Do the
ui5-tooling
team have a plan for a more performant local development experience (create bundles/dev-bundles for libraries before serving, utilizing webpack and hmr, etc)? - If not, where can I download a bundled version of SAPUI5 runtime to work around this issue?
Thanks!
Do the ui5-tooling team have a plan for a more performant local development experience (create bundles/dev-bundles for libraries before serving, utilizing webpack and hmr, etc)?
Yes we do! Ultimately, we want to provide pre-built versions of all framework libraries on npm. Those would be identical to the sources you get from the CDN. But you can download them and work completely offline.
However, we can't provide any timeline for this right now.