Releases: vaadin/flow
Vaadin Flow 24.8.0.alpha2
Changes since 24.8.0.alpha1
New features
-
Add trees and transactions to signals module
Commit · Pull requestStill missing the topmost layer with the actual signal instances. The operation classes are leaking through from that layer even though they don't make much sense without the rest of that layer.
-
Add defaultAutoResponsiveFormLayout feature flag
Commit · Pull requestThe PR introduces a new feature flag, defaultAutoResponsiveFormLayout, which enables auto-responsive mode for all form layouts by default. Part of vaadin/flow-components#7164
-
WebComponent more Jackson
Commit · Pull requestChange more parts of webComponent to use Jackson instead of elemental.
-
Use single scanner for plugin class scan
Commit · Pull request · Issue -
Router parts to jackson
Commit · Pull requestUse jackson for router and navigation.
-
Internals to jackson
Commit · Pull requestChange internal functions to use jackson. part of #20741
-
Jackson used in dev-server
Commit · Pull requestUse jackson instead of elemental in the dev-server. part of #20741
-
Add ignore version check to plugin params
Commit · Pull request · Issue -
Use jackson for setting up configuration
Commit · Pull requestUse jackson for setting up configuration settings. part of #20741
-
Change internal json handling to jackson
Commit · Pull requestChange internal json manipulation from elemental to jackson. part of #20741
-
Plugins to use jackson
Commit · Pull requestUpdate plugins to use jackson for json handling. part of #20741
Fixes
-
Ensure exported WebComponent adds absolute links to document.css
Commit · Pull request · Issues 21120, 19620When using a development bundle, WebComponentBootstrapHandler adds a tag to the embedding document that references document.css for all used themes (application and parents). However, the URL is relative to the embedding document instead of being an absolute URL to the CSS resource. Additionally, the tag is added even if the theme does not provide a document.css file, potentially causing 404 errors at runtime. This change ensures that the link URL is calculated based on the request and that it only adds tags for existing CSS files.
-
Set page height to 100% instead of 100vh
Commit · Pull requestThe PR modifies the page height from 100vh to 100% to prevent the content area from extending underneath the navbar on mobile devices: - body, #outlet { + html, body, #outlet { - height: 100vh; + height: 100%; width: 100%; margin: 0; }
-
Watch active project resources
Commit · Pull request -
Use add if not replacing
Commit · Pull requestUse add method if not replacing an old value.
-
Constant pool to jackson
Commit · Pull requestUse jackson in constant pool UidlWriter to handle response in jackson. Part of #20741
-
Prevent duplicated messages in client queue
Commit · Pull request · IssueMessages sent by the Flow client are queued until the server acknowledges their reception. However, if there's a network fault, the Flow client immediately attempts to resend the message, resulting in duplicates in the queue. This change ensures that the same message is not added to the queue multiple times.
-
Fix equality check in NavigationAccessControl
Commit · Pull request · Issue -
Compute client-side feature flag values at runtime
Commit · Pull request · IssueActivating a feature flag in the project does not work when a default bundle is used because the values of the flags sent to the client are hard-coded at bundle build time. Additionally, if a feature flag is active during bundle creation, it remains active on the client side even if the project does not activate it in the
vaadin-featureflags.properties
file. This change ensures that feature flags in the frontend bundle are always disabled initially and are activated on page load based on the current project settings.
Vaadin Flow 24.7.0
Changes since 24.6.0
Breaking changes
-
Change minimal supported Node.js from 18 to 20
Commit · Pull requestNode.js 20 is the active LTS version. Node.js 18 will be end of life soon and new libraries like React 19 only support Node.js 20+.
New features
-
Fault-tolerant messaging for server-client communication
Docs · IssueVaadin implements "Fault-tolerance messaging" against message loose due to various network errors by using message buffers on both sides. Server (Flow server) maintains a message buffer for UIDL messages that it sends upon request from browser. Browser (Flow client) maintains a similar message buffer for RPC messages that it sends upon end-user actions. This gives additional safe-guard level in applications on top of standard TCP/IP protocol and helps to avoid UI re-syncs.
Includes the following commits:
-
Resend payload of reoccurring client request
Commit · Pull requestIf the client request contains the previous id and exactly the same message content respond with the same payload as previously.
-
Queue message payloads
Commit · Pull request · IssueAdd sent payloads to message queue and resend if no response to message inside MaxMessageSuspendTimeout format server clear queue for push messaging.
-
-
Add support for native image build Quarkus-based applications
Commit · Pull requestAdds support for native image build in Quarkus-based application by registering classes for reflection and patching Atmosphere.
Runmvn package -Pproduction -Dquarkus.native.enabled=true
to build a native image, then execute the output file to start the application. -
Documented common reverse proxy usages
Docs
A common guide and recommendations how to start configuring reverse proxy in front of Vaadin application. -
React 19 support behind a feature flag
Commit · Pull request -
Add support for OAuth2 logout configuration
Commit · Pull request · IssueImproves
setOAuth2LoginPage
method in order to configure an OIDC logout success handler capable of handling redirection for UIDL requests. Post logout URL is by default the application root, but a method overload allows to specify a custom URL. -
Add IFrame::setSrc(AbstractStreamResource)
Commit · Pull request -
Mark full size components with data attribute
Commit · Pull request -
Add feature flag for layout improvements
Commit · Pull request -
Add accessibleDisabledButtons feature flag
Commit · Pull request -
DisabledUpdateMode for ShortcutRegistration
Commit · Pull request
Code refactoring
- Use Vite official API for building sw.js
Commit · Pull request
Vaadin Flow 24.6.8
Changes since 24.6.7
Fixes
-
Add allowInert support for synchronized properties (#21119)
Commit · Pull request · Issue -
Ensure exported WebComponent adds absolute links to document.css (#21124)
Commit · Pull request · Issues 21120, 19620When using a development bundle, WebComponentBootstrapHandler adds a tag to the embedding document that references document.css for all used themes (application and parents). However, the URL is relative to the embedding document instead of being an absolute URL to the CSS resource. Additionally, the tag is added even if the theme does not provide a document.css file, potentially causing 404 errors at runtime. This change ensures that the link URL is calculated based on the request and that it only adds tags for existing CSS files.
-
Watch active project resources (#21099)
Commit · Pull request -
Fix equality check in NavigationAccessControl (#21083)
Commit · Pull request · Issue
Vaadin Flow 24.5.16
Changes since 24.5.15
Fixes
-
Add allowInert support for synchronized properties (#21119)
Commit · Pull request · Issue -
Ensure exported WebComponent adds absolute links to document.css (#21124)
Commit · Pull request · Issues 21120, 19620When using a development bundle, WebComponentBootstrapHandler adds a tag to the embedding document that references document.css for all used themes (application and parents). However, the URL is relative to the embedding document instead of being an absolute URL to the CSS resource. Additionally, the tag is added even if the theme does not provide a document.css file, potentially causing 404 errors at runtime. This change ensures that the link URL is calculated based on the request and that it only adds tags for existing CSS files.
-
Watch active project resources (#21099)
Commit · Pull request -
Fix equality check in NavigationAccessControl (#21083)
Commit · Pull request · Issue
Vaadin Flow 24.7.0.rc2
Changes since 24.7.0.rc1
Fixes
-
Prevent duplicated messages in client queue (#21103)
Commit · Pull request · IssueMessages sent by the Flow client are queued until the server acknowledges their reception. However, if there's a network fault, the Flow client immediately attempts to resend the message, resulting in duplicates in the queue. This change ensures that the same message is not added to the queue multiple times.
-
Fix equality check in NavigationAccessControl (#21083)
Commit · Pull request · Issue
Vaadin Flow 24.7.0.rc1
Changes since 24.7.0.beta1
Fixes
-
Compute client-side feature flag values at runtime (#21066)
Commit · Pull request · IssueActivating a feature flag in the project does not work when a default bundle is used because the values of the flags sent to the client are hard-coded at bundle build time. Additionally, if a feature flag is active during bundle creation, it remains active on the client side even if the project does not activate it in the
vaadin-featureflags.properties
file. This change ensures that feature flags in the frontend bundle are always disabled initially and are activated on page load based on the current project settings.
Vaadin Flow 24.8.0.alpha1
Changes since 24.7.0.beta1
New features
- Add support for Gradle configuration cache
Commit · Pull request · Issue
Vaadin Flow 24.7.0.beta1
Changes since 24.6.0
Breaking changes
-
Change minimal supported Node.js from 18 to 20
Commit · Pull requestNode.js 20 is the active LTS version. Node.js 18 will be end of life soon and new libraries like React 19 only support Node.js 20+.
New features
-
Fault-tolerant messaging for server-client communication
Docs · IssueVaadin implements "Fault-tolerance messaging" against message loose due to various network errors by using message buffers on both sides. Server (Flow server) maintains a message buffer for UIDL messages that it sends upon request from browser. Browser (Flow client) maintains a similar message buffer for RPC messages that it sends upon end-user actions. This gives additional safe-guard level in applications on top of standard TCP/IP protocol and helps to avoid UI re-syncs.
Includes the following commits:
-
Resend payload of reoccurring client request
Commit · Pull requestIf the client request contains the previous id and exactly the same message content respond with the same payload as previously.
-
Queue message payloads
Commit · Pull request · IssueAdd sent payloads to message queue and resend if no response to message inside MaxMessageSuspendTimeout format server clear queue for push messaging.
-
-
Add support for native image build Quarkus-based applications
Commit · Pull requestAdds support for native image build in Quarkus-based application by registering classes for reflection and patching Atmosphere.
Runmvn package -Pproduction -Dquarkus.native.enabled=true
to build a native image, then execute the output file to start the application. -
Documented common reverse proxy usages
Docs
A common guide and recommendations how to start configuring reverse proxy in front of Vaadin application. -
React 19 support behind a feature flag
Commit · Pull request -
Add support for OAuth2 logout configuration
Commit · Pull request · IssueImproves
setOAuth2LoginPage
method in order to configure an OIDC logout success handler capable of handling redirection for UIDL requests. Post logout URL is by default the application root, but a method overload allows to specify a custom URL. -
Add setSrc(AbstractStreamResource)
Commit · Pull request -
Mark full size components with data attribute
Commit · Pull request -
Add feature flag for layout improvements
Commit · Pull request -
Add accessibleDisabledButtons feature flag
Commit · Pull request -
DisabledUpdateMode for ShortcutRegistration
Commit · Pull request
Code refactoring
- Use Vite official API for building sw.js
Commit · Pull request
Vaadin Flow 24.7.0.alpha15
Changes since 24.7.0.alpha14
Fixes
-
Output file JSON without a leading space before :
Commit · Pull requestThis is compatible with the old elemental json version and with how browsers output indented json
Vaadin Flow 24.6.7
No changes since 24.6.6