Skip to main content

Notice: This Wiki is now read only and edits are no longer possible. Please see: for the plan.

Jump to: navigation, search


EclipseLink Incubator

The Incubator component of EclipseLink allows new functionality to be developed in isolation of the shipped components. The purpose is to allow consumers to optionally try out the incubation functionality and provide feedback so that it can evolve to meet the needs of the community.

What should incubate? In deciding when a new incubation sub-component should be created the committers should consider the opportunity incubation allows to gather feedback and evolve the solution without effecting the existing product or imposing any backwards compatibility requirements.

Current Incubation Sub-Components

Name Committer(s) Wiki SVN Location
bug 253682 Platform tware EclipseLink/Development/Incubator/Platform /svnroot/rt/org.eclipse.persistence/incubator/extensions/trunk
bug 280949 Partitioning dclarke EclipseLink/Development/Incubator/Partitioning proposed
bug 304370 EclipseLink-Gemini JPA mkeith EclipseLink/Development/Incubator/GeminiJPA proposed

Incubation Process Guidelines

The development of incubation sub-components is intended to allow rapid innovation of ideas independent of the main development while still conforming to the Eclipse development and IP rules.

Creating a new Incubator Feature

In order to create a new incubation feature the following steps should be followed:

  1. Open a bug or enhancement request for the proposed incubation feature and assign it to the Incubator component
  2. Send an email to the mailing list proposing the bug for development in the EclipseLink Incubator
  3. After approval at the weekly meeting assign it to yourself in status Assigned

The creation and development of the sub-component should include the following:

  • Create a WIKI for the work under:
    • Explain the feature being developed
    • Functional requirements and design
    • How to download use and provide feedback
    • What version does it work with and which version the work is being developed in
    • Any build/test/package instructions
    • Any usage documentations
    • Any other useful information to facilitate use and feedback

  • Create a folder in the incubation component for the work /trunk/incubation/...
    • Folder should contain a project and ANT build/package scripts (Note: These will only be executed manually)
  • During development ensure all commits clearly indicate the incubator feature and bug #
    • EXAMPLE: Incubation-Dynamic-200045: Added support for JPA eclipselink-orm.xml metadata processing

Promoting an Incubation Sub-Component

After the incubation work has reached maturity and the owning committer(s) wish to promote it into the product. This should be done under standard project development with other committers reviewing the requirements, design, implementation, and tests prior to committing.

Upon completion of moving an incubation sub-component into the main project components the incubation folders should be deleted in an SVN transaction and the wiki pages involved should be updated to reflect the completed state of the work.

Common Incubation Header

 * Copyright (c) 1998, 2008 Oracle. All rights reserved.
 * This program and the accompanying materials are made available under the 
 * terms of the Eclipse Public License v1.0 and Eclipse Distribution License v. 1.0 
 * which accompanies this distribution. 
 * The Eclipse Public License is available at
 * and the Eclipse Distribution License is available at 
 * Contributors:
 *     dclarke - Dynamic Persistence INCUBATION - Enhancement 200045
 * This code is being developed under INCUBATION and is not currently included 
 * in the automated EclipseLink build. The API in this code may change, or 
 * may never be included in the product. Please provide feedback through mailing 
 * lists or the bug database.

SVN Structure

Incubation work will developed in SVN in a peer folder to the main component's trunk folder.

Each incubation effort will create a sub-folder in here with its own structure for branching and maintaining the IDE projects used.


  • /incubator
    • /dynamic
      • /trunk
        • /org.eclipse.persistence.core.dynamic - Project containing the extensions to core
        • /org.eclipse.persistence.jpa.dynamic - Project containing the extensions to JPA
        • /eclispelink.core.test.dynamic - Project containing the extensions to core's testing
        • /eclispelink.jpa.test.dynamic - Project containing the extensions to JPA's testing

Back to the top