The following lists those API changes that are not backward compatible and require
user attention. A short hint on what needs to change is given directly in the list.
More information can be found in the associated bugzilla items.
- TM @buildId@ Breaking API Changes [query]
- SystemFileTransferModeRegistry has been moved to internal class.
ISystemFileTransferModeRegistry can now
be accessed by calling new API RemoteFileUtility.getSystemFileTransferModeRegistry()
instead
[220020].
- Several SystemMessages and Shared Resource Strings have been moved to different packages in order
to allow better integration with other Eclipse projects and better UI/Non-UI splitting. A list of related
breaking API changes is attached to bug
[216252].
- Some deprecated or not correctly working methods have been removed but should not have
been used by any clients anyways
[219975]
[220041].
- TM 3.0M5 Breaking API Changes [query]
- Removed IServiceSubSystem and related types in order to simplify the code, and allow better lazy initialization.
ISubSystem.getServiceType() is now used to know whether a given subsystem
is based on a service or not. Implementers of IServiceSubSystem need to implement ISubSystem now; code that tested for instanceof IServiceSubSystem
needs to use the dynamic check now
[217556].
- Removed ISystemProfile#createHost(IRSESystemType, String, String, String). Deprecated some other methods related
to filter or host creation, in order to support lazy initialization of filter pools.
Replacement methods are mentioned in the deprecation text
[197036].
- Made the TerminalConnectorId mandatory in terminal connector plugin.xml,
because it is essentially API allowing to talk to a given connector
[199285].
- Removed deprecated ISystemViewInputProvider#getShell()
[218524].
- Moved some methods from ISystemRegistry into ISystemRegistryUI
in order to facilitate moving SystemRegistry implementation to non-UI. Making this change
also required adding an SWT dependency for rse.core, which we hope to get rid
again later. The SystemRegistry logfile can now be found in the rse.core plugin rather
than the rse.ui plugin
[215820].
- IRSESystemType.isEnabled() has been added instead of RSESystemTypeAdapter.isEnabled(),
in order to provide enablement info to non-UI plugins as well. The adapter method has been made
final in order to warn extenders that they need to move their code to non-UI.
[218655].
- TM 3.0M4 Breaking API Changes
-
IRemoteObjectResolver.getObjectWithAbsoluteName()
now takes an additional IProgressMonitor parameter, in order to support cancellation of deferred queries.
The old method has been deprecated and will be removed for 3.0. Especially custom Subsystem implementations will need to
be changed to implement the new method instead of the old one
[211472].
-
IFileService.getOutputStream()
now takes an additional int options parameter, in order to support opening streams which append
to existing files. This was required in order to properly fulfill the EFS APIs. The corresponding old
method has been deprecated and will be removed for 3.0. Custom File Service implementations should be
changed to implement the new method instead of the old one
[208778].
- Removed the now obsolete IFileService.list(...) methods in favor of the new API
from bug 207178.
Clients of IRemoteFileSubSystem and IFileService need to be changed, though the change
is simple and compiler will mark error positions
[209552].
- Archive Handler API has been changed to support background operation and cancellation.
To facilitate this, an additional ISystemOperationMonitor interface was added as last parameter
of most method calls in
ISystemArchiveHandler. In addition to that,
VirtualChild#getExtractedFile() was also changed
[160775].
- Removed obsolete method
RSESystemTypeAdapter#acceptContextMenuActionContribution()
[199032].
- TM 3.0M3 Breaking API Changes
- Optimized IFileService for multi-queries. This is not a breaking API change for clients
that extend AbstractFileService
rather than implementing IFileService directly. But the
now deprecated methods getFiles(), getFolders() and getFilesAndFolders()
may be removed soon in favor of the new list() API
[207178].
- Changed ISubSystem#checkIsConnected() to accept an IProgressMonitor argument
[207095].
- Changed the mountPathMappers extension point:
ISystemMountPathMapper#getWorkspaceMappingFor()
has been changed to accept an additional parameter of type
IRemoteFileSubSystem
[195285].
- Removed some deprecated APIs:
- ISubSystem#connect() API without progress or callback
[186363].
- obsolete SystemSelectConnection* classes
[196938].
- obsolete classes ISystemConnectionWizardPropertyPage and SystemSubSystemsPropertiesWizardPage
[197129].
- obsolete methods in IRemoteCmdSubSystem and IRemoteSystemEnvVar
[208813].
Use
this query to show the full list of API changes since TM 2.0, and
this query to show the list of additional API changes proposed for TM 3.0.
|