[PATCH 0/2] gnu: guile-lib: Fix tests for Guile 2.2.

  • Done
  • quality assurance status badge
Details
2 participants
  • Christopher Baines
  • Artyom V. Poptsov
Owner
unassigned
Submitted by
Artyom V. Poptsov
Severity
normal
A
A
Artyom V. Poptsov wrote on 29 Apr 11:03 +0200
(address . guix-patches@gnu.org)(name . Artyom V. Poptsov)(address . poptsov.artyom@gmail.com)
cover.1714381270.git.poptsov.artyom@gmail.com
This patchset fixes Guile-Lib tests with Guile 2.2.

Artyom V. Poptsov (2):
gnu: guile-lib: Remove "strip" phase.
gnu: guile-lib: Fix tests for Guile 2.2.

gnu/local.mk | 1 +
gnu/packages/guile-xyz.scm | 4 +-
.../guile-lib-fix-tests-for-guile2.2.patch | 52 +++++++++++++++++++
3 files changed, 56 insertions(+), 1 deletion(-)
create mode 100644 gnu/packages/patches/guile-lib-fix-tests-for-guile2.2.patch


base-commit: 3bd8d238aba718bf949691d0e37fa310e2cfc12a
--
2.41.0
A
A
Artyom V. Poptsov wrote on 29 Apr 11:04 +0200
[PATCH 1/2] gnu: guile-lib: Remove "strip" phase.
(address . 70643@debbugs.gnu.org)(name . Artyom V. Poptsov)(address . poptsov.artyom@gmail.com)
3d2b970ba43e70ccb5ad0036dde28beee5c796ad.1714381270.git.poptsov.artyom@gmail.com
* gnu/packages/guile-xyz.scm (guile-lib) [arguments]: Remove "strip" phase.

Change-Id: I6158bdb58555be4e84a2571a2a6e59eb23d39abf
---
gnu/packages/guile-xyz.scm | 1 +
1 file changed, 1 insertion(+)

Toggle diff (14 lines)
diff --git a/gnu/packages/guile-xyz.scm b/gnu/packages/guile-xyz.scm
index 901c669582..d1892ddf69 100644
--- a/gnu/packages/guile-xyz.scm
+++ b/gnu/packages/guile-xyz.scm
@@ -2742,6 +2742,7 @@ (define-public guile-lib
'(#:make-flags '("GUILE_AUTO_COMPILE=0") ;placate guild warnings
#:phases
(modify-phases %standard-phases
+ (delete 'strip)
(add-before 'configure 'patch-module-dir
(lambda _
(substitute* "src/Makefile.in"
--
2.41.0
A
A
Artyom V. Poptsov wrote on 29 Apr 11:04 +0200
[PATCH 2/2] gnu: guile-lib: Fix tests for Guile 2.2.
(address . 70643@debbugs.gnu.org)(name . Artyom V. Poptsov)(address . poptsov.artyom@gmail.com)
c6e0432b9b337f1bd3d0949dfcc3029fb8e9423f.1714381270.git.poptsov.artyom@gmail.com
* gnu/packages/guile-xyz.scm (guile-lib) [source]: Add a patch that fixes
tests for Guile 2.2.
* gnu/packages/patches/guile-lib-fix-tests-for-guile2.2.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add
"guile-lib-fix-tests-for-guile2.2.patch".

Change-Id: Ia340e1de57c56366f0ee9271687a89fb9e41bc2d
---
gnu/local.mk | 1 +
gnu/packages/guile-xyz.scm | 3 +-
.../guile-lib-fix-tests-for-guile2.2.patch | 52 +++++++++++++++++++
3 files changed, 55 insertions(+), 1 deletion(-)
create mode 100644 gnu/packages/patches/guile-lib-fix-tests-for-guile2.2.patch

Toggle diff (86 lines)
diff --git a/gnu/local.mk b/gnu/local.mk
index 42961e60b2..39a1b59d6e 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -1418,6 +1418,7 @@ dist_patch_DATA = \
%D%/packages/patches/guile-linux-syscalls.patch \
%D%/packages/patches/guile-3.0-linux-syscalls.patch \
%D%/packages/patches/guile-ac-d-bus-fix-tests.patch \
+ %D%/packages/patches/guile-lib-fix-tests-for-guile2.2.patch \
%D%/packages/patches/guile-fibers-destroy-peer-schedulers.patch \
%D%/packages/patches/guile-fibers-epoll-instance-is-dead.patch \
%D%/packages/patches/guile-fibers-fd-finalizer-leak.patch \
diff --git a/gnu/packages/guile-xyz.scm b/gnu/packages/guile-xyz.scm
index d1892ddf69..2da8b50a42 100644
--- a/gnu/packages/guile-xyz.scm
+++ b/gnu/packages/guile-xyz.scm
@@ -2736,7 +2736,8 @@ (define-public guile-lib
version ".tar.gz"))
(sha256
(base32
- "1nb7swbliw9vx1ivhgd2m0r0p7nlkszw6s41zcgfwb5v1kp05sb4"))))
+ "1nb7swbliw9vx1ivhgd2m0r0p7nlkszw6s41zcgfwb5v1kp05sb4"))
+ (patches (search-patches "guile-lib-fix-tests-for-guile2.2.patch"))))
(build-system gnu-build-system)
(arguments
'(#:make-flags '("GUILE_AUTO_COMPILE=0") ;placate guild warnings
diff --git a/gnu/packages/patches/guile-lib-fix-tests-for-guile2.2.patch b/gnu/packages/patches/guile-lib-fix-tests-for-guile2.2.patch
new file mode 100644
index 0000000000..051e73ed12
--- /dev/null
+++ b/gnu/packages/patches/guile-lib-fix-tests-for-guile2.2.patch
@@ -0,0 +1,52 @@
+From b1916e9a8ac8fa1bdd045d6e1d89e0f16ef7e441 Mon Sep 17 00:00:00 2001
+From: "Artyom V. Poptsov" <poptsov.artyom@gmail.com>
+Date: Mon, 29 Apr 2024 11:27:02 +0300
+Subject: [PATCH] unit-tests/logging.logger: Fix tests with Guile 2
+
+When tests are run with Guile 2 "logging.logger.scm" would always fail
+due to undefined reference to "mkstemp" that was introduced only in
+Guile 3. In Guile 2 the procedure is called "mkstemp!". Also
+"call-with-port" procedure is available only from (rnrs io ports) in
+Guile 2, while in Guile 3 this procedure is available out of box.
+This patch fixes these issues by adding an additional runtime check.
+
+* unit-tests/logging.logger.scm (call-with-temporary-file): Bugfix:
+ Check Guile major version and use "mkstemp!" when Guile 2 is used;
+ use "mkstemp" otherwise. Also for Guile 2 load "call-with-port"
+ from (rnrs io ports).
+---
+ unit-tests/logging.logger.scm | 9 +++++++--
+ 1 file changed, 7 insertions(+), 2 deletions(-)
+
+diff --git a/unit-tests/logging.logger.scm b/unit-tests/logging.logger.scm
+index c69a86d..fbf4ce7 100644
+--- a/unit-tests/logging.logger.scm
++++ b/unit-tests/logging.logger.scm
+@@ -3,6 +3,7 @@
+ ;;; Copyright (C) 2003 Richard Todd
+ ;;; Copyright (C) 2024 Maxim Cournoyer <maxim.cournoyer@gmail.com>
+ ;;; Copyright (C) 2024 David Pirotte <david@altosw.be>
++;;; Copyright (C) 2024 Artyom V. Poptsov <poptsov.artyom@gmail.com>
+
+ ;;; This program is free software; you can redistribute it and/or modify
+ ;;; it under the terms of the GNU General Public License as published by
+@@ -28,8 +29,12 @@
+ (define* (call-with-temporary-file proc #:key (mode "w+"))
+ "Open a temporary file name and pass it to PROC, a procedure of one
+ argument. The port is automatically closed."
+- (let ((port (mkstemp "/tmp/file-XXXXXX" mode)))
+- (call-with-port port proc)))
++ (let ((file-name "/tmp/file-XXXXXX"))
++ (if (< (string->number (major-version)) 3)
++ (let ((port (mkstemp! (string-copy file-name) mode)))
++ ((@ (rnrs io ports) call-with-port) port proc))
++ (let ((port (mkstemp file-name mode)))
++ (call-with-port port proc)))))
+
+ (define-class <test-logging> (<test-case>))
+
+
+base-commit: 0e2b6b0ae5cc43c98075386bb4c69defb705f3b3
+--
+2.41.0
+
--
2.41.0
C
C
Christopher Baines wrote 25 hours ago
Re: [bug#70643] [PATCH 0/2] gnu: guile-lib: Fix tests for Guile 2.2.
(name . Artyom V. Poptsov)(address . poptsov.artyom@gmail.com)(address . 70643-done@debbugs.gnu.org)
87pltoxzqx.fsf@cbaines.net
"Artyom V. Poptsov" <poptsov.artyom@gmail.com> writes:

Toggle quote (15 lines)
> This patchset fixes Guile-Lib tests with Guile 2.2.
>
> Artyom V. Poptsov (2):
> gnu: guile-lib: Remove "strip" phase.
> gnu: guile-lib: Fix tests for Guile 2.2.
>
> gnu/local.mk | 1 +
> gnu/packages/guile-xyz.scm | 4 +-
> .../guile-lib-fix-tests-for-guile2.2.patch | 52 +++++++++++++++++++
> 3 files changed, 56 insertions(+), 1 deletion(-)
> create mode 100644 gnu/packages/patches/guile-lib-fix-tests-for-guile2.2.patch
>
>
> base-commit: 3bd8d238aba718bf949691d0e37fa310e2cfc12a

Thanks for the patches, I've pushed these to master as
85923f9eb423652200351a34f195b86c46ecf97b.

Chris
-----BEGIN PGP SIGNATURE-----

iQKlBAEBCgCPFiEEPonu50WOcg2XVOCyXiijOwuE9XcFAmZDbcZfFIAAAAAALgAo
aXNzdWVyLWZwckBub3RhdGlvbnMub3BlbnBncC5maWZ0aGhvcnNlbWFuLm5ldDNF
ODlFRUU3NDU4RTcyMEQ5NzU0RTBCMjVFMjhBMzNCMEI4NEY1NzcRHG1haWxAY2Jh
aW5lcy5uZXQACgkQXiijOwuE9XdfXw//V8CdEB0sUOtnV16ncqD6NXcBGnhAlxeB
iZcQflHO9pAi7BSb/3BYnB+Nk4xKDXwotG2SSZq4fWdtWHAFtW3CEcZT9YPZCI5Q
Ce6QfeTZrV03wLuv7TR/qQvoN7cEwx64UKNZT49inBEcFj3a3GRkRGKoA+/7VFx9
ZXJD7ebCM9Z8IOrNp8tR41Llf0aJ1VP6FbHGYstLBU3Z8abnLUMXeUqK02Lv4LjR
CaDYw12olyh7TZ01tv6ZAx19Xxi8AaHAmJu1xNohhS9BaaWtyQXtbUinMByxyKqE
5a/IAAwXoKNF22NWsbee4lgeJZHWa8uwt0WQyGN+vEX7y28kN6AqNozU+DklWo//
VLtP/ALNaoildy0P9CEIW9TuwW6xqWtMop/XxH10ouetevtA1kEGAjE2ZGco5s8v
RTlg9rBh/8V/5Zhphk6S5LPPlkERM83MJBtf1q6EIWTh4Xr2fKqUCxp9kLtiRnn8
d7PLvRDAWxz17nEdvhixpLjg8AdNbQTPg6t7ydQhqMMwvmIuQkoT9bSz+/Cnf0eR
tw7IUPq3zuuDJtW857RTHBV5JohHBZoKuZ/Kg/8u1Y+JxqZBVaGcrM0H7A1BUfuZ
BzGvnpDfUVj/U9seQiwGtckzbwJZ73PrnPNyaLcoiYlYWKNlr/MmyC8ur8uUeSZK
OSiW9Fge1ro=
=uDCJ
-----END PGP SIGNATURE-----

Closed
?