Bug#1012790: sphinxcontrib-mermaid: please make the build reproducible

Chris Lamb lamby at debian.org
Tue Jun 14 07:20:34 BST 2022


Source: sphinxcontrib-mermaid
Version: 0.7.1-1
Severity: wishlist
Tags: patch
User: reproducible-builds at lists.alioth.debian.org
Usertags: randomness
X-Debbugs-Cc: reproducible-bugs at lists.alioth.debian.org

Hi,

Whilst working on the Reproducible Builds effort [0] we noticed that
sphinxcontrib-mermaid could not be built reproducibly.

This is because the inheritance properties of class diagrams were
collated using a Python set() object, and the contents were not sorted
when serialised.

Patch attached that sorts them prior to inclusion into documentation.

 [0] https://reproducible-builds.org/


Regards,

-- 
      ,''`.
     : :'  :     Chris Lamb
     `. `'`      lamby at debian.org / chris-lamb.co.uk
       `-
-------------- next part --------------
--- a/debian/patches/02-reproducible-build.patch	1970-01-01 01:00:00.000000000 +0100
--- b/debian/patches/02-reproducible-build.patch	2022-06-14 07:18:09.221874416 +0100
@@ -0,0 +1,15 @@
+Description: Make the build reproducible
+Author: Chris Lamb <lamby at debian.org>
+Last-Update: 2022-06-14
+
+--- sphinxcontrib-mermaid-0.7.1.orig/sphinxcontrib/autoclassdiag.py
++++ sphinxcontrib-mermaid-0.7.1/sphinxcontrib/autoclassdiag.py
+@@ -46,7 +46,7 @@ def class_diagram(*cls_or_modules, full=
+ 
+     return "classDiagram\n" + "\n".join(
+             "  %s <|-- %s" % (a, b)
+-                for a, b in inheritances
++                for a, b in sorted(inheritances)
+             )
+ 
+ 
--- a/debian/patches/series	2022-06-14 07:12:43.121361990 +0100
--- b/debian/patches/series	2022-06-14 07:18:17.797888146 +0100
@@ -1 +1,2 @@
 01-fix-docs_conf.patch
+02-reproducible-build.patch


More information about the Reproducible-bugs mailing list