Machine-parsable developers list
Nobody has claimed this yet.
Assessment
- Difficulty
- 5/5
- Estimated time
- Over a week
- Newbie friendliness
- 25/100
- Issue type
- Feature
- Clarity
- Mostly clear
- Activity status
- Stale
- Tech stack
- github, python
- Domain
- documentation, tooling
Research direction
Start by reading the existing developers.csv, experts.rst, translating documentation, CODEOWNERS, and the generation flow in this repository. Review the related issues and PRs #517, #507, #842, and python/core-workflow#350 before defining the list format. Done means the scope is agreed and the consolidated list can generate the documented developer and ownership outputs without duplicated maintenance.
Written by the indexing model from the issue text.
Description
We currently have several lists of developers, some manually maintained, some machine-generated, including:
- a machine-parsable list in the voters repo (private)
- a machine-generated (from the list above) developers.csv (in the devguide repo)
- a machine-generated (from the csv above) developer log (in the devguide)
- a separately-maintained list of experts (in the devguide repo)
- a machine-generated (from the list of experts above) nosy-list autocomplete on bpo (no longer used)
- a separately-maintained translators list (in the devguide)
- a separately-maintained CODEOWNERS file (in the cpython repo)
- possibly others (e.g. release managers), more or less related to list of core devs
I suggest to consolidate this into two lists:
- the one in the
votersrepo (private) can remain mostly unchanged - a new list in this repo can be created to list experts
The new list could use a similar format: listing users and fields about:
- their GitHub username
- and possibly the GitHub teams they belong to (to generate teams)
- see python/core-workflow#350
- the modules they maintain (to generate the
CODEOWNERSfile) - the modules, interest areas, platforms, translation languages they are interested in (to generate the expert index)
- the translator table could be moved back into the expert list
- see also #842
- the release manager table in the main page could be generated from this too
- the translator table could be moved back into the expert list
- possibly flags like
is_triager,is_core_dev,release_manager=<versions>,translator=<language>- these could be used to mark names in the expert index and to create RM and translator tables
- we could also have an
is_botfor bots
We should also move some info from the voters file to here, in particular the joined, left, notes info. This information is already public and by moving it here we will remove duplication and simplify the generation of developers.csv in this repo. The only remaining duplicated info between the two lists will be the GitHub username.
Some relevant links:
- PR that implemented a similar idea: #517
- Issue where the idea was proposed: #507
- Discourse message about listing maintainers
- Discourse message about notifying experts
- Dominant language
- Python
- Stars
- 2.1k
- Forks
- 1k
- Avg merge
- 2d 12h
- Merged PRs (30d)
- 12
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from python/devguide
-
type-feature
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
-
type-feature
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
-
topic-building python type-feature
Difficulty 2/5 1-3 hours Newbie friendliness 65/100
-
needs: decision topic-test type-bug
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
-
topic-dev process type-feature
Difficulty 2/5 1-3 hours Newbie friendliness 62/100
Similar issues
-
bug
Difficulty 2/5 1-3 hours Newbie friendliness 90/100
learningequality/ricecooker#747 ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
BSData/horus-heresy-3rd-edition#3171 ·
-
enhancement
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
-
Difficulty 2/5 1-3 hours Newbie friendliness 76/100
run-llama/llama_index#23199 ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 84/100
KhronosGroup/glTF-Blender-IO#2769 ·