groovy-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Jesper Steen Møller <jes...@selskabet.org>
Subject Re: [VOTE] Apache Groovy Roadmap
Date Tue, 07 Feb 2017 14:59:24 GMT
Well, I didn't see many actually object to the contents or order that you suggested, but primarily
the numbering. I'll give it another go.

The vote thread seemed to raise three issues:
1) Whether or not to provide the parrot parser as a standalone option ASAP (this is actually
quite a bit of work)
2) How to best design the semantics of lambda expressions in Groovy
3) How to deal with Groovy in JDK9 with or without breaking changes (i.e. still support Groovy
2.x in JDK9 WITHOUT Jigsaw, but only Groovy 3.x WITH Jigsaw, because of indy and new package
names, which both break old classfiles and perhaps source).

If we're very pedantic about semantic versions, we'll have to bump major numbers each time
we raise the minimum runtime requirement. But - what if we're less pedantic? We could restate
our semantic versioning interpretation to be that the 2.x line will be source code compatible
with previous 2.x Groovy sources, but with higher JVM runtime environment requirements.
I.e. you can still run your old Groovy-compiled classfiles with Groovy 2.x. So they're compatible,
you just need a newer runtime...
As for Parrot: It has been backported to 1.7, and while it would require testing, I can't
see the reason for marking it a breaking change.

I think we should raise these three discussion points as separate threads, and restart the
vote, but with two flavours:

YES-1:
 - Groovy 2.5: integrates macros and requires Java 7, to be released ASAP, we've been waiting
for this for too long 
 - Groovy 2.6: integrate Parrot, implying backporting Parrot to Java 7 
 - Groovy 3.0: integrate Jigsaw and drop old callsite caching + use indy. The only version
with necessary breaking  changes (we have no choice here) 
 
YES-2:
 - Groovy 3.0: integrates macros and requires Java 7, to be released ASAP, we've been waiting
for this for too long 
 - Groovy 3.1: integrate Parrot, implying backporting Parrot to Java 7 
 - Groovy 4.0: integrate Jigsaw and drop old callsite caching + use indy. The only version
with necessary breaking  changes (we have no choice here) 

So what will it be: 
 
 - [ ] YES-1, I approve the roadmap with the pragmatic stance to compatibility 
 - [ ] YES-2, I approve the roadmap above with the stricter stance towards compatibility
 - [ ] NO, I do not approve the roadmap abobe beause... 
 - [ ] I don't mind, or this goes beyond what I can think of

In the end, it's for the PMC to decide.

-Jesper


> On 7 Feb 2017, at 14.15, Cédric Champeau <cedric.champeau@gmail.com> wrote:
> 
> The result is that the vote turned into a debate again. I give up :)
> 
> 2017-02-07 4:18 GMT+01:00 Daniel Sun <realbluesun@hotmail.com <mailto:realbluesun@hotmail.com>>:
> Hi Cédric,
> 
>         72h has gone.  The result is ?
> 
> Cheers,
> Daniel.Sun
> 
> 
> 
> --
> View this message in context: http://groovy.329449.n5.nabble.com/VOTE-Apache-Groovy-Roadmap-tp5738250p5738451.html
<http://groovy.329449.n5.nabble.com/VOTE-Apache-Groovy-Roadmap-tp5738250p5738451.html>
> Sent from the Groovy Dev mailing list archive at Nabble.com.
> 


Mime
View raw message