The ThreeTen project provides a modern date and time library for Java and is the reference implementation for JSR-310.
Status - January 2013
The project to enhance date and time in Java now has two principle areas of work.
The code base that originated on Sourceforge and then migrated to GitHub has now been integrated into OpenJDK. The OpenJDK location is becoming more and more integrated into the JDK8 codebase. Eventually, JSR-310 will simply be a constituent part of the greater JDK8 JSR.
The second stream of work is ensuring that the code at GitHub migrates into a backport suitable for use on JDK7. This backport is intended to match the contents of JDK8 as far as possible.
The Javadoc of the JDK 1.8 b75 beta is available.
The ThreeTen project is still considered to be in Alpha. Methods may appear and disappear at any point.
Also available are very old binary jar files. Both the 0.6.3 code and time-zone data jar files must be added to the classpath and associated javadoc (2011-01-07). These should not be used for new work at this point.
The ThreeTen project is the reference implementation of JSR-310 and the main place where JSR-310 is refined. The JSR itself is run as part of this project, and is therefore completely open and transparant with as much activity as possible conducted here in public. Everyone is entitled to get involved, either directly in the discussion on the mailing list, by reviewing code and javadoc, via blogs or on the wiki.
Two JCP Early Draft Reviews have been held, in 2010 and 2012. These were a formal part of running a JSR. Feedback is welcome at any time however! Just review the latest Javadoc, download the latest code from git and write to the develop mailing list.
JSR-310 was presented at JavaOne in May 2008. The session id was TS-6578 and covered all the main aspects of the JSR. It sold out the allocated room twice - click on the link to see the slides and hear the audio! There were also sessions at JavaOne in 2010 and 2012.
The main activity of this project will be on the public develop mailing list. If you are interested in observing or contributing to the discussion of this project, please feel free to join - anyone can sign up!
If you want to contribute suggestions, ideas or use cases on a one-off basis, please email the mailing list of write on the forums.
- API requests and feedback - A page where API requests and feedback were added
- Use cases - Read the more formal use case list
- Historic documents - Some older documents and discussions
This project works on trust and respect for the public good. However, some entities prefer a little clarification.
Contributions to project discussion (including, but not limited to, mailing lists and wiki edits) is publicly available information which may be used by anyone in any way forever.
Version controlled contributions to the project (including, but not limited to, code) are covered by the BSD 3-clause license. This project considers all such contributions to be able to be integrated using the BSD license where the copyright statement is by the project owners. The contribution is made for the public good, therefore the contributor waives all other moral and legal tools that might be used to influence the contribution once made (see the agreement in the next paragraph for an indication of the items waived).
Version controlled contributions that are destined for JSR-310 (including, but not limited to, code) are also covered by the BSD license interpretted as above. In addition, to clarify the suituation further, you must agree to this agreement which is based on the Sun Contributor Agreement.
Exemptions to these terms may be granted in special cases by the project owners (for example, the TZDB data, Oracle submitted calendar systems or the OpenJDK derived code).