Here are some of the more noteworthy things available in milestone build M3 (October 30, 2009) which is now available for download. See the build notes for details about bugs fixed and other changes.
Platform |
|
| Headless external tool builders |
Launching support for Ant and external tools is provided by the new headless plug-ins
org.eclipse.ant.launching and org.eclipse.core.externaltools.
This allows applications without a user interface to leverage the launch support programmatically
and it allows projects configured with external tool builders to be built in headless
environments.
|
| Resource filters | Projects and folders can now be configured to omit some of their
children in the file system from the workspace. The filtered files and directories will not
appear in views such as the Project Explorer, and won't be processed by
workspace facilities such as builders. Filters can be configured on the Resource Filters
page in the Properties dialog. When a filter is added, the following attributes have to be set.
|
| StyledText: per line variable tab stops |
Tab stop support in StyledText has been improved to allow each line to have its own sequence of tab stops.
Snippet 328
has been modified from Snippet325 to show this.
|
| CLabel set/get margins | New API has been added to CLabel to set and get the left, top, right and bottom margin spacing. |
| Key location |
A new field has been added to KeyEvent to allow the application
to identify which keyboard key originated the event, for example, right or left shift key.
See KeyEvent.keyLocation for details.
|
| New API in Scrollbar |
New methods have been added to Scrollbar to return the bounds for the thumb and its track.
See ScrollBar.getThumbBounds() and ScrollBar.getThumbTrackBounds().
|
| State mask for selection events | SelectionEvent.stateMask is now set on selection and default selection events for all native controls. |
| Orientation event |
A new event has been added to Text, Combo, and StyledText. It is sent when the writing direction is changed via keyboard shortcut.
See SWT.OrientationChanged
|
| Browser.setUrl() can specify post data and headers | The new API Browser.setUrl(String url, String postData, String[] headers) allows clients
to include post data and add/override header values when initiating HTTP requests. See
Snippet 330 for an example.
|
| Reusable intro news reader | The EclipseRSSViewer class allows multiple RSS news readers to
be easily added to an intro page.
|
| Help UI extensibility | New extension points allow additional buttons and
frames to be added to the help web application. In the image below the title search frame,
the rightmost button and the frame below the content page are all contributed.
|
| See entries in keyword index | See entries can now be added to the help system keyword index.
|
| Better handling of unmappable characters on save |
There is now better support for characters that cannot be saved with the current encoding:
|
| "Link with Editor" in Synchronize View | The Synchronize view can now be linked
with the active editor. Moreover, the view is now one of the 'Show In' targets when in the Synchronize perspective.
|
| Logical Models in Commit Wizard | The Commit wizard now shows logical
models just like the Synchronize view does.
|
| Sorted diffs in patches | The Create Patch action now creates patches that contain changes sorted by project and file path. This makes comparing patches much easier. |
| Local History pruning can be disabled | The local history size constraints can now be disabled.
Users that never want to discard history no longer need to wait on shutdown for
history cleanup to occur. To disable history cleaning, go to Preferences > General >
Workspace > Local History and disable Limit history size.
Note that when this option is chosen, disk usage for the workspace local history
will continue to grow indefinitely.
|
JDT |
|
Report missing @Override for method implementations in 1.6 mode |
The compiler now reports about missing @Override annotation in the case where a method implements
a method from an interface:
This new behavior can be controlled via Java > Compiler > Errors/Warnings in the Annotations section and configured for Clean Up and Save Actions. Note: This is reported only in 1.6 mode as |
New "rawtypes" token for @SuppressWarnings annotation |
The compiler now makes the distinction between warnings reported for raw type usage versus warnings reported for unchecked
generic operations.
In case it is not possible to update the code with the new token the |
| New categories when importing or exporting preferences |
There are two new categories available when importing or exporting preferences. The
wizard now supports importing or exporting Java compiler settings and JDT appearance
preferences.
|
| Improved refresh in the Call Hierarchy |
The Call Hierarchy now allows to refresh single or multiple elements at once via the Refresh (F5) action from the context menu:
This will refresh the selected elements and their direct children. The action in the toolbar has been renamed to Refresh View and still refreshes the entire view. |
| JUnit view opens test result URL |
The JUnit view can now directly load test result files from an URL. You can either just drag and drop an URL to the view or open the
Test Run History... tool bar button's drop-down and choose Import from URL... to enter an URL from which
the test results should be loaded.
Supported test run formats are XML files exported from the JUnit view or generated by the Ant JUnit task. |
| JUnit 4.7 | The JUnit4 version shipped with Eclipse has been updated to 4.7. |
PDE |
|
| Synchronize Java search with target platform |
You can automatically synchronize Java search operations with
the target platform via the Preferences > Plug-in Development preference page.
Java search operations are scoped to workspace projects and their dependencies. Developers don't typically have the entire target platform in their workspace and thus Java search operations don't locate references from many upstream plug-ins. You can manually add plug-ins to the Java search path using the Add All Plug-ins to Java Search action in the Plug-ins view. However, the new preference automatically keeps the search path in synch with the target platform. Under the covers a project named External Plug-in Libraries is created with all external plug-ins in the target platform on its build path. |
| Support software installation while running and debugging |
Launched Eclipse Applications can now support software installation operations. When the new
option is checked (on the Configuration tab of Eclipse Applications), a p2 profile is
generated when running or debugging. The profile initially contains all bundles in the target
and can be modified by software installation operations. The profile is regenerated on each subsequent run or
debug session, but is maintained across restart operations.
|
| Enhanced build.properties validation | Redundant entries in source builds are now flagged with a warning
by default.
|
| Enhanced compiler error options for PDE build | PDE/Build can now take advantage of new support from the JDT compiler to
specify that certain warnings should instead be reported as errors.
Set the property javacErrors.<library> in your build.properties. Similar to the javacWarnings.<library> property, specify the warnings that should be reported as errors:
javacErrors.. = forbidden,discouraged,
javacErrors.library.jar = deprecation,nullDereference
|
| Headless launching support |
Launching support for Eclipse Applications, JUnit Plug-in Tests, and OSGi Frameworks is
provided by a new headless plug-in (org.eclipse.pde.launching). This allows
applications without a user interface to leverage the launch support programmatically.
|
| |
|
The above features are just the ones that are new since the previous milestone build. Summaries for earlier 3.6 milestone builds: