Track JEP 335: terminal deprecation of Nashorn engine
Basics
Logistics
Basics
Logistics
Description
JEP 335, which will probably be targeted for Java 11, proposed terminally deprecating (i.e., deprecating for removal in a future release, perhaps as early as Java 12 or Java 13) the Nashorn JavaScript engine as part of the Java API. The javax.scripting API "will not be affected", except that it won't work any more because there will be no JavaScript engine.
This has long-term implications for our Java 11 platform, as any assumption that a JavaScript engine (far less Nashorn specifically) will likely be broken during its lifetime. We need to track the progress of this so that we have a narrative available for our deployers.
Done pending documentation and JSPT-95. Reopending and marking a blocker since we do need documentation
Rod Widdowson July 25, 2020 at 1:36 PM
I believe that this work is now complete
We have code to fall over to Shibboleth-provided engines
We have stand alone Rhino and Nashorn engines
I have added test dependencies onto these engined into our stack as needed
I have removed the test engines from the java-support tree.
I'll leave this open for a while
Rod Widdowson April 30, 2020 at 2:33 PM
Build 20 sees nashorn gone (allegedly) Let the fun begin
Rod Widdowson April 21, 2020 at 7:51 AM
Edited
Build 19 still have nashorn in it.
Some evidence in the change log that they are scrabbling around to make it all work eg this but there are also a couple of "convert javascript into java" changes.
JEP 335, which will probably be targeted for Java 11, proposed terminally deprecating (i.e., deprecating for removal in a future release, perhaps as early as Java 12 or Java 13) the Nashorn JavaScript engine as part of the Java API. The
javax.scripting
API "will not be affected", except that it won't work any more because there will be no JavaScript engine.This has long-term implications for our Java 11 platform, as any assumption that a JavaScript engine (far less Nashorn specifically) will likely be broken during its lifetime. We need to track the progress of this so that we have a narrative available for our deployers.