Skip to content

Conversation

@RandomByte
Copy link
Member

@RandomByte RandomByte commented Nov 17, 2025

Read the rendered markdown here

JIRA: CPOUI5FOUNDATION-1025

@RandomByte RandomByte force-pushed the rfc-bundle-info-preload branch from bd95b01 to 9d93942 Compare November 17, 2025 14:12
@RandomByte RandomByte changed the title WIP docs(documentation): Add RFC 0019 Bundle Info Preload Nov 17, 2025
@RandomByte RandomByte force-pushed the rfc-bundle-info-preload branch from 9d93942 to b0a47ea Compare November 17, 2025 14:27
@RandomByte RandomByte force-pushed the rfc-bundle-info-preload branch from b0a47ea to 569e3d3 Compare November 17, 2025 14:29
@coveralls
Copy link

coveralls commented Nov 17, 2025

Coverage Status

coverage: 94.657% (+0.03%) from 94.624%
when pulling 728ca11 on rfc-bundle-info-preload
into cadc077 on main.

@RandomByte RandomByte changed the title docs(documentation): Add RFC 0019 Bundle Info Preload docs(documentation): Add RFC 0019 Bundle-Info Preload Nov 18, 2025
@RandomByte RandomByte changed the title docs(documentation): Add RFC 0019 Bundle-Info Preload docs(documentation): Add RFC 0019 Bundle Info Preload Nov 18, 2025
@RandomByte RandomByte changed the title docs(documentation): Add RFC 0019 Bundle Info Preload docs(documentation): Add RFC 0019 Bundle Info-Preload Nov 18, 2025
@RandomByte RandomByte changed the title docs(documentation): Add RFC 0019 Bundle Info-Preload docs(documentation): Add RFC 0019 Bundle-Info Preload Nov 18, 2025
@RandomByte RandomByte requested a review from a team November 18, 2025 12:57

The presence of `"bundleVersion": 2` signals to the UI5 runtime that the library uses the "Bundle-Info Preload" format. The runtime can then safely and efficiently load the `library-preload.js` bundles for any lazy dependencies. If this flag is absent, the runtime can assume a legacy bundling format and issue a warning or error, as it expects all libraries for UI5 2.0+ to be built with a compatible UI5 CLI version.

Note that this manifest attribute will only be added in a later manifest version. Therefore, the UI5 CLI must also adapt the manifest version accordingly when building libraries.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What manifest version would that be? A 2.x version? Can there be side-effects when a manifest version is updated during the build? What about a bump from 1.x to 2.x?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I can't really judge on that. Looping in @codeworrior, @loginger, @H4ze

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes, a 2.x version - the first 2.x version that lists the flag in the schema. For libraries, the schema version is not used as a switch at runtime, so I don't expect side effects when bumping it from 1.x to 2.x.
BTW: for many libs (especially. all framework libs) the manifest is anyhow generated.


UI5 releases prior to version 1.74 do not provide all required UI5 loader features, making the new bundling incompatible with these versions. Developers still targeting older releases (such as 1.71) will need to stick with an older release of UI5 CLI where the new bundling is not used.

Similarly, the addition of the manifest flag requires the use of a specific manifest version which might not be supported by older UI5 releases. However, due to lack of validation of the manifest version in older UI5 releases, this is not expected to cause practical issues.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What about manifest version checks during deployment?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm not familiar with those so I didn't know. I updated the text to now basically say the opposite and point out the problem. Also added this to the unresolved questions


## Drawbacks

UI5 releases prior to version 1.74 do not provide all required UI5 loader features, making the new bundling incompatible with these versions. Developers still targeting older releases (such as 1.71) will need to stick with an older release of UI5 CLI where the new bundling is not used.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Does that mean that there needs to be a maintained UI5 CLI release compatible with UI5 1.71, as long as that UI5 version is supported?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Either that or we provide a switch to turn off the new bundling (which might also solve the manifest version problem). Updated the text.

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants