Source: pylint
Version: 1.8.3-1
Severity: wishlist
Tags: patch
User: reproducible-bui...@lists.alioth.debian.org
Usertags: randomness
X-Debbugs-Cc: reproducible-b...@lists.alioth.debian.org

Hi,

Whilst working on the Reproducible Builds effort [0], we noticed
that pylint could not be built reproducibly.

This is because it iterates over a set in a nondeterminstic order
to generate the documentation.

Patch attached.

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


Regards,

-- 
      ,''`.
     : :'  :     Chris Lamb
     `. `'`      la...@debian.org / chris-lamb.co.uk
       `-
--- a/debian/patches/doc_makefile_python3.patch 2018-04-02 08:41:51.462802526 
+0100
--- b/debian/patches/doc_makefile_python3.patch 2018-04-02 09:37:28.535832165 
+0100
@@ -1,5 +1,5 @@
---- a/doc/Makefile
-+++ b/doc/Makefile
+--- pylint-1.8.3.orig/doc/Makefile
++++ pylint-1.8.3/doc/Makefile
 @@ -137,13 +137,13 @@ extensions.rst: ../pylint/utils.py
  extensions.rst: $(shell find ../pylint/extensions -type f -regex '.*\.py')
  extensions.rst: $(shell find ../pylint/extensions -type f -regex '.*\.rst')
--- a/debian/patches/reproducible_build.patch   1970-01-01 01:00:00.000000000 
+0100
--- b/debian/patches/reproducible_build.patch   2018-04-02 09:47:33.782622501 
+0100
@@ -0,0 +1,15 @@
+Description: Make the build reproducible
+Author: Chris Lamb <la...@debian.org>
+Last-Update: 2018-04-02
+
+--- pylint-1.8.3.orig/pylint/checkers/base.py
++++ pylint-1.8.3/pylint/checkers/base.py
+@@ -1260,7 +1260,7 @@ DEFAULT_NAMING_STYLES = {
+ 
+ def _create_naming_options():
+     name_options = []
+-    for name_type in KNOWN_NAME_TYPES:
++    for name_type in sorted(KNOWN_NAME_TYPES):
+         human_readable_name = HUMAN_READABLE_TYPES[name_type]
+         default_style = DEFAULT_NAMING_STYLES[name_type]
+         name_type = name_type.replace('_', '-')
--- a/debian/patches/series     2018-04-02 08:41:51.462802526 +0100
--- b/debian/patches/series     2018-04-02 09:47:32.778617925 +0100
@@ -1 +1,2 @@
 doc_makefile_python3.patch
+reproducible_build.patch

Reply via email to