Project Plan For Eclipse Communication Framework, version 3.10

Introduction

ECF released version 3.9.0 as part of the Luna Simultaneous Release, and in August 2014 ECF released version 3.9.1. The plan below describes the intended work for ECF 3.10, which will occur on or before the Mars Simultaneous Release scheduled for June 2015.

Release Deliverables

The major ECF 3.10 release deliverables are as follows:

Table of Contents

Release Milestones

The ECF 3.10 milestones will generally occur approximately 1 week prior to the Mars Simultaneous Release Milestone Schedule.
M51/30/2015
ECF 3.10.0 M5
M63/13/2015
ECF 3.10.0 M6
M74/25/2014
ECF 3.10.0 M7
RC15/15/2014
ECF 3.10.0 RC1
RC25/22/2014
ECF 3.10.0 RC2
RC35/29/2014
ECF 3.10.0 RC3
RC46/5/2014
ECF 3.10.0 RC4

Table of Contents

Target Environments

ECF's target environments are:
  • Eclipse Tools and Eclipse-based tooling/products
  • Eclipse-based Applications
  • Eclipse RCP-based Applications
  • Equinox servers
  • Karaf-based servers

Internationalization

ECF doesn't perform internationalization directly, although we develop our plugins following common rules about string externalization to make the automation possible

Table of Contents

Compatibility with Previous Releases

ECF has a policy of maintaining API backward compatibility with minor and service releases. API is considered all exported packages (i.e. packages that do not have

x-internal:=true
in their Export-Package declaration. As an example, with the following declaration in the org.eclipse.ecf MANIFEST.MF

Export-Package: org.eclipse.ecf.core,
				org.eclipse.ecf.internal.core;x-internal:=true
       

The org.eclipse.ecf.core package is API, and the org.eclipse.ecf.internal.core package is not

Only with major releases (e.g. 2.0.0, 3.0.0) are incompatible API changes to be introduced (e.g. refactorings, renames), and even then only after discussion among multiple committers. For the parts of ECF used by the Platform (e.g. the core and file transfer bundles), NO incompatible API changes will be introduced, even for major releases, in order to maintain the platform backward compatibility constraints.

Table of Contents

Themes and Priorities

Tooling for ECF Remote Services

Consumers of ECF Remote Services can/could benefit from the creation of Eclipse-based tooling for declaring, implementing, testing, debugging, deploying, monitoring, and managing Remote Services. A major theme for ECF will be creation of tooling to ease the burden on the consumer of ECF's Remote Services implementation. Tooling:

Maintenance

Update existing providers to more recent upstream versions (jmdns, zookeeper, apache httpclient, others).

ECF Releng , Build and Distributions. Ongoing maintenance with respect to release engineering. Move build to Tycho-based build. Update releng to use Java 8. Better support automated creation of Karaf distribution meta-data. Routinely build maven repo.

ECF UI maintenance (tracking)

  • Overhaul of the current communications perspective
  • Rename of perspective, provide logo
  • Gear perspectives towards remote services

New ECF Providers

Add the following new ECF providers

  • Websockets provider (remote services distribution). (enhancement)
  • Etcd-based provider (discovery). (enhancement)
  • Example custom HTTP+REST/JSON|xml providers (TBD)

Table of Contents