Incompatibilities between Eclipse 3.5 and 3.6

Eclipse changed in incompatible ways between 3.5 and 3.6 in ways that affect plug-ins. The following entries describe the areas that changed and provide instructions for migrating 3.5 plug-ins to 3.6. Note that you only need to look here if you are experiencing problems compiling or running your 3.5 plug-in on 3.6.

  1. DialogSettings.save(Writer writer) can throw an IOException
  2. The TextCellEditor no longer sets a default width of 50

1. DialogSettings.save(Writer writer) can throw an IOException

What is affected: Clients that call DialogSettings.save(Writer writer) in code that is compiled against release 3.5

Description: In release 3.4 and earlier, DialogSettings.save(Writer writer) was specified to throw an IOException. In release 3.5, the method signature was changed to not throw the exception. In release 3.6, the method is specified to throw the exception (restoring it to the release 3.4 and earlier specification). Clients that do not catch the IOException when calling DialogSettings.save(Writer writer) should update the code to catch the exception. Note that this source incompatibility only applies to clients who directly use DialogSettings, the default implementation class. The interface type, IDialogSettings, has remained consistent in throwing the IOException in the method signature, so clients using the interface type are not affected.

2. The TextCellEditor no longer sets a default width of 50

What is affected: Clients relying on the default value for the minimum width of a TextCellEditor.

Description: The javadoc for TextCellEditor#getLayoutData() states explicitly that there is no minimum width set but it was inheriting a default width of 50. Clients who were relying on the previous value of 50 should override the 'minimumWidth' field of the cell's LayoutData explicitly.