I’ve been wondering for some time… My uninformed impression is that most 
corporate development uses Eclipse or IntilliJ, which I believe run only on the 
java version they come packaged with, which presumably is not usually the 
target java version for the code being developed.  Aside from packaging 
questions (IIUC there’s no way for the maven project to ship a java 
implementation), why should Maven be different?

Thanks
David Jencks

> On Feb 20, 2024, at 1:30 PM, Tamás Cservenák <ta...@cservenak.net> wrote:
> 
> Romain,
> 
> you immediately revealed your WHY:
> Take off your "paid dev" hat, and please try again.
> 
> We ARE an open source project.
> So it IS about us, the volunteers.
> Is not about THEM, downstream users.
> 
> As it was told a million times:
> if they are stuck (due whatever policy or who knows what), they can just
> stay with 3.9, 3.8 or whatever suits them.
> Why align with the "stuck" ones?
> 
> T
> 
> PS: and no, I just collected the last release VOTEs w/ Herve responses on
> ML. If you consider that biased, then you have a problem ;)
> 
> 
> 
> On Tue, Feb 20, 2024 at 10:18 PM Romain Manni-Bucau <rmannibu...@gmail.com>
> wrote:
> 
>>> I am sure the majority of Maven users do not run Maven on the same Java
>> version they target with their build.
>> 
>> Do you use that and the following figures to do a biased conclusion?
>> 
>> "If people don't use the same version then we can higher the version"?
>> 
>> I think we need to consider two things:
>> 
>> * We are OSS dev so not representative of the majority - in a company you
>> most of the time use the same version you target and want to run that, just
>> either laziness, policy or quality (building with different versions can
>> lead to surprises and falsy passing tests = broken prod), sadly it is hard
>> to find data there but I'm pretty sure it is a common experience
>> * Guess there is a "use the first matching version I have" in the stats you
>> mention, so if you target 11 and have 17 you would use 17 but does not mean
>> you are ok to run 21 (random numbers, move them a bit to be a counter
>> example on whatever digit you want for maven 4)
>> * Guess very few people want to have >= 1 JDK
>> 
>> So clearly the question is not the latest LTS which would be for me just a
>> moving version we can't support and would be bad for our end users IMHO but
>> only the version we pick to start at 4.0.0.
>> Choices stay:
>> 
>> * Latest LTS at that moment to start fresh and not inherit from a legacy at
>> day 0
>> * Latest LTS - 1 - which would enable to cover more projects and get more
>> adoptions
>> * Something older but I don't find any valid reason since people skipping 2
>> LTS will likely never reach maven 4 before we discuss to move our baseline
>> again.
>> 
>> The other question we should probably anticipate is when do we move our
>> support version range.
>> Since java is not more predictable in terms of releases I think it can make
>> sense to target for "new" releases only 2 (maybe 3 but really unsure?) LTS
>> - indeed with best effort on later versions but no guarantee upfront.
>> With such a policy calendar can be communicated and people can follow or
>> not without surprises.
>> 
>> So today, since we don't have yet a final I think 21 can make sense but not
>> cause it is the current latest, cause it will likely be the ~N-1 at 4.0.0
>> time.
>> 
>> Romain Manni-Bucau
>> @rmannibucau <https://twitter.com/rmannibucau> |  Blog
>> <https://rmannibucau.metawerx.net/> | Old Blog
>> <http://rmannibucau.wordpress.com> | Github <
>> https://github.com/rmannibucau> |
>> LinkedIn <https://www.linkedin.com/in/rmannibucau> | Book
>> <
>> https://www.packtpub.com/application-development/java-ee-8-high-performance
>>> 
>> 
>> 
>> Le mar. 20 févr. 2024 à 21:50, Tamás Cservenák <ta...@cservenak.net> a
>> écrit :
>> 
>>> Howdy,
>>> 
>>> I intentionally used "Maven" here, and not "Maven 4" as I am sure the
>>> majority of Maven users do not run Maven on the same Java version they
>>> target with their build. We do not do that either.
>>> 
>>> Some snippets from Herve (who is the ONLY one doing reproducible checks,
>>> kudos for that) votes:
>>> 
>>> Sun, Feb 18, 2024, 9:38 AM
>>> [VOTE] Release Apache Maven Shade Plugin version 3.5.2
>>> Reproducible Build ok: reference build done with JDK 11 on *nix
>>> 
>>> Wed, Jan 31, 2024, 5:06 AM
>>> [VOTE] Release Apache Maven JLink Plugin version 3.2.0
>>> Reproducible Builds ok: reference build done on *nix with JDK 21 and
>> umask
>>> 022
>>> 
>>> Mon, Jan 8, 2024, 8:29 AM
>>> [VOTE] Release Maven Plugin Tools version 3.11.0
>>> Reproducible Builds ok: reference build done with JDK 8 on Windows with
>>> umask
>>> 
>>> Mon, Dec 18, 2023, 8:59 AM
>>> [VOTE] Release Apache Maven Compiler Plugin version 3.12.0
>>> Reproducible Builds ok: reference build done on *nix with JDK 21 and
>> umask
>>> 022
>>> 
>>> Mon, Dec 18, 2023, 8:59 AM
>>> [VOTE] Release Apache Maven Compiler Plugin version 3.12.0
>>> Reproducible Builds ok: reference build done on *nix with JDK 21 and
>> umask
>>> 022
>>> 
>>> Wed, Nov 29, 2023, 8:16 AM
>>> [VOTE] Apache Maven Build Cache Extension 1.1.0
>>> Reproducible Build ok: reference build done on *nix with JDK 11
>>> 
>>> Sun, Nov 19, 2023, 5:17 PM
>>> [VOTE] Release Maven Resolver 1.9.17
>>> Reproducible Build ok: reference build done with JDK 21 on *nix with
>> umask
>>> 022
>>> 
>>> Sat, Oct 21, 2023, 4:34 PM
>>> VOTE] Apache Maven 4.0.0-alpha-8 release
>>> Reproducible Build ok: reference build done with JDK 21 on *nix with
>> umask
>>> 022
>>> 
>>> Mon, Oct 2, 2023, 9:11 AM
>>> [VOTE] Release Apache Maven 3.9.5
>>> Reproducible not fully ok: reference build done with JDK 17 on *nix and
>>> umask 022
>>> 
>>> ====
>>> 
>>> This CLEARLY shows the tendency:
>>> - Michael does releases on Java 8 (on windows!), he is a known "aligner"
>>> and windows person :)
>>> - Olivier used the "minimum" required Java version (for build cache).
>>> - Unsure why Herve used Java 11 for the Shade plugin... I mean, he could
>>> use 21 but also 8, but he shot for 11 that was EOL at the moment of
>>> release.
>>> - The rest is 21.
>>> 
>>> ====
>>> 
>>> So, the question for those refusing anything other than Java 8 to _run_
>>> Maven (or to revert: for those refusing to run Maven on "latest LTS",
>> that
>>> is currently 21):
>>> WHY?
>>> 
>>> 
>>> Thanks
>>> T
>>> 
>> 


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@maven.apache.org
For additional commands, e-mail: dev-h...@maven.apache.org

Reply via email to