Join GitHub today
GitHub is home to over 50 million developers working together to host and review code, manage projects, and build software together.
Sign upGitHub is where the world builds software
Millions of developers and companies build, ship, and maintain their software on GitHub — the largest and most advanced development platform in the world.
Add JSON for storing expert data #517
Conversation
Remove a couple of arrays in 'categories' that were section headers being falsely identified as categories
|
Closing this PR as the core issue was already solved with #552. |
Component of issue #507
@zware and @Mariatta suggested that an effective method of storing the data from the experts index would be to add a new JSON file to the devguide repository. This would allow for an efficient way to store the expert data and to easily be able to find their respective GitHub names (or any other platform). Currently,
experts.rstonly lists the names on bpo, and the formatting can't be changed due to the nosy list scripts using data from the tables. As a beneficial side effect, this would also likely improve the performance of any expert data extraction scripts.The formatting of the JSON file is using two primary sections:
categoriesandmaintainers. Initially, I was going to leave the exact formatting from theexperts.rsttables, but I realized that doing so would result in quite a lot of redundant data. To address that issue, I used the following format:Having a separate section for the specific information on each of the maintainers provides normalization, so that the information for any maintainers that are experts for multiple modules aren't repeatedly stored.
I think that providing their actual name instead of their bpo username makes a bit more sense, since that allows
experts.rstto be far less platform specific. It also makes more sense for the platform specific usernames to be a property of their actual name, rather than using the bpo username as the key. Additionally, since we're moving away from bpo in the near future, that adds further reason to not use it as the identifying key for the experts.An alternative would be to instead use the GitHub usernames as the key, but as I mentioned earlier, I find it preferable that this JSON doesn't favor any particular platform. Leaving it platform-independent makes it far more scalable in the long term. Let me know if anyone has any suggestions for alternative formats.
Note: The JSON file is currently missing a few experts (that aren't core devs), since I extracted data from the bpo committers list to convert from their bpo usernames to their actual names. Feel free to add or mention any active experts that are missing. The current experts list has an (inactive) after the names of some of the inactive people, but I'm not sure as to whether or not it's fully up to date.