Past releases: 2024-09 2024-06 2024-03 2023-12 2023-09 2023-06 2023-03 2022-12 2022-09 2022-06 2022-03 2021-12 2021-09 2021-06 2021-03 2020-12 2020-09 2020-06 2020-03 2019-12 2019-09 2019-06
- December 4, 2024 (calendar) - projects - wiki - website (New & Noteworthy) - splash screen
- Builds: latest unreleased → released (Jenkins, *.aggrcon, update sites: staging, release)
- Social media: X/Twitter, Mastodon, YouTube (Eclipse IDE playlist)
- Java, Maven, Gradle
- Java development tools (JDT) 4.33→4.34: Eclipse 4.34 - New and Noteworthy - Java Development Tools (log), Git core UI
- (EclEmma (Java code coverage) 3.1.9: changes (JaCoCo), commits, bugs)
- (M2Eclipse (Maven) 2.6.2→2.7.0: release notes, commits, issues)
- (LemMinx-Maven 0.11.1 (included via m2e): release notes, commits, issues)
- Buildship (Gradle) 3.1.9→3.1.10: review, commits, announcements
- General
- (JGit/EGit 7.0→7.1: wiki JGit/EGit, review JGit/EGit, commits JGit/EGit)
- Web, XML
- Wild Web Developer 1.3.7→1.3.9: GitHub, release notes, commits
- JavaScript/TypeScript language server (
"typescript": "..."
;plugins/org.eclipse.wildwebdeveloper_<version>/node_modules/typescript/package.json
): 5.5.4→5.7.2 releases, announcement 5.6, 5.7 - (LemMinX 0.27.0→0.28.0 (
org.eclipse.lemminx ... <version>...</version>
): GitHub, changelog) - TM4E (TextMate) 0.13.0→0.14.0: GitHub, review, releases, commits
- (LSP4E (LSP Eclipse IDE integration) 0.26.2→0.26.4: GitHub, releases, commits, review)
- (LSP4J (LSP Java binding) 0.23.1: GitHub, releases, commits, review)
- JavaScript/TypeScript language server (
- (Web Tools Platform 3.35→3.36: commits JSF/JEE/Dali/Server Tools/Source Editing)
- Wild Web Developer 1.3.7→1.3.9: GitHub, release notes, commits
- (C/C++, PHP)
- IDE packages for additional platforms 📽️:
- Windows on ARM (supported by the Eclipse platform since the last release and now also by OpenJDK/Eclipse Temurin)
- Linux on RISC-V (supported by the Eclipse platform since this release; longer supported by OpenJDK/Eclipse Temurin)
- Java📽️
- Java 23 support (but IDE packages shipped with Java 21, the latest LTS version)
- JEP 467: Markdown Documentation Comments, including rendering in hover and Javadoc view
- Preview features:
- JEP 476: Module Import Declarations (Preview), e.g.
import module java.desktop;
(with that, type import statements are only needed for ambiguous simple names, likejava.util.List
vs.java.awt.List
) - JEP 482: Flexible Constructor Bodies (Second Preview): In constructors,
super(...)
no longer needs to be the first statement - JEP 477: Implicitly Declared Classes and Instance Main Methods (Third Preview):
void main() { println("Hello, World!"); }
is a minimal and complete "Hello, World!" application
- JEP 476: Module Import Declarations (Preview), e.g.
- Java editor
- New warning: Unnecessary code > Value of lambda parameter is not used (22 or higher) with corresponding quick fix to configure its problem severity
- New quick fix: Rename to unnamed variable: when using Java 22 or above (see also corresponding clean-up bellow)
- Clean-ups
- Enhanced: Unnecessary Code > Unused code > Remove unused local variables: to rename to unnamed variable (
_
) where possible and when using Java 22 or above (unused lambda parameters, try-with-resources resources, pattern variables in switch and variables in enhanced as well as in regular for statements) - New: Code Style > Control statements > Simplify boolean if/else to single return if possible:
if (...) { return true; } else { return false; }
→return ...;
- (Enhanced: Code Style > Control statements > Convert if/else if/else chain with 3 blocks min to switch to properly handle cases where the value can be
null
: Java 20 and lower (if (... != null) { switch (...) { ... } } else { ... }
) vs. Java 21 and higher (case null: ...
thanks to JEP 441))
- Enhanced: Unnecessary Code > Unused code > Remove unused local variables: to rename to unnamed variable (
- Call Hierarchy view: new filter button with new option to show test code only (Filter Test Code became Hide Test Code or Test Code only)
- Performance
- (Faster Project > Clean... via BatchImageBuilder: write .class files in batches)
- (Avoid reading SourceFile twice)
- (In the preferences Java > Installed JREs > Execution Environments, faster switching of the JRE (via Share JRT entries across projects and Faster
ExecutionEnvironmentsPreferencePage.performOk()
))
- (Maven)
- Gradle 📽️
- Problems API integration: disabled by default; can be enabled in the preferences Gradel > Experimental features: Enable Problems API support, e.g. to get problem messages from
javac
, but not e.g. from this Modernizer Gradle plugin (experimental; see also commit) - (Syntax highlighting in the compare editor for
build.gradle
files)
- Problems API integration: disabled by default; can be enabled in the preferences Gradel > Experimental features: Enable Problems API support, e.g. to get problem messages from
- Java 23 support (but IDE packages shipped with Java 21, the latest LTS version)
- General/Platform 📽️
- Text editors
- UI
- On Windows, Monitor-specific scaling (experimental): disabled by default; can be enabled in Window > Preferences: General > Appearance
- Multi-page editors: Tabs at top or bottom: in preferences General > Editors for Align multi-page editor tabs choose Top or Bottom
- (Code Mining text color configurable)
- (Make Grey Highlight of Inactive Tabs Darker)
- (On Windows, improvements to Edge browser)
- Performance
- (Git)
- Web 📽️
- TypeScript 5.7 support
- JavaScript/TypeScript tooling (in JavaScript enable validation via
// @ts-check
):- Correct
override
checks on computed properties (override
in JavaScript via JSDoc:/** @override */
) - Checks for never-initialized variables (TypeScript only)
- Correct
- (Under development)
- (Initiative 31: Prototyping work for candidate technology evaluation on Eclipse SWT)
- (JDT to support javac instead of ejc driven by jdtls: incubator)
- (Gradle: Kotlin DSL support:
build.gradle.kts
(does not work on Windows yet)) - (Debug: show values inline (not yet supported in Java, JavaScript, etc.))
- (Run/Debug As > ... right-click menu directly shows available launch configurations_: supported by JDT?)
- → As YouTube video (title prefix until release:
+++Coming on December 4, 2024+++
)