Browse Source

[5.0.x] Fixed docs build on Sphinx 8.1+.

Sphinx 8.1 added :cve: role, so there is no need to define it in Django:
- https://github.com/sphinx-doc/sphinx/pull/11781

This also changes used URL to the one used by Python and soonish to be
used by Sphinx itself:
- https://github.com/sphinx-doc/sphinx/pull/13006

Backport of 263f7319192b217c4e3b1eea0ea7809836392bbc from main.
Mariusz Felisiak 5 months ago
parent
commit
c8ce36bb7b
1 changed files with 5 additions and 1 deletions
  1. 5 1
      docs/conf.py

+ 5 - 1
docs/conf.py

@@ -12,6 +12,8 @@
 import sys
 from os.path import abspath, dirname, join
 
+from sphinx import version_info as sphinx_version
+
 # Workaround for sphinx-build recursion limit overflow:
 # pickle.dump(doctree, f, pickle.HIGHEST_PROTOCOL)
 #  RuntimeError: maximum recursion depth exceeded while pickling an object
@@ -133,13 +135,15 @@ django_next_version = "5.1"
 extlinks = {
     "bpo": ("https://bugs.python.org/issue?@action=redirect&bpo=%s", "bpo-%s"),
     "commit": ("https://github.com/django/django/commit/%s", "%s"),
-    "cve": ("https://nvd.nist.gov/vuln/detail/CVE-%s", "CVE-%s"),
     "pypi": ("https://pypi.org/project/%s/", "%s"),
     # A file or directory. GitHub redirects from blob to tree if needed.
     "source": ("https://github.com/django/django/blob/main/%s", "%s"),
     "ticket": ("https://code.djangoproject.com/ticket/%s", "#%s"),
 }
 
+if sphinx_version < (8, 1):
+    extlinks["cve"] = ("https://www.cve.org/CVERecord?id=CVE-%s", "CVE-%s")
+
 # The language for content autogenerated by Sphinx. Refer to documentation
 # for a list of supported languages.
 # language = None