Skip to content

Commit b238319

Browse files
committed
GOV: copy-editing, sentence finishing, move roles to separate file
1 parent 3928b98 commit b238319

File tree

2 files changed

+128
-122
lines changed

2 files changed

+128
-122
lines changed

deputy_project_leads.md

Lines changed: 123 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,123 @@
1+
# Deputy Project Leaders
2+
3+
These are the current deputy project leader positions:
4+
5+
- **Release Mangagers** : 3.3 : Elliott Sales de Andrade
6+
- **API consistency Leader** :
7+
- **Reference Documentation Leader** :
8+
- **Narrative Documentation Leader** :
9+
- **Secretary** :
10+
- **Community Manager** :
11+
12+
13+
## Release Manager(s)
14+
15+
The Release Manager (RM) is appointed for a minor version (A.B.x) release series
16+
of Matplotlib rather than for a fixed term. They are responsible for the full
17+
release life cycle of all minor releases in the series including:
18+
19+
- ensuring the whats new, API changes, and release notes are up to date
20+
- the timing of the releases
21+
- what changes should or should not be backported from the master
22+
branch
23+
- rebuilding and publishing the website
24+
- publishing sdist and wheels to pypi
25+
- notifying down-stream packagers of the release
26+
- announcing the release (in coordination with the Community Manager)
27+
28+
An individual may be the RM as more than one release series at the
29+
same time.
30+
31+
32+
## API consistency Leader
33+
34+
Matplotlib is constantly making small changes to its API: enhancements
35+
that add new features, bug fixes that unavoidably change behavior, and
36+
deprecation of inconsistent or undesired functionality. The API
37+
Consistency Leader (ACL) is responsible for making sure that these
38+
incremental changes to the library are done in a coherent and
39+
consistent manner.
40+
41+
This include checking that:
42+
43+
- new functionality is not duplicating existing functionality
44+
- deprecations are justified and properly documented
45+
- new functionality does not "paint us into a corner" for future work
46+
- new functionality is implemented with an API that is consistent with
47+
the existing functions
48+
49+
50+
## Reference Documentation Leader
51+
52+
The Matplotlib API reference documentation is split between the docstrings and
53+
the rst source. This documentation needs to be complete and accurate as our
54+
users rely on it as the final authority of what a given method will do (short of
55+
reading the source).
56+
57+
The Reference Documentation Leader (RDL) is responsible for ensuring that
58+
the docstrings are:
59+
60+
- correctly formatted and render as intended
61+
- technically correct
62+
- complete
63+
64+
In addition to the docstrings the RDL is responsible for the sphinx build
65+
machinery and our sphinx extensions.
66+
67+
## Narrative Documentation Leader
68+
69+
In addition to the reference documentation, Matplotlib has narrative documentation.
70+
This documentation can take the form of short "cookbook" examples, longer tutorials,
71+
and prose documenting the how and why of the internals of the library. This includes
72+
content that lives in both the main repository and in other repositories
73+
in the Matplotlib organization.
74+
75+
The Narrative Documentation Leader is responsible for shepherding all of this
76+
content including the scope, organization, level, tone, and voice.
77+
78+
## Secretary
79+
80+
- Responsible for ensuring that there is an agenda for the weekly
81+
meeting at it is followed.
82+
- Responsible for maintaining the weekly notes.
83+
84+
85+
## Community Manager
86+
87+
The true strength of Matplotlib and why it has had such longevity as a project
88+
is the community of people around the code. That community needs to be
89+
maintained. The Community Manager (CM) is the is a catch-all for several very
90+
diverse tasks and this role may be split in the future and may want to enlist
91+
further assistants.
92+
93+
**Communications**
94+
95+
We need to maintain communication channels with the wider world. To
96+
this end the CM is responsible for maintaining. This communication is
97+
primarily broadcast out and intended to engage with the wider
98+
community. The
99+
100+
- the [Ann] mailing list
101+
- The Matplotlib blog
102+
- Maintaining a "Matplotlib update" slide deck
103+
- Recruiting people to give talks on Matplotlib at conferences / meetups
104+
- Matplotlib's social media presence
105+
106+
**Developer Relations**
107+
108+
In addition to communication to end-users we need to maintain
109+
communication channels to developers of down-stream libraries and
110+
other expert users.
111+
112+
- interaction with 3rd party extensions / publicity
113+
- recruiting new contributors
114+
- Recruiting people to run sprints
115+
- GSOC/mentoring programs
116+
- Managing the discourse
117+
- [user]/[dev] mailing list moderation
118+
119+
120+
**Event and Meeting planning**
121+
122+
From time to time Matplotlib as an organization has in-person
123+
meetings.

governance.md

Lines changed: 5 additions & 122 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ The Matplotlib Project (The Project) is an open source software project
1313
affiliated with the [NumFOCUS](https://numfocus.org) Foundation. The goal of The
1414
Project is to develop open source software and deploy open and public websites
1515
and services for data visualization. The Software developed by The Project is
16-
released under the a BSD (or similar permissive) open source license, developed
16+
released under a BSD (or similar permissive) open source license, developed
1717
openly and hosted in public GitHub repositories under the [Matplotlib GitHub
1818
organization](https://github.com/matplotlib). Examples of Project Software
1919
include the Matplotlib library for data visualization and its associated
@@ -102,7 +102,8 @@ decision on a specific matter.
102102

103103
The PL is chair of the Steering Council (see below) and may delegate their
104104
authority on a particular decision or set of decisions to any other Council
105-
member at their discretion.
105+
member at their discretion. The PL is responsible for ensuring that all SC
106+
activities that require a vote are properly documented.
106107

107108
The PL can appoint their successor, but it is expected that the Steering Council
108109
would be consulted on this decision. If the PL is unable to appoint a successor,
@@ -274,7 +275,7 @@ address. Detailed policy on how to handle CoC will be documented elsewhere.
274275
Deputy Project Leaders
275276
----------------------
276277

277-
Deputy Project Leaders (DPL) have pre-deletegated authority to make decisions
278+
Deputy Project Leaders (DPL) have pre-delegated authority to make decisions
278279
within their area of responsibility. As with the PL, the DPL should strive to
279280
reach consensus before invoking their authority. Decisions by the DPL can be
280281
appealed to the PL, but the presumption is that the PL will defer to the DPL
@@ -296,129 +297,11 @@ Any currently active Contributor is eligible to be considered for a DPL and an
296297
individual may hold more than one DPL simultaneously.
297298

298299

299-
### Release Manager(s)
300-
301-
The Release Manager (RM) is appointed for a minor version (A.B.x) release series
302-
of Matplotlib rather than for a fixed term. They are responsible for the full
303-
release life cycle of all minor releases in the series including:
304-
305-
- ensuring the whats new, API changes, and release notes are up to date
306-
- the timing of the releases
307-
- what changes should or should not be backported from the master
308-
branch
309-
- rebuilding and publishing the website
310-
- publishing sdist and wheels to pypi
311-
- notifying down-stream packagers of the release
312-
- announcing the release (in coordination with the Community Manager)
313-
314-
An individual may be the RM as more than one release series at the
315-
same time.
316-
317-
318-
### API consistency Leader
319-
320-
Matplotlib is constantly making small changes to our API: enhancements
321-
that add new features, bug fixes that unavoidably change behavior, and
322-
deprecation of inconsistent or undesired functionality. The API
323-
Consistency Leader (ACL) is responsible for making sure that these
324-
incremental changes to the library are done in a coherent and
325-
consistent manner.
326-
327-
This include checking that:
328-
329-
- new functionality is not duplicating existing functionality
330-
- deprecations are justified and properly documented
331-
- new functionality does not "paint us into a corner" for future work
332-
- new functionality is implemented with an API that is consistent with
333-
the existing functions
334-
335-
336-
### Reference Documentation Leader
337-
338-
The Matplotlib API reference documentation is split between the docstrings and
339-
the rst source. This documentation needs to be complete and accurate as our
340-
users rely on it as the final authority of what a given method will do (short of
341-
reading the source).
342-
343-
The Reference Documentation Leader (RDL) is responsible for ensuring that
344-
the docstrings are:
345-
346-
- correctly formatted and render as intended
347-
- technically correct
348-
- complete
349-
350-
In addition to the docstrings the RDL is responsible for the sphinx build
351-
machinery and our sphinx extensions.
352-
353-
### Narrative Documentation Leader
354-
355-
In addition to the refernce documentation, Matplotlib has narrative documentation.
356-
This documentation can take the form of short "cookbook" examples that show an
357-
end-to-end
358-
359-
360-
This includes our examples and tutorials that live inside the
361-
main source repository and longer tutorials that live in other repositories
362-
in the Matplotlib organization.
363-
364-
The Narrative Documentation Leader is responsible for shepherding all of this
365-
content including the scope, level, tone, and voice.
366-
367-
### Secretary
368-
369-
- Responsible for ensure that there is an agenda for the weekly meeting at it is
370-
followed.
371-
- Responsible for maintaining the weekly notes.
372-
- Responsible for ensuring that decisions taken by vote in the SC are properly
373-
recorded.
374-
375-
### Community Manager
376-
377-
The true strength of Matplotlib and why it has had such longevity as a project
378-
is the community of people around the code. That community needs to be
379-
maintained. The Community Manager (CM) is the is a catch-all for several very
380-
diverse tasks and this role may be split in the future and may want to enlist
381-
further assistants.
382-
383-
**Communications**
384-
385-
We need to maintain communication channels with the wider world. To this end
386-
the CM is responsible for maintaining:
387-
388-
- the [Ann] mailing list
389-
- The Matplotlib blog
390-
- Maintaining a "matplotlib update" slide deck
391-
- Recruiting people to give talks on Matplotlib at conferences / meetups
392-
- Matplotlib's social media presence
393-
394-
This communication is primarily broadcast out and intended to engage with
395-
end-users.
396-
397-
**Developer Relations**
398-
399-
In addition to communication to end-users we need to maintain
400-
communication channels to developers of down-stream libraries and
401-
other expert users.
402-
403-
- interaction with 3rd party extensions / publicity
404-
- recruiting new contributors
405-
- Recruiting people to run sprints
406-
- GSOC/mentoring programs
407-
- Managing the discourse
408-
- [user]/[dev] mailing list moderation
409-
410-
411-
**Event and Meeting planning**
412-
413-
From time to time Matplotlib as an organization has in-person
414-
meetings.
415-
416-
417300
Project Specific Leads
418301
----------------------
419302

420303
Matplotlib has a number of domain specific packages under it's umbrella and
421-
hosted on the matplotlib github organizations. These projects will each have
304+
hosted on the Matplotlib github organizations. These projects will each have
422305
their own Project Leader who can run the projects as they see fit consistent with
423306
the Matplotlib Code of Conduct.
424307

0 commit comments

Comments
 (0)