rstcheck: [Bug] v6.0.0a1 - WARNING: while setting up extension sphinx.addnodes: node class '...' is already registered, its visitors will be overridden
We’re using rstcheck as a pre-commit hook in several of our repos, integrated with https://pre-commit.ci and the v6.0.0a1 release has bumped the version of the hooks, and seems to be breaking the pre-commit.ci runs, see this pre-commit.ci autoupdate PR.
In our .pre-commit.yaml the rstcheck section looks like:
- repo: https://github.com/myint/rstcheck
rev: v6.0.0a1
hooks:
- id: rstcheck
additional_dependencies: [sphinx]
args: ['--config', 'tox.ini']
The configuration in tox.ini is:
[rstcheck]
report = warning
ignore_roles =
pr,
issue,
user
ignore_messages = (Hyperlink target ".*" is not referenced\.$)
ignore_directives =
bibliography,
Running the pre-commit hook at the command line like this succeeds just fine:
pre-commit run --all-files rstcheck
But running rstcheck directly like this (in a Python environment with the sphinx dependencies installed as well):
rstcheck --recursive --config tox.ini ./
Results in the same failure that is showing up on pre-commit.ci:
WARNING: while setting up extension sphinx.addnodes: node class 'toctree' is already registered, its visitors will be overridden
WARNING: while setting up extension sphinx.addnodes: node class 'desc' is already registered, its visitors will be overridden
WARNING: while setting up extension sphinx.addnodes: node class 'desc_signature' is already registered, its visitors will be overridden
WARNING: while setting up extension sphinx.addnodes: node class 'desc_signature_line' is already registered, its visitors will be overridden
WARNING: while setting up extension sphinx.addnodes: node class 'desc_content' is already registered, its visitors will be overridden
WARNING: while setting up extension sphinx.addnodes: node class 'desc_inline' is already registered, its visitors will be overridden
WARNING: while setting up extension sphinx.addnodes: node class 'desc_name' is already registered, its visitors will be overridden
WARNING: while setting up extension sphinx.addnodes: node class 'desc_addname' is already registered, its visitors will be overridden
WARNING: while setting up extension sphinx.addnodes: node class 'desc_type' is already registered, its visitors will be overridden
WARNING: while setting up extension sphinx.addnodes: node class 'desc_returns' is already registered, its visitors will be overridden
WARNING: while setting up extension sphinx.addnodes: node class 'desc_parameterlist' is already registered, its visitors will be overridden
WARNING: while setting up extension sphinx.addnodes: node class 'desc_parameter' is already registered, its visitors will be overridden
WARNING: while setting up extension sphinx.addnodes: node class 'desc_optional' is already registered, its visitors will be overridden
WARNING: while setting up extension sphinx.addnodes: node class 'desc_annotation' is already registered, its visitors will be overridden
WARNING: while setting up extension sphinx.addnodes: node class 'desc_sig_space' is already registered, its visitors will be overridden
WARNING: while setting up extension sphinx.addnodes: node class 'desc_sig_name' is already registered, its visitors will be overridden
WARNING: while setting up extension sphinx.addnodes: node class 'desc_sig_operator' is already registered, its visitors will be overridden
WARNING: while setting up extension sphinx.addnodes: node class 'desc_sig_punctuation' is already registered, its visitors will be overridden
WARNING: while setting up extension sphinx.addnodes: node class 'desc_sig_keyword' is already registered, its visitors will be overridden
WARNING: while setting up extension sphinx.addnodes: node class 'desc_sig_keyword_type' is already registered, its visitors will be overridden
WARNING: while setting up extension sphinx.addnodes: node class 'desc_sig_literal_number' is already registered, its visitors will be overridden
WARNING: while setting up extension sphinx.addnodes: node class 'desc_sig_literal_string' is already registered, its visitors will be overridden
WARNING: while setting up extension sphinx.addnodes: node class 'desc_sig_literal_char' is already registered, its visitors will be overridden
WARNING: while setting up extension sphinx.addnodes: node class 'versionmodified' is already registered, its visitors will be overridden
WARNING: while setting up extension sphinx.addnodes: node class 'seealso' is already registered, its visitors will be overridden
WARNING: while setting up extension sphinx.addnodes: node class 'productionlist' is already registered, its visitors will be overridden
WARNING: while setting up extension sphinx.addnodes: node class 'production' is already registered, its visitors will be overridden
WARNING: while setting up extension sphinx.addnodes: node class 'index' is already registered, its visitors will be overridden
WARNING: while setting up extension sphinx.addnodes: node class 'centered' is already registered, its visitors will be overridden
WARNING: while setting up extension sphinx.addnodes: node class 'acks' is already registered, its visitors will be overridden
WARNING: while setting up extension sphinx.addnodes: node class 'hlist' is already registered, its visitors will be overridden
WARNING: while setting up extension sphinx.addnodes: node class 'hlistcol' is already registered, its visitors will be overridden
WARNING: while setting up extension sphinx.addnodes: node class 'compact_paragraph' is already registered, its visitors will be overridden
WARNING: while setting up extension sphinx.addnodes: node class 'glossary' is already registered, its visitors will be overridden
WARNING: while setting up extension sphinx.addnodes: node class 'only' is already registered, its visitors will be overridden
WARNING: while setting up extension sphinx.addnodes: node class 'start_of_file' is already registered, its visitors will be overridden
WARNING: while setting up extension sphinx.addnodes: node class 'highlightlang' is already registered, its visitors will be overridden
WARNING: while setting up extension sphinx.addnodes: node class 'tabular_col_spec' is already registered, its visitors will be overridden
WARNING: while setting up extension sphinx.addnodes: node class 'pending_xref' is already registered, its visitors will be overridden
WARNING: while setting up extension sphinx.addnodes: node class 'number_reference' is already registered, its visitors will be overridden
WARNING: while setting up extension sphinx.addnodes: node class 'download_reference' is already registered, its visitors will be overridden
WARNING: while setting up extension sphinx.addnodes: node class 'literal_emphasis' is already registered, its visitors will be overridden
WARNING: while setting up extension sphinx.addnodes: node class 'literal_strong' is already registered, its visitors will be overridden
WARNING: while setting up extension sphinx.addnodes: node class 'manpage' is already registered, its visitors will be overridden
WARNING: while setting up extension sphinx.addnodes: node class 'meta' is already registered, its visitors will be overridden
Success! No issues detected.
Downgrading with pip install rstcheck[sphinx]==5.0.0 and re-running the above command results in no output at all.
Is this an expected behavior?
_Originally posted by @zaneselvans in https://github.com/myint/rstcheck/issues/104#issuecomment-1128195986_
About this issue
- Original URL
- State: closed
- Created 2 years ago
- Comments: 18
Commits related to this issue
- only register sphinx nodes once; fixes #113 — committed to rstcheck/rstcheck by Cielquan 2 years ago
- Merge pull request #117 from myint/fix-113-sphinx-addnodes-overwrite-warnings only register sphinx nodes once; fixes #113 — committed to rstcheck/rstcheck by Cielquan 2 years ago
- Merge remote-tracking branch 'origin/master' into docu-upgrade * origin/master: silence markdown lint issue prepare alpha 2 release add sphinx wrapper to main runner's check runner functions ... — committed to rstcheck/rstcheck by Cielquan 2 years ago
Okay I changed the
setup.pyto install from the git branch and rantox -re rstcheckand got:If I put
rstcheck[sphinx]==6.0.0a1insetup.pythen I get:So it looks like the fix is working! 🎉