blob: 1fd014d7af77c5b3436d07c7beb49e2bc215a425 [file] [log] [blame]
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<!--[if IE]><meta http-equiv="X-UA-Compatible" content="IE=edge"><![endif]-->
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta name="generator" content="Asciidoctor 1.5.2">
<title>Eclipse Standard Top-Level Charter</title>
<style>
</style>
</head>
<body class="book">
<div id="header">
<h1>Eclipse Standard Top-Level Charter</h1>
</div>
<div id="content">
<div id="preamble">
<div class="sectionbody">
<div class="paragraph">
<p><em>This document defines standard terms for Eclipse Top Level Project
Charters. It is intended that the Charters for Top Level Projects
reference this document rather than inheriting by copy-and-paste.</em></p>
</div>
</div>
</div>
<div class="sect1">
<h2 id="_overview">Overview</h2>
<div class="sectionbody">
<div class="paragraph">
<p><em>To be defined in the individual Top Level Project Charter.</em></p>
</div>
</div>
</div>
<div class="sect1">
<h2 id="_mission">Mission</h2>
<div class="sectionbody">
<div class="paragraph">
<p><em>To be defined in the individual Top Level Project Charter.</em></p>
</div>
</div>
</div>
<div class="sect1">
<h2 id="_scope">Scope</h2>
<div class="sectionbody">
<div class="paragraph">
<p><em>To be defined in the individual Top Level Project Charter.</em></p>
</div>
</div>
</div>
<div class="sect1">
<h2 id="_project_management_committee">Project Management Committee</h2>
<div class="sectionbody">
<div class="paragraph">
<p>The Projects under this Charter are managed by a group known as the
Project Management Committee (the "PMC"). The PMC&#8217;s duties are described
in <a href="https://www.eclipse.org/projects/dev_process/#4_6_Leaders">4.6 Leaders</a> of the Eclipse Development Process.</p>
</div>
<div class="paragraph">
<p>It is the PMC&#8217;s responsibility to ensure the projects within its
umbrella operate as active and viable open source projects, and to take
steps to reboot, archive, or restructure projects if they become
inactive or otherwise fail to meet the requirements of the Eclipse
Development Process.</p>
</div>
<div class="paragraph">
<p>The work of the PMC is shared by the PMC members. All PMC members are
expected to contribute actively. In particular, PMC members are expected
to take responsibility for overseeing certain areas of work in the
Project, and reporting to the PMC on these areas. Because of the
diversity amongst individual projects, PMC members are not expected to
maintain anything other than general currency with projects outside
their assigned technical areas.</p>
</div>
</div>
</div>
<div class="sect1">
<h2 id="_roles">Roles</h2>
<div class="sectionbody">
<div class="paragraph">
<p>The Projects under this Charter are operated as meritocracies&#8201;&#8212;&#8201;the
more you contribute, and the higher the quality of your contribution,
the more you are allowed to do. However with this comes increased
responsibility.</p>
</div>
<div class="sect2">
<h3 id="_users">Users</h3>
<div class="paragraph">
<p>Users are the people who use the output from the Project. Output
typically consists of software in form of extensible frameworks and
exemplary tools. Software in this context means intellectual property in
electronic form, including source and binary code, documentation,
courseware, reports and whitepapers.</p>
</div>
</div>
<div class="sect2">
<h3 id="_contributors">Contributors</h3>
<div class="paragraph">
<p>Users who contribute software, documentation, or other materially useful
content become contributors. Contributors are encouraged to participate in
the user forums, and should monitor the developer mailing list
associated with their area of contribution. When appropriate, contributors
may also contribute to development design discussions related to their
area of contribution. Contributors are expected to be proactive in
reporting problems in the bug tracking system.</p>
</div>
</div>
<div class="sect2">
<h3 id="_committers">Committers</h3>
<div class="paragraph">
<p>Contributors who give frequent and valuable contributions to a Project
can have their
status promoted to that of a "Committer" for that Project
respectively. See
<a href="https://www.eclipse.org/projects/dev_process/#4_7_Committers_and_Contributors">4.7
Committers and Contributors</a> of the Eclipse Development Process for the
process and responsibilities that entails.</p>
</div>
<div class="paragraph">
<p>At times, Committers may become inactive for a variety of reasons. The
decision making process of the Project relies on active committers who
respond to discussions and vote in a constructive and timely manner. A
Committer who is disruptive, does not participate actively, or has been
inactive for an extended period may have his or her commit status
revoked by the PMC.</p>
</div>
<div class="paragraph">
<p>Active participation in the user forums and the appropriate developer
mailing lists is a responsibility of all Committers, and is critical to
the success of the Project. Committers are required to monitor and
contribute to the user forums.</p>
</div>
<div class="paragraph">
<p>Committers are required to monitor the mailing lists associated with all
Projects for which they have commit privileges. This is a
condition of being granted commit rights to the Project. It
is mandatory because committers must participate in votes (which in some
cases require a certain minimum number of votes) and must respond to the
mailing list in a timely fashion in order to facilitate the smooth
operation of the Project. When a Committer is granted commit rights they
will be added to the appropriate mailing lists. A Committer must not be
unsubscribed from a developer mailing list unless their associated
commit privileges are also revoked.</p>
</div>
<div class="paragraph">
<p>Committers are required to track, participate in, and vote on, relevant
discussions in their associated Projects. There are three
voting responses: +1 (yes), -1 (no, or veto), and 0 (abstain).</p>
</div>
<div class="paragraph">
<p>Committers are responsible for proactively reporting problems in the bug
tracking system, and annotating problem reports with status information,
explanations, clarifications, or requests for more information from the
submitter. Committers are responsible for updating problem reports when
they have done work related to the problem.</p>
</div>
</div>
</div>
</div>
<div class="sect1">
<h2 id="_projects">Projects</h2>
<div class="sectionbody">
<div class="paragraph">
<p>The work under this Top Level Project is further organized into
Projects. New Projects must be consistent with the mission of the Top
Level Project, be recommended by the PMC, and confirmed by the EMO.
Projects can be discontinued by recommendation of the PMC, and confirmed
by the EMO.</p>
</div>
<div class="paragraph">
<p>When a new Project is created, the PMC nominates a Project lead to act
as the technical leader and nominates the initial set of Committers for
the Project, and these nominations are approved by the EMO. Project
leads are accountable to the PMC for the success of their Project.</p>
</div>
<div class="sect2">
<h3 id="_components">Components</h3>
<div class="paragraph">
<p>The Eclipse Development Process has no formal notion of component. As
such Eclipse Foundation infrastructure provides no formal means of
managing membership or privileges at a component level. Projects may
opt to informally designate different functional areas in a project as
de facto components, but access to resources associated with those
functional areas must be managed by social convention with oversight
from the project leadership.</p>
</div>
</div>
</div>
</div>
<div class="sect1">
<h2 id="_infrastructure">Infrastructure</h2>
<div class="sectionbody">
<div class="paragraph">
<p>The PMC works with the EMO to ensure the required infrastructure is provided for the
Project. The Project infrastructure includes, at minimum:</p>
</div>
<div class="ulist">
<ul>
<li>
<p>An issue tracker;</p>
</li>
<li>
<p>One or more source repositories that must collectively include all
of the source code for the Project&#8217;s software;</p>
</li>
<li>
<p>A website to contain information about the Project,
including documentation, reports and papers, courseware, downloads of
releases, and this Charter;</p>
</li>
<li>
<p>A download server (or space on a server);</p>
</li>
<li>
<p>A developer mailing list ("dev-list") for discussions pertaining to the
Project as a whole or that cross Projects;</p>
</li>
<li>
<p>Additional project mailing lists (as needed) for technical discussions
related to the Project; and</p>
</li>
<li>
<p>A forum where users, contributors, and Committers can interact regarding
general questions and issues about the Project.</p>
</li>
</ul>
</div>
<div class="paragraph">
<p>All services are open for public participation (with archives where appropriate).
Project Committers have special access to some resources (e.g. write access to
source code repositories and the download server).
The Project team is obligated to use the issue tracker provided by the EMO for all issues
related to the project.
The provided download server must be used as the primary means to distribute
all milestone and release builds produced by the Project.</p>
</div>
</div>
</div>
<div class="sect1">
<h2 id="_the_development_process">The Development Process</h2>
<div class="sectionbody">
<div class="paragraph">
<p>All projects are required to operate according to the rules established
by the most current version <a href="https://www.eclipse.org/projects/dev_process/">Eclipse Development Process</a>.</p>
</div>
<div class="paragraph">
<p>Each Project must identify, and make available on its web site, the
requirements and priorities it is working against in the current
release cycle. In addition, each Project must post a release plan
showing the date and content of the next major release, including any
major milestones, and must keep this plan up to date.</p>
</div>
<div class="paragraph">
<p>The Committers of a Project decide which changes may be
committed to the master code base of a Project
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:</p>
</div>
<div class="ulist">
<ul>
<li>
<p>Retroactive - changes are proactively made by Committers but can be
vetoed by a single Committer. </p>
</li>
<li>
<p>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
as applicable.</p>
</li>
<li>
<p>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. </p>
</li>
</ul>
</div>
<div class="paragraph">
<p>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. Special rules may
be established by the PMC for Projects with fewer than
three Committers. </p>
</div>
<div class="paragraph">
<p>The master copy of the code base must reside on the Project web site
where it is accessible to all users, contributors, 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 PMC is responsible for working with the Eclipse Foundation
to establish a release engineering and build process to ensure that
builds can be reliably produced on a regular and frequent basis from the
master code base and made available for download from the Project web
site. Builds in this context are intended to include not only code but
also reports, documentation, and courseware.</p>
</div>
<div class="paragraph">
<p>Each Project is responsible for establishing test plans and the level of
testing appropriate for the Project.</p>
</div>
<div class="paragraph">
<p>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,</p>
</div>
</div>
</div>
<div class="sect1">
<h2 id="_licensing">Licensing</h2>
<div class="sectionbody">
<div class="paragraph">
<p>All contributions to Projects under this Charter must adhere to the
<a href="/org/documents/Eclipse_IP_Policy.pdf">Eclipse Foundation
Intellectual Property Policy</a>.</p>
</div>
</div>
</div>
</div>
<div id="footer">
<div id="footer-text">
Last updated 2016-02-26 09:12:23 -05:00
</div>
</div>
</body>
</html>