django / djangoproject.com

Source code to djangoproject.com
https://www.djangoproject.com/
BSD 3-Clause "New" or "Revised" License
1.89k stars 953 forks source link

Read-only API for retrieving Trac data #1657

Open laymonage opened 4 weeks ago

laymonage commented 4 weeks ago

Per discussion in https://github.com/django/code.djangoproject.com/issues/198#issuecomment-2398110549.

The same XmlRpcPlugin for Trac that we removed in https://github.com/django/code.djangoproject.com/pull/198 was also responsible for the JSON RPC (/jsonrpc endpoint). The endpoint seems useful for extracting data to gain insights, e.g.

Instead of restoring the old API, which relies on an old Trac plugin and does not give us full control over the output, we probably want to create our own API.

There is a draft PR at #1656.

For now, I think it's OK to limit the scope of the API to be read-only. If we find use cases for a write API, we can file a separate issue.

thibaudcolas commented 2 weeks ago

I’d love to see this happen, as this kind of API endpoint seems to be the only reliable way to check people’s commenting and triaging activity. For example, this would help in assessing people’s eligibility as candidates for Steering Council elections, as triaging contributions are one of the areas where we acknowledge candidates’ work:

Reviewing pull requests and/or triaging Django project tickets

So I need a way to assess how often someone helps by:


In the meantime I’m using site:code.djangoproject.com inurl:/ticket/ "by Person Name" in Google to find comments, but it’s proving unreliable. I might scrape the tickets instead.