Your message dated Fri, 29 May 2020 09:23:23 +0100 with message-id <c9d045ce-2e2a-4817-9ee9-b74a521275c3@sloti26t01> and subject line Re: diffoscope: improve .changes diffs has caused the Debian Bug report #891867, regarding diffoscope: improve .changes diffs to be marked as done.
This means that you claim that the problem has been dealt with. If this is not the case it is now your responsibility to reopen the Bug report if necessary, and/or fix the problem forthwith. (NB: If you are a system administrator and have no idea what this message is talking about, this may indicate a serious mail system misconfiguration somewhere. Please contact [email protected] immediately.) -- 891867: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=891867 Debian Bug Tracking System Contact [email protected] with problems
--- Begin Message ---Package: diffoscope Version: 91 Severity: wishlist Tags: patch Hi awesome reproducible team! I'm working on adding more build profiles and diffoscope + reproducible builds turn out to be an awesome tool in validating that my profiles only drop packages and never change package contents. :) Now I've run into a strange corner case with diffing .changes files. If the last entry in a Checksums-Sha256 field is removed, new last entry is removed and added. For example: ├── Files │ @@ -1,12 +1,8 @@ │ │ a6434caf7853f0e84013e6004b934351 10496 debug optional cracklib-runtime-dbgsym_2.9.2-5.1_amd64.deb │ 93d547da959c0080bb45cc05d354539f 148972 admin optional cracklib-runtime_2.9.2-5.1_amd64.deb │ - 608dbc69affb8158f7f203e3c83e5595 11084 libs optional cracklib2_2.9.2-5.1_amd64.buildinfo │ + 1941a0fd2dbf8b3df8536caab1895993 9042 libs optional cracklib2_2.9.2-5.1_amd64.buildinfo │ b2010c8e3498d469ae3b5bf5e5469da1 21416 debug optional libcrack2-dbgsym_2.9.2-5.1_amd64.deb │ f099f5629a8b0cad9e5fba5ded9f88d9 32052 libdevel extra libcrack2-dev_2.9.2-5.1_amd64.deb │ e3b100bcf99561c965cc5da8ef58e206 120108 debian-installer optional libcrack2-udeb_2.9.2-5.1_amd64.udeb │ - e04c3f5f14a2c8eb2022ba8eb1d5d915 54788 libs optional libcrack2_2.9.2-5.1_amd64.deb │ - 85fa278ff743cf93ead1075664df42f2 12880 debug optional python-cracklib-dbgsym_2.9.2-5.1_amd64.deb │ - 674e3f26f4301f5c253fddb0366a3832 23392 python optional python-cracklib_2.9.2-5.1_amd64.deb │ - c1bceeb542a7dbed7d2989fd93bba60b 14160 debug optional python3-cracklib-dbgsym_2.9.2-5.1_amd64.deb │ - b9868203bdda021286129428b5eb3e55 23424 python optional python3-cracklib_2.9.2-5.1_amd64.deb │ + e04c3f5f14a2c8eb2022ba8eb1d5d915 54788 libs optional libcrack2_2.9.2-5.1_amd64.deb The DotChangesFile comaprator performs a super call into DebControlFile, which pulls the Checksums-Sha256 field out of the parsed deb822 file. In doing so it strips the trailing newline and this what makes for the difference above. I propose working around the issue with the following patch: --- a/diffoscope/comparators/debian.py +++ b/diffoscope/comparators/debian.py @@ -142,16 +142,16 @@ # Compare Files as string if self.deb822.get('Files'): differences.append(Difference.from_text( - self.deb822.get_as_string('Files'), - other.deb822.get_as_string('Files'), + self.deb822.get_as_string('Files') + "\n", + other.deb822.get_as_string('Files') + "\n", self.path, other.path, source='Files', )) else: differences.append(Difference.from_text( - self.deb822.get_as_string('Checksums-Sha256'), - other.deb822.get_as_string('Checksums-Sha256'), + self.deb822.get_as_string('Checksums-Sha256') + "\n", + other.deb822.get_as_string('Checksums-Sha256') + "\n", self.path, other.path, source='Checksums-Sha256', Many thanks to Mattia Rizzolo for pointing precisely at the relevant source code. Helmut
--- End Message ---
--- Begin Message ---Hi, Closing as per: https://salsa.debian.org/reproducible-builds/diffoscope/-/issues/30#note_168909 Regards, -- ,''`. : :' : Chris Lamb `. `'` [email protected] / chris-lamb.co.uk `-
--- End Message ---
_______________________________________________ Reproducible-builds mailing list [email protected] https://alioth-lists.debian.net/cgi-bin/mailman/listinfo/reproducible-builds
