Skip to main content

Notice: this Wiki will be going read only early in 2024 and edits will no longer be possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.

Jump to: navigation, search

Difference between revisions of "Higgins Component Owner Checklist"

Line 1: Line 1:
===Component Row===
+
__NOTOC__
The component owner is responsible for maintaining all information about their rows here [[Components]].
+
===A. [[Components]]===
 +
The component owner is responsible for maintaining all information about their rows related to their component on this page [[Components]]. There are two kinds of Components:
 +
* Single project components --one have one top level row describing the one project
 +
** Multi-project components --have a top level row and multiple sub-rows, one for each project
 
*The leftmost column should link to a wiki page that contains at least:
 
*The leftmost column should link to a wiki page that contains at least:
** Overview - a one para overview of the function of the component
+
** Overview - a one para overview of the function of the component (or-project, if project-level row)
 +
** Service - a description of some of the most salient methods of the interface
 +
*The leftmost column should link to a wiki page that contains at least:
 +
** Overview - a one para overview of the function of the project
 
** Service - a description of some of the most salient methods of the interface
 
** Service - a description of some of the most salient methods of the interface
 
*Libs
 
*Libs
 
** The owner MUST create and maintain the "libs" dependencies page. Any new additions must be flagged to mary@socialphysics.org so that she can enter the new third party JARs into IPzilla.  
 
** The owner MUST create and maintain the "libs" dependencies page. Any new additions must be flagged to mary@socialphysics.org so that she can enter the new third party JARs into IPzilla.  
*Source / Build
+
*Source & Build
 
**viewcvs - create a link to web view of component's cvs folders
 
**viewcvs - create a link to web view of component's cvs folders
 
**ide - create and maintain a wiki page describing how to get the source and build the component using the Eclipse IDE. It MUST include at least two .psf files (one for anonymous access, one for committers) and these two MUST include all of the component's projects and any projects that are just wrappers around third party libs. It should NOT include projects from other Higgins components.
 
**ide - create and maintain a wiki page describing how to get the source and build the component using the Eclipse IDE. It MUST include at least two .psf files (one for anonymous access, one for committers) and these two MUST include all of the component's projects and any projects that are just wrappers around third party libs. It should NOT include projects from other Higgins components.
Line 18: Line 24:
 
**Owner SHOULD add the most important ones to the current milestone wiki page
 
**Owner SHOULD add the most important ones to the current milestone wiki page
  
===build.xml===
+
===B. Build Processes===
*Owner must use Eclipse 3.2.x to define projects for the component
+
*Component owner must use Eclipse 3.2.x to define Eclipse projects within component
**Owner manage the project from within Eclipse without manually editing build.xml files
+
*Read [http://www.eclipse.org/articles/Article-PDE-Automation/automation.html Eclipse Build Automation]
 +
*The owner must ensure that each project (dependencies, etc.) can be managed from within the Eclipse IDE without manually editing build.xml files
 
*It must be possible for each project to export a build.xml Ant file such that
 
*It must be possible for each project to export a build.xml Ant file such that
 
**It can be used to build all appropriate targets from a command line using CVS and Ant
 
**It can be used to build all appropriate targets from a command line using CVS and Ant
Line 31: Line 38:
 
***war file for WS deployable components
 
***war file for WS deployable components
 
***javadoc
 
***javadoc
***eclipse plugin target
+
***eclipse plugin  
 
*Owner must make sure that automated build scripts are using the latest build.xml
 
*Owner must make sure that automated build scripts are using the latest build.xml
*JAR (and WAR, etc.) files should be named "higgins-<component>-<subcomponent>.x.Y.Z.jar
+
*JAR (and WAR, etc.) files should be named "higgins-<component>-<subcomponent>.x.Y.Z.B.jar
 
*X.Y is the current milestone (e.g. 0.7)
 
*X.Y is the current milestone (e.g. 0.7)
 
*Z starts at zero and is incremented only for breaking changes
 
*Z starts at zero and is incremented only for breaking changes
 +
*B build
 
*test JARs include -test before X.Y.Z
 
*test JARs include -test before X.Y.Z
 
*example: "higgins-idas-test.0.7.3.jar"
 
*example: "higgins-idas-test.0.7.3.jar"
  
===Components and Projects===
+
===C.  Components and Projects===
 
*All project names in the component must follow Eclipse guidelines for naming
 
*All project names in the component must follow Eclipse guidelines for naming
 
*There should be as few projects in a component as possible. The preference would be to have one core project plus one unit test project. The decision to add additional projects is based on architectural considerations (e.g. the need for separable plugins).
 
*There should be as few projects in a component as possible. The preference would be to have one core project plus one unit test project. The decision to add additional projects is based on architectural considerations (e.g. the need for separable plugins).
  
===Stable Builds===
+
===D. Stable Builds===
 
*The component owner determines when a build should be promoted from "nightly" to "stable"
 
*The component owner determines when a build should be promoted from "nightly" to "stable"
 
* [The higgins project doesn't yet have any "release" builds]
 
* [The higgins project doesn't yet have any "release" builds]
 +
 +
==See Also===
 +
* [http://eclipse.org/higgins Higgins Home]

Revision as of 16:35, 26 January 2007

A. Components

The component owner is responsible for maintaining all information about their rows related to their component on this page Components. There are two kinds of Components:

  • Single project components --one have one top level row describing the one project
    • Multi-project components --have a top level row and multiple sub-rows, one for each project
  • The leftmost column should link to a wiki page that contains at least:
    • Overview - a one para overview of the function of the component (or-project, if project-level row)
    • Service - a description of some of the most salient methods of the interface
  • The leftmost column should link to a wiki page that contains at least:
    • Overview - a one para overview of the function of the project
    • Service - a description of some of the most salient methods of the interface
  • Libs
    • The owner MUST create and maintain the "libs" dependencies page. Any new additions must be flagged to mary@socialphysics.org so that she can enter the new third party JARs into IPzilla.
  • Source & Build
    • viewcvs - create a link to web view of component's cvs folders
    • ide - create and maintain a wiki page describing how to get the source and build the component using the Eclipse IDE. It MUST include at least two .psf files (one for anonymous access, one for committers) and these two MUST include all of the component's projects and any projects that are just wrappers around third party libs. It should NOT include projects from other Higgins components.
    • cli - create and maintain a wiki page describing how to get the source and bulid the JAR(s) of this component using a command line (i.e. cvs client and Ant)
  • Download
    • javadoc - create a link to the javadoc files mostly recently generated nightly on build.eclipse.org
    • plugins - create a link to one or more Eclipse plugins most recently built on build.eclipse.org
    • jars - create a link to one or more JARS most recently built on build.eclipse.org
  • Open
    • Owner MUST add Bugzilla entries for the most important new features (or bugs) being worked on for the current milestone
    • Owner SHOULD add the most important ones to the current milestone wiki page

B. Build Processes

  • Component owner must use Eclipse 3.2.x to define Eclipse projects within component
  • Read Eclipse Build Automation
  • The owner must ensure that each project (dependencies, etc.) can be managed from within the Eclipse IDE without manually editing build.xml files
  • It must be possible for each project to export a build.xml Ant file such that
    • It can be used to build all appropriate targets from a command line using CVS and Ant
    • It must not use any absolute class names
    • It must not require eclipse-specific jar files (only stated dependencies)
    • It must build when eclipse is not installed
    • It must be able to build both release and debug targets
    • Targets
      • jar for any consumable component
      • war file for WS deployable components
      • javadoc
      • eclipse plugin
  • Owner must make sure that automated build scripts are using the latest build.xml
  • JAR (and WAR, etc.) files should be named "higgins-<component>-<subcomponent>.x.Y.Z.B.jar
  • X.Y is the current milestone (e.g. 0.7)
  • Z starts at zero and is incremented only for breaking changes
  • B build
  • test JARs include -test before X.Y.Z
  • example: "higgins-idas-test.0.7.3.jar"

C. Components and Projects

  • All project names in the component must follow Eclipse guidelines for naming
  • There should be as few projects in a component as possible. The preference would be to have one core project plus one unit test project. The decision to add additional projects is based on architectural considerations (e.g. the need for separable plugins).

D. Stable Builds

  • The component owner determines when a build should be promoted from "nightly" to "stable"
  • [The higgins project doesn't yet have any "release" builds]

See Also=

Back to the top