Package: release.debian.org
Severity: normal
User: release.debian....@packages.debian.org
Usertags: unblock

Dear Release team,

Please unblock package sphinx.

[ Reason ]
It fixes bug #983858 which prevented use of dh_sphinxdoc with "singlehtml"
build format (when everything is built into a single HTML page).

dh_sphinxdoc is a helper tool that takes care of symlinking static JS
files, adding the needed dependencies and doing sanity checks.

[ Impact ]
Some packages that want to use singlehtml format (e.g. python3-defaults)
will have to either do things manually, or ship unsymlinked copies of Sphinx
JS code.

[ Tests ]
It is easy to test this manually. Here is a simple test case based on
mathjax-docs package:

- Add "-b singlehtml" to the sphinx-build invokation in debian/rules.
- Build the package.
- Look at dh_sphinxdoc output.

Without this fix, you get "dh_sphinxdoc: warning: Sphinx documentation not
found". And then lots of Lintian embedded-javascript-library and
package-contains-python-doctree-file warnings.

With the fix, all is fine (except a couple of harmless warnings about unknown
JavaScript code that dh_sphinxdoc cannot symlink).

[ Risks ]
Sphinx is a key package but the fix is very trivial.

[ Checklist ]
  [x] all changes are documented in the d/changelog
  [x] I reviewed all changes and I approve them
  [x] attach debdiff against the package in testing

[ Other info ]
The fix is adjusting the regex to not require type="text/javascript"
attribute. Sphinx does not add that attribute since version 2.4.0:
https://github.com/sphinx-doc/sphinx/pull/6925.

dh_sphinxdoc will still allow that attribute to be present, which may be
needed for packages or themes using their own templates.

unblock sphinx/3.4.3-2

--
Dmitry Shachnev
diff -Nru sphinx-3.4.3/debian/changelog sphinx-3.4.3/debian/changelog
--- sphinx-3.4.3/debian/changelog	2021-01-08 20:11:19.000000000 +0300
+++ sphinx-3.4.3/debian/changelog	2021-03-08 21:40:25.000000000 +0300
@@ -1,3 +1,10 @@
+sphinx (3.4.3-2) unstable; urgency=medium
+
+  * dh_sphinxdoc: Fix the script tag regex used in singlehtml detection
+    (closes: #983858).
+
+ -- Dmitry Shachnev <mity...@debian.org>  Mon, 08 Mar 2021 21:40:25 +0300
+
 sphinx (3.4.3-1) unstable; urgency=medium
 
   * New upstream release.
diff -Nru sphinx-3.4.3/debian/dh-sphinxdoc/dh_sphinxdoc sphinx-3.4.3/debian/dh-sphinxdoc/dh_sphinxdoc
--- sphinx-3.4.3/debian/dh-sphinxdoc/dh_sphinxdoc	2021-01-08 20:11:19.000000000 +0300
+++ sphinx-3.4.3/debian/dh-sphinxdoc/dh_sphinxdoc	2021-03-08 21:40:25.000000000 +0300
@@ -211,7 +211,7 @@
         open(my $fh, '<', $html_file) or error("cannot open $html_file");
         while (my $line = <$fh>)
         {
-            if ($line =~ /<script type="text\/javascript" src="_static\/doctools.js">/)
+            if ($line =~ /<script(?: type="text\/javascript")? src="_static\/doctools.js">/)
             {
                 push @sphinx_html_files, $html_file;
                 last;

Attachment: signature.asc
Description: PGP signature

Reply via email to