You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
* Add policy for membership
* Apply suggestions from code review
Co-authored-by: Jason Grout <[email protected]>
Co-authored-by: Jason Weill <[email protected]>
* Update docs/team/becoming-member.md
Co-authored-by: Jason Weill <[email protected]>
* Switch to use a bot also for Council membership active status
* Clarify the wording following Brian's suggestions
* Remove the inactive member notion
Vote will take place in the private council repo for security reasons
* Update docs/team/becoming-member.md
Co-authored-by: Michał Krassowski <[email protected]>
* typo fixes
---------
Co-authored-by: Jason Grout <[email protected]>
Co-authored-by: Jason Weill <[email protected]>
Co-authored-by: Michał Krassowski <[email protected]>
Co-authored-by: Paul Ivanov <[email protected]>
This document describes how to become a council member. It includes information about the two subgroups of JupyterLab Council members:
4
+
- The release group (see [Release team member](#release-team-member))
5
+
- The admin group (see [Admin team member](#github-organization-owners))
4
6
5
-
Active members actively carry out the responsibilities listed in the [Membership Guide Page](membership_guidelines).
7
+
## JupyterLab Council member
6
8
7
-
##Active and inactive membership
9
+
### JupyterLab Council responsibilities
8
10
9
-
There are two types of JupyterLab Council members, **active** and **inactive**.
10
-
11
-
Active members:
11
+
Members actively carry out the responsibilities listed in the [Membership Guide Page](membership_guidelines):
12
12
13
13
* Must be nominated by a current member.
14
14
* Can be elected as the Software Steering Council representative for JupyterLab.
15
15
* Get a vote in a voting situation.
16
16
* Count towards quorum in a voting situation.
17
-
* Are expected to participate in a majority of votes.
17
+
* Are expected to participate in a 2/3 of votes (through a year).
18
18
* Can nominate new members.
19
19
* Should actively participate, either synchronously or asynchronously, in meetings.
20
20
21
-
Inactive members:
22
-
23
-
* Were previously an active member.
24
-
* Do not vote.
25
-
* Are not counted towards voting quorum.
26
-
* Can "reactivate" at any time by expressing their change in status publicly.
27
-
28
-
Council members can freely pass between active and inactive at any time. They *should* publicly state their status change in a pull request that updates the `contributors.yaml` file with their status change.
29
-
30
-
This means an inactive member can "reactivate" themselves at any time by publicly stating their change in status. This does not require a nomination from another team member.
31
21
32
-
For example, a member who is going out on a long leave/vacation (>2 weeks) can temporarily change their status to inactive during their absence and immediately reactivate upon return. This isn't required, but this can relieve them from having to watch this repository for any formal votes that happen during their absence.
33
-
34
-
## Nominating a new member
22
+
### Nominating a new member
35
23
36
24
For someone to become a JupyterLab Council member, they should already be a consistent,
37
25
positive, productive member of the community. Newcomers are encouraged to
@@ -55,8 +43,59 @@ This process takes the following steps:
55
43
if they are interested. Don't forget to run them by the {ref}`membership_guidelines`
56
44
page to make sure they understand what they're signing up for.
57
45
58
-
## Membership Maintenance
46
+
### Membership maintenance
47
+
48
+
Every six months, a bot will open an issue in the [council repo](https://github.com/jupyterlab/council) asking all currently active JupyterLab council team members to reply within three weeks if they still consider themselves active. If a team member replies no, they will be removed from the council. If a member does not reply, the council may reach that member personally for membership confirmation. If that request for confirmation is not answered within a month, the member will be removed from the council.
49
+
50
+
## Release team member
51
+
52
+
### Joining the release team
53
+
54
+
Any JupyterLab Council member can ask to be part of the release team using the weekly call, chat, or official council email list.
55
+
56
+
> Private channel is recommended to limit the exposure of such information for security reason.
57
+
58
+
### Release team responsibilities
59
+
60
+
Release team members will be added to the following groups:
61
+
62
+
- GitHub JupyterLab organization: membership of the [release team](https://github.com/orgs/jupyterlab/teams/release)
63
+
- PyPI Jupyter organization: manager of the [JupyterLab team](https://pypi.org/manage/organization/jupyter/team/jupyterlab)
64
+
- NPM jupyterlab organization: membership of the [jupyterlab team](https://www.npmjs.com/settings/jupyterlab/teams)
65
+
- conda-forge jupyterlab recipes: maintainer rights
66
+
67
+
> An admin will need to add a new member to all three teams and the conda recipes.
68
+
69
+
Members of the release team have publication rights for major JupyterLab-related packages through the PyPI and NPM teams. Team members can publish a release and can react quickly in case a published package is broken or corrupted.
70
+
71
+
### Release membership maintenance
72
+
73
+
Every six months, a bot will open an issue in the [council repo](https://github.com/jupyterlab/council) asking all current release team members to reply within three weeks if they still consider themselves active. If a member replies no, or they do not reply, we will conclude that they step down of the release team. Stepping down members may be removed from the publication groups on PyPI and NPM and the conda recipes maintainers.
74
+
75
+
## Admin team member
76
+
77
+
### Joining the admin team
78
+
79
+
Any JupyterLab Council member can ask to be part of the admin team using the weekly call, chat, or official council email list.
80
+
81
+
> Private channel is recommended to limit the exposure of such information for security reason.
82
+
83
+
There should be no more than seven administrators. If there are seven administrators already, consensus should be achieved between the new admin candidate and the existing administrators to determine a new seven-person admin team.
84
+
85
+
> The Software Steering Council representative will automatically be part of this group.
86
+
> The Executive Council will and must own at least one administrator seat. If the last executive council administrator resigns, the executive council must nominate a new administrator.
87
+
88
+
### Admin team responsibilities
89
+
90
+
Admin team members will be added to the following groups:
- conda-forge jupyterlab recipe: maintainer rights
96
+
97
+
Administrators maintain membership of the groups listed above as well as the JupyterLab council and release team.
59
98
60
-
Every six months, one currently active member should open an issue in the team-compass repo asking all currently active team members to reply if they still consider themselves active. If not (or no response is given by a team member), it will be assumed that they have gone inactive. This will help keep the active member list up-to-date.
99
+
### Membership maintenance
61
100
62
-
Remember, an inactive member can return at any time by simply changing their status on the team-compass page.
101
+
Every six months, a bot will open an issue in the [council repo](https://github.com/jupyterlab/council) asking all current administrator team members to reply within three weeks if they still consider themselves active. If a member says no, or they do not respond, we will conclude that they step down. Stepping down member may be removed from the groups mentioned above.
Copy file name to clipboardExpand all lines: docs/team/member-guide.md
+5-3Lines changed: 5 additions & 3 deletions
Original file line number
Diff line number
Diff line change
@@ -26,8 +26,10 @@ maintainers find and choose the right communication channels and have a positive
26
26
In this respect, we are using:
27
27
1. GitHub issues for specific discussions related to changing a repository's content
28
28
(e.g. feature requests, bug reports).
29
-
2. The [Discourse forum](http://discourse.jupyter.org/) for general discussions, support
29
+
2. The [Discourse forum](https://discourse.jupyter.org/) for general discussions, support
30
30
questions, or just as a place where we can inspire each other.
31
+
3. The [Gitter channel](https://app.gitter.im/#/room/#jupyterlab_jupyterlab:gitter.im) for discussions and support questions.
32
+
4. The [JupyterLab council mailing list](https://groups.google.com/u/1/g/jupyterlab-council) for discussing membership, none-public questions,... .
31
33
32
34
## How can I help?
33
35
@@ -40,13 +42,13 @@ when you interact with people (online and offline). Try to keep a friendly, posi
40
42
attitude, and be welcoming and helpful in bringing others into the community
41
43
and answering their questions.
42
44
43
-
### Are there any specific responsibilies?
45
+
### Are there any specific responsibilities?
44
46
45
47
We don't want team membership to
46
48
be a big burden (many of us have one or more other jobs too!) but there are
47
49
a few things that you should do as a new member:
48
50
49
-
1.**"Watch" the [team compass repository](https://github.com/jupyterlab/team-compass)**
51
+
1.**"Watch" the [team compass repository](https://github.com/jupyterlab/team-compass)** and the [council repository](https://github.com/jupyterlab/council)
50
52
so that you're notified when team conversations are happening.
51
53
2.**Stay up-to-date on team meetings**. You can find a notes from previous meetings pinned at
52
54
the [top of the team-compass issues page](https://github.com/jupyterlab/team-compass/issues).
0 commit comments