@@ -13,7 +13,7 @@ The Matplotlib Project (The Project) is an open source software project
13
13
affiliated with the [ NumFOCUS] ( https://numfocus.org ) Foundation. The goal of The
14
14
Project is to develop open source software and deploy open and public websites
15
15
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
17
17
openly and hosted in public GitHub repositories under the [ Matplotlib GitHub
18
18
organization] ( https://github.com/matplotlib ) . Examples of Project Software
19
19
include the Matplotlib library for data visualization and its associated
@@ -102,7 +102,8 @@ decision on a specific matter.
102
102
103
103
The PL is chair of the Steering Council (see below) and may delegate their
104
104
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.
106
107
107
108
The PL can appoint their successor, but it is expected that the Steering Council
108
109
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.
274
275
Deputy Project Leaders
275
276
----------------------
276
277
277
- Deputy Project Leaders (DPL) have pre-deletegated authority to make decisions
278
+ Deputy Project Leaders (DPL) have pre-delegated authority to make decisions
278
279
within their area of responsibility. As with the PL, the DPL should strive to
279
280
reach consensus before invoking their authority. Decisions by the DPL can be
280
281
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
296
297
individual may hold more than one DPL simultaneously.
297
298
298
299
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
-
417
300
Project Specific Leads
418
301
----------------------
419
302
420
303
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
422
305
their own Project Leader who can run the projects as they see fit consistent with
423
306
the Matplotlib Code of Conduct.
424
307
0 commit comments