Changes since 25.4.0-alpha2
Breaking changes
- Recognize and send the MPR push state as declared JavaScript (#25854)
New features
- Add opt-in Maven compile for Java (#26203)
- Add developmentOnly attribute to
@Route(#26211, #25170) - Allow loading a style sheet into a CSS cascade layer (#26133)
- Opt-in byte ranges for resource and stream downloads (#26255)
- Add Video and Audio components (#25900)
- Fire event when browser-too-old page is shown (#26227, #26226)
- Report AI coding agent in usage statistics (#26204)
- Serve byte ranges from built-in download handlers (#26198)
- Add Download.onClick to start downloads from a button click (#26065)
- Add name attribute to NativeDetails (#26170, #26168)
- Add OrThrow accessors for UI, session and service (#26163)
- Warn about deprecated Vaadin Jandex artifacts (#26159)
Fixes
- Load chunks of
@Usestargets with default production bundle (#26311, #26310) - Cache URL parameter annotation lookup per navigation target (#26223, #26222)
- Stop reading values from WebSocket build items (#26213)
- Unregister dev mode component classes on context destroy (#26325, #26324)
- Pin npm packages to URL versions from versions files (#26319)
- Disable Atmosphere CORS headers on push requests (#26215, #26214)
- Load service providers and i18n locales in native images (#26234)
- Cap future-dated file times in the change baseline (#26228)
- Initialize Vaadin servlets at runtime in native image (#26164, #26162)
- Send content length from class and servlet resource download handlers (#26200)
- Match old browser check to supported browsers (#26191)
- Handle push requests that find no session (#26169)
- Disable HotswapAgent's Jackson plugin in every class loader (#26120)