Build Notes for RSE 1.0
Nov 12, 2006

New and Noteworthy
Getting Started

The RSE User Documentation now has a Getting Started Tutorial that guides you through installation, first steps, connection setup and important tasks.

API Status

As per the Target Management plan, we reached API Freeze for RSE 1.0M4.

In fact we have reviewed and documented all relevant APIs, and they have proven useful in earlier proprietary versions of RSE.
Yet, due to a lack of public feedback so far we still want to declare the APIs provisional for now.

This means, that we reserve the right to change any API after RSE 1.0 in a not backward compatible way. All such API changes will be voted on by committers on the dsdp-tm-dev developer mailing list, and documented in a migration guide for future releases.

Currently, we see the following areas for potential API changes:

  • Classes and Interfaces that are not meant for public use will be moved to packages tagged as internal. This will apply particularly to the "implementation" plugins for the ssh, ftp and local subsystems (these do not define any new APIs anyways).
  • The IConnectorService interface may be slightly modified in order to allow for better UI / Non-UI separation.
  • Some more RSE Model classes may be moved from the UI plugin to the non-UI core plugin.
If you want to start programming against RSE APIs now, best let us know about your endeavours and keep yourself up-to-date. Stay in contact with the dsdp-tm-dev developer mailing list, and give feedback to make the APIs better.
API Changes since RSE 1.0 M4 (official API freeze) - newest changest first
  • Changed HostShellChangeEvent.getLines() to return IHostOutput[] instead of Object[] (bug 161773).
  • Removed the rseserver-aix.tar package. Use rseserver-unix.tar instead on AIX (bug 160470).
  • Removed the attribute systemClass from extension point subsystemConfigurations because it did not work properly and was nowhere used (bug 162098).
  • Added IProgressMonitor parameter to the IRemoteFileSubSystem and IRemoteProcessSubSystem list APIs. Each of these methods, such as listFiles(), now includes an IProgressMonitor as the last parameter (bug 160777).
  • Renamed the org.eclipse.rse.ui.subsystemConfiguration extension point to subsystemConfigurations in order to better match the standard naming scheme used by the Platform.
  • Renamed the org.eclipse.rse.ui.newConnectionWizardDelegate extension point to newConnectionWizardDelegates in order to better match the standard naming scheme used by the Platform.
  • Removed the org.eclipse.rse.ui.rseConfigDefaults extension point. Use Java Properties instead, as described in the runtime-options documentation.
  • Removed the org.eclipse.rse.ui.passwordPersistence extension point. The same functionality is achieved by using the data known from the IConnectorService implementations of a systemType (supportsUserId(), supportsPassword()). As long as a subsystem supports user id and password, the password can also be persisted. Persistence is always done case sensitive; Persistence cannot be disabled for system types.
  • Moved several RSE Model Objects and Interfaces from org.eclipse.rse.ui to core:
    • (UI) org.eclipse.rse.filters --> org.eclipse.rse.core.filters
    • (UI) org.eclipse.rse.model --> org.eclipse.rse.core.model
    • (UI) org.eclipse.rse.references --> org.eclipse.rse.core.references
    • (UI) org.eclipse.rse.subsystems.servicesubsystem --> org.eclipse.rse.core.subsystems
    Client code can be adapted to the new locations easily by invoking "Organize Imports" except for the following additional changes that need to be made:
    • Event handling methods for ISystemResourceChangeEvent, ISystemPreferenceChangeEvent, ISystemModelChangeEvent, ISystemRemoteChangeEvent have been removed from ISystemRegistry, such that they are available only in the SystemRegistry implementation. This applies to the fireEvent(), postEvent() and corresponding add...Listener() methods. The simplest fix in user code is to get the SystemRegistry from RSEUIPlugin instead of SystemRegistry as described below.
    • Use RSEUIPlugin.getTheSystemRegistry() instead of SystemRegistry.getSystemRegistry()
    Note that wherever possible, client code should only refer to the model object interfaces in org.eclipse.rse.core.* and not use the actual implementations which still reside in the UI plugin (these will be moved to core eventually, too).
  • Renamed the RemoteProcessSubSystem interface to IRemoteProcessSubSystem to conform with naming conventions.
Known Problems and Workarounds
The following RSE 1.0 plan deliverables did not make it into this build:
  • User Actions, and Import/Export were deferred with M3 already. A new plan has been published with M3 already.
  • JUnit tests did not make it into the build because IP legal review was not completed in time. The Unit Test Framework is available from Bugzilla bug 149080 instead. Most of this has been committed into the CVS Repository already, but actual Unit Tests making use of the framework do not exist yet.

No major or critical bugs are known at the time of release. Use this query for an up-to-date list of major or critical bugs.

The RSE 1.0 Known Issues and Workarounds Wiki page gives an up-to-date list of the most frequent and obvious problems, and describes workarounds for them.
If you have other questions regarding RSE, please check the TM and RSE FAQ

Click here for a complete up-to-date bugzilla status report, or here for a report on bugs fixed so far.