github vaadin/flow 25.1.0-alpha1
Vaadin Flow 25.1.0-alpha1

pre-release4 hours ago

Changes since 25.0.0

All changes

Breaking changes

  • Update old browser check to verify compatibility with Vaadin 25+
    Commit · Pull request · Issue

    Update old browser check to ensure that Vaadin 25 compatible application can be detected. Vaadin's web-components require popover to be available.

New features

  • Add Component::bindVisible
    Commit · Pull request · Issue

    Adds public void bindVisible(Signal) method to Component and Element. ElementAttributeMap, AbstractPropertyMap and NodeMap are refactored to share same bindSignal and hasSignal code.

  • Add HasEnabled::bindEnabled
    Commit · Pull request · Issue

    Adds void bindEnabled(Signal) method to HasEnabled and Element. Introduces new Node Feature SignalBindingFeature that stores signal and registration in a Map. Only bindEnabled initializes the feature to keep memory consumption optimal when binding is not used.

  • Move to com.interaso.webpush
    Commit · Pull request

    Change from webpush-jwt-jose4j to com.interaso.webpush

  • Improve SpringInstantiator
    Commit · Pull request · Issue

    Avoid manually counting beans of a given type. Instead, rely on Spring’s own resolution logic, which may eliminate the ambiguity. If ambiguity persists, fall back to the previous behavior. This fixes an issue where one might have multiple beans of an abstract or interface type in the context but has already taken care of ambiguity by hinting spring on which one to use (e.g. by using @primary, @fallback or other spring provided mechanisms). With the old implementation this would lead to an exception as it would try to instantiate a bean of an abstract type or interface, when spring would have been able to find a unique bean. This especially fixes cases where one has multiple beans of I18NProvider or MenuAccessControl which themselves are a perfect example where the old implementation was lacking.

  • Add protected API to regenerate data in viewport
    Commit · Pull request

    The PR adds a protected refreshViewport method to both DataCommunicator and HierarchicalDataCommunicator. This method regenerates and resends data for items that are currently visible in the viewport.

  • Implement getItems(offset, limit) in DataView
    Commit · Pull request · Issue

    • Added getItems with offset/limit to DataView interface - Implemented efficient query-based retrieval in AbstractDataView - Optimized backend fetching in AbstractLazyDataView - Added verification tests in AbstractLazyDataViewTest and AbstractListDataViewTest

Fixes

  • ReflectionClassFinder should not exclued Vaadin packages
    Commit · Pull request

    Rejecting hilla packages prevents TS endpoints to be generated.

  • Do not leak internally used dependencies to actual apps, not even as optionals
    Commit · Pull request · Issue

    Uses shade plugin to pull in some transitive dependencies to internal "flow-build-util" module. Although they are not ending up to the actual production artifact, they lower the DX as in IDE it may appear one has them evailable.

  • Make StyleSheetHotswapper registered listener serializable
    Commit · Pull request · Issue

    StyleSheetHotswapper registers a UIInitListener and a AfterNavigationListener when it gets initialized. However, lambdas are capturing the hotswapper instance that is not serializable and furthermore keeps a reference to VaadinService. This change refactors the listeners so that they will not capture the StyleSheetHotswapper instance.

  • Zip file extractor
    Commit · Pull request

    default archive extractor.

  • Stablize jrejsmap in flow-client
    Commit · Pull request · Issue

  • Propagate node settings to frontendTools
    Commit · Pull request · Issue

    Have the correct settings for FrontendToolsSettings in gradle toolsSettings. Dev mode should also read the node settings when starting the dev server if available.

  • Check binding not binder status
    Commit · Pull request · Issue

    Check the correct statuses for non null.

  • Css minification
    Commit · Pull request · Issue

    Do not remove space around plus sign.

  • Optimize Reactive.flush() for large listener queues
    Commit · Pull request · Issue

  • Register reflection and resource hints for error handlers in native builds
    Commit · Pull request · Issue

    Extract and register exception types from HasErrorParameter generic parameter for reflection. Register resource hints for ClassPathScanner to discover error handler classes at runtime in GraalVM native images. 🤖 Generated with Claude Code

  • Add missing reflection hints for type used with ReflectTools
    Commit · Pull request · Issue

    WebComponentExporter, I18NProvider, and MenuAccessControl might be instantiated via ReflectTools.createInstance and were missing reflection hints in VaadinBeanFactoryInitializationAotProcessor, which could cause issues at runtime in native executables.

  • Do not serve reserved folders
    Commit · Pull request

    Do not run indexhtmlrequesthandler for requests to vaadin reserved folders.

  • Install hilla-generator dependencies if Hilla is available
    Commit · Pull request · Issue

    Adds hilla-generator-* dependencies to package.json when Hilla is available via EndpointRequestUtil.isHillaAvailable(), not only when Hilla is used (FrontendUtils.isHillaUsed(...)).

  • Register client callable methods for reflection
    Commit · Pull request · Issue

    Registers reflection hints for client callable methods to ensure they can be detected and invoked when running native executables.

  • Register layout as beans for native build hints
    Commit · Pull request · Issue

    Layout classes referenced by Vaadin routes are instantiated programmatically and they might contain annotation managed by Spring like @PostConstruct. This change discovers and registers layout classes as beans during AOT processing so that related information are available for native build.

  • Allow access to SecurityContext for invalidated http session
    Commit · Pull request

  • Add flow-server test-jar for vaadin-dev-server tests
    Commit · Pull request

    Configure flow-server to create a test-jar artifact and add it as a dependency to vaadin-dev-server. This allows vaadin-dev-server tests to use test utility classes from flow-server without creating a circular dependency. Changes: - Added test-jar execution to flow-server maven-jar-plugin - Added flow-server test-jar dependency to vaadin-dev-server (test scope) - Updated imports in vaadin-dev-server tests to use original packages from flow-server test classes This fixes compilation errors in vaadin-dev-server tests that use MockUI, MockDeploymentConfiguration, MockVaadinSession, and other test utilities after hotswapper classes were moved to vaadin-dev-server.

Don't miss a new flow release

NewReleases is sending notifications on new releases.