... | @@ -58,9 +58,9 @@ Each Project must identify, and make available on its web site, the requirements |
... | @@ -58,9 +58,9 @@ Each Project must identify, and make available on its web site, the requirements |
|
|
|
|
|
When a new Project is created, the PMC nominates a Project Lead to act as the technical leader, and nominates the initial set of Project Committers for the Project. The Project Lead is accountable to the PMC for the success of their Project.
|
|
When a new Project is created, the PMC nominates a Project Lead to act as the technical leader, and nominates the initial set of Project Committers for the Project. The Project Lead is accountable to the PMC for the success of their Project.
|
|
The Committers of a Project or component decide which changes may be committed to the master code base of a Project or component respectively. The PMC defines the decision process, but that process must include the ability for Committers to veto the change. The decision process employed may change with the phase of development. Common decision processes include:
|
|
The Committers of a Project or component decide which changes may be committed to the master code base of a Project or component respectively. The PMC defines the decision process, but that process must include the ability for Committers to veto the change. The decision process employed may change with the phase of development. Common decision processes include:
|
|
* *Retroactive *- changes are proactively made by Committers but can be vetoed by a single Committer.
|
|
* *Retroactive *- changes are proactively made by Committers but can be vetoed by a single Committer.
|
|
* *Proactive *- for efficiency, some code changes from some contributors (e.g. feature additions, bug fixes) may be approved in advance, or approved in principle based on an outline of the work, in which case they may be committed first and changed as needed, with conflicts resolved by majority vote of the Committers of the Project or component, as applicable.
|
|
* *Proactive *- for efficiency, some code changes from some contributors (e.g. feature additions, bug fixes) may be approved in advance, or approved in principle based on an outline of the work, in which case they may be committed first and changed as needed, with conflicts resolved by majority vote of the Committers of the Project or component, as applicable.
|
|
* *Three Positive* - No code is committed without a vote; three +1 ('yes' votes) with no -1 ('no' votes or vetoes) are needed to approve a code change.
|
|
* *Three Positive* - No code is committed without a vote; three +1 ('yes' votes) with no -1 ('no' votes or vetoes) are needed to approve a code change.
|
|
Vetoes must be followed by an explanation for the veto within 24 hours or the veto becomes invalid. All votes are conducted via the developer mailing list associated with the Project or component. Special rules may be established by the PMC for Projects or components with fewer than three Committers.
|
|
Vetoes must be followed by an explanation for the veto within 24 hours or the veto becomes invalid. All votes are conducted via the developer mailing list associated with the Project or component. Special rules may be established by the PMC for Projects or components with fewer than three Committers.
|
|
|
|
|
|
The master copy of the code base must reside on the Project web site where it is accessible to all users, developers and committers. Committers must check their changes and new work into the master code base as promptly as possible (subject to any check-in voting rules that may be in effect) in order to foster collaboration among widely distributed groups and so that the latest work is always available to everyone.
|
|
The master copy of the code base must reside on the Project web site where it is accessible to all users, developers and committers. Committers must check their changes and new work into the master code base as promptly as possible (subject to any check-in voting rules that may be in effect) in order to foster collaboration among widely distributed groups and so that the latest work is always available to everyone.
|
... | @@ -71,9 +71,9 @@ Each Project is responsible for establishing test plans and the level of testing |
... | @@ -71,9 +71,9 @@ Each Project is responsible for establishing test plans and the level of testing |
|
|
|
|
|
All development technical discussions are conducted using the development mailing lists. If discussions are held offline, then a summary must be posted to the mailing list to keep the other committers, and any other interested parties,
|
|
All development technical discussions are conducted using the development mailing lists. If discussions are held offline, then a summary must be posted to the mailing list to keep the other committers, and any other interested parties,
|
|
Given the fluid nature of PMC Projects, organizational changes are possible. In particular, there may be a need to:
|
|
Given the fluid nature of PMC Projects, organizational changes are possible. In particular, there may be a need to:
|
|
* divide a Project into components
|
|
* divide a Project into components
|
|
* divide a Project into two or more independent Projects
|
|
* divide a Project into two or more independent Projects
|
|
* merge two or more Projects into a single Project.
|
|
* merge two or more Projects into a single Project.
|
|
|
|
|
|
In each case, the initiative for the change may come either from within the Project, or from the PMC; but the PMC must approve any change.
|
|
In each case, the initiative for the change may come either from within the Project, or from the PMC; but the PMC must approve any change.
|
|
|
|
|
... | @@ -116,17 +116,17 @@ When a component is deemed necessary by the Project Committers for a particular |
... | @@ -116,17 +116,17 @@ When a component is deemed necessary by the Project Committers for a particular |
|
**Project Infrastructure**
|
|
**Project Infrastructure**
|
|
|
|
|
|
The PMC works with the OSDU OMC to ensure the required infrastructure resources are provided for all PMC Projects. The Project infrastructure will include, at minimum:
|
|
The PMC works with the OSDU OMC to ensure the required infrastructure resources are provided for all PMC Projects. The Project infrastructure will include, at minimum:
|
|
* Bug Database - Bugzilla database for tracking bugs and feature requests.
|
|
* Bug Database - Bugzilla database for tracking bugs and feature requests.
|
|
* Source Repository - One or more repositories containing all the software for the Projects.
|
|
* Source Repository - One or more repositories containing all the software for the Projects.
|
|
* Website - A website will contain information about the Project, including documentation, reports and papers, courseware, downloads of releases, and this Charter.
|
|
* Website - A website will contain information about the Project, including documentation, reports and papers, courseware, downloads of releases, and this Charter.
|
|
* [TO-DO: We need to link to the OSDU Marketing Site.]
|
|
* [TO-DO: We need to link to the OSDU Marketing Site.]
|
|
* General Mailing List - Mailing list for discussions pertaining to the Project or that cross Projects. This mailing list is open to the public.
|
|
* General Mailing List - Mailing list for discussions pertaining to the Project or that cross Projects. This mailing list is open to the public.
|
|
* Project Mailing Lists - Mailing list for technical discussions related to the Project. This mailing list is open to the public.
|
|
* Project Mailing Lists - Mailing list for technical discussions related to the Project. This mailing list is open to the public.
|
|
* Component Mailing Lists - Mailing list for technical discussions related to the component. This mailing list is open to the public.
|
|
* Component Mailing Lists - Mailing list for technical discussions related to the component. This mailing list is open to the public.
|
|
* Newsgroups - Newsgroups where users, developers, and committers can interact regarding general questions and issues about the project. The newsgroup is open to the public.
|
|
* Newsgroups - Newsgroups where users, developers, and committers can interact regarding general questions and issues about the project. The newsgroup is open to the public.
|
|
|
|
|
|
**Version History:**
|
|
**Version History:**
|
|
|
|
|
|
0.1 – Initial Draft – PMC team w/inputs from Stephen Whitley/OMC
|
|
0.1 – Initial Draft – PMC team w/inputs from Stephen Whitley/OMC
|
|
0.2 – Feedback from Phillip Jong
|
|
0.2 – Feedback from Phillip Jong
|
|
0.3 – Added feedback from Johan Krebbers |
|
0.3 – Added feedback from Johan Krebbers |