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"

(Main Wiki Page)
(Components Tables)
Line 10: Line 10:
 
** Must contain a link to the top level '''Main Wiki Page''' (see section below for details)
 
** Must contain a link to the top level '''Main Wiki Page''' (see section below for details)
 
*'''Dep.'''
 
*'''Dep.'''
** The owner MUST create and maintain the "dep" 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 "dep" dependencies page. Any new additions or version changes must be flagged to the higgins.dev@eclipse.org developers list so that the people working on IP can enter the new third party JARs into IPzilla, and people working on builds can update the processes, etc.  New dependencies, changes in version numbers and eliminated dependencies must all be noted by email sent to the Higgins developers list.
 
*'''Source & Build''' (Project-level rows only)
 
*'''Source & Build''' (Project-level rows only)
 
** '''cvs & instructions''' - a wiki page (see '''CVS & Instructions Wiki Page''' section below for details)
 
** '''cvs & instructions''' - a wiki page (see '''CVS & Instructions Wiki Page''' section below for details)

Revision as of 18:28, 11 June 2007

Component owners are responsible for creating and maintaining the following wiki doc, build scripts, etc. for their Components.

Components Tables

Each component is described in a table on the Components page. Tables have three kinds of rows:

  1. Component header rows - all tables have one of these
  2. Sub-Component header rows - only the Token Service has these
  3. Project rows - one row for each Eclipse project that comprises the (sub-)Component
  • Leftmost column
    • Must contain a link to the top level Main Wiki Page (see section below for details)
  • Dep.
    • The owner MUST create and maintain the "dep" dependencies page. Any new additions or version changes must be flagged to the higgins.dev@eclipse.org developers list so that the people working on IP can enter the new third party JARs into IPzilla, and people working on builds can update the processes, etc. New dependencies, changes in version numbers and eliminated dependencies must all be noted by email sent to the Higgins developers list.
  • Source & Build (Project-level rows only)
    • cvs & instructions - a wiki page (see CVS & Instructions Wiki Page section below for details)
  • Test
    • Component owners are responsible for ensuring that the sub-projects that comprise their component(s) also have associated "sister" -test projects.
  • Downloads
    • 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
  • Issues
    • 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

Main Wiki Page

Each component has a wiki page with the following sections (e.g. Identity Attribute Service):

  • Overview - a one para overview of the function of the component
  • Details
    • Status: <status of Component>
    • Language: <Java, Javascript, etc.>
    • Packaging: <OSGI Bundle, JAR, WAR, etc.>
  • Plan
    • At the very least a link to a ToDo list page categorized per milestone (this must be a link because this page will be linked to on the Milestone wiki pages). This section is omitted on project level wiki pages.
  • Service
    • A description of the component's service (API). At least cover these topics:
      • Responsibilities - main responsibilities of this component
      • Dependencies - other components it depends on (services it consumes)

CVS & Instructions Wiki Page

  • Use IdAS CVS as a prototype for your page
  • The page has these three sections:
    • General CVS information (same for all Higgins projects)
    • Module-specific information
    • Build instructions
  • It MUST include at least two .psf files (one for anonymous access, one for committers)
  • The .psf files MUST use extssh (not pserver; pserver only works for anonymous access)
  • These two MUST include all of the component's projects and any projects that are just wrappers around third party libs.
  • .psfs should NOT include projects from other Higgins components.

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

Structure and 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).
  • JAR (and WAR, etc.) files should be named "higgins-<component>-<subcomponent>.major.minor.service.qualifier.jar (see Version Numbering for details)
    • test JARs include -test before .major.minor.service.qualifier
    • example: "higgins-idas-test.0.7.103.jar" - see special instructions below

While Higgins is in the Incubation phase

  • All downloadable zip files for builds and milestones must include the word "incubation" in the filename. For example, DSF-SDK-incubation-N20070413-0200.zip
  • The jar files in the download zip file are not required to contain the word "incubation" in the filename. (See bug 178944 for the explanation.)
  • All "Bundle-Name"s must include the world "incubation". Note that "Bundle-SymbolicName"s should not include "incubation" because the Bundle-SymbolicName is a technical namespace, not a user namespace. For example, Bundle-Name: Foo Plug-in (Incubation)
  • Similarly, the names for update manager features must include the word "incubation". For example, Eclipse Platform (Incubation)

Builds

Nightly

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]

Links

Back to the top