Skip to main content

A Sphinx extension for linking to your project's issue tracker

Project description

pypi badge travis-ci status Code style: Black

A Sphinx extension for linking to your project’s issue tracker. Includes roles for linking to issues, pull requests, user profiles, with built-in support for GitHub (though this works with other services).

Example

For an example usage, check out marshmallow’s changelog, which makes use of the roles in this library.

Installation and Configuration

pip install sphinx-issues

Add sphinx_issues to extensions in your conf.py. If your project is on GitHub, add the issues_github_path config variable. Otherwise, use issues_uri, issues_pr_uri, and issues_commit_uri.

# docs/conf.py

# ...
extensions = [
    # ...
    "sphinx_issues"
]

# GitHub repo
issues_github_path = "sloria/marshmallow"

# equivalent to
issues_uri = "https://github.com/sloria/marshmallow/issues/{issue}"
issues_pr_uri = "https://github.com/sloria/marshmallow/pull/{pr}"
issues_commit_uri = "https://github.com/sloria/marshmallow/commit/{commit}"

Usage

Use the :issue: and :pr: roles in your docs like so:

See issue :issue:`42`

See issues :issue:`12,13`

See :issue:`sloria/konch#45`.

See PR :pr:`58`

Use the :user: role in your docs to link to user profiles (GitHub by default, but can be configured via the issues_user_uri config variable).

Thanks to :user:`bitprophet` for the idea!

You can also use explicit names if you want to use a different name than the github user name:

This change is due to :user:`Andreas Mueller <amueller>`.

Use the :commit: role to link to commits.

Fixed in :commit:`6bb9124d5e9dbb2f7b52864c3d8af7feb1b69403`.

Use the :cve: role to link to CVEs on https://cve.mitre.org.

:cve:`CVE-2018-17175` - Addresses possible vulnerability when...

Use the :cwe: role to link to CWEs on https://cwe.mitre.org.

:cwe:`CWE-787` - The software writes data past the end, or...

Credits

Credit goes to Jeff Forcier for his work on the releases extension, which is a full-featured solution for generating changelogs. I just needed a quick way to reference GitHub issues in my docs, so I yoinked the bits that I needed.

License

MIT licensed. See the bundled LICENSE file for more details.

Changelog

2.0.0 (2021-01-01)

  • Drop support for Python 2.7 and 3.5.

  • Test against Python 3.8 to 3.10.

  • Add :cwe: role for linking to CVEs on https://cwe.mitre.org. Thanks @hugovk for the PR.

1.2.0 (2018-12-26)

  • Add :commit: role for linking to commits.

  • Add support for linking to external repos.

  • Test against Python 3.7.

1.1.0 (2018-09-18)

1.0.0 (2018-07-14)

  • Add :pr: role. Thanks @jnotham for the suggestion.

  • Drop support for Python 3.4.

0.4.0 (2017-11-25)

  • Raise ValueError if neither issues_uri nor issues_github_path is set. Thanks @jnothman for the PR.

  • Drop support for Python 2.6 and 3.3.

0.3.1 (2017-01-16)

  • setup returns metadata, preventing warnings about parallel reads and writes. Thanks @jfinkels for reporting.

0.3.0 (2016-10-20)

  • Support anchor text for :user: role. Thanks @jnothman for the suggestion and thanks @amueller for the PR.

0.2.0 (2014-12-22)

  • Add :user: role for linking to GitHub user profiles.

0.1.0 (2014-12-21)

  • Initial release.

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-issues-2.0.0.tar.gz (6.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

sphinx_issues-2.0.0-py3-none-any.whl (6.0 kB view details)

Uploaded Python 3

File details

Details for the file sphinx-issues-2.0.0.tar.gz.

File metadata

  • Download URL: sphinx-issues-2.0.0.tar.gz
  • Upload date:
  • Size: 6.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.7.1 importlib_metadata/4.10.0 pkginfo/1.8.2 requests/2.24.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.0

File hashes

Hashes for sphinx-issues-2.0.0.tar.gz
Algorithm Hash digest
SHA256 16aa6967739b100abdac2e4145928ce79f6492e20023eca8e6a85e505ad2b3cb
MD5 6fc24c46fec55bd131ed38d8021e042c
BLAKE2b-256 990d1f87b6281c47566a23d7c4d9e2454221609ade118e860c9dd00a4ea6f1de

See more details on using hashes here.

File details

Details for the file sphinx_issues-2.0.0-py3-none-any.whl.

File metadata

  • Download URL: sphinx_issues-2.0.0-py3-none-any.whl
  • Upload date:
  • Size: 6.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.7.1 importlib_metadata/4.10.0 pkginfo/1.8.2 requests/2.24.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.0

File hashes

Hashes for sphinx_issues-2.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 138f66916eeb3319d68285b1ddd2de987ca1bec1b7a1c01b30e5595e72bb6e42
MD5 3e79e298e2725768f5f38c669843e206
BLAKE2b-256 af94c2a6e3440667ea794392c146e5b45e8404dbd98b9bf2686abb39b2376444

See more details on using hashes here.

Supported by

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