-
Notifications
You must be signed in to change notification settings - Fork 29
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Improvements & general refactoring #133
base: main
Are you sure you want to change the base?
Conversation
- Move to pyproject.toml metadata - Use pypa/build - Update workflows and tooling
eff1e85
to
8b0e920
Compare
3597d31
to
8c7a7cf
Compare
cc @ItayZiv @TheTripleV @Daltz333 @sciencewhiz anything I can do to help with getting this PR reviewed? |
Ope forgot to reply, sorry... Thanks for all the work you've put into this. For context: We started writing Sphinx extensions soon after we adopted Sphinx for our documentation. At this time, I only have the bandwidth to fully support this extension for the needs of frc-docs, which are currently met. Would the Sphinx org (or sphinx-contrib) want to take ownership of this repo? That way, more people currently active in developing Sphinx extensions could be added as maintainers. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I didn't test this against frc-docs but it looks fine to me
Thanks for the reply/context! Very understandable, thank you for all the work you've put in so far.
I'd be happy to transfer this repo to @sphinx-doc, yes. Please could you add me as a collaborator/owner on this repo so that I can move it, and please could you add me on PyPI/read the docs? My username is the same everywhere. If the same applies to rediraffe, we'd also be happy to maintain this. Let me know who should retain commit/publish permissions. A |
To allow python/cpython#129120, we need to introduce the ability to have a different URL base for social card images to the canonical URL.
In preparation to start this work I have made some general improvements to the codebase, which are described in each commit. I would suggest rebase-merging or fast-forward merging to maintain understandable history.
Closes #44. Move from the deprecated
setup.py
to the standardisedpyproject.toml
, maintaining git history bygit mv
ing the file first. We also fix a markup error inLICENCE.md
, as it is declared to be a markdown file.Closes #129. Read the Docs no longer inject
html_baseurl
.Closes #131. Python 3.13 was released in October last year.
We don't need to call the method twice, we can just return both strings and use tuple unpacking.
CLoses #112. This makes the feature more discoverable.
Closes #111.
sphinx.testing.path
is deprecated.Linting.
We use a membership test with
in
, so we should use a set rather than a list.Reduces the support matrix. Python 3.8 is end-of-life. I would also suggest dropping Python 3.9, but that is more arguable. Sphinx 5 was released three years ago.
Ruff is a fast linter and formatter that has wide adoption, including in Sphinx and CPython.
Type annotations are useful in IDEs such as PyCharm, and for downstream projects.
Miscellaneous refactoring to make functions smaller and arguments more explicit.
Enable more categories beyond general correctness, including requiring that every function is annotated and ensuring imports aren't redundantly aliased (fixing e.g.
import docutils.nodes as nodes
).cc @ItayZiv @TheTripleV @Daltz333 @sciencewhiz
A