Our latest feature release, Vaadin 20, is finally here. V20 brings both new features and updates, including official Gradle support, Spring Security Helpers and TypeScript type event definitions for 15 more components since Vaadin 19.
Vaadin 20 contains frameworks, tools and components. You can see the full list of included products in the Included Projects and Change Log section of the release notes.
Not sure about the difference between the two frameworks? Read the introduction to Vaadin Flow and Fusion for details.
The previous feature release, V19, will continue to receive support for a month.
Official support for Gradle
Impacts: Flow and Fusion
Gradle is the second-most-popular build tool for Java users. We now provide full support, including warranty and automated integration tests, enabling you to build and test your Vaadin projects using Gradle with confidence.
The Gradle plugin offers the same functionality and terminology as the existing Maven plugin. You can execute the same build goals as before after making the swap from Maven to Gradle to build your Vaadin application.
Spring Security Helpers
Impacts: Flow and Fusion
Enjoy less boilerplate code to configure Spring Security and spend the freed-up time on developing your business logic. The Vaadin Spring Security Helpers take care of Vaadin’s authentication for you, so you only need to worry about application-specific Spring Security configuration.
New Message components
Impacts: Flow
Collaboration Engine now enables users to chat within the application, with the newCollaborationMessageList
andCollaborationMessageInput
components. Try the demo app or download a project with Collaboration Engine pre-installed from start.vaadin.com.
Example of the CollaborationMessageList
and CollaborationMessageInput
components:
User userEntity = userService.getCurrentUser();
UserInfo userInfo = new UserInfo(userEntity.getId(),
userEntity.getName(), userEntity.getImageUrl());
String topicId = "general";
CollaborationMessageList messageList = new CollaborationMessageList(
userInfo, topicId);
CollaborationMessageInput messageInput = new CollaborationMessageInput(
messageList);
TypeScript type definitions for Vaadin component events
Impacts: All components
Continuing from V19, all Vaadin components now support TypeScript type definitions.
You no longer need to rely on your memory or the documentation for the available events and TypeScript types when using Vaadin components in TypeScript code. Your IDE will show the options in auto-complete. The TypeScript compiler automatically ensures that you use the correct types when accessing event details in event handlers.
FAQ
Should I upgrade to V20?
We recommend V20 if you are building with Vaadin Fusion and want to try the latest features immediately and provide us feedback, or if you are already on V19. The feature releases, such as V20, receive 4 months of support.
Will the features be backported to V14?
The Collaboration Engine updates will be available for V14.7. The old Gradle plugin is already ported for V14, but the officially supported version will not be backported.
How can I get started with V20?
You can configure a V20 project for both Vaadin Flow and Fusion at start.vaadin.com. Don’t worry about making the wrong choice; the frameworks are interoperable.
What’s next?
We create a feature release roughly every quarter. Find details on the Vaadin roadmap.
Any more questions? Ask away by commenting below!