Return-Path: X-Original-To: apmail-commons-dev-archive@www.apache.org Delivered-To: apmail-commons-dev-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id 6299417807 for ; Thu, 15 Jan 2015 20:37:18 +0000 (UTC) Received: (qmail 14872 invoked by uid 500); 15 Jan 2015 20:37:19 -0000 Delivered-To: apmail-commons-dev-archive@commons.apache.org Received: (qmail 14736 invoked by uid 500); 15 Jan 2015 20:37:19 -0000 Mailing-List: contact dev-help@commons.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: "Commons Developers List" Delivered-To: mailing list dev@commons.apache.org Received: (qmail 14724 invoked by uid 99); 15 Jan 2015 20:37:19 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 15 Jan 2015 20:37:19 +0000 X-ASF-Spam-Status: No, hits=-0.7 required=5.0 tests=RCVD_IN_DNSWL_LOW,SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (athena.apache.org: domain of johnsonb@umbc.edu designates 130.85.25.79 as permitted sender) Received: from [130.85.25.79] (HELO mx4.umbc.edu) (130.85.25.79) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 15 Jan 2015 20:37:15 +0000 Received: from smtp.umbc.edu (localhost [127.0.0.1]) by umbc.edu (mx4.umbc.edu) with ESMTP id t0FJYlbU012226 for ; Thu, 15 Jan 2015 14:34:47 -0500 (EST) Received: from [10.16.7.190] ([146.111.200.254]) (authenticated bits=0) by smtp.umbc.edu (mx4-relay.umbc.edu) with ESMTP id t0FJYkNj012217 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO) for ; Thu, 15 Jan 2015 14:34:47 -0500 (EST) Content-Type: text/plain; charset=utf-8 Mime-Version: 1.0 (Mac OS X Mail 8.1 \(1993\)) Subject: Re: [Math] Java version From: Bruce A Johnson In-Reply-To: <54B811A9.7010107@gmail.com> Date: Thu, 15 Jan 2015 14:34:46 -0500 Content-Transfer-Encoding: quoted-printable Message-Id: <5431EE4C-0B8C-45E6-9A47-42627C76E5DD@umbc.edu> References: <74a7078bd05c3a3cba82722636420ec3@scarlet.be> <1061823518.836672.1421343144695.JavaMail.yahoo@jws10941.mail.sg3.yahoo.com> <54B811A9.7010107@gmail.com> To: Commons Developers List X-Mailer: Apple Mail (2.1993) X-Milter-Key: 1421480087:ee9d470a3056c4568140203551bf7830 X-ClamAV: OK X-Virus-Checked: Checked by ClamAV on apache.org I=E2=80=99m very happily starting to use Java 8 and am making lots of = use of JavaFX (not so relevant to Math), and lambdas and streams = (playing around with a little numpy like interface to Math). So, on the one hand I=E2=80=99m all for Java 8, but on the other hand = there are things I=E2=80=99d rather see done for the Math 4 release and = trying to update Math to use Java 8 features could slow the resolution = of existing issues. So I=E2=80=99d lean towards a release of Math 4 in = the not to distant future that doesn=E2=80=99t rely on Java 8 features, = and then a move towards Math 5 with careful thought as to how it could = benefit from Java 8.=20 Bruce > On Jan 15, 2015, at 2:14 PM, Ole Ersoy wrote: >=20 > How many of the mobile developers have to have a 4.0 release? I = suspect that 90% would be fine using 3.4, and the remaining 10% can wire = the results of the calculation using alternative means such as a REST or = Socket service. >=20 > Cheers, > - Ole >=20 >=20 >=20 > On 01/15/2015 11:32 AM, venkatesha m wrote: >>=20 >>=20 >>=20 >>=20 >> On Thursday, 15 January 2015 10:45 PM, Gilles = wrote: >> On Thu, 15 Jan 2015 12:05:27 -0500, Hank Grabowski wrote: >>> You would think so, but Java 6 hasn't been updated since early 2013 >>> and is >>> still a quarter or more of the installed Java base. The support for >>> highly >>> scalable parallel operations that the new Java 8 language features >>> get is >>> very tempting though. Could we have a Java 8 branch on the core >>> library >>> and release a CM for each of them until the vestigial versions are >>> sufficiently low enough on the usage chain? I know there are some >>> versioning and release nightmares that could introduce but with the >>> parallel functions maybe it would be worth it unlike the changes = that >>> 6 to >>> 7 would give for the project. >> Although the consensus would say "Java 7", but then we'd lose the = newer >> and even better (hopefully) facilities, and still be "old" when >> everybody >> will have change their phone already. ;-) >>=20 >> Would you be willing to volunteer with a concrete plan? >>=20 >> Best, >> Gilles >>=20 >>=20 >>> On Thu, Jan 15, 2015 at 11:15 AM, Gilles >>> >>> wrote: >>>=20 >>>> On Thu, 15 Jan 2015 07:52:11 -0500, Hank Grabowski wrote: >>>>=20 >>>>> Good call, Silviu! >>>>>=20 >>>>> The most recent version of their survey of Plumbr installations >>>>> (823 in >>>>> total) was May of last year, only a few months after Java 8 came >>>>> out (link >>>>> below). At that time the break down was: Java 5 at 0.4%, Java 6 = at >>>>> 36%, >>>>> Java 7 at 61% and Java 8 at 2.5%. I'm still looking for more data >>>>> on >>>>> this, >>>>> but Rebel Labs has a similar article (not broken down by version) >>>>> that >>>>> showed that 65% of development was on Java 7 by May of last year >>>>> too. I >>>>> doubt the balance was Java 8 at that point, so there must be a >>>>> sizable >>>>> Java >>>>> 6 contingent still. >>>>>=20 >>>>> One other thing that came to mind with the new Java 8 features is >>>>> how that >>>>> is supported on Android. As far as I can tell Android KitKat, as >>>>> well as >>>>> the latest release of the Android Studio and SDK Tools doesn't >>>>> support >>>>> Java >>>>> 8 yet. In fact, according to the Android development setup page >>>>> versions >>>>> between (and including) Gingerbread and KitKat require JDK 6, not >>>>> 7. I >>>>> haven't coded Android recently to know whether it does work on JDK >>>>> 7 or if >>>>> is just a requirement but it is peculiar that the main = instructions >>>>> call >>>>> for JDK 7 installation and then the footnote specifically tells >>>>> developers >>>>> to pull a different JDK version for those earlier platforms. I >>>>> can't tell >>>>> where the Java 7 language features were added to Android before = the >>>>> current >>>>> version, Lollipop. I was surprised Lollipop wasn't on their >>>>> dashboard but >>>>> according to the AppBrain statistics it accounts for far less than >>>>> 1% of >>>>> the installed phones. So best case scenario would be Jelly Bean >>>>> supports >>>>> 7 >>>>> (no indication that's true), which means 85% of Android devices >>>>> would be >>>>> covered if we set a Java 7 minimum. Next best would be KitKat >>>>> (more >>>>> likely >>>>> but not according to the install instructions) which means 39%. = As >>>>> for >>>>> Java 5, that was needed for pre-Gingerbread Android OS which >>>>> accounts for >>>>> 0.5% of the market. >>>>>=20 >>>>> I guess with all of that it's clear that Java 5 is unnecessarily >>>>> being >>>>> maintained at this point. Both surveys of servers and Android = show >>>>> far >>>>> less than 1% usage. It seems Java 6 penetration may be still be >>>>> pretty >>>>> substantial, even conservatively at on the order of 25% (if Java 7 >>>>> and 8 >>>>> adoption picked up dramatically in 6 months after the surveys as I >>>>> imagine >>>>> it did to some extent). So it seems the most reasonable >>>>> conservative play >>>>> would be to stick with Java 6, especially if we can confirm that >>>>> between >>>>> half to 85% of Android devices can't use Java 7 language features. >>>>> A more >>>>> aggressive play would be to set a requirement for Java 7. Setting >>>>> the >>>>> minimum at Java 8 at this time seems overly aggressive at this = time >>>>> though. >>>>>=20 >>>>> https://plumbr.eu/blog/most-popular-java-environments-in-2014 >>>>>=20 >>>>> http://pages.zeroturnaround.com/Java-Tools-Technologies.html >>>>>=20 >>>>> http://source.android.com/source/initializing.html >>>>>=20 >>>>> https://developer.android.com/about/dashboards/index.html >>>>>=20 >>>>> http://www.appbrain.com/stats/top-android-sdk-versions >>>>>=20 >>>> I wonder: Isn't the "end of public updates"[1] (scheduled on April >>>> of >>>> this year for Java 7) somehow going to change that picture a lot? >>>> If not, why? >>>>=20 >>>>=20 >>>> Regards, >>>> Gilles >>>>=20 >>>> [1] http://www.oracle.com/technetwork/java/eol-135779.html >>>>=20 >>>>=20 >>>>=20 >>>>=20 >>>>> On Wed, Jan 14, 2015 at 11:20 PM, Silviu Burcea < >>>>> silviuburceadev@gmail.com> >>>>> wrote: >>>>>=20 >>>>> I think Rebel Labs or Plumbr have some metrics about JDK usage. >>>>>> On Wed, Jan 14, 2015 at 10:21 PM, Hank Grabowski < >>>>>> hank@applieddefense.com> >>>>>> wrote: >>>>>>=20 >>>>>>> Java 8 has only been out for less than a year. There is still a >>>>>> sizable >>>>>>> percentage of groups that have not converted up to Java 8 for >>>>>> myriad >>>>>>> reasons. While I was surprised that we are requiring backwards >>>>>>> compatibility with the ten year old Java 5 I think jumping all >>>>>> the way >>>>>> to >>>>>>> requiring Java 8 may be a bit too much of a stretch. I would >>>>>> vote for >>>>>> a >>>>>>> minimum required version of Java 7 with the ability to run in >>>>>> Java 8. >>>>>> I >>>>>>> wish I could find metrics to quantify the penetration of each of >>>>>> the >>>>>> JDKs, >>>>>>> but my gut says Java 7 would a reasonable cutoff. >>>>>>>=20 >>>>>>> On Tue, Jan 13, 2015 at 8:31 PM, Gilles >>>>>> >>>>>>> wrote: >>>>>>>=20 >>>>>>>> Raising this issue once again. >>>>>>>>>> Are we going to upgrade the requirement for the next major >>>>>> release? >>>>>>>>>> [ ] Java 5 >>>>>>>>>> [ ] Java 6 >>>>>>>>>> [ ] Java 7 >>>>>>>>>> [ ] Java 8 >>>>>>>>>> [ ] Java 9 >>>>>>>>>>=20 >>>>>>>> Counts up to now: >>>>>>>>=20 >>>>>>>> Java 7 -> 2 >>>>>>>> Java 7 or 8 -> 2 >>>>>>>> Java 8 -> 2 >>>>>>>>=20 >>>>>>>> Any more opionions? >>>>>>>>=20 >>>>>>>> Gilles >> My Vote for both Java 7 and 8 >>=20 >> --------------------------------------------------------------------- >> To unsubscribe, e-mail: dev-unsubscribe@commons.apache.org >> For additional commands, e-mail: dev-help@commons.apache.org >>=20 >> --------------------------------------------------------------------- >> To unsubscribe, e-mail: dev-unsubscribe@commons.apache.org >> For additional commands, e-mail: dev-help@commons.apache.org >>=20 >>=20 >=20 >=20 > --------------------------------------------------------------------- > To unsubscribe, e-mail: dev-unsubscribe@commons.apache.org > For additional commands, e-mail: dev-help@commons.apache.org >=20 --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscribe@commons.apache.org For additional commands, e-mail: dev-help@commons.apache.org