Project Jigsaw: Module-System Development Dashboard
This page contains the list of outstanding work that is currently known to be required in order to fully prototype the Jigsaw module system. The tasks are organized by milestone so as to serve as a high-level plan.
See the modularization dashboard for tasks related to JDK modularization.
Move to new build, Feb/March 2013 (tentative)
JDK 8 is transitioning to the new build system. The transition date is not set in stone at this time but once the transition is done then the old build system will be on life support. It is critical to Jigsaw development to transition to the new build system as soon as possible after the JDK 8 mainline transitions.
Write up module/directory structure layout, including details as to how each tool (jpkg for example) handles the structure
|Alan/Jon||S||Plan to have this done by early/mid Nov 2012.||2012/10/19|
|Sync up jigsaw/jigsaw||Karen/Jon/Mandy/Alan||S||
jigsaw/jigsaw is still at jdk8-b48, need to get to jdk8-latest before the build work can continue.
Big merges required in langtools and hotspot repository due to significant changes in the upstream forst.
The sync up will require several updates to the module definitions too.
Status: done, jigsaw/jigsaw now up to jdk8-b63.
Build system for Jigsaw. Initially this may require the source code to be in shuffled form (build shuffle script). It may also require that the runtime support for modulepath to be in place.
|Eric + Jigsaw Team||L||Build team resources currently focused on completing new build system in JDK 8.||2012/11/1|
Main Design Points Prototyped, June 2013 (tentative)
The primary goal is to have brought the code to the point where the main design points have been prototyped and demonstrated, in preparation for submitting the module-system JSR.
|Publish design document||Mark||M||
First version of "Big Picture" published. Needs to be refreshed and follow-on draft needs to be published covering other aspects of the design/approach.
|javac changes to enforce exports||Jon||Implemented but not pushed due to concerns about test impact.
Will re-visit after JDK 8 M6 milestone
|Scopes||Alex, Jon, Mandy, maybe Paul||M||
Alex has written up the Language/VM changes here.
Scopes requires support in javac and also changes to the runtime, in particular the resolver.
|Visibility and Accessibility||Karen||L||Goals of visibility and access checking for modules:
|Runtime support for modulepath||Alan||M||
More complicated than the original working prototype because of the VM/Jigsaw interface and other changes.
Plan to also look into supporting augmenting existing modules to allow for patching (-Xbootclasspath/p replacement) and white-box testing. Need further investigate/prototyping first.
Goal to have in jigsaw/jigsaw by end 2012.
Containers are critical to supporting application servers, test harnesses, maybe annotation processors and also critical for Java agents.
Current goal is to scope this out by end 2012.
Source Code Restructuring, no target date
The goal for this milestone is to restructure the JDK source as modules.
|Task||Owner||Effort||Description and Status|
|Source code restructure||M||
Script to shuffle to/from module layout checked in.
Still to do:
|Jigsaw build work, phase 2||Erik||M||
This is placeholder for a second phase of (likely) build work.