JDK 8 M7: Not (quite) Feature Complete

mark.reinhold at oracle.com mark.reinhold at oracle.com
Tue May 28 16:06:58 PDT 2013

Milestone 7 of the JDK 8 development schedule [1] ended last Thursday,
23 May, with build 91.

A total of 22 feature JEPs were targeted to M7:

  101 Generalized Target-Type Inference
  104 Annotations on Java Types
  107 Bulk Data Operations for Collections
  109 Enhance Core Libraries with Lambda
  115 AEAD CipherSuites
  118 Access to Parameter Names at Runtime
  119 javax.lang.model Implementation Backed by Core Reflection
  120 Repeating Annotations
  123 Configurable Secure Random-Number Generation
  126 Lambda Expressions & Virtual Extension Methods
  140 Limited doPrivileged
  155 Concurrency Updates
  161 Compact Profiles
  162 Prepare for Modularization
  171 Fence Intrinsics
  174 Nashorn JavaScript Engine
  176 Mechanical Checking of Caller-Sensitive Methods
  178 Statically-Linked JNI Libraries
  179 Document JDK API Support and Stability
  180 Handle Frequent HashMap Collisions with Balanced Trees
  184 HTTP URL Permissions
  185 JAXP 1.5: Restrict Fetching of External Resources

(JEP 185 was a late addition; it addresses some security issues in
 the XML APIs.)

I'm happy to report that nearly all these features were delivered,
most importantly all those related to Project Lambda (JEPs 101, 107,
109, and 126).  Three features, however, didn't quite make it:

  140 Limited doPrivileged
  155 Concurrency Updates
  180 Handle Frequent HashMap Collisions with Balanced Trees

The work on JEP 140 is well underway, and the code changes for JEPs
155 and 180 are already out for review [2][3].  Our best estimate is
that work on these JEPs can be done by 6 June, for build 93.

JEPs 140 and 180 are important security improvements, while the last
changes in JEP 155 are needed to align the ConcurrentHashMap API with
the final form of the Project Lambda streams API (JEP 107).

I think it makes sense to allow these changes to come in a bit late,
but still well before the rampdown phase begins [4].  Once these last
changes are in then we'll declare JDK 8 officially Feature Complete.
This delayed declaration of the FC milestone will not have any effect
on later milestones.

- Mark

[1] http://openjdk.java.net/projects/jdk8/milestones#M7
[2] http://mail.openjdk.java.net/pipermail/core-libs-dev/2013-May/017367.html
[3] http://mail.openjdk.java.net/pipermail/core-libs-dev/2013-May/016937.html
[4] http://openjdk.java.net/projects/jdk8/milestones#Rampdown_start

More information about the jdk8-dev mailing list