Update diffoscope to 268

  • Done
  • quality assurance status badge
Details
2 participants
  • Maxim Cournoyer
  • Vagrant Cascadian
Owner
unassigned
Submitted by
Vagrant Cascadian
Severity
normal
V
V
Vagrant Cascadian wrote on 18 May 03:46 +0200
Update diffoscope to 267 (with xz bonus update)
(address . guix-patches@gnu.org)
87r0dzriwi.fsf@wireframe
The upcoming patches update diffoscope to 267, which requires a newer
version of xz to pass the test suites (No, no, not the *evil* versions,
just the same version that is in core-updates, 5.4.5! (although that
version has shadows cast on it too due to involvement of a certain
infamous internet identity, caveat emptor)).

I made a versioned xz variant to avoid a world rebuild so we can update
diffoscope before updating core-updates, hopefully I did it mostly
right... :)

Uhhh... so yeah, send in the clowns... er, patches!

live well,
vagrant
-----BEGIN PGP SIGNATURE-----

iHUEARYKAB0WIQRlgHNhO/zFx+LkXUXcUY/If5cWqgUCZkgIjQAKCRDcUY/If5cW
qkKzAP9FZf/ZXUA9aKlgqRzGUoXIRxBRM5opk3+C7WoJlYjfOwEA26clVgaOTDDH
jdXT5f3Zn5y201EKJ+erezB29c4n5gY=
=wHJ7
-----END PGP SIGNATURE-----

V
V
Vagrant Cascadian wrote on 18 May 03:53 +0200
(address . 71024@debbugs.gnu.org)
87o793rim3.fsf@wireframe
From 1aabeef6612d8b3df66db9bbda7f44896f1a5c94 Mon Sep 17 00:00:00 2001
From: Vagrant Cascadian <vagrant@reproducible-builds.org>
Date: Fri, 17 May 2024 18:33:04 -0700
Subject: [PATCH 1/2] gnu: Add xz-5.4 variant.

* gnu/packages/compression.scm (xz-5.4): New variable.
---
gnu/packages/compression.scm | 15 +++++++++++++++
1 file changed, 15 insertions(+)

Toggle diff (30 lines)
diff --git a/gnu/packages/compression.scm b/gnu/packages/compression.scm
index dd88fce9ca..d89d72c9b7 100644
--- a/gnu/packages/compression.scm
+++ b/gnu/packages/compression.scm
@@ -573,6 +573,21 @@ (define-public xz
(license (list license:gpl2+ license:lgpl2.1+)) ; bits of both
(home-page "https://tukaani.org/xz/")))
+(define-public xz-5.4
+ (package
+ (inherit xz)
+ (name "xz-5.4")
+ (version "5.4.5")
+ (source (origin
+ (method url-fetch)
+ (uri (list (string-append "http://tukaani.org/xz/xz-" version
+ ".tar.gz")
+ (string-append "http://multiprecision.org/guix/xz-"
+ version ".tar.gz")))
+ (sha256
+ (base32
+ "1mmpwl4kg1vs6n653gkaldyn43dpbjh8gpk7sk0gps5f6jwr0p0k"))))))
+
(define-public lhasa
(package
(name "lhasa")

base-commit: e9b25a6c6c626a560d28a1f732e6e5d362d584a4
--
2.39.2
-----BEGIN PGP SIGNATURE-----

iHUEARYKAB0WIQRlgHNhO/zFx+LkXUXcUY/If5cWqgUCZkgKBAAKCRDcUY/If5cW
qqDzAQClfDGdC8UqqD2ea2j/fdUL53wMdapxFsriDZVSVEupfQEAxLWTTXpr4WdB
5B96U3tsn8h0zdVvb0gGIYFVxGJcPQA=
=6NV7
-----END PGP SIGNATURE-----

V
V
Vagrant Cascadian wrote on 18 May 03:53 +0200
(address . 71024@debbugs.gnu.org)
87le47rikz.fsf@wireframe
From a889aaf43ee1d3cc9669bcc80888450bbd3d9ca1 Mon Sep 17 00:00:00 2001
From: Vagrant Cascadian <vagrant@reproducible-builds.org>
Date: Fri, 17 May 2024 17:18:39 -0700
Subject: [PATCH 2/2] gnu: diffoscope: Update to 267.

* gnu/packages/diffoscope.scm (diffoscope): Update to 267.
[native-inputs]: Use xz-5.4.
---
gnu/packages/diffoscope.scm | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)

Toggle diff (33 lines)
diff --git a/gnu/packages/diffoscope.scm b/gnu/packages/diffoscope.scm
index fd2146456d..83c8f84967 100644
--- a/gnu/packages/diffoscope.scm
+++ b/gnu/packages/diffoscope.scm
@@ -75,7 +75,7 @@ (define-module (gnu packages diffoscope)
(define-public diffoscope
(package
(name "diffoscope")
- (version "265")
+ (version "267")
(source
(origin
(method git-fetch)
@@ -84,7 +84,7 @@ (define-public diffoscope
(commit version)))
(file-name (git-file-name name version))
(sha256
- (base32 "0fdaxihmzz1jf9ay8pwr1z60b2rnihawp4js4nw9l7wv0gij9vpg"))))
+ (base32 "19iyx846rrz5j8fx4q9sx4p3mr8h7g7190ayjmzl8hr2y9knmy74"))))
(build-system python-build-system)
(arguments
(list
@@ -219,7 +219,7 @@ (define (bin command)
unzip
wabt
xxd
- xz
+ xz-5.4 ; tests require newer version
zip
zstd)
--
2.39.2
-----BEGIN PGP SIGNATURE-----

iHUEARYKAB0WIQRlgHNhO/zFx+LkXUXcUY/If5cWqgUCZkgKLAAKCRDcUY/If5cW
qmg8AQDvRIbhX6HG480cF2L7tq5VI59aQnmwyARXsh0CaXwdUAD+ICJvNyPlXuyP
kridGKAHbDBk1a3Xt0pjLhMzW/rf8wM=
=8Ya4
-----END PGP SIGNATURE-----

V
V
Vagrant Cascadian wrote on 18 May 04:01 +0200
(address . 71024@debbugs.gnu.org)
87ikzbri8y.fsf@wireframe
On 2024-05-17, Vagrant Cascadian wrote:
Toggle quote (3 lines)
> * gnu/packages/diffoscope.scm (diffoscope): Update to 267.
> [native-inputs]: Use xz-5.4.

I should probably mention the related upstream diffoscope bug somewhere:


Other options would be to monkey-patch to skip the test when the xz
version is not sufficient or something similar.

live well,
vagrant
-----BEGIN PGP SIGNATURE-----

iHUEARYKAB0WIQRlgHNhO/zFx+LkXUXcUY/If5cWqgUCZkgL3QAKCRDcUY/If5cW
qs0HAP964P5gyhfcHHeyYdho5EzRR8G7CDSLpXQtSv76xR2FfAEAgch1NuVUbjx3
tvYxLEAvKbHdG4nsDUc3BhF+zqqWLgg=
=hF4G
-----END PGP SIGNATURE-----

V
V
vagrant wrote on 18 May 05:50 +0200
[PATCH 1/2] gnu: Add xz-5.4 variant.
(address . 71024@debbugs.gnu.org)(address . vagrant@reproducible-builds.org)
20240518035037.190183-1-vagrant@reproducible-builds.org
From: Vagrant Cascadian <vagrant@reproducible-builds.org>

* gnu/packages/compression.scm (xz-5.4): New variable.
---
gnu/packages/compression.scm | 15 +++++++++++++++
1 file changed, 15 insertions(+)

Toggle diff (30 lines)
diff --git a/gnu/packages/compression.scm b/gnu/packages/compression.scm
index dd88fce9ca..d89d72c9b7 100644
--- a/gnu/packages/compression.scm
+++ b/gnu/packages/compression.scm
@@ -573,6 +573,21 @@ (define-public xz
(license (list license:gpl2+ license:lgpl2.1+)) ; bits of both
(home-page "https://tukaani.org/xz/")))
+(define-public xz-5.4
+ (package
+ (inherit xz)
+ (name "xz-5.4")
+ (version "5.4.5")
+ (source (origin
+ (method url-fetch)
+ (uri (list (string-append "http://tukaani.org/xz/xz-" version
+ ".tar.gz")
+ (string-append "http://multiprecision.org/guix/xz-"
+ version ".tar.gz")))
+ (sha256
+ (base32
+ "1mmpwl4kg1vs6n653gkaldyn43dpbjh8gpk7sk0gps5f6jwr0p0k"))))))
+
(define-public lhasa
(package
(name "lhasa")

base-commit: e9b25a6c6c626a560d28a1f732e6e5d362d584a4
--
2.39.2
V
V
vagrant wrote on 18 May 05:50 +0200
[PATCH 2/2] gnu: diffoscope: Update to 267.
(address . 71024@debbugs.gnu.org)(address . vagrant@reproducible-builds.org)
20240518035037.190183-2-vagrant@reproducible-builds.org
From: Vagrant Cascadian <vagrant@reproducible-builds.org>

* gnu/packages/diffoscope.scm (diffoscope): Update to 267.
[native-inputs]: Use xz-5.4.
---
gnu/packages/diffoscope.scm | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)

Toggle diff (33 lines)
diff --git a/gnu/packages/diffoscope.scm b/gnu/packages/diffoscope.scm
index fd2146456d..83c8f84967 100644
--- a/gnu/packages/diffoscope.scm
+++ b/gnu/packages/diffoscope.scm
@@ -75,7 +75,7 @@ (define-module (gnu packages diffoscope)
(define-public diffoscope
(package
(name "diffoscope")
- (version "265")
+ (version "267")
(source
(origin
(method git-fetch)
@@ -84,7 +84,7 @@ (define-public diffoscope
(commit version)))
(file-name (git-file-name name version))
(sha256
- (base32 "0fdaxihmzz1jf9ay8pwr1z60b2rnihawp4js4nw9l7wv0gij9vpg"))))
+ (base32 "19iyx846rrz5j8fx4q9sx4p3mr8h7g7190ayjmzl8hr2y9knmy74"))))
(build-system python-build-system)
(arguments
(list
@@ -219,7 +219,7 @@ (define (bin command)
unzip
wabt
xxd
- xz
+ xz-5.4 ; tests require newer version
zip
zstd)
--
2.39.2
M
M
Maxim Cournoyer wrote on 21 May 04:46 +0200
Re: bug#71024: Update diffoscope to 267 (with xz bonus update)
(address . vagrant@reproducible-builds.org)(address . 71024@debbugs.gnu.org)
875xv7vq3w.fsf_-_@gmail.com
Hi,

vagrant@reproducible-builds.org writes:

Toggle quote (31 lines)
> From: Vagrant Cascadian <vagrant@reproducible-builds.org>
>
> * gnu/packages/compression.scm (xz-5.4): New variable.
> ---
> gnu/packages/compression.scm | 15 +++++++++++++++
> 1 file changed, 15 insertions(+)
>
> diff --git a/gnu/packages/compression.scm b/gnu/packages/compression.scm
> index dd88fce9ca..d89d72c9b7 100644
> --- a/gnu/packages/compression.scm
> +++ b/gnu/packages/compression.scm
> @@ -573,6 +573,21 @@ (define-public xz
> (license (list license:gpl2+ license:lgpl2.1+)) ; bits of both
> (home-page "https://tukaani.org/xz/")))
>
> +(define-public xz-5.4
> + (package
> + (inherit xz)
> + (name "xz-5.4")
> + (version "5.4.5")
> + (source (origin
> + (method url-fetch)
> + (uri (list (string-append "http://tukaani.org/xz/xz-" version
> + ".tar.gz")
> + (string-append "http://multiprecision.org/guix/xz-"
> + version ".tar.gz")))
> + (sha256
> + (base32
> + "1mmpwl4kg1vs6n653gkaldyn43dpbjh8gpk7sk0gps5f6jwr0p0k"))))))
> +

Any reason not to use the latest, which is v5.6.1 (fetched from git, to
avoid the xz backdoor issue)?

--
Thanks,
Maxim
M
M
Maxim Cournoyer wrote on 21 May 04:48 +0200
(name . Vagrant Cascadian)(address . vagrant@reproducible-builds.org)(address . 71024@debbugs.gnu.org)
87y183ubg2.fsf_-_@gmail.com
Hi,

Vagrant Cascadian <vagrant@reproducible-builds.org> writes:

Toggle quote (8 lines)
> From a889aaf43ee1d3cc9669bcc80888450bbd3d9ca1 Mon Sep 17 00:00:00 2001
> From: Vagrant Cascadian <vagrant@reproducible-builds.org>
> Date: Fri, 17 May 2024 17:18:39 -0700
> Subject: [PATCH 2/2] gnu: diffoscope: Update to 267.
>
> * gnu/packages/diffoscope.scm (diffoscope): Update to 267.
> [native-inputs]: Use xz-5.4.

Reviewed-by: Maxim Cournoyer <maxim.cournoyer@gmail>

LGTM, but I think it's safe to use xz 5.6.1 *from git*, unless I've
missed recent development on the xz backdoor story.

--
Thanks,
Maxim
V
V
Vagrant Cascadian wrote on 21 May 08:01 +0200
(name . Maxim Cournoyer)(address . maxim.cournoyer@gmail.com)(address . 71024@debbugs.gnu.org)
87bk4zr9db.fsf@wireframe
On 2024-05-20, Maxim Cournoyer wrote:
Toggle quote (36 lines)
> vagrant@reproducible-builds.org writes:
>
>> From: Vagrant Cascadian <vagrant@reproducible-builds.org>
>>
>> * gnu/packages/compression.scm (xz-5.4): New variable.
>> ---
>> gnu/packages/compression.scm | 15 +++++++++++++++
>> 1 file changed, 15 insertions(+)
>>
>> diff --git a/gnu/packages/compression.scm b/gnu/packages/compression.scm
>> index dd88fce9ca..d89d72c9b7 100644
>> --- a/gnu/packages/compression.scm
>> +++ b/gnu/packages/compression.scm
>> @@ -573,6 +573,21 @@ (define-public xz
>> (license (list license:gpl2+ license:lgpl2.1+)) ; bits of both
>> (home-page "https://tukaani.org/xz/")))
>>
>> +(define-public xz-5.4
>> + (package
>> + (inherit xz)
>> + (name "xz-5.4")
>> + (version "5.4.5")
>> + (source (origin
>> + (method url-fetch)
>> + (uri (list (string-append "http://tukaani.org/xz/xz-" version
>> + ".tar.gz")
>> + (string-append "http://multiprecision.org/guix/xz-"
>> + version ".tar.gz")))
>> + (sha256
>> + (base32
>> + "1mmpwl4kg1vs6n653gkaldyn43dpbjh8gpk7sk0gps5f6jwr0p0k"))))))
>> +
>
> Any reason not to use the latest, which is v5.6.1 (fetched from git, to
> avoid the xz backdoor issue)?

For one, 5.6.1 was also released by "Jia Tan" according to:


To fix bugs in the backdoor partly introduced in 5.6.0... e.g. not to
remove the backdoor, but to make it a working backdoor.

In other words, DO NOT USE 5.6.1. :)


There are some concerns about questionable code by "Jia Tan" in earlier
versions too:


... although even the 5.4.x version I proposed was, admittedly, being a
bit lazy and just picking a version already present in core-updates as
the easiest path forward that was reasonably close to the version
present in Debian which diffoscope was tested against...

Reverting to 5.3.1 might be a more conservative approach, although I
have not tested it with diffoscope.

Or fixing diffoscope to work with the older xz version in master
(5.2.x?) that guix is already using, which, now that I have spelled out
all of the above, seems possibly a much better idea!


live well,
vagrant
-----BEGIN PGP SIGNATURE-----

iHUEARYKAB0WIQRlgHNhO/zFx+LkXUXcUY/If5cWqgUCZkw40AAKCRDcUY/If5cW
qo+dAP9ocBC+5ewzvFr/dqSFFWOb1KO6ufTSlhFWxfe7f2y+zQEA/xmN9hUGfAQH
GNTzWIfW1PoA7Kq9ukPkqSSeXDoRpg0=
=OMqX
-----END PGP SIGNATURE-----

V
V
Vagrant Cascadian wrote on 21 May 21:20 +0200
(name . Maxim Cournoyer)(address . maxim.cournoyer@gmail.com)(address . 71024@debbugs.gnu.org)
87seybottm.fsf@wireframe
On 2024-05-20, Vagrant Cascadian wrote:
Toggle quote (6 lines)
> On 2024-05-20, Maxim Cournoyer wrote:
>> vagrant@reproducible-builds.org writes:
>>
>>> From: Vagrant Cascadian <vagrant@reproducible-builds.org>
>>>
>>> * gnu/packages/compression.scm (xz-5.4): New variable.
...
Toggle quote (4 lines)
> Or fixing diffoscope to work with the older xz version in master
> (5.2.x?) that guix is already using, which, now that I have spelled out
> all of the above, seems possibly a much better idea!

This was "fixed" in upstream diffoscope git by setting a version
requirement on the test, and I think this was a new test, so not exactly
a regression in test coverage.


So we could build diffoscope from that commit instead, or manually apply
the patch, or just wait till the next diffoscope version.


live well,
vagrant
-----BEGIN PGP SIGNATURE-----

iHUEARYKAB0WIQRlgHNhO/zFx+LkXUXcUY/If5cWqgUCZkz0BQAKCRDcUY/If5cW
qpgJAQDZYrSdiDxdPlipToMiWJAVG4wSShtTXUM//J/TaB4o0AEAucRw9KCRvh02
6hG5bdVs3L9jbPv714Dg2c2s5gkMzAw=
=ub22
-----END PGP SIGNATURE-----

M
M
Maxim Cournoyer wrote on 22 May 02:06 +0200
(name . Vagrant Cascadian)(address . vagrant@reproducible-builds.org)(address . 71024@debbugs.gnu.org)
874jaq676p.fsf@gmail.com
Hi Vagrant,

Vagrant Cascadian <vagrant@reproducible-builds.org> writes:

Toggle quote (21 lines)
> On 2024-05-20, Vagrant Cascadian wrote:
>> On 2024-05-20, Maxim Cournoyer wrote:
>>> vagrant@reproducible-builds.org writes:
>>>
>>>> From: Vagrant Cascadian <vagrant@reproducible-builds.org>
>>>>
>>>> * gnu/packages/compression.scm (xz-5.4): New variable.
> ...
>> Or fixing diffoscope to work with the older xz version in master
>> (5.2.x?) that guix is already using, which, now that I have spelled out
>> all of the above, seems possibly a much better idea!
>
> This was "fixed" in upstream diffoscope git by setting a version
> requirement on the test, and I think this was a new test, so not exactly
> a regression in test coverage.
>
> https://salsa.debian.org/reproducible-builds/diffoscope/-/commit/17c061e767e612540dd0227c3fd1f9cab460a78f
>
> So we could build diffoscope from that commit instead, or manually apply
> the patch, or just wait till the next diffoscope version.

Given the xz horror story, waiting a bit more seems a good option to me.
Thanks for explaining it in more details; it seems upstream is working
on a cleaned up 5.8.0 version, which isn't ready yet.

--
Thanks,
Maxim
V
V
Vagrant Cascadian wrote on 24 May 16:41 +0200
Re: bug#71024: Update diffoscope to 268
(name . Maxim Cournoyer)(address . maxim.cournoyer@gmail.com)(address . 71024@debbugs.gnu.org)
87bk4vp913.fsf@wireframe
On 2024-05-21, Maxim Cournoyer wrote:
Toggle quote (22 lines)
> Vagrant Cascadian <vagrant@reproducible-builds.org> writes:
>> On 2024-05-20, Vagrant Cascadian wrote:
>>> On 2024-05-20, Maxim Cournoyer wrote:
>>>> vagrant@reproducible-builds.org writes:
>>>>> From: Vagrant Cascadian <vagrant@reproducible-builds.org>
>>> Or fixing diffoscope to work with the older xz version in master
>>> (5.2.x?) that guix is already using, which, now that I have spelled out
>>> all of the above, seems possibly a much better idea!
>>
>> This was "fixed" in upstream diffoscope git by setting a version
>> requirement on the test, and I think this was a new test, so not exactly
>> a regression in test coverage.
>>
>> https://salsa.debian.org/reproducible-builds/diffoscope/-/commit/17c061e767e612540dd0227c3fd1f9cab460a78f
>>
>> So we could build diffoscope from that commit instead, or manually apply
>> the patch, or just wait till the next diffoscope version.
>
> Given the xz horror story, waiting a bit more seems a good option to me.
> Thanks for explaining it in more details; it seems upstream is working
> on a cleaned up 5.8.0 version, which isn't ready yet.

Well, version 268 was just released, which fixes the xz issue ... but
introduces a test failure for 7z... which is worked around in the
attached patch.

The other option might be to package 7zip (which seems more maintained
than p7zip)... but that seems a bit longer term.

Yet another option would be to revert the patch that broke the test with
p7zip based 7z.

But for now I propose the workaround to effectively skip this one
test. :)

live well,
vagrant
From 31c4b7ce41eb36aaf58913b3cc17021643e5fefe Mon Sep 17 00:00:00 2001
From: Vagrant Cascadian <vagrant@reproducible-builds.org>
Date: Fri, 24 May 2024 04:16:32 -0700
Subject: [PATCH] gnu: diffoscope: Update to 268.

* gnu/packages/diffoscope.scm (diffoscope): Update to 268.
[phases] Add 'workaround-sevenz-versioned-test.
---
gnu/packages/diffoscope.scm | 11 +++++++++--
1 file changed, 9 insertions(+), 2 deletions(-)

Toggle diff (40 lines)
diff --git a/gnu/packages/diffoscope.scm b/gnu/packages/diffoscope.scm
index fd2146456d..f7c5f07856 100644
--- a/gnu/packages/diffoscope.scm
+++ b/gnu/packages/diffoscope.scm
@@ -75,7 +75,7 @@ (define-module (gnu packages diffoscope)
(define-public diffoscope
(package
(name "diffoscope")
- (version "265")
+ (version "268")
(source
(origin
(method git-fetch)
@@ -84,7 +84,7 @@ (define-public diffoscope
(commit version)))
(file-name (git-file-name name version))
(sha256
- (base32 "0fdaxihmzz1jf9ay8pwr1z60b2rnihawp4js4nw9l7wv0gij9vpg"))))
+ (base32 "148r4grla92g9syjcxkyflxca2ydyb3rznb7wrrdl4zgpp4qirrh"))))
(build-system python-build-system)
(arguments
(list
@@ -114,6 +114,13 @@ (define (bin command)
(string-append "[\"" (bin command) "\","))
(("\\[\"(getfacl)\"," _ command)
(string-append "[\"" (bin command) "\",")))))
+ (add-after 'unpack 'workaround-sevenz-versioned-test
+ ;; Detects incorrect 7z version from p7zip:
+ ;; https://salsa.debian.org/reproducible-builds/diffoscope/-/issues/376
+ (lambda _
+ (substitute* "tests/comparators/test_sevenz.py"
+ ((", skip_unless_tool_is_at_least") ", skip_unless_tool_is_at_least, skip_unless_tool_is_at_most")
+ (("@skip_unless_tool_is_at_least") "@skip_unless_tool_is_at_most(\"7z\", sevenz_version, \"63\")\n@skip_unless_tool_is_at_least"))))
(add-after 'build 'build-man-page
(lambda _
(invoke "make" "-C" "doc")))

base-commit: c5e63e19ac672f9e63fc8ee98fa9a16f978ce19c
--
2.39.2
-----BEGIN PGP SIGNATURE-----

iHUEARYKAB0WIQRlgHNhO/zFx+LkXUXcUY/If5cWqgUCZlCnCAAKCRDcUY/If5cW
qsO5AQC6TagA5Okv+Ak/ZelHFXJyOV5JrJinIf9YaeuzIOwA+wD9FNQmZCZbcY7X
GLbhEgNjIvJkwQHBKdXh/h09EXWoxwk=
=0hLx
-----END PGP SIGNATURE-----

V
V
Vagrant Cascadian wrote on 25 May 22:28 +0200
Update to diffoscope 268
(address . control@debbugs.gnu.org)
87zfsdocvg.fsf@wireframe
retitle 71024 Update diffoscope to 268
thanks
-----BEGIN PGP SIGNATURE-----

iHUEARYKAB0WIQRlgHNhO/zFx+LkXUXcUY/If5cWqgUCZlJJ0wAKCRDcUY/If5cW
qgzhAQCzl+NwZFExPQZxaWLPWmF8d6duSqPV5+7CwoFpmlKQWQD/e5zDZVaupH/h
Zzt02Jiv0JGQcYTIG6+vD3h3LFBjVgc=
=W0bh
-----END PGP SIGNATURE-----

M
M
Maxim Cournoyer wrote on 26 May 05:05 +0200
Re: bug#71024: Update diffoscope to 268
(name . Vagrant Cascadian)(address . vagrant@reproducible-builds.org)(address . 71024@debbugs.gnu.org)
87bk4ti883.fsf@gmail.com
Hi Vagrant,

Vagrant Cascadian <vagrant@reproducible-builds.org> writes:

Toggle quote (36 lines)
> On 2024-05-21, Maxim Cournoyer wrote:
>> Vagrant Cascadian <vagrant@reproducible-builds.org> writes:
>>> On 2024-05-20, Vagrant Cascadian wrote:
>>>> On 2024-05-20, Maxim Cournoyer wrote:
>>>>> vagrant@reproducible-builds.org writes:
>>>>>> From: Vagrant Cascadian <vagrant@reproducible-builds.org>
>>>> Or fixing diffoscope to work with the older xz version in master
>>>> (5.2.x?) that guix is already using, which, now that I have spelled out
>>>> all of the above, seems possibly a much better idea!
>>>
>>> This was "fixed" in upstream diffoscope git by setting a version
>>> requirement on the test, and I think this was a new test, so not exactly
>>> a regression in test coverage.
>>>
>>> https://salsa.debian.org/reproducible-builds/diffoscope/-/commit/17c061e767e612540dd0227c3fd1f9cab460a78f
>>>
>>> So we could build diffoscope from that commit instead, or manually apply
>>> the patch, or just wait till the next diffoscope version.
>>
>> Given the xz horror story, waiting a bit more seems a good option to me.
>> Thanks for explaining it in more details; it seems upstream is working
>> on a cleaned up 5.8.0 version, which isn't ready yet.
>
> Well, version 268 was just released, which fixes the xz issue ... but
> introduces a test failure for 7z... which is worked around in the
> attached patch.
>
> The other option might be to package 7zip (which seems more maintained
> than p7zip)... but that seems a bit longer term.
>
> Yet another option would be to revert the patch that broke the test with
> p7zip based 7z.
>
> But for now I propose the workaround to effectively skip this one
> test. :)

[...]

Toggle quote (34 lines)
> diff --git a/gnu/packages/diffoscope.scm b/gnu/packages/diffoscope.scm
> index fd2146456d..f7c5f07856 100644
> --- a/gnu/packages/diffoscope.scm
> +++ b/gnu/packages/diffoscope.scm
> @@ -75,7 +75,7 @@ (define-module (gnu packages diffoscope)
> (define-public diffoscope
> (package
> (name "diffoscope")
> - (version "265")
> + (version "268")
> (source
> (origin
> (method git-fetch)
> @@ -84,7 +84,7 @@ (define-public diffoscope
> (commit version)))
> (file-name (git-file-name name version))
> (sha256
> - (base32 "0fdaxihmzz1jf9ay8pwr1z60b2rnihawp4js4nw9l7wv0gij9vpg"))))
> + (base32 "148r4grla92g9syjcxkyflxca2ydyb3rznb7wrrdl4zgpp4qirrh"))))
> (build-system python-build-system)
> (arguments
> (list
> @@ -114,6 +114,13 @@ (define (bin command)
> (string-append "[\"" (bin command) "\","))
> (("\\[\"(getfacl)\"," _ command)
> (string-append "[\"" (bin command) "\",")))))
> + (add-after 'unpack 'workaround-sevenz-versioned-test
> + ;; Detects incorrect 7z version from p7zip:
> + ;; https://salsa.debian.org/reproducible-builds/diffoscope/-/issues/376
> + (lambda _
> + (substitute* "tests/comparators/test_sevenz.py"
> + ((", skip_unless_tool_is_at_least") ", skip_unless_tool_is_at_least, skip_unless_tool_is_at_most")
> + (("@skip_unless_tool_is_at_least") "@skip_unless_tool_is_at_most(\"7z\", sevenz_version, \"63\")\n@skip_unless_tool_is_at_least"))))

That would LGTM, if it didn't so severely bust our 80 maximum column
width convention :-). Would you mind editing it into conformance? You
can use actual newlines in the replacement text, and it's common to have
the substitute form broken on multiple lines like:

(substitute "some-file"
(("some-pattern")
"some-replacement"))

--
Thanks,
Maxim
V
V
Vagrant Cascadian wrote on 29 May 00:33 +0200
(name . Maxim Cournoyer)(address . maxim.cournoyer@gmail.com)(address . 71024@debbugs.gnu.org)
87plt5o9cd.fsf@wireframe
On 2024-05-25, Maxim Cournoyer wrote:
Toggle quote (10 lines)
> Vagrant Cascadian <vagrant@reproducible-builds.org> writes:
>> On 2024-05-21, Maxim Cournoyer wrote:
>>> Vagrant Cascadian <vagrant@reproducible-builds.org> writes:
>>>> On 2024-05-20, Vagrant Cascadian wrote:
>>>>> On 2024-05-20, Maxim Cournoyer wrote:
>>>>>> vagrant@reproducible-builds.org writes:
>>>>>>> From: Vagrant Cascadian <vagrant@reproducible-builds.org>
>>>>> Or fixing diffoscope to work with the older xz version in master
>>>>> (5.2.x?) that guix is already using, which, now that I have spelled out
>>>>> all of the above, seems possibly a much better idea!
...
Toggle quote (3 lines)
>> Well, version 268 was just released, which fixes the xz issue ... but
>> introduces a test failure for 7z... which is worked around in the
>> attached patch.
...
Toggle quote (7 lines)
>> + (substitute* "tests/comparators/test_sevenz.py"
>> + ((", skip_unless_tool_is_at_least") ", skip_unless_tool_is_at_least, skip_unless_tool_is_at_most")
>> + (("@skip_unless_tool_is_at_least") "@skip_unless_tool_is_at_most(\"7z\", sevenz_version, \"63\")\n@skip_unless_tool_is_at_least"))))
>
> That would LGTM, if it didn't so severely bust our 80 maximum column
> width convention :-). Would you mind editing it into conformance?

Oops. must not have guix linted that one!


Well, again, upstream has fixed it even better:


Tested fine for me building against that commit.

So ... wait again till another release (and maybe find new breakage in
the new release), or build against an untagged commit, or pull in a
patch from the upstream commit? :)


live well,
vagrant
-----BEGIN PGP SIGNATURE-----

iHUEARYKAB0WIQRlgHNhO/zFx+LkXUXcUY/If5cWqgUCZlZbsgAKCRDcUY/If5cW
qlBsAP95msCr6fOFxcFDz95DbHk6OwPSATL9Zp1YlPg+uXIqXwD9F8r0hbvB/7j3
b5UCHoMEzsSOJIzM5rKahiDUMxZWmAY=
=LBEi
-----END PGP SIGNATURE-----

M
M
Maxim Cournoyer wrote on 30 May 03:02 +0200
(name . Vagrant Cascadian)(address . vagrant@reproducible-builds.org)(address . 71024@debbugs.gnu.org)
87ttigf6xj.fsf@gmail.com
Hi Vagrant,

Vagrant Cascadian <vagrant@reproducible-builds.org> writes:

Toggle quote (36 lines)
> On 2024-05-25, Maxim Cournoyer wrote:
>> Vagrant Cascadian <vagrant@reproducible-builds.org> writes:
>>> On 2024-05-21, Maxim Cournoyer wrote:
>>>> Vagrant Cascadian <vagrant@reproducible-builds.org> writes:
>>>>> On 2024-05-20, Vagrant Cascadian wrote:
>>>>>> On 2024-05-20, Maxim Cournoyer wrote:
>>>>>>> vagrant@reproducible-builds.org writes:
>>>>>>>> From: Vagrant Cascadian <vagrant@reproducible-builds.org>
>>>>>> Or fixing diffoscope to work with the older xz version in master
>>>>>> (5.2.x?) that guix is already using, which, now that I have spelled out
>>>>>> all of the above, seems possibly a much better idea!
> ...
>>> Well, version 268 was just released, which fixes the xz issue ... but
>>> introduces a test failure for 7z... which is worked around in the
>>> attached patch.
> ...
>>> + (substitute* "tests/comparators/test_sevenz.py"
>>> + ((", skip_unless_tool_is_at_least") ", skip_unless_tool_is_at_least, skip_unless_tool_is_at_most")
>>> + (("@skip_unless_tool_is_at_least") "@skip_unless_tool_is_at_most(\"7z\", sevenz_version, \"63\")\n@skip_unless_tool_is_at_least"))))
>>
>> That would LGTM, if it didn't so severely bust our 80 maximum column
>> width convention :-). Would you mind editing it into conformance?
>
> Oops. must not have guix linted that one!
>
>
> Well, again, upstream has fixed it even better:
>
> https://salsa.debian.org/reproducible-builds/diffoscope/-/commit/2a361d7dff135d3e832161f587a55a62fcbec9f2
>
> Tested fine for me building against that commit.
>
> So ... wait again till another release (and maybe find new breakage in
> the new release), or build against an untagged commit, or pull in a
> patch from the upstream commit? :)

If you want to get done with this, I'd recommend pulling a patch from
the upstream commit. Then when we get to upgrading to the next release
we can drop such patch.

Hope that helps,

--
Thanks,
Maxim
V
V
Vagrant Cascadian wrote on 31 May 19:30 +0200
(name . Maxim Cournoyer)(address . maxim.cournoyer@gmail.com)(address . 71024-done@debbugs.gnu.org)
877cf9opmd.fsf@wireframe
On 2024-05-29, Maxim Cournoyer wrote:
Toggle quote (15 lines)
> Vagrant Cascadian <vagrant@reproducible-builds.org> writes:
>> Well, again, upstream has fixed it even better:
>>
>> https://salsa.debian.org/reproducible-builds/diffoscope/-/commit/2a361d7dff135d3e832161f587a55a62fcbec9f2
>>
>> Tested fine for me building against that commit.
>>
>> So ... wait again till another release (and maybe find new breakage in
>> the new release), or build against an untagged commit, or pull in a
>> patch from the upstream commit? :)
>
> If you want to get done with this, I'd recommend pulling a patch from
> the upstream commit. Then when we get to upgrading to the next release
> we can drop such patch.

Apparently waiting was the thing to do... 269 was released with only
that change!

Pushed as c7888f5361fbdbe5182e7dbe90ccc12e2d95d3c3.

live well,
vagrant
-----BEGIN PGP SIGNATURE-----

iHUEARYKAB0WIQRlgHNhO/zFx+LkXUXcUY/If5cWqgUCZloJSgAKCRDcUY/If5cW
qgZfAQC1MNV0r/j8NKsvNG7FGrhQN/bcEuHRCAkivKsdTx/uvAEAtVvIfYViQ4Yd
LzVzaT2L6DvUgtygjWGaUE+xMFZlFAQ=
=RMnd
-----END PGP SIGNATURE-----

Closed
?
Your comment

This issue is archived.

To comment on this conversation send an email to 71024@debbugs.gnu.org

To respond to this issue using the mumi CLI, first switch to it
mumi current 71024
Then, you may apply the latest patchset in this issue (with sign off)
mumi am -- -s
Or, compose a reply to this issue
mumi compose
Or, send patches to this issue
mumi send-email *.patch