All notable changes to this project will be documented in this file.
This project adheres to Semantic Versioning.
A list of unreleased changes can be found here.
v3.3.2 - 2023-07-13
v3.3.1 - 2023-07-03
v3.3.0 - 2023-06-21
v3.2.0 - 2023-06-06
- Bump @ui5/project from 3.3.1 to 3.3.2
a508e96
- Bump @ui5/server from 3.1.2 to 3.1.3
888fc0c
- Bump @ui5/builder from 3.0.4 to 3.0.5
1155cfc
- SNAPSHOT Consumption: Add cache-mode parameter (#633)
61d0865
- ui5 tree: Add 'level' and 'flat' parameters (#635)
284d9ea
v3.1.3 - 2023-05-23
- Bump @ui5/project from 3.3.0 to 3.3.1
dbe7657
- Bump @ui5/builder from 3.0.3 to 3.0.4
44a7b21
- Bump @ui5/fs from 3.0.3 to 3.0.4
9ed9ce2
v3.1.2 - 2023-05-05
v3.1.1 - 2023-04-27
v3.1.0 - 2023-04-26
- Bump @ui5/project from 3.2.0 to 3.2.1
922fb09
- Bump @ui5/project from 3.1.1 to 3.2.0
4619e2f
- Bump @ui5/builder from 3.0.2 to 3.0.3
b5fbf4a
- Bump @ui5/fs from 3.0.2 to 3.0.3
c6fd1f8
v3.0.7 - 2023-04-12
- Bump @ui5/project from 3.1.0 to 3.1.1
9f995f9
- Bump @ui5/server from 3.1.1 to 3.1.2
145a88c
- Bump @ui5/builder from 3.0.1 to 3.0.2
caaa457
- Bump open from 8.4.2 to 9.1.0
978c0b4
v3.0.6 - 2023-03-31
v3.0.5 - 2023-03-16
v3.0.4 - 2023-03-10
v3.0.3 - 2023-03-01
- Bump @ui5/project from 3.0.2 to 3.0.3
1bef5f8
- Bump @ui5/server from 3.0.1 to 3.1.0
11427f4
- Bump @ui5/fs from 3.0.1 to 3.0.2
c978d84
v3.0.2 - 2023-02-17
v3.0.1 - 2023-02-16
- Bump @ui5/project from 3.0.0 to 3.0.1
1dff14d
- Bump @ui5/server from 3.0.0 to 3.0.1
d87daa9
- Bump @ui5/builder from 3.0.0 to 3.0.1
c578c4e
- Bump @ui5/fs from 3.0.0 to 3.0.1
80ed971
v3.0.0 - 2023-02-09
- Bump @ui5/project from 3.0.0-rc.9 to 3.0.0
180c378
- Bump @ui5/server from 3.0.0-rc.3 to 3.0.0
aa0c020
- Bump @ui5/builder from 3.0.0-rc.6 to 3.0.0
9184e85
- Bump @ui5/fs from 3.0.0-rc.6 to 3.0.0
aa4107f
- Bump @ui5/logger from 3.0.1-rc.3 to 3.0.0
086b8de
- Bump @ui5/builder from 3.0.0-rc.5 to 3.0.0-rc.6
9120399
- Bump @ui5/project from 3.0.0-rc.8 to 3.0.0-rc.9
ed9dde4
UI5 Tooling v3 provides general support for ES2022 ECMAScript language features. See ECMAScript Support for details.
@ui5/cli
:@ui5/project
:- Implement Project Graph, build execution
161f462
- Implement Project Graph, build execution
@ui5/builder
:- generateJsDoc: Remove internal 'buildContext' parameter
4ec80c8
- Removal of manifestBundler and generateManifestBundle (#838)
07a5be2
- JSDoc: Fail build when jsdoc command failed (#845)
c2916b4
- Remove build execution (#740)
af2e956
- Enable modern preload bundles without dependencies (#739)
97cfa6c
- generateResourcesJson: Make 'dependencies' parameter mandatory
268dd16
- moduleBundler: Always default to
optimize: true
(#685)de5837c
- generateJsDoc: Remove internal 'buildContext' parameter
@ui5/server
:@ui5/fs
:- Throw an error on write of a resource when path does not starts with virBasePath of the respective adapter (#453)
d76575f
- Clone resources when writing in and reading from the Memory (#448)
3454bc1
- AbstractAdapter: Virtual base path must end with slash
6d1f411
- resourceFactory: Remove #createCollectionsForTree
a4d15f6
- Throw an error on write of a resource when path does not starts with virBasePath of the respective adapter (#453)
@ui5/logger
:- Deprecate advanced APIs in preparation of refactoring
3aea5e7
- Deprecate advanced APIs in preparation of refactoring
@ui5/cli
:@ui5/project
:- npm/Installer: Do not wrap promise provided by rimraf v4 (#550)
2d1ccda
- specVersion 3.0 (#522)
c5070e5
- Introduce SpecificationVersion class (#431)
e57842b
- TaskRunner: Provide taskName and logger instance to custom tasks
36cd2d8
- TaskUtil: Add resourceFactory API to v3 interface
2e863cf
- TaskUtil: Add getProject/getDependencies API to interface
51f2949
- npm/Installer: Do not wrap promise provided by rimraf v4 (#550)
@ui5/builder
:- Support ES2022 language features (#848)
f9b8457
- jsdoc: Support destructuring of enums for defaultValue (#775)
523f365
- builder: Improve support for ES6+ syntax (#774)
90385fe
- jsdoc: Improve support for ES6+ syntax (#785)
187a6a3
- generateThemeDesignerResources task: Create css_variables.less (#730)
34e69be
- builder: Add cssVariables option (#728)
30d58e1
- Generate source maps for bundles (#695)
8a20c42
- replaceVersion/Copyright: Also process test-resources (#693)
a0d4bc2
- Support ES2022 language features
e749b6a
- Add minify task and processor (#666)
a3af604
- Support ES2022 language features (#848)
@ui5/server
:@ui5/fs
:@ui5/logger
:- Add new log level "perf"
acf0c71
- Add new log level "perf"
@ui5/project
:@ui5/builder
:- Avoid redundant bundle creation (#741)
13c8405
- JSModuleAnalyzer: Fix detection of bundle name (#705)
aaeafd4
- generateResourcesJson: Add raw-module info for debug bundles (#736)
3b918e8
- LibraryBuilder: Align task order of "generateComponentPreload"
aea061d
- LocatorResourcePool: Wait for resources in prepare step (#719)
1b7f93f
- XMLTemplateAnalyzer: Analyze core:require of FragmentDefinition
af075ed
- Bundler: Ensure reproducibility for bundles with multiple parts (#689)
6f4588b
- generateResourcesJson: Don't list resources omitted from build result
9608c51
- generateResourcesJson: Analyze debug bundles (#669)
f27513a
- Bundler: Sort raw modules by default
0e11b69
- Avoid redundant bundle creation (#741)
@ui5/fs
:
Support for older Node.js and npm releases has been dropped for all UI5 Tooling modules. Only Node.js v16.18.0 and npm v8 or higher are supported.
All packages have been transformed to ES Modules. Therefore modules are no longer provides a CommonJS exports. If your project uses CommonJS, it needs to be converted to ES Modules or use a dynamic import for consuming UI5 Tooling modules.
For more information see also:
- https://sap.github.io/ui5-tooling/updates/migrate-v3/
- https://gist.github.com/sindresorhus/a39789f98801d908bbc7ff3ecc99d99c
- Removed CLI option
--translator
. Use new option--dependency-definition
to provide a file with static dependency information - Removed
ui5 build dev
command - Refactored
ui5 tree
: Removed--full
,--json
and--dedupe
options
- normalizer and projectTree APIs have been removed. Use generateProjectGraph instead
- Going forward only specification versions 2.0 and higher are supported
- In case a legacy specification version is detected, an automatic, transparent migration is attempted.
- Build:
- The "dev" build mode has been removed
- The task "generateVersionInfo" is no longer executed for application projects by default. You may enable it again using the includedTasks parameter
The jsdocGenerator
processor and the corresponding generateJsdoc
task will now throw an error when JSDoc reports an error (exit code != 0). This will also fail the build when running ui5 build jsdoc
.
The manifestBundler processor and generateManifestBundle task has been removed because it is no longer required for the HTML5 repository in Cloud Foundry.
- builder.js has been removed. Use ui5-project builder instead
- Tasks now rely on Project instances being available on Resources (see SAP/ui5-fs#381)
- TaskRepository#addTask has been removed. Custom tasks need to be added to the project graph instead
- TaskUtil#get/set/clearTag now requires a Project instance to be provided. Path strings are no longer sufficient and will cause an exception to be thrown
For library projects, the task "generateComponentPreload" is now executed after tasks "generateLibraryManifest" and "generateManifestBundle" instead of before them.
The following tasks have been removed:
- createDebugFiles
- uglify
The following processors have been removed:
- debugFileCreator
- resourceCopier
- uglifier
As a replacement, the new 'minify' task and 'minifier' processor can be used.
Note: The minify task is executed earlier, before the bundling process takes place. Existing 'beforeTask' and 'afterTask' configuration of custom tasks might need to be adapted to cater for this change.
This removes the "/proxy" endpoint and the corresponding "connectUi5Proxy" middleware from the standard ui5-server. Internally, this middleware made use of the connect-openui5 proxy implementation (https://github.com/SAP/connect-openui5#proxy).
More sophisticated proxy solutions for ui5-server are already available in the form of custom middleware extensions from the UI5-community.
The UI5 Team might provide a dedicated custom middleware extension, with similar functionality, in the future.
- Server now requires a Project Graph instance instead.
- Standard middleware now rely on Project instances being available on Resources (see SAP/ui5-fs#381)
- MiddlewareRepository#addMiddleware has been removed. Custom middleware need to be added to the project graph instead
An error is thrown when a resource shall be written to an adapter where the path of the resource does not starts with the virtual base path defined in the adapter.
Resources stored in the adapters can not be modified by reference anymore. All modifications need to be persisted by using the #write method in order to be reflected in the adapter.1d908bbc7ff3ecc99d99c
The @ui5/logger got refactored and as a result its API went public. Remove the usage of npmlog and refactor @ui5/logger modules to emit log events which are then caught in dedicated handlers. This is somewhat inspired by npm's proc-log module.
This breaking change removes capabilities that are likely to change and should not be part of a public API. This will ensure that later changes to the module can be done in a compatible manner.
Relevant changes:
- Restrict log-methods to two argument only. The use of placeholders like '%s' is no longer supported. A warning will be logged if more than two argument is supplied. Placeholders will be replaced with a deprecation message. We suggest the use of template literals.
- Deprecate #getGroupLogger method. Calling it throws an error. It will be removed in one of the next patch releases
- Deprecate #setShowProgress method. Calling it throws an error. It will be removed in one of the next patch releases
- Remove GroupLogger and TaskLogger classes. Similar functionality might be re-added in a later release.
v2.14.17 - 2022-12-13
v2.14.16 - 2022-11-30
v2.14.15 - 2022-11-30
v2.14.14 - 2022-10-28
- SyntaxError: Unexpected token '.' in Node.js v12
bab2057
v2.14.13 - 2022-10-20
v2.14.12 - 2022-10-12
v2.14.11 - 2022-09-05
v2.14.10 - 2022-07-25
v2.14.9 - 2022-05-04
v2.14.8 - 2022-04-14
v2.14.7 - 2022-03-25
v2.14.6 - 2022-02-21
v2.14.5 - 2022-02-17
v2.14.4 - 2022-01-24
v2.14.3 - 2022-01-19
v2.14.2 - 2021-12-14
v2.14.1 - 2021-11-17
v2.14.0 - 2021-10-19
- Bump @ui5/project from 2.5.0 to 2.6.0
2c42bba
- Bump @ui5/server from 2.3.1 to 2.4.0
063b2f7
- Bump @ui5/builder from 2.11.0 to 2.11.1
11a0f5a
- Bump @ui5/builder from 2.10.0 to 2.11.0
6f13917
v2.13.0 - 2021-10-05
v2.12.1 - 2021-08-25
v2.12.0 - 2021-07-23
- Bump @ui5/project from 2.4.0 to 2.5.0
0b4c2fb
- Bump @ui5/server from 2.3.0 to 2.3.1
ffbd9a5
- Bump @ui5/builder from 2.9.3 to 2.9.4
dfeb74e
v2.11.3 - 2021-07-01
v2.11.2 - 2021-06-17
v2.11.1 - 2021-06-08
v2.11.0 - 2021-06-01
- Bump @ui5/project from 2.3.1 to 2.4.0
f50642a
- Bump @ui5/server from 2.2.9 to 2.2.10
8670767
- Bump @ui5/builder from 2.8.4 to 2.9.0
9e3b7ec
v2.10.4 - 2021-05-17
v2.10.3 - 2021-04-19
v2.10.2 - 2021-03-11
v2.10.1 - 2021-03-04
ui5 use <framework>
should default tolatest
cda4b2c
- Bump @ui5/project from 2.3.0 to 2.3.1
912c6e0
- Bump @ui5/builder from 2.8.0 to 2.8.1
baed42f
- Bump js-yaml from 3.14.1 to 4.0.0 (#402)
0033c52
v2.10.0 - 2021-02-09
- Bump @ui5/project from 2.2.6 to 2.3.0
e8c5f37
- Bump @ui5/server from 2.2.7 to 2.2.8
8325bdf
- Bump @ui5/builder from 2.7.2 to 2.8.0
553d543
v2.9.3 - 2021-01-29
v2.9.2 - 2021-01-29
v2.9.1 - 2021-01-28
v2.9.0 - 2021-01-26
v2.8.1 - 2021-01-21
v2.8.0 - 2021-01-14
- ui5 use: Corrupt UI5 configuration
c207e1e
v2.7.1 - 2020-12-18
v2.7.0 - 2020-12-15
v2.6.6 - 2020-11-30
v2.6.5 - 2020-11-25
- Always log stack trace of unexpected errors
aba4e49
v2.6.4 - 2020-11-06
v2.6.3 - 2020-11-06
- Bump @ui5/project from 2.2.3 to 2.2.4
7b69c21
- Bump @ui5/builder from 2.4.2 to 2.4.3
898f7de
- Bump @ui5/fs from 2.0.4 to 2.0.5
8281b8b
- Reduce install size by removing 'string.prototype.matchall' dependency
cb34e84
v2.6.2 - 2020-11-04
v2.6.1 - 2020-11-03
v2.6.0 - 2020-11-03
v2.5.0 - 2020-10-22
- Bump @ui5/project from 2.2.2 to 2.2.3
21f5bd6
- Bump @ui5/server from 2.2.5 to 2.2.6
6740a0c
- Bump @ui5/builder from 2.2.1 to 2.3.0
8574924
- Bump @ui5/fs from 2.0.3 to 2.0.4
3c14bd4
- Bump @ui5/logger from 2.0.0 to 2.0.1
a401bfd
v2.4.5 - 2020-10-06
v2.4.4 - 2020-09-15
v2.4.3 - 2020-09-10
v2.4.2 - 2020-09-02
- Allow use of
--no-update-notifier
flaga34b58c
- Bump @ui5/project from 2.2.0 to 2.2.1
1f735d9
- Bump @ui5/server from 2.2.2 to 2.2.3
5170730
- Bump @ui5/builder from 2.1.0 to 2.2.0
b164a69
v2.4.1 - 2020-08-12
v2.4.0 - 2020-08-11
- Bump @ui5/project from 2.1.5 to 2.2.0
43cc824
- Bump @ui5/server from 2.2.1 to 2.2.2
42f4acc
- Bump @ui5/builder from 2.0.7 to 2.1.0
30cfbc6
v2.3.2 - 2020-08-10
v2.3.1 - 2020-07-21
v2.3.0 - 2020-07-14
- Bump @ui5/project from 2.1.4 to 2.1.5
0740fd1
- Bump @ui5/server from 2.2.0 to 2.2.1
139b59a
- Bump @ui5/builder from 2.0.4 to 2.0.5
4c28263
- Bump @ui5/server from 2.1.0 to 2.2.0
b5bf1cb
- Bump @ui5/server from 2.0.3 to 2.1.0
bd26b2b
- Bump @ui5/builder from 2.0.3 to 2.0.4
a20233e
v2.2.6 - 2020-05-29
- ui5 use: Allow using versions according to Semantic Versioning
d7a9363
v2.2.5 - 2020-05-27
v2.2.4 - 2020-05-19
v2.2.3 - 2020-05-14
- Bump @ui5/project from 2.1.2 to 2.1.3
e58febb
- Bump @ui5/server from 2.0.2 to 2.0.3
a73b7e3
- Bump @ui5/builder from 2.0.1 to 2.0.2
2c53f21
v2.2.2 - 2020-05-11
v2.2.1 - 2020-05-11
v2.2.0 - 2020-05-05
v2.1.0 - 2020-04-30
- Bump @ui5/project from 2.0.3 to 2.0.4
0bee0a0
- Bump @ui5/server from 2.0.1 to 2.0.2
f7ed0cc
- Bump @ui5/builder from 2.0.0 to 2.0.1
e70a426
- Bump @ui5/fs from 2.0.0 to 2.0.1
3b50590
v2.0.3 - 2020-04-15
- ui5 use/add: Fix updating ui5.yaml file
225f4ab
v2.0.2 - 2020-04-02
v2.0.1 - 2020-04-01
- npm-shrinkwrap.json: Add additional dependencies
a6c88f7
v2.0.0 - 2020-04-01
- Require Node.js >= 10
e0916ec
- Bump @ui5/project from 2.0.1 to 2.0.2
7539675
- Bump @ui5/project from 2.0.0 to 2.0.1
2f8fbe1
- Bump @ui5/project from 1.2.0 to 2.0.0
f18f07c
- Bump @ui5/server from 1.6.0 to 2.0.0
f514cc5
- Bump @ui5/builder from 1.10.1 to 2.0.0
eee43a6
- Bump @ui5/fs from 1.1.2 to 2.0.0
68f69b7
- Bump @ui5/logger from 1.0.2 to 2.0.0
847193d
Support for older Node.js releases has been dropped. Only Node.js v10 or higher is supported.
v1.14.0 - 2020-02-24
v1.13.1 - 2020-01-24
v1.13.0 - 2020-01-13
v1.12.2 - 2019-12-16
v1.12.1 - 2019-11-19
v1.12.0 - 2019-11-07
- Bump @ui5/project from 1.1.0 to 1.1.1
abca385
- Bump @ui5/server from 1.4.0 to 1.5.0
abf954b
- Bump @ui5/builder from 1.6.1 to 1.7.0
f482702
v1.11.1 - 2019-10-30
- Fix 'ui5 tree' output
a64de74
v1.11.0 - 2019-10-24
- Bump @ui5/server from 1.3.0 to 1.4.0
07f4719
- Bump @ui5/builder from 1.5.3 to 1.6.1
6d46c54
- Bump @ui5/logger from 1.0.1 to 1.0.2
0394f1a
- Bump @ui5/builder from 1.5.2 to 1.5.3
0eee47f
- CLI: Improve error reporting
160b8f7
v1.10.0 - 2019-10-09
- Add server settings
3638ed7
v1.9.0 - 2019-09-05
- ui5 build: Add --clean-dest option
fe60d04
v1.8.1 - 2019-09-04
v1.8.0 - 2019-09-02
- Bump @ui5/builder from 1.4.2 to 1.5.0
3de07b2
- Bump @ui5/builder from 1.4.1 to 1.4.2
f2d1ff0
- Bump @ui5/builder from 1.4.0 to 1.4.1
e5dcc5f
v1.7.0 - 2019-08-01
- Log CLI version when using --verbose option
c143a85
v1.6.0 - 2019-07-11
v1.5.5 - 2019-07-01
- serve: Create SSL certificate in user homedir
48bdd06
v1.5.4 - 2019-06-25
v1.5.3 - 2019-06-24
v1.5.2 - 2019-06-18
v1.5.1 - 2019-06-14
v1.5.0 - 2019-06-03
- Bump @ui5/server from 1.1.1 to 1.1.2
1d54bd5
- Bump @ui5/builder from 1.2.3 to 1.3.0
82ef6c1
- Bump @ui5/fs from 1.0.2 to 1.1.0
3f0ce7d
v1.4.4 - 2019-05-15
v1.4.3 - 2019-05-13
v1.4.2 - 2019-05-08
v1.4.1 - 2019-05-07
v1.4.0 - 2019-04-26
v1.3.1 - 2019-04-24
v1.3.0 - 2019-04-12
v1.2.4 - 2019-04-03
v1.2.3 - 2019-03-28
v1.2.2 - 2019-03-21
- Build: Add 'jsdoc' command
3a2f4a1
v1.2.1 - 2019-02-28
v1.2.0 - 2019-02-14
- Bump @ui5/project from 1.0.0 to 1.0.1 (#142)
c777997
- Security: Bump handlebars from 4.0.12 to 4.1.0 (#139)
ec081b6
- ui5 tree: Add dedupe option
91580a8
v1.1.0 - 2019-02-05
- Publish npm-shrinkwrap.json
abc5d5e
v1.0.1 - 2019-02-01
v1.0.0 - 2019-01-10
- Bump @ui5/server from 0.2.2 to 1.0.0 (#117)
a3c97b4
- Bump @ui5/builder from 0.2.9 to 1.0.0 (#115)
b979899
- Bump @ui5/logger from 0.2.2 to 1.0.0 (#114)
6df410e
- ui5 init: Use specVersion: '1.0'
d0bfe7e
v0.2.9 - 2019-01-03
v0.2.8 - 2018-12-19
v0.2.7 - 2018-12-06
v0.2.6 - 2018-11-20
v0.2.5 - 2018-11-20
- Versions Command
6c75777