gidgethub / gidgethub

An async GitHub API library for Python

Home Page:https://gidgethub.readthedocs.io

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Sphinx PyClassmember is being deprecated and removed in Sphinx 4.0

Mariatta opened this issue · comments

In docs/customization.py (https://github.com/brettcannon/gidgethub/blob/bdd98606438a311e2d16189222c381b0eda4547e/docs/customization.py#L2), we use PyClassmember, which is being deprecated and will be removed in Sphinx 4.0.

It would be great to address that.

Additionally, Sphinx 2.1 supports async and await keywords: https://github.com/sphinx-doc/sphinx/pull/6295/files

I copied all of that from I think the trio docs, so if async and await are covered then we should be able to just ditch it.

The time has come for us to fix it, because now the build fails: https://github.com/brettcannon/gidgethub/runs/2832586230?check_suite_focus=true

Alternatively we can pin Sphinx requirement to be < 4.0, but I prefer we keep things up to date.

Looks like we can update to Sphinx 4 by updating our notations of async functions and methods, e.g. https://www.sphinx-doc.org/en/master/usage/restructuredtext/domains.html?highlight=async#directive-option-py-function-async. Probably could stand to read https://www.sphinx-doc.org/en/master/usage/restructuredtext/domains.html and catch up on what Sphinx can do now compared to when I first learned it 😅.

And then I need to notice you already have a PR linked to this issue. 😅