Skip to content

Releases: vaadin/flow

Flow 1.0 Beta4

03 Apr 11:55
Compare
Choose a tag to compare
Flow 1.0 Beta4 Pre-release
Pre-release

Vaadin Flow 1.0.0.beta4 is a prerelease version for evaluating the enhancements mentioned below. With subsequent beta releases we may change things based on your feedback, and that may lead to API breaking changes.

Vaadin Flow 1.0.0.beta4

Flow is a new Java web framework for creating UIs using Java or HTML. Flow handles everything related to communication between and client and server and makes it possible to create UIs using the desired abstraction level you choose. It has all the capabilities you need to build a modern web app: from high level APIs for structuring your applications and binding data to it, into taking full control over the DOM and communication with HTML templates.

Flow is a part of the Vaadin platform. For information and helpful resources like documentation and examples on Vaadin Flow, please visit the Flow page vaadin.com/flow.

Breaking changes introduced in the newest Prerelease

  • #3678 Remove confusing leftovers from the experiment with fluent component APIs (ComponentSupplier was removed)

Bug Fixes since Previous Prerelease

  • #3701 Don’t add scroll=auto to body

  • #3732 Exception after application startup with beta3

  • #3647 Prevention of reentrant renavigation is broken in multiple related ways

  • #3707 Add isFromClient to SelectionEvent

  • #3404 SelectionEvent has no source

  • #3265 Error message about missing element for id mapping should mention the name of the template

  • #3676 If no custom I18NProvider is configured the log is polluted by INFO messages.

Documentation fixes

  • #3671 Explicitly document that multiple children can be assigned to the same slot

See complete list of changes since previous beta version

Supported Technologies

See the Vaadin platform release notes for browser, server and Java support level.

Known Limitations

  • Websockets as the push channel is not working for Spring Boot #3251
  • Template-in-Template feature has some limitations
  • There is no CDI support #456
  • There is no Portal/OSGi support #455

Flow 1.0 Feature Highlights

Using Components to build UIs with only Java

With Flow you to can compose UIs using only Java on the server side. You can use existing components or create your own by creating the DOM from the server side. See the relevant documentation:

Integrating Web Components

Flow allows you to integrate web components and consume them from server side Java. See the web components documentation for more information.

Router

Router is a core concept in Flow, enabling navigation for your website or web app. It is based on HTML5 History API, and makes it possible to for the user to navigate pages back and forward, and keep the page state intact. See the router documentation for more information.

Binding Data to Components

Flow allows you to easily bind your business data to the UI components. You can bind the forms to the business objects by using the Binder, see documentation for more information. For showing a list of data (eg. a database table) on the UI, you can use the DataProvider. See documentation for more information.

Creating UIs Declaratively with Polymer Templates

With Flow you can take full control of building the DOM and the communication by using HTML templates. We recommend using Polymer templates as they bring lots of helpful capabilities on top of the native HTML. See documentation for more information.

Theming Applications

Flow has support for customizing the look and feel of your applications with css, html custom styles or by customizing the ready made Themes provided for Vaadin Components. See the documentation for more information.

Spring Integration

Flow comes with a Spring integration, and you can use it with Spring 5 or Spring Boot 2. Please see the documentation for more information.

Getting Started

For getting started with Vaadin Flow, please see vaadin.com/start where there are three types of examples available:

  • Bakery App Starter for Flow and Spring - a full stack example application with Flow and Spring Boot with heavy focus on great UX
  • Beverage Buddy App Starter for Flow - a small example app that highlights the basic features of Flow
  • Project Base for Flow and Project Base for Flow and Spring
    • A base for your project with some placeholder files available and dependencies available
      All the starters bring the Flow dependency via the Vaadin platform, which is the recommended way for using Flow.

From Flow getting started documentation you can find a step-by-step tutorial.

Flow 1.0 Beta3

12 Mar 17:29
Compare
Choose a tag to compare
Flow 1.0 Beta3 Pre-release
Pre-release

Vaadin Flow 1.0.0.beta3 is a prerelease version for evaluating the enhancements mentioned below. With subsequent beta releases we may change things based on your feedback, and that may lead to API breaking changes.

Vaadin Flow 1.0.0.beta3

Flow is a new Java web framework for creating UIs using Java or HTML. Flow handles everything related to communication between and client and server and makes it possible to create UIs using the desired abstraction level you choose. It has all the capabilities you need to build a modern web app: from high level APIs for structuring your applications and binding data to it, into taking full control over the DOM and communication with HTML templates.

Flow is a part of the Vaadin platform. For information and helpful resources like documentation and examples on Vaadin Flow, please visit the Flow page vaadin.com/flow.

Bug Fixes since Previous Prerelease

  • #3677 Loading frontend dependencies with different loading strategies causes an exception
  • #3640 Can't find resources via servlet context when those use frontend:// protocol
  • #2820 Remove broken Shady DOM forcing feature

This release also includes major improvements to IE11 performance, mainly related to the Grid component. The improvements are included as part of the beta6 release of the vaadin-grid webcomponent. See the component release notes for details.

See complete list of changes since previous beta version

Supported Technologies

See the Vaadin platform release notes for browser, server and Java support level.

Known Limitations

  • Websockets as the push channel is not working for Spring Boot #3251
  • Template-in-Template feature has some limitations
  • There is no CDI support #456
  • There is no Portal/OSGi support #455

Flow 1.0 Feature Highlights

Using Components to build UIs with only Java

With Flow you to can compose UIs using only Java on the server side. You can use existing components or create your own by creating the DOM from the server side. See the relevant documentation:

Integrating Web Components

Flow allows you to integrate web components and consume them from server side Java. See the web components documentation for more information.

Router

Router is a core concept in Flow, enabling navigation for your website or web app. It is based on HTML5 History API, and makes it possible to for the user to navigate pages back and forward, and keep the page state intact. See the router documentation for more information.

Binding Data to Components

Flow allows you to easily bind your business data to the UI components. You can bind the forms to the business objects by using the Binder, see documentation for more information. For showing a list of data (eg. a database table) on the UI, you can use the DataProvider. See documentation for more information.

Creating UIs Declaratively with Polymer Templates

With Flow you can take full control of building the DOM and the communication by using HTML templates. We recommend using Polymer templates as they bring lots of helpful capabilities on top of the native HTML. See documentation for more information.

Theming Applications

Flow has support for customizing the look and feel of your applications with css, html custom styles or by customizing the ready made Themes provided for Vaadin Components. See the documentation for more information.

Spring Integration

Flow comes with a Spring integration, and you can use it with Spring 5 or Spring Boot 2. Please see the documentation for more information.

Getting Started

For getting started with Vaadin Flow, please see vaadin.com/start where there are three types of examples available:

  • Bakery App Starter for Flow and Spring - a full stack example application with Flow and Spring Boot with heavy focus on great UX
  • Beverage Buddy App Starter for Flow - a small example app that highlights the basic features of Flow
  • Project Base for Flow and Project Base for Flow and Spring
    • A base for your project with some placeholder files available and dependencies available
      All the starters bring the Flow dependency via the Vaadin platform, which is the recommended way for using Flow.

From Flow getting started documentation you can find a step-by-step tutorial.

Flow 1.0 Beta2

05 Mar 13:47
537ea4e
Compare
Choose a tag to compare
Flow 1.0 Beta2 Pre-release
Pre-release

Vaadin Flow 1.0.0.beta2 is a prerelease version for evaluating the enhancements mentioned below. With subsequent beta releases we may change things based on your feedback, and that may lead to API breaking changes.

Vaadin Flow 1.0.0.beta2

Flow is a new Java web framework for creating UIs using Java or HTML. Flow handles everything related to communication between and client and server and makes it possible to create UIs using the desired abstraction level you choose. It has all the capabilities you need to build a modern web app: from high level APIs for structuring your applications and binding data to it, into taking full control over the DOM and communication with HTML templates.

Flow is a part of the Vaadin platform. For information and helpful resources like documentation and examples on Vaadin Flow, please visit the Flow page vaadin.com/flow.

Bug Fixes since Previous Prerelease

  • #3605 afterNavigation on the view is fired twice if there is a layout

See complete list of changes since previous beta version

Supported Technologies

See the Vaadin platform release notes for browser, server and Java support level.

Known Limitations

  • There are known performance issues for rendering on Internet Explorer 11 when using the Grid component with multiple columns. After using more than five columns, the application is not usable anymore. This is due to be fixed in a later beta.
  • Websockets as the push channel is not working for Spring Boot #3251
  • Template-in-Template feature has some limitations
  • There is no CDI support #456
  • There is no Portal/OSGi support #455

Flow 1.0 Feature Highlights

Using Components to build UIs with only Java

With Flow you to can compose UIs using only Java on the server side. You can use existing components or create your own by creating the DOM from the server side. See the relevant documentation:

Integrating Web Components

Flow allows you to integrate web components and consume them from server side Java. See the web components documentation for more information.

Router

Router is a core concept in Flow, enabling navigation for your website or web app. It is based on HTML5 History API, and makes it possible to for the user to navigate pages back and forward, and keep the page state intact. See the router documentation for more information.

Binding Data to Components

Flow allows you to easily bind your business data to the UI components. You can bind the forms to the business objects by using the Binder, see documentation for more information. For showing a list of data (eg. a database table) on the UI, you can use the DataProvider. See documentation for more information.

Creating UIs Declaratively with Polymer Templates

With Flow you can take full control of building the DOM and the communication by using HTML templates. We recommend using Polymer templates as they bring lots of helpful capabilities on top of the native HTML. See documentation for more information.

Theming Applications

Flow has support for customizing the look and feel of your applications with css, html custom styles or by customizing the ready made Themes provided for Vaadin Components. See the documentation for more information.

Spring Integration

Flow comes with a Spring integration, and you can use it with Spring 5 or Spring Boot 2. Please see the documentation for more information.

Getting Started

For getting started with Vaadin Flow, please see vaadin.com/start where there are three types of examples available:

  • Bakery App Starter for Flow and Spring - a full stack example application with Flow and Spring Boot with heavy focus on great UX
  • Beverage Buddy App Starter for Flow - a small example app that highlights the basic features of Flow
  • Project Base for Flow and Project Base for Flow and Spring
    • A base for your project with some placeholder files available and dependencies available
      All the starters bring the Flow dependency via the Vaadin platform, which is the recommended way for using Flow.

From Flow getting started documentation you can find a step-by-step tutorial.

Flow 1.0 Beta 1

02 Mar 13:10
83f4b8d
Compare
Choose a tag to compare
Flow 1.0 Beta 1 Pre-release
Pre-release

Vaadin Flow 1.0.0.beta1 is a pre-release version for evaluating the enhancements mentioned below. With subsequent beta releases we may change things based on your feedback, and that may lead to API breaking changes.

Vaadin Flow 1.0.0.beta1

For information and helpful resources like documentation and examples on Vaadin Flow, please visit the Flow page in vaadin.com/flow.

Bug Fixes since previous prerelease

  • #3614 BeforeEnter is called for wrong view if views have common parent layout

See complete list of changes since previous alpha version

Alpha23: Easier Configuration of Push and Migration Guide

01 Mar 11:45
d460e55
Compare
Choose a tag to compare

Bug Fixes

  • #3577 Theme resolving doesn't work in dev mode when having a servlet path.
  • #3612 Asynchronous work on generated property change listeners

Enhancements

  • #480 Configuring @Push when there are only views and no UI

Breaking Changes

  • #3610 UI::navigateTo method has been renamed to UI::navigate
  • #3617 Add context object to beforeClientResponse calls
  • #3621 Making ContinueNavigationAction class to be an inner class

Documentation Updates

All Changes

https://github.com/vaadin/flow/milestone/73?closed=1

Alpha 22: Bugfixes

22 Feb 11:48
41b8740
Compare
Choose a tag to compare
Alpha 22: Bugfixes Pre-release
Pre-release

Bug Fixes

  • #3587 Bakery storefront view can't be shown in production mode
  • #3574 Theme defined in RouterLayout doesn't work in production mode
  • #3573 PolymerTemplate parsing is not thread safe in production mode
  • #3562 vaadin-flow-bundle-manifest.json is not found when its context path has double slash
  • #3513 Element methods do not work in some cases inside vaadin-dialog

Enhancements

  • #3526 Add highlight capabilities to RouterLink
  • #3560 Prevent DOM nodes serialization
  • #3563 Support setting and using custom CSS properties through Element.getStyle()
  • #3479 Designer templates and @theme should work together

Alpha 21: Renderer API updates

15 Feb 12:01
fece411
Compare
Choose a tag to compare
Pre-release

Breaking Changes

  • #3003 Renderer API refactor:

    • Now all the renderers (Template, Basic and ComponentRenderers) are part of the flow-data package (moved from flow-server). Existing code needs to update the imported package for the renderers to com.vaadin.flow.data.renderer.*.

    • ComponentTemplateRenderer was renamed to ComponentRenderer. The usage remains the same.

    • The API to set renderers to all components was standardized - setRenderer is now the name of the method to be used in all components (see individual component releases for more details).

Enhancements

  • #3505 Allow property being undefined from the server side except interim subrops

Bug Fixes

  • #3519 Router.getUrl() now behaves more consistently and fails if lacks parameters

  • #3439 Component error messages are treated a bit differently now: hidden instead of being removed

  • #3545 flow-maven-plugin treats non-jar files in classpath normally and omits them

  • #3540 flow-maven-plugin is able to remove directories outside the project output directory

  • #3185 if Router fails to parse a route param, the 404 error is returned now

Alpha20: Component API overhaul in preparation for the beta

08 Feb 15:44
Compare
Choose a tag to compare

This release contains several improvements in preparation for the upcoming beta release.

Breaking Changes

  • Related to #3423 :
    • GeneratedPaper* components are no longer provided by the platform. They were used in the past as a way of testing the code generator and to provide features yet not present on Vaadin Components.
    • All GeneratedVaadin* components are now abstract and provide only protected methods. The generated classes are not meant to be used directly - they are just a bridge between the client-side webcomponent and the server implementation. Specific relevant details are listed in each component repository.
    • Most components have had their public API changed or improved due to the changes in the Generated classes. Now only methods meant to be public are actually visible to the end developer.

Enhancements

  • Bumped the version of all webjars used by Flow, to match the beta releases of the Vaadin elements #3516
  • @AllowClientUpdates now can be used without parameters, which implies ClientUpdateMode.ALLOW #3497

Bug Fixes

  • Javadocs errors and warnings that prevented the javadoc package deployment to Maven repositories are now fixed #3508
  • Model properties on the client-side that are not updatable on the server-side are not transmitted anymore #3425

Alpha19: Flow with New Webjars, Enhancement and Internal Improvements

06 Feb 14:42
Compare
Choose a tag to compare

Breaking Changes

  • Change reverse getters/setters to straight getters/setters for flow components #2329
  • Rename flow-maven-plugin production goal #3360

Enhancements

  • Enable helper-method for handling null-values, when setting CSS-properties for components #2429 (Thanks external contributor @heruan )
  • Enable HTML/JS/CSS dependencies loading for Composite contents #2454
  • Allow to adjust value change mode for components #3229
  • Enable bootstrap annotations to be set on a abstract superclass. #3384
  • Fix memory leak issue in StateTree::beforeClientResponse #3486

Internal Improvements

  • Enable to specify I18N Provider via the Spring mechanism #2928
  • Flow Maven Plugin
    • Inspect application theme and replace the html imports according to it #3288
    • Enable to specify fragment names #3318
    • Separate the running between Es5 and Es6 #3321
    • Correct Bundling paths to external resources #3322
    • Add more logging for long time no output in Maven plugin #3366

Documentation Updates

Bugs Fix

  • Regression: Combobox setValue not working when combobox not displayed #2930
  • Parent layout theme not inherited by HasErrorParameter #3333
  • Regression: hidden attribute is set to false when server instantiates the component #3334
  • Deploying an app on Tomcat 7.0.39 fails with "Skipping automatic servlet registration because there are no navigation targets annotated with @route" #3359

Alpha18: Theming Support and Bug Fixes

18 Jan 11:20
Compare
Choose a tag to compare
Pre-release

New Features

  • Component Theme support with @Theme(Lumo.class) annotation #3197

Enhancements

  • Enable bundling by default for flow-maven-plugin #3317
  • Refactor the documentation structure based on feedback #1698
  • Improve Spring documentation based on DX feedback #3179

Documentation Updates

Bugs Fix

  • Binder can't update a field whose status is invalid #2460
  • Subproperties in template models do not get updated on the server #3117
  • Cannot bind elements by @id when template extend Polymer.mixinBehavior #3277
  • Java.util.ConcurrentModificationException: null when testing with ~10 concurrent users #3293
  • Client engine is not protected from several property change events when only one property is modified #3312

Internal Improvement

  • Flow Maven plugin has been integrated to Flow repository
  • Move production build tutorials from vaadin/flow-maven-plugin repo to flow/documentation #3289
  • Make people notice the missing @theme #3338

All Changes

https://github.com/vaadin/flow/milestone/67?closed=1