12.0 is primarily a consolidation of the minor releases 11.1, 11.2, and 11.3. There is as little innovation as possible in 12.0 and as much qualitative solidifying of existing features and functionality.
The program through which qualitative consolidation takes place for 12.0 is NetCAT 12.0.
Focus areas of qualitative consolidation
- Start up experience/Ergonomics/Enablement of features
- Java – prioritize new Java language features
- Jakarta EE (including Payara)
- JavaFX
- Maven
- Gradle (no test spec for this yet, since this is a new feature)
- PHP – focus on the newest PHP language features
In contrast to the above, some examples of areas to deprioritize (and if anyone disagrees, they are very welcome to focus on these areas themselves):
- Ant
- CVS/Subversion etc, i.e., anything not Git (and maybe Mercurial)
- Form Editor/GUI Builder/Matisse
Features
Java
- New JDK 14 Language Features
- Records
- New JDK 13 Language Features
- New JDK 12 Language Features
- JEP 325: Switch Expressions (Preview)
- New JDK 11 Language Features
- JEP 330: Launch Single-File Source-Code Programs
Java EE
- aaa
- bbb
- ccc
JavaFX
- aaa
- bbb
- ccc
Maven
- aaa
- bbb
- ccc
Gradle
- aaa
- bbb
- ccc
PHP
- aaa
- bbb
- ccc