Eclipse Equinox 4.5.0 (Mars)

Release Date
Deliverables
  • Framework
    • OSGi R6 Core Framework Implementation (org.eclipse.osgi)
    • Native Launcher and Spashscreen support
    • Log Service - An implementation of the OSGi R6 Log service.
    • Plugins Compatibility Fragment - Provides support for old style Eclipse 2.0 plugins
    • Equinox Resolver Compatibility Fragment - Provides an implementation of the old Equinox resolver API
  • Compendium Services
    • Application Container - An implementation of the OSGi R6 Application Container service.
    • Config Admin - An implementation of the OSGi R6 Configuration Admin service.
    • Coordinator - An implementation of the OSGi R6 Coordinator service.
    • Device Access Service - An implementation of the OSGi R6 Device Access service.
    • Declarative Services - An implementation of the OSGi R5 Declarative Services specification.
    • Event Admin Service - An implementation of the OSGi R6 Event Admin Service.
    • HTTP Service - An implementation of the OSGi R6 HTTP service.
    • HTTP Servlet - Generic support for exposing another servlet facility (e.g., an underlying application server) as an OSGi HTTP service.
    • IO Connector Service - An implementation of the OSGi R6 IO Connector Service.
    • Initial Provisioning - An implementation of the OSGi R6 Initial Provisioning.
    • Metatype Service - An implementation of the OSGi R6 Metatype service.
    • Preferences Service - The Eclipse preference service is an extension of the standard OSGi preference service that adds listeners and the notion of preference scopes.  It also provides an OSGi R6 implementation of the Preferences Service specification.
    • User Admin Service - An implementation of the OSGi R6 User Admin Service.
    • Wire Admin Service - An implementation of the OSGi R6 Wire Admin Service.
  • p2
    • Command line application to mirror repositories.
    • Command line application to manage (install / uninstall / update) an eclipse install.
    • UI to manage an eclipse installation from within eclipse.
    • API to programmatically interact with p2.
  • Components
    • Eclipse Extension Registry - The Eclipse extension registry allows bundles to communicate and cooperate using declarative markup and lazy instantiation.
    • Equinox Transforms - A framework to provide transformations of bundle resources.
    • Equinox Regions - Provides API for configuring bundles in to regions to provide isolation.
  • Security
    • Equinox Secure Storage
    • Certificate Trust Engine - API for to managing trusted certificates
  • Server Side
    • HTTP Registry - Support for registering servlets, resources and JSPs via the Eclipse extension registry rather than using the code based OSGi registration mechanisms.
    • JSP Registry - Provides a JSP Factory that allows JSP usage with the HTTP Registry.
    • Servlet Bridge - Low level hook servlet installed in an existing traditional application server. This servlet launches an embedded Equinox and enables it to handle incoming HTTP requests originally sent to the underlying server.
    • HTTP Jetty - A thin layer that exposes an embedded Jetty server as a compliant OSGi HTTP service.
  • Weaving
    • Equinox Weaving - Support for weaving aspects at runtime.
Compatibility

Equinox 4.5 will be compatible with Equinox 4.4 (Luna) (and all earlier 3.x versions).

API Contract Compatibility: Equinox 4.5 will be upwards contract-compatible with Equinox 4.4 (Luna except in those areas noted in the Eclipse 4.5 Plug-in Migration Guide . Programs that use affected APIs and extension points will need to be ported to Equinox 4.5 APIs. Downward contract compatibility is not supported. There is no guarantee that compliance with Equinox 4.5 APIs would ensure compliance with Equinox 4.4 (Luna) APIs. Refer to Evolving Java-based APIs for a discussion of the kinds of API changes that maintain contract compatibility.

Binary (plug-in) Compatibility: Equinox Kepler will be upwards binary-compatible with Equinox Luna (4.4) except in those areas noted in the  Eclipse 4.5 Plug-in Migration Guide . Downward plug-in compatibility is not supported. Plug-ins for Equinox 4.5 will not be usable in Equinox 4.4. Refer to Evolving Java-based APIs for a discussion of the kinds of API changes that maintain binary compatibility.

Source Compatibility: Equinox 4.5 will be upwards source-compatible with Equinox 4.4 (Luna) except in the areas noted in the Eclipse 4.5 Plug-in Migration Guide . This means that source files written to use Equinox 4.4 (Luna) APIs might successfully compile and run against Equinox 4.5 APIs, although this is not guaranteed. Downward source compatibility is not supported. If source files use new Equinox APIs, they will not be usable with an earlier version of Equinox.

Non-compliant usage of API's: All non-API methods and classes, and certainly everything in a package with "internal" in its name or exported with the x-internal directive, are considered implementation details which may vary between operating environment and are subject to change without notice. Client plug-ins that directly depend on anything other than what is specified in the Equinox API are inherently unsupportable and receive no guarantees about compatibility within a single release much less with earlier releases. Refer to How to Use the Eclipse API for information about how to write compliant plug-ins.

Compatibility Concerns: The Equinox 4.5 release will continue to focus on compatibility in general, but there will be certain aspects of the release that will affect compatibility for a small group of bundle developers.

  • Upgrade to Jetty 9.  The Equinox 4.4 (Luna) used Jetty 8 as the backing container for the Equinox HttpService implementation.  The Equinox 4.5 (Mars) release is upgrading to Jetty 9.  This requires both an upgrade to Java 7 and an upgrade to the Servlet 3.1 API to run Jetty 9.  The Jetty 8 and Servlet 3.0 support will no longer be shipped as part of the Equinox 4.5 release.  The HttpService implementation will stil be able to run on older container implementations, including Servlet 3.0.
Internationalization

The Equinox SDK is designed as the basis for internationalized products. The user interface elements provided by the Equinox components, including dialogs and error messages, are externalized. The English strings are provided as the default resource bundles.

Latin-1, DBCS, and BiDi locales are supported by the Eclipse SDK on all reference platforms.

The Equinox supports GB 18030 (level 1), the Chinese code page standard, on Windows, Linux and the Macintosh.

German and Japanese locales are tested.

Name Date Description
M1 2014/08/08
M2 2014/09/19
M3 2014/10/31
M4 2014/12/12
M5 2014/01/23
M6 2015/03/13 API Freeze
M7 2014/05/01 Feature Freeze
Subprojects included with this release
This release is part of Mars