[PATCH] gnu: guile-bytestructures: Update to 2.0.1.

  • Open
  • quality assurance status badge
Details
2 participants
  • Ludovic Courtès
  • Taylan Kammer
Owner
unassigned
Submitted by
Taylan Kammer
Severity
normal
T
T
Taylan Kammer wrote on 25 Feb 2022 21:51
(address . guix-patches@gnu.org)
77e3dbeb-5d43-5450-075c-e74fccfff626@gmail.com
* gnu/packages/guile.scm (guile-bytestructures): Update to 2.0.1.

Although the major version number is increased due to a small API-breaking
change, all packages that depend on guile-bytestructures still build fine and
pass their test suite if they have one, so it should not be necessary to
create a bytestructures-2.0 package.

The breaking change is that bs:pointer would previously implicitly dereference
the pointer when any index other than '* was provided, whereas in this version
the dereference must be explicit, and can be '* or an integer that represents
an offset from the pointer address a la *(ptr + i) in C.
---
gnu/packages/guile.scm | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

Toggle diff (24 lines)
diff --git a/gnu/packages/guile.scm b/gnu/packages/guile.scm
index f74a389da5..1ac1690455 100644
--- a/gnu/packages/guile.scm
+++ b/gnu/packages/guile.scm
@@ -746,7 +746,7 @@ Guile's foreign function interface.")
(define-public guile-bytestructures
(package
(name "guile-bytestructures")
- (version "1.0.10")
+ (version "2.0.1")
(home-page "https://github.com/TaylanUB/scheme-bytestructures")
(source (origin
(method git-fetch)
@@ -756,7 +756,7 @@ Guile's foreign function interface.")
(file-name (git-file-name name version))
(sha256
(base32
- "14k50jln32kkxv41hvsdgjkkfj6xlv06vc1caz01qkgk1fzh72nk"))))
+ "1gnh3p2042cch1nkapl0p4pv20q7qs8cxvvbp7a5h1dwqbrkdyss"))))
(build-system gnu-build-system)
(arguments
`(#:make-flags '("GUILE_AUTO_COMPILE=0") ;to prevent guild warnings
--
2.30.2
L
L
Ludovic Courtès wrote on 1 Mar 2022 12:38
(name . Taylan Kammer)(address . taylan.kammer@gmail.com)(address . 54165@debbugs.gnu.org)
87mti97vj9.fsf@gnu.org
Hi,

Taylan Kammer <taylan.kammer@gmail.com> skribis:

Toggle quote (12 lines)
> * gnu/packages/guile.scm (guile-bytestructures): Update to 2.0.1.
>
> Although the major version number is increased due to a small API-breaking
> change, all packages that depend on guile-bytestructures still build fine and
> pass their test suite if they have one, so it should not be necessary to
> create a bytestructures-2.0 package.
>
> The breaking change is that bs:pointer would previously implicitly dereference
> the pointer when any index other than '* was provided, whereas in this version
> the dereference must be explicit, and can be '* or an integer that represents
> an offset from the pointer address a la *(ptr + i) in C.

Since it’s an indirect dependency of Guix, I tested a bit more
thoroughly than for other packages.

While running this:

./pre-inst-env guix build guile-git -s x86_64-linux -s i686-linux -s armhf-linux -s aarch64-linux

I got this test failure on i686-linux:

Toggle snippet (34 lines)
starting phase `check'
./pre-inst-env \
/gnu/store/pihshjqc5x3k8yhdp1nvkgwiifyxin4v-guile-3.0.7/bin/guile --no-auto-compile \
./run-tests.guile.scm
Backtrace:
7 (primitive-load "/tmp/guix-build-guile-bytestructures-2…")
In ice-9/eval.scm:
619:8 6 (_ #f)
In ice-9/boot-9.scm:
142:2 5 (dynamic-wind #<procedure 8fca850 at ice-9/eval.scm:33…> …)
142:2 4 (dynamic-wind #<procedure 883d3b0 at ice-9/eval.scm:33…> …)
In ice-9/eval.scm:
619:8 3 (_ #(#(#<directory (guile-user) 8194690>)))
In ice-9/boot-9.scm:
142:2 2 (dynamic-wind #<procedure 8845110 at ice-9/eval.scm:33…> …)
In ice-9/eval.scm:
619:8 1 (_ #(#(#(#<directory (guile-user) 8194690>)) #<variab…>))
In unknown file:
0 (bytevector-u64-native-set! #vu8(0 0 0 0 0 0 0 0 65 1 …) …)

ERROR: In procedure bytevector-u64-native-set!:
In procedure bytevector-u64-native-set!: Value out of range: 8
%%%% Starting test bytestructures (Writing full log to "bytestructures.log")
run-tests.body.scm:194: FAIL ref1
make: *** [Makefile:779: check] Error 1

Test suite failed, dumping logs.
error: in phase 'check': uncaught exception:
%exception #<&invoke-error program: "make" arguments: ("check" "-j" "8" "GUILE_AUTO_COMPILE=0") exit-status: 2 term-signal: #f stop-signal: #f>
phase `check' failed after 1.1 seconds
command "make" "check" "-j" "8" "GUILE_AUTO_COMPILE=0" failed with status 2
builder for `/gnu/store/xkbc6a6jlg9r1lkma6zw8lfmprfsfkqw-guile-bytestructures-2.0.1.drv' failed with exit code 1

With:

./pre-inst-env guix build -v1 guile-drmaa nyacc nyacc@1.00 guile-lzma

I got this nyacc test failure:

Toggle snippet (47 lines)
GUILE_LOAD_PATH=/tmp/guix-build-nyacc-1.00.2.drv-0/nyacc-1.00.2/module GUILE_LOAD_COMPILED_PATH=/tmp/guix-build-nyacc-1.00.2.drv-0/nyacc-1.00.2/module \
/tmp/guix-build-nyacc-1.00.2.drv-0/nyacc-1.00.2/etc/guild compile -o system/ffi-help-rt.go system/ffi-help-rt.scm
;;; note: auto-compilation is enabled, set GUILE_AUTO_COMPILE=0
;;; or pass the --no-auto-compile argument to disable.
;;; compiling /tmp/guix-build-nyacc-1.00.2.drv-0/nyacc-1.00.2/etc/guild
;;; WARNING: compilation of /tmp/guix-build-nyacc-1.00.2.drv-0/nyacc-1.00.2/etc/guild failed:
;;; failed to create path for auto-compiled file "/tmp/guix-build-nyacc-1.00.2.drv-0/nyacc-1.00.2/etc/guild"
Backtrace:
In system/base/target.scm:
65:6 19 (with-target _ _)
In system/base/compile.scm:
187:6 18 (compile-file "system/ffi-help-rt.scm" #:output-file _ # …)
53:4 17 (call-with-output-file/atomic _ _ _)
In ice-9/boot-9.scm:
1752:10 16 (with-exception-handler _ _ #:unwind? _ # _)
In system/base/compile.scm:
69:11 15 (_)
190:11 14 (_ #<closed: file 7fffedfe4150>)
331:39 13 (read-and-compile #<input: system/ffi-help-rt.scm 15> # …)
261:27 12 (_ _ _)
In ice-9/boot-9.scm:
2835:4 11 (save-module-excursion #<procedure 7fffee7e3c00 at lang…>)
In language/scheme/compile-tree-il.scm:
31:15 10 (_)
In ice-9/psyntax.scm:
1230:36 9 (expand-top-sequence (#<syntax:ffi-help-rt.scm:20:0 (…>) …)
1222:19 8 (parse _ (("placeholder" placeholder)) ((top) #(# # …)) …)
259:10 7 (parse _ (("placeholder" placeholder)) (()) _ c&e (# #) #)
In ice-9/eval.scm:
293:34 6 (_ #<module (#{ g100}#) 7fffee85c280>)
In ice-9/boot-9.scm:
3409:4 5 (define-module* _ #:filename _ #:pure _ #:version _ # _ …)
2594:24 4 (call-with-deferred-observers #<procedure 7fffefc7b1e0 …>)
3422:24 3 (_)
222:17 2 (map1 (((bytestructures guile)) ((bytestructures # …)) …))
3329:6 1 (resolve-interface (bytestructures guile) #:select _ # _ …)
1685:16 0 (raise-exception _ #:continuable? _)

ice-9/boot-9.scm:1685:16: In procedure raise-exception:
no code for module (bytestructures guile)
make[1]: *** [Makefile:93: system/ffi-help-rt.go] Error 1

[…]

@ build-failed /gnu/store/qsnsix75inib689w6yr7a335xch13wk0-nyacc-1.00.2.drv - 1 builder for `/gnu/store/qsnsix75inib689w6yr7a335xch13wk0-nyacc-1.00.2.drv' failed with exit code 1

Could you take a look?

Thanks,
Ludo’.
?