Eclipse 3.6 M2 - New and Noteworthy

Eclipse release names always have a connection to astronomy. This year's release is no different, being named Helios in honor of that famous celestial body, 895 Helio. Here are some of the more noteworthy things available in the Eclipse project's Helios milestone build M2 (September 18, 2009) which is now available for download. See the build notes for details about bugs fixed and other changes.


Platform


NTLMv2 proxy support Support has been added to the platform for communicating with NT Lan Manager proxies (NTLMv2). You can now install and update software in the Eclipse user interface when running behind proxies that use this protocol.

Comparing configurations in the Installation History The Installation History page now allows you to compare two different installation history configurations. Now you can more easily see what was installed, uninstalled, or updated in the various installation configurations. You can also delete unwanted installation configurations in order to reduce clutter and free up disk space.

Compare button in the Installation History Page


Hide empty fast view bars In order to clean up the UI and gain some space in the trim area we've added a new preference to allow you to hide the Fast View Bar when it's empty. Note that this option does not inhibit the functionality, if there are fast views in the perspective (or you make a view a fast view) the bar will be shown regardless of the preference setting.

Hide the fast view bar


Apply patch enabled for working sets

Now, the Apply Patch action is enabled for working sets if they are used as top-level elements in the explorer.

Apply Patch for working set


Usability enhancement to Configure Branches and Versions

Now the Configure Branches and Versions action in the repository view is enabled for multiple selections. This means that you are able to choose any file in the selection as a tag source for all selected folders.

Configure Branches and Versions for multiple selection


SWT


Mozilla browser support on Solaris SPARC Mozilla browser support has been added for the Solaris SPARC platform (Solaris 10, GTK+).

Browser closing API The new API method Browser.close() is used to close a browser, but allows the close to be cancelled by an onbeforeunload handler. See Snippet 326.

Browser close


Key events for F16-F20 New key event constants have been added for the keyboard function keys F16 to F20.

DND insertion feedback for tables The default drop target effect for Table now supports DND.FEEDBACK_INSERT_BEFORE and DND.FEEDBACK_INSERT_AFTER.

desc


Horizontal mouse wheel New event constants have been added for horizontal mouse wheels. See SWT.MouseHorizontalWheel and SWT.MouseVerticalWheel.

Variable tab stops in StyledText New API in StyledText allows the application to specify a non-uniform sequence of tab stops. See Snippet 325.

desc


Equinox


New Equinox weaving feature The byte code weaving work in the Equinox incubator has passed the graduation review and the major parts of the work are now part of the Equinox distribution.

Equinox Weaving provides a general infrastructure for load-time byte code weaving for the Equinox OSGi runtime. Currently Equinox Weaving includes a weaver for AspectJ to load-time weave aspects into bundles (AspectJ Development Tools and the Scala IDE for Eclipse already use this to realize deeper integration with the Eclipse Java development tools, for example).

These four bundles are contained in the distribution:

  • org.eclipse.equinox.weaving.hook: The framework extension project containing the hooks to insert byte code weaving and caching at load-time.
  • org.eclipse.equinox.weaving.aspectj: Contains the bridge to use AspectJ as load-time weaving implementation.
  • org.eclipse.equinox.weaving.caching: Provides caching for woven byte code for standard Java virtual machines.
  • org.eclipse.equinox.weaving.caching.j9: Contains an alternative cache implementation that uses IBM J9 VM shared classes for caching woven classes.

Multi-session Equinox console The Equinox console has been enhanced to allow multiple console sessions to be connected. Previous versions of the Equinox console would only allow a single session to be connected at a time. The console only allowed for connections from two built connection types, through standard in/out or though a telnet port.

A new service interface has been introduced: org.eclipse.osgi.framework.console.ConsoleSession. Implementers of a console session register themselves as an OSGi service. The console implementation will then automatically use the console session for input and output of a console connection.


Event admin added The OSGi event admin specification provides a general purpose event bus for posting and sending events to event handlers. The Equinox event admin implementation has been added to the platform RCP feature. The Equinox and Platform teams plan to start using the event admin service for delivering certain events. For example, see bug 284061. For information on related event processing investigation in e4, see e4/Event Processing

Revert support in p2 director The p2 director application now supports reverting to an earlier profile state from the command line. Use the new -revert argument to specify a previous profile state to revert to.

JDT


org.eclipse.jdt.junit split The non-UI parts of the org.eclipse.jdt.junit plug-in have been split off into the new plug-in called org.eclipse.jdt.junit.core. This change does not affect existing clients of the org.eclipse.jdt.junit plug-in, but allows new clients to use only the launcher without requiring all the UI dependencies.

JUnit imports test results with <skipped> nodes The JUnit view can now import test run files that contain <skipped> nodes. Eclipse and the Ant JUnit task do not generate such nodes, but e.g. test result files from Apache Maven do generate them for ignored JUnit4 tests.

PDE


API use reports

You can generate reports describing what API and internals are being used by other bundles. API use reports have been integrated as an external tool (Run > External Tools > External Tool Configurations...). For example, the following report settings are used to generate a report revealing which internal components of the debug platform are being consumed by JDT.

API use report settings

A report is run against a set of bundles which can be specified as an API baseline, a target definition or a directory of bundles. You can search for API and/or internal references and you can limit the report to specific bundles by using regular expressions. You must specify an output location (directory) for the report and whether to generate HTML.

Package exports in bundle manifests are used to determine package visibility. Any package exports with an x-internal or x-friends modifier will be considered internal. All other packages are considered API. The Patterns tab can be used to augment package visibility information by specifying regular expressions to identify packages, and whether those packages should be considered API or internal. For example, since TPTP specifies all packages as API, the following patterns could be used to identify its internal packages.

Specify package visibility using the patterns tab


Spell checking in TOC and context help editors

Spell checking is now available in the Table of Contents (TOC) and Context Help editors.

Incorrectly spelled works are underlined in red


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