[Reproducible-builds] Bug#833774: mopidy-podcast: FTBFS under some timezones (eg. GMT-14)

2016-08-08 Thread Chris Lamb
Source: mopidy-podcast
Version: 2.0.0-1
Severity: serious
Justification: fails to build from source
User: reproducible-builds@lists.alioth.debian.org
Usertags: ftbfs
X-Debbugs-Cc: reproducible-builds@lists.alioth.debian.org

Dear Maintainer,

mopidy-podcast fails to build from source in unstable/amd64 undersome timezones 
(eg. TZ="/usr/share/zoneinfo/Etc/GMT-14"):

  [..]

  E   AssertionError: /usr/share/zoneinfo/Etc/GMT-14
  
  ../../../mopidy_podcast/feeds.py:144: AssertionError
  _ test_tracks 
__
  
  rss = 
  tracks = [Track(album=Album(artists=[Artist(name='John Doe')], name=u'All 
About Everythi...ces', track_no=3, uri='podcast+http:...hn Doe')], name=u'All 
About 
Everythi...p://www.example.com/everything.xml#http://example.com/everything/Episode1.mp3')]
  
  def test_tracks(rss, tracks):
  >   assert list(rss.tracks(newest_first=True)) == tracks
  
  ../../../tests/test_rss.py:120: 
  _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
_ 
  ../../../mopidy_podcast/feeds.py:105: in tracks
  date=self.__date(item),
  _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
_ 
  
  cls = 
  etree = 
  
  @classmethod
  def __date(cls, etree):
  text = etree.findtext('pubDate')
  try:
  timestamp = email.utils.mktime_tz(email.utils.parsedate_tz(text))
  except AttributeError:
  return None
  except TypeError:
  return None
  else:
  import os
  >   assert False, os.environ['TZ']
  E   AssertionError: /usr/share/zoneinfo/Etc/GMT-14
  
  ../../../mopidy_podcast/feeds.py:144: AssertionError
  = 4 failed, 26 passed in 0.24 seconds 
==
  E: pybuild pybuild:274: test: plugin distutils failed with: exit code=1: cd 
/home/lamby/temp/cdt.20160808154113.NGQgPtQCw3/mopidy-podcast-2.0.0/.pybuild/pythonX.Y_2.7/build;
 python2.7 -m pytest {dir}/tests/
  dh_auto_test: pybuild --test -i python{version} -p 2.7 returned exit code 13
  debian/rules:11: recipe for target 'build' failed
  make: *** [build] Error 25

  [..]

The full build log is attached.


Regards,

-- 
  ,''`.
 : :'  : Chris Lamb
 `. `'`  la...@debian.org / chris-lamb.co.uk
   `-


mopidy-podcast.2.0.0-1.unstable.amd64.log.txt.gz
Description: Binary data
___
Reproducible-builds mailing list
Reproducible-builds@lists.alioth.debian.org
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/reproducible-builds

[Reproducible-builds] Bug#833818: dnssec-trigger: please make the build reproducible

2016-08-08 Thread Chris Lamb
Source: dnssec-trigger
Version: 0.13~svn685-5
Severity: wishlist
Tags: patch
User: reproducible-builds@lists.alioth.debian.org
Usertags: timestamps
X-Debbugs-Cc: reproducible-builds@lists.alioth.debian.org

Hi,

Whilst working on the "reproducible builds" effort [0], we noticed
that dnssec-trigger could not be built reproducibly.

Patch attached.

 [0] https://wiki.debian.org/ReproducibleBuilds


Regards,

-- 
  ,''`.
 : :'  : Chris Lamb
 `. `'`  la...@debian.org / chris-lamb.co.uk
   `-
--- a/debian/patches/reproducible-build.patch   1970-01-01 01:00:00.0 
+0100
--- b/debian/patches/reproducible-build.patch   2016-08-08 23:33:50.479553264 
+0100
@@ -0,0 +1,23 @@
+Description: Make the build reproducible
+Author: Chris Lamb 
+Last-Update: 2016-08-08
+
+--- dnssec-trigger-0.13~svn685.orig/Makefile.in
 dnssec-trigger-0.13~svn685/Makefile.in
+@@ -54,7 +54,7 @@ pidfile=@pidfile@
+ login_command=@login_command@
+ login_location=@login_location@
+ unbound_control_path=@unbound_control_path@
+-DATE=$(shell date +%F -r $(srcdir)/Changelog)
++DATE=$(shell date -u +%F -r $(srcdir)/Changelog)
+ 
+ do_subst = sed -e 's,[@]SHELL[@],$(SHELL),g' \
+  -e 's,[@]PACKAGE[@],$(PACKAGE),g' \
+@@ -96,7 +96,6 @@ LIBOBJS=@LIBOBJS@
+ RUNTIME_PATH=@RUNTIME_PATH@
+ DEPFLAG=@DEPFLAG@
+ EXPORT_DYNAMIC=@EXPORT_DYNAMIC@
+-DATE=$(shell date +%Y%m%d)
+ BUILD=build/
+ 
+ WINDRES=@WINDRES@
--- a/debian/patches/series 2016-08-08 23:09:05.211264776 +0100
--- b/debian/patches/series 2016-08-08 23:22:49.654088164 +0100
@@ -4,3 +4,4 @@
 strip-version-number-from-config.patch
 fix-desktop-file-dirs.patch
 dnssec-trigger-nm-1.1.90.patch
+reproducible-build.patch
--- a/debian/rules  2016-08-08 23:09:05.211264776 +0100
--- b/debian/rules  2016-08-08 23:34:02.875655750 +0100
@@ -9,6 +9,8 @@
 export DEB_CFLAGS_MAINT_APPEND  = -Wall -pedantic -g -pipe $(if $(findstring 
noopt,$(DEB_BUILD_OPTIONS)),-O0,-O2)
 export DEB_LDFLAGS_MAINT_APPEND = -Wl,-z,defs -Wl,--as-needed
 
+export SHELL = /bin/sh
+
 %:
dh $@ --with autoreconf,systemd,python2
 
___
Reproducible-builds mailing list
Reproducible-builds@lists.alioth.debian.org
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/reproducible-builds

[Reproducible-builds] Bug#833819: n2n: please make the build reproducible

2016-08-08 Thread Chris Lamb
Source: n2n
Version: 1.3.1~svn3789-5
Severity: wishlist
Tags: patch
User: reproducible-builds@lists.alioth.debian.org
Usertags: timestamps
X-Debbugs-Cc: reproducible-builds@lists.alioth.debian.org

Hi,

Whilst working on the "reproducible builds" effort [0], we noticed
that n2n could not be built reproducibly.

Patch attached.

 [0] https://wiki.debian.org/ReproducibleBuilds


Regards,

-- 
  ,''`.
 : :'  : Chris Lamb
 `. `'`  la...@debian.org / chris-lamb.co.uk
   `-
--- a/debian/patches/02-reproducible-build.diff 1970-01-01 01:00:00.0 
+0100
--- b/debian/patches/02-reproducible-build.diff 2016-08-08 23:39:02.090124318 
+0100
@@ -0,0 +1,18 @@
+Description: Make the build reproducible
+Author: Chris Lamb 
+Last-Update: 2016-08-08
+
+--- n2n-1.3.1~svn3789.orig/Makefile
 n2n-1.3.1~svn3789/Makefile
+@@ -57,7 +57,11 @@ $(N2N_LIB): $(N2N_OBJS)
+ version.c:
+   @echo $(N2N_VERSION) | sed -e 's/.*/const char * version   = "&";/' > 
version.c
+   @uname -p | sed -e 's/.*/const char * osName= "&";/' >> version.c
++ifdef SOURCE_DATE_EPOCH
++  @LC_ALL=C date --utc --date="@$(SOURCE_DATE_EPOCH)" +"%D %r" | sed -e 
's/.*/const char * buildDate = "&";/' >> version.c
++else
+   @date +"%D %r" | sed -e 's/.*/const char * buildDate = "&";/' >> 
version.c
++endif
+ 
+ clean:
+   rm -rf $(N2N_OBJS) $(N2N_LIB) $(APPS) $(DOCS) *.dSYM *~ version.c
--- a/debian/patches/series 2016-08-08 23:36:03.288651222 +0100
--- b/debian/patches/series 2016-08-08 23:40:33.494871046 +0100
@@ -1,3 +1,4 @@
 01-edge.8.diff
 upstream-svn4235.patch
 makefile.patch
+02-reproducible-build.diff
___
Reproducible-builds mailing list
Reproducible-builds@lists.alioth.debian.org
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/reproducible-builds

[Reproducible-builds] Bug#833714: ucto: FTBFS: libucto.so: undefined reference to `folia::UnicodeToUTF8[abi:cxx11](icu_57::UnicodeString const&)'

2016-08-08 Thread Chris Lamb
Source: ucto
Version: 0.8.0-2
Severity: serious
Justification: fails to build from source
User: reproducible-builds@lists.alioth.debian.org
Usertags: ftbfs
X-Debbugs-Cc: reproducible-builds@lists.alioth.debian.org

Dear Maintainer,

ucto fails to build from source in unstable/amd64:

  [..]

  libtool: link: ( cd ".libs" && rm -f "libucto.la" && ln -s "../libucto.la" 
"libucto.la" )
  g++ -DHAVE_CONFIG_H -I. -I..  -I../include -Wdate-time -D_FORTIFY_SOURCE=2 
-DSYSCONF_PATH=\"/etc\" -I/usr/include/libxml2 -g -O2 
-fdebug-prefix-map=/home/lamby/temp/cdt.20160808092914.EeWNGCIr8D.ucto/ucto-0.8.0=.
 -fstack-protector-strong -Wformat -Werror=format-security -I/usr/include  
-I/usr/include/libxml2 -fopenmp -c -o ucto.o ucto.cxx
  /bin/bash ../libtool  --tag=CXX   --mode=link g++ -DSYSCONF_PATH=\"/etc\" 
-I/usr/include/libxml2 -g -O2 
-fdebug-prefix-map=/home/lamby/temp/cdt.20160808092914.EeWNGCIr8D.ucto/ucto-0.8.0=.
 -fstack-protector-strong -Wformat -Werror=format-security -I/usr/include  
-I/usr/include/libxml2 -fopenmp  -Wl,-z,relro -o ucto ucto.o libucto.la -lfolia 
-L/usr/lib/x86_64-linux-gnu  -licui18n -licuuc -licudata   -licuio   -lxml2 
-lticcutils
  libtool: link: g++ -DSYSCONF_PATH=\"/etc\" -I/usr/include/libxml2 -g -O2 
-fdebug-prefix-map=/home/lamby/temp/cdt.20160808092914.EeWNGCIr8D.ucto/ucto-0.8.0=.
 -fstack-protector-strong -Wformat -Werror=format-security -I/usr/include 
-I/usr/include/libxml2 -fopenmp -Wl,-z -Wl,relro -o .libs/ucto ucto.o  
./.libs/libucto.so -lfolia -L/usr/lib/x86_64-linux-gnu -licui18n -licuuc 
-licudata -licuio -lxml2 -lticcutils -fopenmp
  /usr/bin/ld: warning: libicui18n.so.55, needed by 
/usr/lib/x86_64-linux-gnu/libfolia.so, may conflict with libicui18n.so.57
  /usr/bin/ld: warning: libicuuc.so.55, needed by 
/usr/lib/x86_64-linux-gnu/libfolia.so, may conflict with libicuuc.so.57
  /usr/bin/ld: warning: libicudata.so.55, needed by 
/usr/lib/x86_64-linux-gnu/libfolia.so, may conflict with libicudata.so.57
  /usr/bin/ld: warning: libicuio.so.55, needed by 
/usr/lib/x86_64-linux-gnu/libfolia.so, may conflict with libicuio.so.57
  /usr/lib/x86_64-linux-gnu/libfolia.so: undefined reference to 
`TiCC::split_at(std::__cxx11::basic_string const&, std::vector, 
std::allocator > >&, std::__cxx11::basic_string const&)'
  ./.libs/libucto.so: undefined reference to 
`folia::UnicodeToUTF8[abi:cxx11](icu_57::UnicodeString const&)'
  /usr/lib/x86_64-linux-gnu/libfolia.so: undefined reference to 
`TiCC::split_at_first_of(std::__cxx11::basic_string const&, 
std::vector, std::allocator > >&, 
std::__cxx11::basic_string 
const&)'
  collect2: error: ld returned 1 exit status
  Makefile:665: recipe for target 'ucto' failed
  make[3]: *** [ucto] Error 1
  make[3]: Leaving directory 
'/home/lamby/temp/cdt.20160808092914.EeWNGCIr8D.ucto/ucto-0.8.0/src'
  Makefile:481: recipe for target 'all-recursive' failed
  make[2]: *** [all-recursive] Error 1
  make[2]: Leaving directory 
'/home/lamby/temp/cdt.20160808092914.EeWNGCIr8D.ucto/ucto-0.8.0'
  Makefile:388: recipe for target 'all' failed
  make[1]: *** [all] Error 2
  make[1]: Leaving directory 
'/home/lamby/temp/cdt.20160808092914.EeWNGCIr8D.ucto/ucto-0.8.0'
  /usr/share/cdbs/1/class/makefile.mk:77: recipe for target 
'debian/stamp-makefile-build' failed
  make: *** [debian/stamp-makefile-build] Error 2

  [..]

The full build log is attached.


Regards,

-- 
  ,''`.
 : :'  : Chris Lamb
 `. `'`  la...@debian.org / chris-lamb.co.uk
   `-


ucto.0.8.0-2.unstable.amd64.log.txt.gz
Description: Binary data
___
Reproducible-builds mailing list
Reproducible-builds@lists.alioth.debian.org
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/reproducible-builds

Re: [Reproducible-builds] [Popcon-developers] Bug#833695: popularity-contest: http://popcon.debian.org/all-popcon-results.txt.gz containso

2016-08-08 Thread Holger Levsen
reopen 833695
severity 833695 important
clone 833695 -1
reassign -1 python-popcon
severity -1 normal
retitle -1 python-popcon must not crash on invalid data
thanks

On Mon, Aug 08, 2016 at 11:34:43AM +0200, Chris Lamb wrote:
> > Please reassign to python-popcon.
> 
> Well, there are perhaps two bugs here, so simply reassigning won't be
> sufficient:
> 
> Firstly, all-popcon-results.txt.gz contains invalid data. I agree that
> the client should not be removed from testing but I could not find a
> suitable pseudo-package for the popcon "web" service.
>
> (The code that generates this file appears to be in the popularity-contest
> source package, hence why I filed it here)

Bill, following this I have reopened the bug and downgraded the
severity. 
 
> Where should this issue be raised? I don't care about the severity, more
> that it gets fixed. How can I help? :)

I also disagree with merely tracking an issue which breaks Debian
infrastrcuture on a mailinglist instead of a proper bug tracker.

Bill, if you really insist #833695 should not be assigned at
popularity-contest then please reassign it to qa.debian.org
pseudo-package.

> Secondly, src:python-popcon assumes valid data. Perhaps. But it would
> still have to raise an error if it could not parse the file so there's
> not much it could reasonably do. It *could* print a nicer exception so
> its easier to track down the problem, but that's purely aesthetic..

agreed, but that still would be nice, thus the cloned bug.


-- 
cheers,
Holger


signature.asc
Description: Digital signature
___
Reproducible-builds mailing list
Reproducible-builds@lists.alioth.debian.org
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/reproducible-builds

[Reproducible-builds] Bug#833738: python-popcon: assumes all-popcon-results.txt.gz is UTF-8

2016-08-08 Thread Chris Lamb
Source: python-popcon
Version: 1.3
Severity: serious
Tags: patch
X-Debbugs-Cc: reproducible-builds@lists.alioth.debian.org

Hi,

Since (at least) 07-Aug-2016 14:04, the all-popcon-results.txt.gz file
contains an invalid line:

Package: libfyba0-dbg   0 2 0 0
--> Package: libf erdp-ommon0 0 0 1
Package: libg++2.8.1.3-dbg  0 0 0 1

That's (currently) line 54869. The "space" on the second line is actually
a 0xa0 character. This is making the package unusable.

$ python3
Python 3.5.2+ (default, Aug  5 2016, 08:07:14) 
[GCC 6.1.1 20160724] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import popcon
>>> popcon.package("foo")
Traceback (most recent call last):
  File "", line 1, in 
  File "/usr/lib/python3/dist-packages/popcon.py", line 145, in package
raw = package_raw(*packages)
  File "/usr/lib/python3/dist-packages/popcon.py", line 189, in package_raw
data = _fetch()
  File "/usr/lib/python3/dist-packages/popcon.py", line 108, in _fetch
txt = _decompress(txt)
  File "/usr/lib/python3/dist-packages/popcon.py", line 134, in _decompress
data = data.decode()
UnicodeDecodeError: 'utf-8' codec can't decode byte 0xa0 in position 3574857: 
invalid start byte

You can see this happening here:

  
https://jenkins.debian.net/view/reproducible/view/problems/job/reproducible_html_notes/


Patch attached. NB. the comment in the lookup section.


Regards,

-- 
  ,''`.
 : :'  : Chris Lamb
 `. `'`  la...@debian.org / chris-lamb.co.uk
   `-
diff --git a/src/popcon.py b/src/popcon.py
index 4f089f0..670c514 100644
--- a/src/popcon.py
+++ b/src/popcon.py
@@ -115,7 +115,7 @@ def _parse(results):
 results = results.splitlines()
 for line in results:
 elems = line.split()
-if elems[0] != "Package:":
+if elems[0] != b"Package:":
 continue
 ans[elems[1]] = Package(*(int(i) for i in elems[2:]))
 return ans
@@ -131,7 +131,6 @@ def _decompress(compressed):
 gzippedstream = io.BytesIO(compressed)
 gzipper = gzip.GzipFile(fileobj=gzippedstream)
 data = gzipper.read()
-data = data.decode()
 return data
 
 
@@ -206,8 +205,11 @@ def package_raw(*packages):
 cached_timestamp = time.time()
 ans = dict()
 for pkg in packages:
-if pkg in data:
-ans[pkg] = data[pkg]
+# Lookup using bytestrings, but always index results by the original so
+# that callsites can look it up.
+lookup = pkg if isinstance(pkg, bytes) else pkg.encode('utf-8')
+if lookup in data:
+ans[pkg] = data[lookup]
 if KEEP_DATA:
 cached_data = data
 return ans
___
Reproducible-builds mailing list
Reproducible-builds@lists.alioth.debian.org
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/reproducible-builds

[Reproducible-builds] Bug#833697: diffoscope: libarchive.exception.ArchiveError when running on two dmg files

2016-08-08 Thread Chris Lamb
> > It seems somewhat cumbersome to do in the code
> 
> istr in some cases it prints the error and return false (so that a
> "lower level" comparator can do the comparison

This is, alas, done inconsistently. Some do it in ``recognizes` (returning
False) and some do it in ``compare_details`` but returning ``[]``

However, most appear to not catch useful errors. :)  I will look into
this and come up with something cleaner.


Regards,

-- 
  ,''`.
 : :'  : Chris Lamb
 `. `'`  la...@debian.org / chris-lamb.co.uk
   `-

___
Reproducible-builds mailing list
Reproducible-builds@lists.alioth.debian.org
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/reproducible-builds


[Reproducible-builds] Bug#833697: diffoscope: libarchive.exception.ArchiveError when running on two dmg files

2016-08-08 Thread Chris Lamb
Hi,

> diffoscope: libarchive.exception.ArchiveError when running on two dmg files

ACK.

Wider question: what's the general diffoscope policy on what to do when the
files are invalid? It seems somewhat cumbersome to do in the code, so I am
inferring that we just blow up in lots of cases we shouldn't, particularly
when using Python module-based tools (vs. external commands).


Regards,

-- 
  ,''`.
 : :'  : Chris Lamb
 `. `'`  la...@debian.org / chris-lamb.co.uk
   `-

___
Reproducible-builds mailing list
Reproducible-builds@lists.alioth.debian.org
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/reproducible-builds


Re: [Reproducible-builds] Bug#833697: diffoscope: libarchive.exception.ArchiveError when running on two dmg files

2016-08-08 Thread Holger Levsen
On Mon, Aug 08, 2016 at 12:23:08PM +0200, Chris Lamb wrote:
> This is, alas, done inconsistently. Some do it in ``recognizes` (returning
> False) and some do it in ``compare_details`` but returning ``[]``
 
this is annoying and should be fixed.

> However, most appear to not catch useful errors. :)  I will look into
> this and come up with something cleaner.

wonderful!


-- 
cheers,
Holger


signature.asc
Description: Digital signature
___
Reproducible-builds mailing list
Reproducible-builds@lists.alioth.debian.org
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/reproducible-builds