Draft: CSR Overview

joe darcy joe.darcy at oracle.com
Tue Apr 18 23:36:02 UTC 2017


Hello,

Please review the CSR overview paragraphs below. These are intended to 
be listed on the landing page of the CSR wiki space.

Thanks to Brian for comments on previous drafts and for suggested edits.

Cheers,

-Joe

CSR Overview

The Java platform enjoys both breadth of use and longevity; over two 
decades after its introduction, it remains one of the most popular 
programming platforms. A core tenet of the Java platform has been the 
importance of high-quality specifications, specifications favoring 
precision, explicitness, and completeness. The Java language, virtual 
machine, and API specifications are foundational documents for the Java 
ecosystem. The precision of these specifications, combined with a strong 
commitment to cross-release compatibly, allows applications and 
libraries to generally "just work" across releases.

A key component to ensuring and maintaining the quality of the 
specification was the "CCC" process, originated at Sun, which was 
dedicated to looking after compatibility and specification concerns, 
aiming to balance stability with progress and help keep Java vibrant. 
The role played by the CCC process has now been transferred to the 
Compatibility & Specification Review (CSR) OpenJDK group, providing 
transparency and ensuring wider community input.

The primary role of the CSR group is to review all changes to the JDK's 
exported interfaces, interfaces meaning the general protocol between the 
JDK and users of the JDK. This review typically focuses on specification 
changes. However, implementation-only changes may also merit review if 
they have sufficiently large behavioral compatibility impact. 
Secondarily, the CSR is also a resource to provide feedback to engineers 
working on Java platform APIs. The CSR process fulfills an archival 
function as well, keeping stand-alone record of API and interface changes.




More information about the csr-discuss mailing list