From 7c4d697add8f8d82323bd89f1b091b9128e76000 Mon Sep 17 00:00:00 2001
From: Alexander Kriegisch
+ Please note that Bugzilla for issue management is deprecated and new issues should be filed as
+ GitHub issues.
+ The list of issues addressed for 1.9.20 can be found here:
+ AspectJ 1.9.20
+
+
+
+
+ AspectJ 1.9.20 supports Java 20 and its final, preview and + incubator features, such as: +
++ Please note that the upstream Eclipse Java Compiler (ECJ) which the AspectJ Compiler (AJC) is a fork of still has some + open issues concerning Java 20 preview feature support, see the list in + this comment. AJC therefore + inherits the same problems for the specific cases described in the linked issues. +
+ ++ You can find some sample code in the AspectJ test suite under the respective AspectJ version in which the features + were first supported (possibly as JVM preview features): +
++ Since 1.9.7, the AspectJ compiler ajc (contained in the aspectjtools library) no longer works on + JDKs 8 to 10. The minimum compile-time requirement is now JDK 11 due to upstream changes in the Eclipse Java Compiler + (subset of JDT Core), which AspectJ is a fork of. You can still compile to legacy target versions as low as Java 1.3 + when compiling plain Java code or using plain Java ITD constructs which do not require the AspectJ runtime + aspectjrt, but the compiler itself needs JDK 11+. Just like in previous AspectJ versions, both the runtime + aspectjrt and the load-time weaver aspectjweaver still only require JRE 8+. +
+ ++ Please note that if you want to use load-time weaving on Java 16+, the weaving agent collides with + JEP 396 (Strongly Encapsulate JDK Internals by Default) and related + subsequent JEPs. Therefore, you need to set the JVM parameter --add-opens java.base/java.lang=ALL-UNNAMED in + order to enable aspect weaving. This is due to the fact that the weaver uses internal APIs for which we have not found + an adequate replacement yet when defining classes in different classloaders. +
+ ++ For features marked as preview on a given JDK, you need to compile with ajc --enable-preview and run with + java --enable-preview on that JDK. +
++ Please note that you cannot run code compiled with preview features on any other JDK than the one used for + compilation. For example, records compiled with preview on JDK 15 cannot be used on JDK 16 without recompilation. This + is a JVM limitation unrelated to AspectJ. Also, e.g. sealed classes are preview-1 on JDK 15 and preview-2 on JDK 16. + You still need to recompile, no matter what. +
+ ++ Available: 1.9.20 on 27###-Mar-2023 +
+ + + + diff --git a/docs/dist/doc/index.html b/docs/dist/doc/index.html index 84d4f79ad..af2d945e0 100644 --- a/docs/dist/doc/index.html +++ b/docs/dist/doc/index.html @@ -136,6 +136,7 @@