Other projects have tried to do that (given they are different types of 
projects) and it turned out that keeping JVM8 support going when not compiling 
on JDK8 proved difficult and when push came to shove, it was JVM 8 support that 
was dropped.  I know that's not you or this project, but human nature is what 
it is and patterns tend to repeat.  So while I understand what you are saying, 
I have my doubts based upon past projects I have seen do this.

On the other hand, the reasons for the upgrade are always a bit weak and the 
upgrade really only created lots of support work for the devs and users (the 
security model is especially an issue) and yes they thought it would be 
seem-less too.  Writing code in any other JVM language would accomplish what 
you want far more effectively.  Instead you want to put lipstick on the pig and 
act like Java 21 is somehow like more modern languages (it isn't, it never will 
be).   Just because you can pass a function in Java, doesn't make it a FP 
language.  It has no currying, no function composition, it lacks a self-type, 
there are no concepts of co or contra variance in the types and that's just a 
short list off the top of my head.  That's the direction you are pushing with 
what you are asking about but Java 21 isn't the answer there as it has none of 
these things, while almost all of them would be useful in Maven itself.
So from my perspective, you are proposing a solution to a problem that doesn't 
exist while at the same time the solution you propose doesn't truly give you 
what you want.  Nobody wanting to a new language on their CV is going to need 
that language to be Java.  If they are joining the Maven project, it is likely 
because they want to contribute to Maven, not because Maven uses JDK 21.  And 
your users just don't want to be bothered and want their build system to work.  
It is hardly ideal and I have sympathy but it doesn't make dropping building of 
Maven by javac8 the right call.

Hunter
    On Monday, June 5, 2023 at 02:22:59 PM PDT, Delany 
<delany.middle...@gmail.com> wrote:  
 
 Your inclination to ignore points of the debate doesn't do your own
arguments any justice.
Multiple times it's been explained that raising the required runtime JDK in
Maven 4 will not prevent you from
- building with a lower JDK (via toolchains)
- targeting a lower JDK (via the release property)
- building with Maven 3

This is the main point of the debate, not the language.

On Mon, 5 Jun 2023 at 21:42, Hunter C Payne
<hunterpayne2...@yahoo.com.invalid> wrote:

> * Attract devsAbsolutely not.  If you want to attract devs, switch to a
> language that is actually growing (no I'm advocating for this).  That isn't
> Java.  If anything, this will lose you devs.  The company I work for will
> be leaving Maven if you stop supporting Java8.  That's 300 users you lose
> right there.  That's just 1 company.  You will lose users in droves if you
> stop Java8 support.  Many companies don't have/put enough resources into
> this type of upgrade.  Its hard to justify to the business and it makes
> lots of work for devs (expensive).  If it is cheaper to switch build
> systems that to upgrade the JVM, that's exactly what folks will do.  My
> company certainly will (not my decision so don't try to convince me, I'm
> not the one you have to convince).
>
> * CDS for non-OpenJ9-usersI'm not sure this is something that is really
> taken advantage of by Maven.  Perhaps I am wrong.
>
> * Better clarity of code (yes, I mean that)That you say that you actually
> mean this says it all.  Clearly this is something that isn't agreed upon
> universally.  Your personal taste shouldn't decide the future of a project
> used by so many others.
> * No additional work (we don't need to migrate, just use the features when
> modifying a line for a bug/feature anyway)This is simply not true.  There
> have been comments by devs on this very list, in this very discussion that
> disprove this point.  It isn't OK to just ignore their input because you
> really want to use lambdas.
>
> * We leave no one behind b/c of Maven 3.8/3.9, thus no drawbacks.You have
> that backwards.  If you leave Java8, you leave behind everyone who can't
> upgrade their source base.  It seems to me that the size of the group of
> Java8 folks you will leave behind is quite large.  So your argument about
> no drawbacks isn't credible.  There are no drawbacks for you, that isn't
> the same as there being no drawbacks for the entire user base.
> * By the time Maven 4 final is out, your views might have changed!I write
> most of my code in Scala so I doubt it seriously.
>
> Your points are not nearly as strong as you imply with your tone.  Some of
> them indicate a lack of understanding of some more advanced parts of FP
> which is understandable for Java devs but doesn't make your points
> correct.  And your analysis of the impact on the userbase is just plain
> wrong.  If you want people to bomb this list with complains, drop Java 8
> support and enjoy the rage postings you get from 100s to 1000s of devs who
> work for companies and projects that don't have to resources to upgrade.
>
> Hunter
> PS Lambdas are only useful if there is function composition and currying.
> Java lacks both.  So the debate over lambdas is pretty amusing to me.  It
> is just syntactic sugar.  It doesn't actually give you the ability to do
> other things like in Scala or Kotlin.  So I don't really understand why you
> want to use them so much.  Are for loops really that hard to write?  I mean
> there is already so much ceremony in Java that saving 3 or 4 keystrokes per
> loop doesn't really make any difference.
>
>
>    On Monday, June 5, 2023 at 11:52:16 AM PDT, Tamás Cservenák <
> ta...@cservenak.net> wrote:
>
>  Seems people missed this (somewhat related) thread:
>
> https://lists.apache.org/thread/kpsrb28nst84vtohwngy3140g1r0ydd4
>
> Thanks
>
>
> On Mon, Jun 5, 2023, 20:40 Hunter C Payne <hunterpayne2...@yahoo.com
> .invalid>
> wrote:
>
> >  Hi,  Karl, I'm not sure I agree you have "stated a benefit" so far.
> > There have been plenty of hand-wavy arguments but nothing really solid.
> > That's why you are getting so much push back.  Point to a specific
> feature
> > you need or some other thing that would help the project in some
> > significant way.  At the moment, the argument is basically, "its newer so
> > its better", I'm sorry but that simply is not true.  Make a better case
> and
> > you will get less pushback.
> > Hunter
> >
> >    On Monday, June 5, 2023 at 06:03:26 AM PDT, Karl Heinz Marbaise <
> > khmarba...@gmx.de> wrote:
> >
> >  Hi,
> >
> > On 03.06.23 11:46, Hervé Boutemy wrote:
> > > +1
> > >
> > > I really don't what benefit we get from going to Java 17
> >
> > which was already part of the email:
> >
> >
> >  > Based on the argument we don't need  features of JDK17+ I see a number
> >  > of things which could make our handling/maintenance easier for example
> >  > using sealed classes to prevent exposing internal things to public
> which
> >  > could be used etc. also some other small features (`var` for example;
> >  > Text-Blocks in Tests etc) or using records in some situation (really
> > immutability)..
> >  >
> >  >
> >
> >
> > Kind regards
> > Karl Heinz Marbaise
> >
> > >
> > > I perfectly see the impact we'll have on our users: for what benefit?
> > >
> > > notice that this will also impact all plugins: and given the few work
> > done on
> > > plugins to clearly show what plugin version remains compatible with a
> JDK
> > > release, I feel we're not taking the topic the right way
> > >
> > > Le vendredi 2 juin 2023, 01:50:53 CEST Hunter C Payne a écrit :
> > >>  I'm not sure I would worry too much about that David.  I think most
> > devs
> > >> who want better syntax moved from Java sometime ago.  They might still
> > be
> > >> on the JVM just not writing Java.  Also, Maven is a mature project.  I
> > >> don't think devs considering contributing to it are thinking about
> using
> > >> the latest and greatest version of Java.  Compatibility is probably a
> > >> bigger concern for the user base.  Just my opinion.
> > >>
> > >> Hunter
> > >>      On Thursday, June 1, 2023 at 04:17:26 PM PDT, David Jencks
> > >> <david.a.jen...@gmail.com> wrote:
> > >>
> > >>  I wonder if having maven require java 8 syntax discourages any
> > potential
> > >> contributors who are used to coding using more recent developments. I
> > have
> > >> no idea how to tell, but maybe someone else does.
> > >>
> > >> David Jencks
> > >>
> > >>> On Jun 1, 2023, at 3:02 PM, Karl Heinz Marbaise <khmarba...@gmx.de>
> > wrote:
> > >>>
> > >>> Hi,
> > >>>
> > >>> my clear opinion is to go  with most recent JDK LTS version for the
> > >>> release point of Maven 4.0.0 which I assume will be JDK 21...
> > >>>
> > >>> That means clear the build time requirement which is completely
> > >>> different from runtime of an application.
> > >>>
> > >>>
> > >>> Older JDK's are supported by some vendors by having particular
> special
> > >>> support which most of the time requires special contracts (means also
> > >>> paying money for it)..some of them offering builds without paying
> money
> > >>> yes..
> > >>>
> > >>> Older runtime target are supported with different approaches like
> > >>> Toolchain or via `--release XX` which exists since JDK9+.
> > >>>
> > >>>
> > >>> Furthermore if someone is not capable of upgrading the build
> > environment
> > >>> to JDK9+ they can continue to use Maven 3.8.X or Maven 3.9.X...
> > >>>
> > >>> If it would be requirement to port things back to 3.8.X or 3.9.X it
> > >>> could be handled by someone who has the time etc. to do that ... if
> > not,
> > >>> those people might think of paying someone to do that work...
> > >>>
> > >>>
> > >>> The given argument about JPMS for migration causes issues is from my
> > >>> point of view false-positive because migration to newer JDK versions
> > >>> does not require JPMS usage...
> > >>>
> > >>> Even platforms like AWS support JDK17 in the meantime which is the
> > >>> runtime...
> > >>>
> > >>>
> > >>> Based on the maintenance part it would mean in consequence to
> downgrade
> > >>> to even JDK7... (or even lower) because you can get support for older
> > >>> JDK version in some ways... (JDK7 from azul for example)
> > >>>
> > >>> Kind regards
> > >>> Karl Heinz Marbaise
> > >>>
> > >>> [1]
> > https://www.oracle.com/java/technologies/java-se-support-roadmap.html
> >
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: dev-unsubscr...@maven.apache.org
> > For additional commands, e-mail: dev-h...@maven.apache.org
> >
> >
>
  

Reply via email to