Skip to content

Vaadin Flow 24.6.0.alpha4

Pre-release
Pre-release
Compare
Choose a tag to compare
@vaadin-bot vaadin-bot released this 12 Nov 07:17
· 35 commits to main since this release
6ef4c3e

Changes since 24.6.0.alpha3

All changes

New features

  • Add support for customizable projectFileExtensions
    Commit · Pull request · Issue

  • Opt-out web components from package.json
    Commit · Pull request

    Adds new property npm.excludeWebComponents (or npmExcludeWebComponents in Maven configurations). By default, it's false and everything works as before. true will exclude all web component dependencies from package.json for development mode (Vite/dev bundle) and production bundle build. Excluded dependencies are all Vaadin core components (e.g. button, grid, login, etc.) and commercial components (e.g. charts, rich-text-editor, etc.), but not lumo/material themes.

Fixes

  • Client side value binding logic
    Commit · Pull request · Issue

    Changes client side value binding logic so that if the user modifies the value during server round-trip, the value earlier sent to the server no longer overwrites user's changes once the round-trip finishes. Instead, user's changes are preserved. However, if the server-side value change handling logic actually changes the value and returns the new value to the client, that value will override any user input during round-trip.

  • Reconnect web components after session expiration
    Commit · Pull request · Issue

    After session expiration, Flow client in webcomponent mode send a GET request to the server to re-initialize itself with a valid session cookie. However, the XHR call is done with the withCredentials flag set to false, making the browser ignore the Set-Cookie header in the response. This change forces the withCredential flag to true for resync request so that the new cookie can be handled by the browser and reused in the subsequent request that re-intitializes the embedded component. If PUSH is enabled, it also restores the connection after resynchornization request to make sure pending invocation queue, and especially the webcomponent connected events, can be flushed correctly and sent to the server. Also temporarily suspends hearbeat during resynchronization request to prevent issue with concurrent requests, potentially causing duplicated session expiration handling on the client.