On Fri, 22 Nov 2024 13:42:32 GMT, Jan Lahoda <jlah...@openjdk.org> wrote:
> There is a new preview language feature, `requires transitive java.base;`. > And the `java.se` module is permitted to use the feature, without being > marked as preview (i.e. the `java.se` module participates in preview). This > is currently implemented by the common "participates in preview" way, by > checking that `java.base` is exporting `jdk.internal.javac` package to > `java.se`. > > This common way works OK for internal preview feature and API usage, but > turns out it may not be appropriate for this feature: the qualified export of > the `jdk.internal.javac` package is not a specified API, it is an > implementation detail; and the JLS itself specifies that the `java.se` module > is participating in preview. > > So this PR proposes to change the way javac handles the `java.se` module: it > permits the use of the preview feature based on the module name, instead > relying on the internal qualified export. This pull request has now been integrated. Changeset: d50b725a Author: Jan Lahoda <jlah...@openjdk.org> URL: https://git.openjdk.org/jdk/commit/d50b725ac0f228f5b04dd68c123c7f6b263c0d02 Stats: 61 lines in 8 files changed: 51 ins; 4 del; 6 mod 8344647: Make java.se participate in the preview language feature `requires transitive java.base` Reviewed-by: asotona, darcy ------------- PR: https://git.openjdk.org/jdk/pull/22322