FW: FW: RE: Inconsistent build Flink from source in readme and docs

2023-09-15 Thread David Radley
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


FW: RE: Inconsistent build Flink from source in readme and docs

2023-09-15 Thread David Radley
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.md   says:
>
>
>   *   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