Eclipse 3.4 M7 - New and Noteworthy

To everything there is a season, and this is the season for wrapping up a new Eclipse and getting it out the door. M7 is the last milestone of the 3.4 release cycle. With all feature work complete, we now begin the endgame. Here are some of the more noteworthy things you'll find in milestone build M7 (May 2, 2008) which is now available for download. See the build notes for details about bugs fixed and other changes.


PDE


Improved self-hosting

PDE now supports the ability to compile runtime workspace plug-ins against the launching workspace.

Improved Self-Hosting

Internal extension points PDE now lets you mark an extension point as internal. This allows extension point clients to be notified when they are using an internal extension point.

Internal Extension Points


P2 target provisioner PDE includes a new p2 target provisioner that lets you add plug-ins to your target platform from a p2 repository or update site.

P2 Target Provisioner


OSGi services The Plug-in Registry view was enhanced to include information about OSGi services.

OSGi Services


Product editor enhancements The product editor was enhanced to allow for per-platform configuration files (config.ini) and the ability to version product definitions.

Product Editor Enhancements


New API errors and warnings API analysis now reports invalid use of API Javadoc tags; e.g., using a @noimplement tag on a class. By default, the Javadoc tag validation is not performed. To enable this feature set the problem severity of Unsupported use of API Javadoc tags to warning or error on the API Errors/Warnings preference page. You can use a quick fix to remove the unsupported tag.

Unsupported API Javadoc Tag

Problem severity settings have been added for each kind of leak detected by API analysis. Use the API Errors/Warnings preference page to configure individual severities.

API Leak Severity Settings


JDT


Java compiler on multi-CPU machines You should see faster Java compile times when using machines with multiple CPUs. The Eclipse Compiler for Java (aka "ecj") is now taking advantage of the multi-threading capability of multi-CPU machines. The full build of a Java project also takes advantage of this support.

One pass comment formatting Comments can now be formatted at the same time as the Java code in one pass. To do so, one should combine the CodeFormatter#F_INCLUDE_COMMENTS flag with the kind of formatting requested, e.g.
CodeFormatter formatter = ...
formatter.format(CodeFormatter.K_COMPILATION_UNIT | CodeFormatter.F_INCLUDE_COMMENTS, ...);
Speed improvements of 20% to 30% have been noted.

Flexible ZIP archive extensions It is now possible to add ZIP archives on the build path with file extensions other than .zip or .jar. For example, it is now possible to add a .rar file on the build path.

.rar file selection


Inserting parameter name also shows guessed arguments When content assist is set to automatically insert the parameter name it now also shows the guessed arguments:

Content assist with proposed guessed arguments

This can be configured on the Java > Editor > Content Assist preference page.


Undo format Formatting a set of Java elements, e.g. via Package Explorer, can now be undone using Edit > Undo Format (Ctrl+Z).

Enhanced debug hover

When debugging, hovers for variables have been enhanced to display an object inspector. The inspector will display logical structures according to the toggle setting in the visible Variables or Expressions view.

Debug Hover


Equinox


Checking software trust When you install or upgrade using Help > Software Updates, the install process will now examine the signatures of the code being installed, and verify that you trust the provider of the software. This verification only occurs once in the install process, after all the new software has been downloaded. The dialog allows you to view the certificate trust chain, and examine the details of each certificate.

Viewing certificates of installed software


Viewing available software You can now view the software that's available for install or update in multiple ways. The Available Software tab in the Help > Software Updates dialog now provides a view menu button that lets you view the software by site, category, or name.

Available Software view menu in the Software Updates and Add-ons Dialog

You may also use the filter box in the dialog to filter the available software by name.

Filtering the Available Software page

New checkboxes at the bottom allow you to further control what is shown in the view.

Checkbox controls in the Available Software page


Platform


No scrollbars The style bit NO_SCROLL was added on all platforms to prevent scrollbars in SWT tables and trees. This is useful if you know that a certain table or tree is a fixed size and will never contain enough elements to warrant scrollbars. For more info, check out this SWT snippet.

No Scroll


Resize Table and Tree columns using the keyboard The column widths of certain Tables and Trees can now be changed in a keyboard-accessible way. This shows up in the list of plug-ins or features available from the About dialog, and as a new view menu item in all views displaying markers (Problems, Tasks, Bookmarks, and Markers).

Dialog for configuring column widths


Print button in Help view The Help view now has a print button.

print button in Help view


Focus quick diff and annotation hovers via mouse Quick Diff and CVS annotation hovers can now be focused by moving the mouse into the hover. This depends on the General > Editors > Text Editors > When mouse moved into hover preference.

Sticky annotation hover


Select text via Shift+Click into line number ruler Text in the editor can now also be selected by shift-clicking in the line number ruler.



Line counter in Apply Patch wizard The Apply Patch wizard counts lines added and removed in the patch.

Line Counter Wizard

The default mechanism simply sums all lines starting with '+' and '-'. To define custom patterns which can be used to exclude empty lines or comments, go to the General > Compare/Patch preference page.

Line Counter Preference


System proxy settings The General > Network Connections preference page allows you to specify the proxy settings to be used when connecting to the network. The new System proxy configuration option lets you reuse OS proxy settings in Eclipse. Eclipse supports:
  • Proxy manual settings and automatic configuration on Windows
  • Proxy environment variables and Gnome settings on Linux

System Proxy


The above features are just the ones that are new since the previous milestone build. Summaries for earlier 3.4 milestone builds: