I've proposed five patches to the jpms-spec-experts list [1..5] for discussion. The patches are as follows:

1. Layer primitive: addExports() - mirrors the existing Module.addExports() method for ModuleLayer.Controllers 2. Layer primitive: addUses() - mirrors the existing Module.addUses() method for ModuleLayer.Controllers 3. Layer primitive: addPackage() - allows ModuleLayer.Controllers to add packages to a module after it has been defined
4. Make run-time cycle checking optional
5. Add optional class loader isolation for modules on the module path

Apart from #3, each of these patches is small and very low-risk, and address a clear problem. In the case of #3, I believe that the risk is very low, but am also willing to discuss modifying the patch to move the method to a "jdk.unsupported" class or in other ways.

I also am maintaining a mirror of the jigsaw/jake tree as a Git repository [6] which contains these patches where they can be viewed and fiddled with on a more interactive basis.

It is my belief that these small, low-cost patches will go a very long way towards mitigating many of the problems identified and shared by Red Hat, by other EG members, by other EC members, and by the community.

Please have a look and let me know if you have any feedback on any of these changes.

[1] http://mail.openjdk.java.net/pipermail/jpms-spec-experts/2017-May/000705.html [2] http://mail.openjdk.java.net/pipermail/jpms-spec-experts/2017-May/000707.html [3] http://mail.openjdk.java.net/pipermail/jpms-spec-experts/2017-May/000708.html [4] http://mail.openjdk.java.net/pipermail/jpms-spec-experts/2017-May/000711.html [5] http://mail.openjdk.java.net/pipermail/jpms-spec-experts/2017-May/000710.html
[6] https://github.com/dmlloyd/openjdk-modules

--
- DML

Reply via email to