0

Observation (at 2022-08-13 20:06):

  1. In a BOM of Vaadin 23.1.6 ( https://repo1.maven.org/maven2/com/vaadin/vaadin-spring-bom/23.1.6/vaadin-spring-bom-23.1.6.pom ) there is a dependency to a version 23.1.4: <flow.version>23.1.4</flow.version>
  2. When I check the Dependency Hierarchy of my pom.xml in eclipse then I see different versions combined:

Dependency Hierarchy Vaadin 23.1.6

Releases:

  1. According to https://repo1.maven.org/maven2/com/vaadin/vaadin-core/ the latest version is 23.1.6 from 2022-08-09 12:37 (and there's also a 23.1.4 from 2022-08-02 10:43).
  2. According to https://repo1.maven.org/maven2/com/vaadin/flow-server/ the latest version is 23.1.4 from 2022-08-05 07:47

So the release cycles do not seem to be synchronized.

pom.xml: The only place where the vaadin version is set in my pom.xml is here:

<dependencyManagement>
    <dependencies>
        <dependency>
            <groupId>com.vaadin</groupId>
            <artifactId>vaadin-bom</artifactId>
            <version>${com.vaadin.version}</version>
            <type>pom</type>
            <scope>import</scope>
        </dependency>

Question:

  1. This mix works, but would it be better to enforce same versions?

  2. If the difference in versions is intended: why does it exist?

S. Doe
  • 685
  • 1
  • 6
  • 25
  • 3
    Just use the bom's versioning and you are good to go. Vaadin contains multiple moving parts with different release circles and the bom's job is it to make sure everything works together with the given versions. – Knoobie Aug 13 '22 at 20:56
  • 3
    @Knoobie [commented](https://stackoverflow.com/questions/73346780/vaadin-23-maven-versions-of-vaadin-core-vs-flow-server-differ#comment129531347_73346780) correctly. In other words, there really is no such thing as “Vaadin Flow 23.1.6”. That name merely represents a snapshot of particular versions of many components that were grouped together for testing. Each of those many components are built independently, with various incrementing version numbers. Look at the *External Libraries* section of your project in your IDE — you will see many Vaadin related libraries, each with their own GitHub. – Basil Bourque Aug 13 '22 at 22:40
  • I understand. "Vaadin Flow 23.1.6" also could have a completely different version number like "42.0.1". With such a large difference it wouldn't have confused me, I guess. Thank you both. – S. Doe Aug 14 '22 at 09:21
  • 2
    In the past the difference was huge (Vaadin 22 used Flow 9) which was even more confusing for users. Now it uses the same major and minor. Only the patch releases differ now. – Knoobie Aug 14 '22 at 18:04
  • 1
    Yeah, it's quite difficult to maintain in sync the patch number, because some times we might realise issues during the platform release process which implies increasing e.g flow in one number, other times there are no changes in e.g flow but in web-components, and makes not sense patch flow without changes. We keep the list of versions in the [release-notes](https://github.com/vaadin/platform/releases/tag/23.1.6) – Manolo Carrasco Moñino Aug 15 '22 at 10:45

1 Answers1

2

As stated in the discussion, the versions are not exact to maintenance versions. The minor difference here is just an implementation detail. You should always check the release notes for the correctly matching dependencies if you for some reason need to set versions manually instead of using BOM.

Tatu Lund
  • 9,949
  • 1
  • 12
  • 26