Uploaded image for project: 'OpenJPA'
  1. OpenJPA
  2. OPENJPA-979

Define process for contributions



    • Type: Improvement
    • Status: Closed
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 2.0.0-beta3
    • Component/s: None
    • Labels:


      OpenJPA architecture allows extensible feature derivations for various purposes such as non-relational datastores, customized mapping strategies support for loosely-typed data structures etc. To promote contributions from wider community of users and developers, here is a proposal (collated from discussion thread [1]):

      a) A 'contrib' space should be created in OpenJPA SVN repository for sharing any such contributions with the community.

      b) The entires in the 'contrib' space should neither impact the build process or nor be a part of the distribution package. However, the entries must be available with requisite artifacts (e.g. source, build script, docs) for interested parties to build the extension and use with core openjpa downloads.

      c) A non-committer should be able to contribute to the 'contrib' space. A contributor must signs the ICL Agreement and has to upload the contribution via our normal JIRA patch process. One or more committer will review and commit the contribution.

      d) the contributions must adhere to the coding conventions and other software conventions followd by OpenJPA

      f) the contributor must package the contribution in the same structure of existing OpenJPA modules. The contribution must contain the maven pom.xml to build the target artifacts.
      We will create a maven archetype specifically for this purpose, and put the archetype definition into the new directory. For example:

      % cd openjpa/trunk/extensions
      trunk/extensions % ls

      trunk/extensions % mvn archetype:create -DgroupId=org.apache.openjpa.extensions -DartifactId=loosely-typed -DarchetypeArtifactId=openjpa-extensions

      trunk/extensions % ls

      g) We need to think carefully about what to call these extensions, so it's clear that they're not supported, endorsed, built, or distributed by the project. But in future, we might want to build and distribute them if they turn out to be useful. But at that point, we might promote them to their own endorsed sub-project (e.g. trunk/openjpa-db4o).

      [1] http://n2.nabble.com/Proposal-for-a-%27contrib%27-space-in-openjpa-repository-tt216589.html


          Issue Links



              • Assignee:
                ppoddar@apache.org Pinaki Poddar
                ppoddar@apache.org Pinaki Poddar
              • Votes:
                0 Vote for this issue
                0 Start watching this issue


                • Created: