Hi Eugene,
thanks for the report.
I would go to Java 8 language level, starting building tests.
Regards
JB
On 12/11/2017 06:00 PM, Eugene Kirpichov wrote:
Intermediate update: right now it's 219 votes on Twitter (and 0 on this thread:
seems that people find Twitter a more convenient medium!), with 96% who are
either on Java 8 or can easily switch, vs. 4% who can not easily switch.
Using a proportion confidence interval calculator, so far we're looking at
between 1.9 and 7.7% of users (at 95% confidence) needing Java 7 support :)
Willing users can help gather more votes by RT'ing the poll or chiming in on
this thread!
So: for now we don't yet have enough confidence that Java 7 support can be
dropped from the SDK (to remind, we'll conclude the vote on January 7th; since
people so overwhelmingly vote on Twitter, we may consider doing 3 more rounds of
the same poll?..), however:
- It may be enough confidence to resolve to *build* the Beam SDK using JDK8 (at
Java 7 source language level), which is something +Ismaël Mejía
<mailto:ieme...@gmail.com> and +Daniel Oliveira
<mailto:danolive...@google.com> once requested as part of building Java 9
support. I suspect that the sets "users who need to build their own Beam SDK"
and "users who can not upgrade to Java 8" have a vanishingly small intersection.
- Then, we may consider also start building *tests* at Java 8 language level,
which will give the bulk of the benefit of encouraging Java8-friendly APIs.
Thoughts on the above?
On Thu, Dec 7, 2017 at 6:22 PM Eugene Kirpichov <kirpic...@google.com
<mailto:kirpic...@google.com>> wrote:
A Twitter poll has been sent out too
https://twitter.com/ApacheBeam/status/938926195910905857
However, due to limitations of Twitter it can only be open for 7 days. I
encourage people who are late to the poll to comment on this thread instead.
On Thu, Dec 7, 2017 at 3:50 PM Eugene Kirpichov <kirpic...@google.com
<mailto:kirpic...@google.com>> wrote:
Followup: we would like to keep this poll open for 2 weeks, however some
people have expressed concern that this is too short.
Let us keep this poll open for 1 month starting today. So far the
agreed-upon decision has been to move forward with the plan if fewer
than 5% of all respondents choose option 3.
On Thu, Dec 7, 2017 at 3:48 PM Eugene Kirpichov <kirpic...@google.com
<mailto:kirpic...@google.com>> wrote:
This is a follow-up on a previous similar thread
https://lists.apache.org/thread.html/2e1890c62d9f022f09b20e9f12f130fe9f1042e391979087f725d2e0@%3Cuser.beam.apache.org%3E
in
which the community consistently expressed support for transitioning
Beam Java to Java8-only.
Now that the release of Beam 2.2.0 has completed, we are considering
performing this change specifically in the immediate next release:
Beam 2.3.0, i.e. dropping support for Java 7 without a bump in the
major version of Beam.
The reasons for switching to Java 8 in general are considered in the
thread above.
The reasons in favor of making the switch in Beam 2.3.0 are as
follows:
- It is believed that usage of Java 7 in production is already
vanishingly small.
- Since Java 7 has not been receiving even security updates for
years, helping perpetuate its usage would be a bad idea
- A major version bump is a major step and would likely happen only
after a large number of other major changes in Beam accumulate -
i.e. many months. Maintaining Java 7 compatibility for that long
would have costs, including the awkward possibility of switching
Beam to Java 8 after Java 8's end of life (September 2018 AFAIK)
- Updating to Java 8 would lead to Beam more quickly gaining more
Java8-friendly APIs, because Beam SDK authors and contributors would
have more liberty, more responsibility and more experience with
working in the context of Java8. Delaying until Beam 3.0 would delay
this as well.
With that in mind, we'd like to poll the Beam community to gather
information about usage of Java 7 and Java 8 in production. Please
vote:
Option 1. I am already using only Java 8+ for building my production
Beam code.
Option 2. I am using Java 7 for building my production Beam code,
but I would have no trouble with the switch to Java 8 [e.g. my
transition to Java 8 would be easy and/or I don't expect that I'll
have strong reasons to upgrade to Beam 2.3 anyway].
Option 3. I am using Java 7 for building my production Beam code,
and dropping Java 7 would be a blocker or hindrance to adopting the
new release for me [e.g. I expect that I'll have strong reasons to
update to Beam 2.3, but I expect that it will be difficult because
of lack of Java 7 support]
--
Jean-Baptiste Onofré
jbono...@apache.org
http://blog.nanthrax.net
Talend - http://www.talend.com