Skip to main content

Check for stylistic and formal issues in .rst and .py files included in the documentation.

Project description

Sphinx Lint

PyPI Monthly downloads Supported Python Version GitHub Workflow Status

Sphinx Lint is based on rstlint.py from CPython.

What is Sphinx Lint, what is it not?

sphinx-lint should:

  • be reasonably fast so it's comfortable to use as a linter in your editor.
  • be usable on a single file.
  • not give any false positives (probably a utopia, but let's try).
  • not spend too much effort finding errors that sphinx-build already finds (or can easily find).
  • focus on finding errors that are not visible to sphinx-build.

Known issues

Currently Sphinx Lint can't work with tables, there's no understanding of how linesplit works in tables, like:

   +-----------------------------------------+-----------------------------+---------------+
   | Method                                  | Checks that                 | New in        |
   +=========================================+=============================+===============+
   | :meth:`assertEqual(a, b)                | ``a == b``                  |               |
   | <TestCase.assertEqual>`                 |                             |               |
   +-----------------------------------------+-----------------------------+---------------+

as Sphinx Lint works line by line it will inevitably think the :meth: role is not closed properly.

To avoid false positives, some rules are skipped if we're in a table.

Releasing

One should use the populate-xpass.sh script before running tests before releasing, to avoid creating a release introducing false positives.

License

As this script was in the CPython repository the license is the Python Software Foundation Licence Version 2, see the LICENSE file for a full version.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

sphinx-lint-0.6.1.tar.gz (11.5 kB view details)

Uploaded Source

Built Distribution

sphinx_lint-0.6.1-py3-none-any.whl (11.9 kB view details)

Uploaded Python 3

File details

Details for the file sphinx-lint-0.6.1.tar.gz.

File metadata

  • Download URL: sphinx-lint-0.6.1.tar.gz
  • Upload date:
  • Size: 11.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.0 CPython/3.10.5

File hashes

Hashes for sphinx-lint-0.6.1.tar.gz
Algorithm Hash digest
SHA256 69037de238bf9f2ff82c24bd7cdffc3b1860402cacb39974d56e624de28c86db
MD5 da712a3261efe8fef8cf8757f3690e1a
BLAKE2b-256 0e806199ff95c2eb8ac114fc0a3f0ccf286a8d8eb5aae934af2feba132ffa89b

See more details on using hashes here.

Provenance

File details

Details for the file sphinx_lint-0.6.1-py3-none-any.whl.

File metadata

  • Download URL: sphinx_lint-0.6.1-py3-none-any.whl
  • Upload date:
  • Size: 11.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.0 CPython/3.10.5

File hashes

Hashes for sphinx_lint-0.6.1-py3-none-any.whl
Algorithm Hash digest
SHA256 deca1fabaecc6b27f8f1ea3e6165f20fbed7ecdc8cc741b72e360a323572cb17
MD5 5f85f708233517d5710f2e1c520494e0
BLAKE2b-256 6f782f98bd49321d3fda9799ad99e54c74e0f6ff311ddfc870851892e845dffd

See more details on using hashes here.

Provenance

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page