
The UI5 Core team is pleased to announce the release of UI5 Tooling 4.0.
This release has a strong focus on enabling UI5 2.x compatibility for projects. In addition, along with some important housekeeping, we introduced a new feature for automatically generating locale information in the manifest.json.
We are doing our best to minimize upgrade efforts for UI5 developers. Projects currently working with UI5 Tooling 3.x are generally expected to work with UI5 Tooling 4.0. More on this below.
UI5 Tooling 4.0 requires Node.js v20.11.0, v22.0.0, or higher.
This allows us to make use of the latest Node.js features and to upgrade dependencies requiring current Node.js versions.
This new major Specification Version comes with breaking changes that might have an impact on projects. Please carefully read the migration guide before applying the new version to your projects.
These changes are mostly related to how bundles are created in UI5 Tooling. Even if you do not use custom bundles, this might have an impact on the initial loading behavior of your application or library. These changes pave the road for future improvements on bundling in UI5. Stay tuned for more!
UI5 Tooling 4.0 along with the new Specification Version 4.0 is required for projects to utilize UI5 2.x.
When defining Specification Version 4.0 in your project, the code generated by UI5 Tooling will apply all the current best practices, such as consistently loading resources asynchronously and terminating the use of "eval()" (a common CSP violation). Both of which are prerequisites for projects to be compatible with UI5 2.x.
In your application or library project, UI5 Tooling now analyzes existing manifest.json files. For any "i18n" and "ResourceModel" configuration, this ensures that the "supportedLocales" property is defined. If it is not defined, it is now filled in automatically based on the translation files present in the project.
This improves user experience by avoiding unnecessary requests at runtime. Without a defined set of "supported locales", the UI5 runtime has to determine the available translations by requesting individual files, often resulting in "404 Not Found" server responses.
Note that you can opt out of this behavior by defining the "supportedLocales" property yourself. The feature is active for both, the build and the server.
Learn more about this new feature in the builder documentation.
Upgrading to UI5 Tooling 4.0 is a straightforward task for most projects.
First, ensure that you meet the minimum required versions of Node.js and npm using the commands "node --version" and "npm --version". Make sure to also check your CI/CD workflows.
Then upgrade the UI5 CLI in your project by executing the following command:
npm i --save-dev @ui5/cli@latest
Also update your global install using:
npm i --global @ui5/cli@latest
You may already stop there, since updating the Specification Version remains optional.
However, if you want UI5 Tooling to apply the current best practices when building your project, also update the "specVersion" property in all ui5.yaml files to "4.0":
specVersion: "4.0"
[...]
Afterwards, test your project as usual. In case any problems come up, make sure to check our migration guide. And if you need further assistance, we invite you to raise an issue on GitHub.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
User | Count |
---|---|
16 | |
12 | |
11 | |
9 | |
8 | |
8 | |
8 | |
8 | |
7 | |
6 |