JSR 310 arrives at OpenJDK on time for Java 8 debut

After a lot of JCP wrangling, the Date Time API looks set for Java 8
JSR 310 has an interesting backstory. The Date and Time
API, co-led by Joda-Time
creator Stephen Colebourne, has been eagerly awaited since
2008 as the answer to the maligned Date and Calendar effort,
but was pushed back due to
JCP issues .
With Java 8 on the horizon, there’s
finally an OpenJDK project (ThreeTen)
aiming to integrate the API into JDK8
– hopefully suggesting that the mistakes of old
will soon be corrected.
The modernisation is already well underway. JSR 310 is
currently hosted on
SourceForge while the development of the
specification, RI and tests all take place at Github.
With the appearance of an OpenJDK project, all this will be
periodically merged as the big date comes ever closer.
Colebourne’s feelings towards what he called the “zombie Java
Corporate Partnership” had threatened to derail the project
at the
end of 2010, when he considered stepping
down. At the time, he admitted feeling conflicted and
that he thought Java needed a renovated Date and Time API outside
of the JCP terms. He wrote in the 2010 blog
post.
I’ve been highly critical of Oracle’s stewardship of Java, particularly on the topic of the JCP. Choosing to U-turn on their previous public statements and force through the Java SE 7 and 8 JSRs was bad for Java and bad for Oracle. By accepting Oracle’s actions, the remaining JCP executive committee members ended the notion of the JCP as an open standards body.
So, while my heart might tell me to walk away from the zombie JCP, my head tells me that I really don’t need to. This is just an open source project which the community badly needs. And the JCP is just a tool I can use to access Java SE 8. I dislike maven as a tool, yet I still use it – I can dislike the JCP and still use it in exactly the same way.
Colebourne is still very much opposed to the JCP,
writing earlier
this month that there’s “still no transparancy
[sic]”. With so many features falling by the
wayside, the addition of a new Date and Time API in
Java 8 just became ever more important, so the fact he’s put aside
his differences for the good of Java is commendable.
Considerable work, including a redesign of core API parts and
a separation into two modules, has already gone into
ThreeTen in an attempt to simplify the
API ahead of its Java 8 curtain call. Now the real grafting begins
to ensure it arrives on time.
Flickr Courtesy of Karen_O’D on Flickr