Source: webassets Version: 3:0.10.1-2 Severity: wishlist Tags: patch User: reproducible-bui...@lists.alioth.debian.org Usertags: randomness
Hi! While working on the “reproducible builds” effort [1], we have noticed that webassets could not be built reproducibly. The attached patch is sorting the command line arguments so that the help text and therefore the generated manpage are always the same. Once applied, webassets can be built reproducibly in our current experimental framework. Regards, Reiner [1]: https://wiki.debian.org/ReproducibleBuilds
diff --git a/debian/changelog b/debian/changelog index d7c771c..c13ea9b 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,9 @@ +webassets (3:0.10.1-2.0~reproducible1) UNRELEASED; urgency=low + + * Added patch to produce stable help text. + + -- Reiner Herrmann <rei...@reiner-h.de> Sun, 11 Jan 2015 22:02:18 +0100 + webassets (3:0.10.1-2) unstable; urgency=medium * Add breaks field between python3-webassets and python-webassets <= 3:0.9-1 diff --git a/debian/patches/0002-Sort-commandline-arguments.patch b/debian/patches/0002-Sort-commandline-arguments.patch new file mode 100644 index 0000000..013dbc1 --- /dev/null +++ b/debian/patches/0002-Sort-commandline-arguments.patch @@ -0,0 +1,19 @@ +Author: Reiner Herrmann <rei...@reiner-h.de> +Description: Sort commandline arguments to produce stable output + The help text is used to generate a manpage with help2man. + With an unstable argument order the generated manpage will + differ on every build. + +Index: webassets-0.10.1/src/webassets/script.py +=================================================================== +--- webassets-0.10.1.orig/src/webassets/script.py ++++ webassets-0.10.1/src/webassets/script.py +@@ -448,7 +448,7 @@ class GenericArgparseImplementation(obje + + # Add subparsers. + subparsers = parser.add_subparsers(dest='command') +- for command in CommandLineEnvironment.DefaultCommands.keys(): ++ for command in sorted(CommandLineEnvironment.DefaultCommands.keys()): + command_parser = subparsers.add_parser(command) + maker = getattr(self, 'make_%s_parser' % command, False) + if maker: diff --git a/debian/patches/series b/debian/patches/series index e76a3e5..b66ac48 100644 --- a/debian/patches/series +++ b/debian/patches/series @@ -1 +1,2 @@ 0001-Fix-documentation-intersphinx-mapping.patch +0002-Sort-commandline-arguments.patch
signature.asc
Description: OpenPGP digital signature