Hi,
I have looked further into the pom file in master. I see:
If I run locally:
mvn clean install -DskipTests
It does not appear to run the enforcer checks.
I see that the enforcer checks for the higher versions are only in the release
profile.
I notice that elsewhere in the pom file :
[3.1.1,)
${target.java.version}
Is there a reason to have these 2 versions of Maven enforcers or can we use one
Maven enforcer that will apply to all cases?
Kind regards, David.
From: David Radley
Date: Friday, 15 September 2023 at 11:47
To: dev@flink.apache.org
Subject: [EXTERNAL] FW: RE: Inconsistent build Flink from source in readme and
docs
Hi again,
I have just checked and you already enforcer have the enforcer for this in
master. I guess the only extra piece would be to put out a warning for java 8
indicating it is deprecated – I could look at that in a Jira,
Kind regards, David.
From: David Radley
Date: Friday, 15 September 2023 at 11:44
To: dev@flink.apache.org
Subject: [EXTERNAL] RE: Inconsistent build Flink from source in readme and docs
Hi Sergey,
Thanks for your response.
To summarise:
Flink 1.17 needs Maven 3.25 or 3.3.x with shading
Flink current master and 1.18 when released will require 3.8.6 (recommended or
higher if it works).
I suggest that for the 1.18 build we include, we police the Maven version
number in the build.
I can code this in the pom file using a maven-enforcer-plugin to police a
minimum version of Maven 3.8.6 in master. For an example see:
https://github.com/odpi/egeria/blob/egeria-release-3.2/pom.xml
We could police java levels as well. I could put out a warning if built with
java 8 indicating it I deprecated. Error for java levels less than 8.
If this ok I will raise a Jira to add this Maven and potentially java checking
to the build,
Kind regards, David.
From: Sergey Nuyanzin
Date: Thursday, 14 September 2023 at 16:07
To: dev@flink.apache.org
Subject: [EXTERNAL] Re: Inconsistent build Flink from source in readme and docs
Hi David
The links you have mentioned seems correct
Movement[1] towards to maven 3.8.6 happened since 1.18.x, and this is
mentioned in doc for master branch
At the same time 1.17.x still requires 3.3.x as mentioned in the doc for
1.17 you've mentioned.
so it depends on the Flink version
[1] https://lists.apache.org/thread/jbw3lzzoq5w16ckco3fc9xokycs3f22x
On Thu, Sep 14, 2023 at 4:09 PM David Radley
wrote:
> Hello,
> I am looking to build Flink from source I notice that the documentation
> https://nightlies.apache.org/flink/flink-docs-release-1.17/docs/flinkdev/building/
> says
>
> https://nightlies.apache.org/flink/flink-docs-release-1.17/docs/flinkdev/building/
>
> In addition you need Maven 3 and a JDK (Java Development Kit). Flink
> requires Java 8 (deprecated) or Java 11 to build.
>
> NOTE: Maven 3.3.x can build Flink, but will not properly shade away
> certain dependencies. Maven 3.2.5 creates the libraries properly.
> The README.md https://github.com/apache/flink/blob/master/README.mdsays:
>
>
> * Maven (we recommend version 3.8.6 and require at least 3.1.1)
> * Java 8 or 11 (Java 9 or 10 may work)
> git clone https://github.com/apache/flink.git
> cd flink
> ./mvnw clean package -DskipTests # this will take up to 10 minutes
> Flink is now installed in build-target.
> NOTE: Maven 3.3.x can build Flink, but will not properly shade away
> certain dependencies. Maven 3.1.1 creates the libraries properly. To build
> unit tests with Java 8, use Java 8u51 or above to prevent failures in unit
> tests that use the PowerMock runner.
>
> Can you confirm that the readme is correct and whether there is a need to
> do the documented dependency on versions after Maven 3.3.*
>
> https://nightlies.apache.org/flink/flink-docs-release-1.17/docs/flinkdev/building/#dependency-shading
>
> The recommended Maven level is 3.8.6, is this what was tested or is there
> a reason not to use the latest Maven version.
>
> I am happy to amend the docs to make them consistent,
>
> Kind regards, David
>
>
> Unless otherwise stated above:
>
> IBM United Kingdom Limited
> Registered in England and Wales with number 741598
> Registered office: PO Box 41, North Harbour, Portsmouth, Hants. PO6 3AU
>
--
Best regards,
Sergey
Unless otherwise stated above:
IBM United Kingdom Limited
Registered in England and Wales with number 741598
Registered office: PO Box 41, North Harbour, Portsmouth, Hants. PO6 3AU
Unless otherwise stated above:
IBM United Kingdom Limited
Registered in England and Wales with number 741598
Registered office: PO Box 41, North Harbour, Portsmouth, Hants. PO6 3AU
Unless otherwise stated above:
IBM United Kingdom Limited
Registered in England and Wales with number 741598
Registered office: PO Box 41, North Harbour, Portsmouth, Hants. PO6 3AU