Notice: This Wiki is now read only and edits are no longer possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.
CDT/User/NewIn100
Contents
Release
This is the New & Noteworthy page for CDT 10.0 which is part of Eclipse 2020-09 Simultaneous Release
Java 11 or later required to run CDT |
Starting with CDT 10.0 Java 11 or later is required to run CDT. This align with requirements of Eclipse IDE which also requires Java 11 to run starting in 2020-09. See Bug 562494. |
---|
CDT's native components built on CI/docker |
For many years CDT required advanced knowledge to rebuild the native components of CDT (e.g. process spawning, pty and serial port handling). This is now buildable from any platform that docker can run and integrated into the builds. The .dll/.so files are still checked into CDT's git repo so that each developer does not have to build it locally. The "check code cleanliness" scripts verify that the dll/so files checked in match the source. See Bug 521515. |
---|
Builds for Linux AArch64 (aka Arm64) added |
Binaries for Linux AArch64 (Arm64) are available for testing. With the raising popularity of this architecture people can continue using the Eclipse IDE even when changing their machine. See Bug 565836. |
---|
Arduino specific plug-ins removed |
The source code for Arduino (org.eclipse.cdt.arduino.*) is no longer part of CDT and is not receiving any updates. Please consider using The Arduino Eclipse IDE and plug-ins named Sloeber for your future Eclipse CDT powered Arduino development. See Bug 562498. |
---|
XLC, LRParser and UPC removed |
XLC, LRParser and UPC removed components of CDT have been removed. See Bug 559474. |
---|
Two changes in how CDT treats environment variables |
On windows Imported environment variables in CDT are no longer uppercased (except for the path variable). All environment variables inside CDT are now treated case sensitive on all supported os'es. Secondly using \${ "to not resolve" functionality has been removed For implementation details see Handle environment variables more consistent and avoid uppercasing in windows. See Bug 564123. managed build's "expand env. variable refs in Makefiles" eats \ in ${envVar1}\${enVar2}. See Bug 560330. |
---|
Editor
Refactoring
Code Analysis
Nodiscard checker |
Added new 'no discard' checker. See Bug 534420 . |
---|
Parser
Deduction guides |
Parser support has been added for C++17 constructor template deduction guide. See Bug 541239. |
---|
Formatter
Deduction guides |
Formatter support has been added for C++17 constructor template deduction guide. See Bug 541239. |
---|
Build
Tool-chain integration |
Options of value type "libs" and "userObjs" now respect the ApplicabilityCalculator and the CommandGenerator settings. If these settings are set on your custom tool-chain integration, please make sure that the integration still works as intended after an upgrade. |
---|
Debug
Launch Group removed |
The Launch Group, previously marked as deprecated, has been removed from CDT. The Launch Group was moved to the Eclipse Platform and substantially enhanced many years ago. See Bug 517813. |
---|
Launch Bar
Terminal
Terminal Serial Connection support arbitrary baud rates |
Connections using the serial terminal now support arbitrary baud rates, choose from a drop-down of common and widely supported speeds, or type a custom value if connected hardware supports it. See Bug 543122. |
---|
API modifications
API Deletions and Deprecations |
Please see the CDT Policy on Deprecating and Deleting API for more details of API that has been changed, removed, deprecated or scheduled for removal. In addition, the current version of the Deprecation and Removals can be previewed here |
---|
SerialPort supports arbitrary baud rates |
The SerialPort class now supports arbitrary baud rates with the new setBaudRateValue/getBaudRateValue which take/return an int. See Bug 543122. |
---|
Class creation wizard |
The NewClassCreationWizardPage class now supports final option. See Bug 561770. |
---|
Windows environment variables are no longer uppercased |
This change is not literally an api change but will impact your code if you automatically import environment variables on windows or when you use OS environment variables. This because, even though the methods remain the same, the implementation on windows has changed. Except for the PATH environment that is still uppercased on windows there is no more os specific handling of os environment variables. |
---|
environment variables no longer support \${ to avoid expanding |
This change is not literally an api change but will impact your code if you used \${ to not expand environment variables. It may impact your code if you import environment variables and had to workaround path\${childPath} resolving to path${childPath}. |
---|
Bugs Fixed in this Release
See Bugzilla report Bugs Fixed in CDT 10.0