SAP / ui5-tooling

An open and modular toolchain to develop state of the art applications based on the UI5 framework
https://sap.github.io/ui5-tooling
Apache License 2.0
465 stars 69 forks source link

[ROADMAP] Specification Version 3.0 // UI5 Tooling 3.0 #506

Closed RandomByte closed 1 year ago

RandomByte commented 3 years ago

UI5 Tooling 3.0

UI5 Tooling 3.0 is the official, feature complete successor of grunt-openui5. This allows us to deprecate grunt-openui5.

🔮 Update: Since October 2022, UI5 Tooling 3.0 development is done in the main branches in the UI5 Tooling repositories. The UI5 Tooling 2.0 sources can be found in the v2 branches in the UI5 Tooling repositories. Pre-releases are available via npm and tagged as next. For example: npm install @ui5/cli@next. See also: https://sap.github.io/ui5-tooling/v3/updates/migrate-v3/

Breaking changes

Features

Specification Version 3.0

Features

pubmikeb commented 1 year ago

Regarding:

Drop support for Node.js Version < 16

As of now, Node.js 18.12.1 is the current LTS, while Node.js 16.x is relatively old version with end of life already in September 2023, and in coming April there will be already Node.js 20.x.

Perhaps, does it's worth dropping support of Node.js version < 18 with the upcoming major release of UI5 Tooling 3.0? Less legacy, less constraints, easier to maintain.

RandomByte commented 1 year ago

Thank you for your input Mike! That part of the roadmap was slightly outdated, so I updated it with our latest decisions:

  • [x] Drop support for Node.js Version < 16
    • Do not support Node 14, due to lack of features and upcoming end-of-life in April 2023
    • Do not support Node 15 as it is already EOL
    • Support Node 16.18.0, the latest maintenance release for 16.x as of October 2022
    • Do not support Node 17 as it is already EOL
    • Support Node 18.0.0 and all later versions
    • Upgrade npm lockfiles to version 2

We think this could be a good balance. While Node 16 will be EOL in September 2023, Node 18 was only released earlier this year and might not have the same adoption yet. By requiring a recent patch-level for Node 16 though, we have an almost identical set of features available: https://node.green/

Nevertheless, more time has past now. So we'll pick up your input and discuss it in the team 👍 Thanks!

pubmikeb commented 1 year ago

@RandomByte, thanks a lot for the detailed explanation, Merlin!

Just as an additional input for the upcoming discussion:

If UI5 Tooling 3.0 release is planned somewhere in the end of Q1 2023, then by that time the adoption level of Node.js 18.x should be already mature enough.

RandomByte commented 1 year ago

We are currently in the process of publishing a first Release Candidate for UI5 Tooling v3.

As of the latest discussions, we stick to a minimum Node.js requirement of version 16.18.0, which contains the necessary support for chaining loaders (https://nodejs.org/api/esm.html#loaders), which is required by our test setup.

Unfortunately, SAP Business Application Studio currently uses Node v16.16.0. This means that the latest UI5 Tooling v3 pre-releases can not be used in this environment. We are already in contact with the responsible team and hope to resolve this before the final release of UI5 Tooling v3. Based on the outcome of that discussion, we might even lift the final Node.js version requirement.

flovogt commented 1 year ago

Implemented with https://github.com/SAP/ui5-cli/releases/tag/v3.0.0