Diff is now attached.

On Mon, Jan 26, 2026 at 02:28:25AM -0800, Loren M. Lang wrote:
> I have pulled the patch to fix the following FTBFS issue:
> 
> https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1123392
> 
> This is just the upstream patch to fix a compatibility issue with Guile
> 3.0.11 with no changes needed. I've pushed the necessary changes to
> Salsa and created the following merge request:
> 
> https://salsa.debian.org/debian/gnucash/-/merge_requests/9
> 
> The changes are also attached as a debdiff if that helpful for review.
> The package is currently scheduled for removal on February 3rd if this
> issue is not resolved before then.
> 
> Thank you for taking a look at this.
> 
> Sincerely,
> Loren
> -- 
> Loren M. Lang
> [email protected]
> http://www.north-winds.org/
> IRC: penguin359
> 
> 
> Public Key: http://www.north-winds.org/lorenl_pubkey.asc
> Fingerprint: 7896 E099 9FC7 9F6C E0ED  E103 222D F356 A57A 98FA



-- 
Loren M. Lang
[email protected]
http://www.north-winds.org/
IRC: penguin359


Public Key: http://www.north-winds.org/lorenl_pubkey.asc
Fingerprint: 7896 E099 9FC7 9F6C E0ED  E103 222D F356 A57A 98FA
diff -Nru gnucash-5.13/debian/changelog gnucash-5.13/debian/changelog
--- gnucash-5.13/debian/changelog       2025-10-03 21:02:43.000000000 -0700
+++ gnucash-5.13/debian/changelog       2026-01-24 04:56:58.000000000 -0800
@@ -1,3 +1,10 @@
+gnucash (1:5.13-1.1) unstable; urgency=medium
+
+  * Non-maintainer upload.
+  * Fix lambda build error due to newer Guile release (Closes: #1123392)
+
+ -- Loren M. Lang <[email protected]>  Sat, 24 Jan 2026 04:56:58 -0800
+
 gnucash (1:5.13-1) unstable; urgency=medium
 
   [ наб ]
diff -Nru gnucash-5.13/debian/patches/fix-lambda-error.patch 
gnucash-5.13/debian/patches/fix-lambda-error.patch
--- gnucash-5.13/debian/patches/fix-lambda-error.patch  1969-12-31 
16:00:00.000000000 -0800
+++ gnucash-5.13/debian/patches/fix-lambda-error.patch  2026-01-24 
04:56:58.000000000 -0800
@@ -0,0 +1,208 @@
+Description: Fix API incompatibility with Guile 3.0.11
+ Guile 3.0.11 includes a complete rewrite of SRFI-64 which leads to
+ various build errors in the unpatched source. This issue has already
+ been fixed upstream making it compatible with newer Guile releases.
+Author: John Ralls <[email protected]>
+Origin: upstream
+Bug: https://github.com/Gnucash/gnucash/pull/2158
+Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1123392
+Forwarded: https://github.com/Gnucash/gnucash/pull/2158
+Applied-Upstream: 5.14
+Last-Update: 2026-01-24
+---
+This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
+diff --git a/bindings/guile/test/srfi64-extras.scm 
b/bindings/guile/test/srfi64-extras.scm
+index b41baee4322..881f9473b61 100644
+--- a/bindings/guile/test/srfi64-extras.scm
++++ b/bindings/guile/test/srfi64-extras.scm
+@@ -34,11 +34,12 @@
+         (case (test-result-kind runner)
+           ((pass xpass) (set! num-passed (1+ num-passed)))
+           ((fail xfail)
+-           (if (test-result-ref runner 'expected-value)
++           (if (not (equal? 'no (test-result-ref runner 'expected-value 'no)))
+                (format #t "~a\n -> expected: ~s\n -> obtained: ~s\n"
+                        (string-join (test-runner-group-path runner) "/")
+                        (test-result-ref runner 'expected-value)
+-                       (test-result-ref runner 'actual-value)))
++                       (test-result-ref runner 'actual-value))
++               (format #t "~%~a~%" (test-result-alist runner)))
+            (set! num-failed (1+ num-failed)))
+           (else #t))))
+     (test-runner-on-final! runner
+diff --git a/bindings/guile/test/test-core-utils.scm 
b/bindings/guile/test/test-core-utils.scm
+index 0910cae0557..3bd25f63d95 100644
+--- a/bindings/guile/test/test-core-utils.scm
++++ b/bindings/guile/test/test-core-utils.scm
+@@ -42,7 +42,7 @@
+     "${symbol} does not exist"
+     (gnc:format "${symbol} does not exist" 'existence "none"))
+ 
+-  (test-error "gnc:format syntax error"
++  (test-error "gnc:format syntax error" #t
+     (gnc:format "${symbol} does not exist" 'existence)))
+ 
+ (define (run-test)
+diff --git a/bindings/guile/test/test-gnc-optiondb.scm 
b/bindings/guile/test/test-gnc-optiondb.scm
+index e5a5bbc415d..528143a3655 100644
+--- a/bindings/guile/test/test-gnc-optiondb.scm
++++ b/bindings/guile/test/test-gnc-optiondb.scm
+@@ -115,7 +115,7 @@
+        option-db "waldo" "pepper" "baz"
+        "Phony Option" acctlist (list ACCT-TYPE-BANK))
+       (let ((acct-list (gnc-option-value option-db "waldo" "pepper")))
+-        (test-equal #f (length acct-list))))))
++        (test-error 'wrong-type-arg (length acct-list))))))
+ 
+   (define (test-make-account-sel-limited-option book)
+     (test-group "test-make-account-list-option"
+diff --git a/gnucash/report/reports/standard/test/test-transaction.scm 
b/gnucash/report/reports/standard/test/test-transaction.scm
+index 70d2be44f3b..646f4b21407 100644
+--- a/gnucash/report/reports/standard/test/test-transaction.scm
++++ b/gnucash/report/reports/standard/test/test-transaction.scm
+@@ -1067,7 +1067,7 @@
+      '(("from" "01/01/2010")
+        ("to" "31/12/2010")
+        ("total" 23500 30000 25/7 sym))))
+-  (test-error "gnc:lists->csv improper list"
++  (test-error "gnc:lists->csv improper list" #t
+     (gnc:lists->csv
+      '(("from" "01/01/2010")
+        ("to" "31/12/2010")
+diff --git a/gnucash/report/test/test-commodity-utils.scm 
b/gnucash/report/test/test-commodity-utils.scm
+index 76e12ed2daa..20cd04111c9 100644
+--- a/gnucash/report/test/test-commodity-utils.scm
++++ b/gnucash/report/test/test-commodity-utils.scm
+@@ -270,8 +270,8 @@
+     (let* ((sumlist (list (list USD  (list (list AAPL  aapl-col)))
+                           (list GBP (list (list RDSA rdsa-gbp-col)))))
+            (return-alist  (gnc:resolve-unknown-comm sumlist USD)))
+-      (test-equal "RDSA #f" #f ((caadr (assoc RDSA return-alist)) 'total #f))
+-      (test-equal "RDSA #f" #f ((cdadr (assoc RDSA return-alist)) 'total #f)))
++      (test-error "RDSA #f" 'wrong-type-arg (((assoc RDSA return-alist)) 
'total #f))
++      (test-error "RDSA #f" 'wrong-type-arg ((cdadr (assoc RDSA 
return-alist)) 'total #f)))
+     (test-end "foreign-no-coll")
+     (test-begin "foreign-no-amount")
+     ;; There's a collector but it doesn't have a price in it so the returned
+@@ -348,8 +348,8 @@
+                           (list GBP (list (list DEM gbp-dem-col)
+                                           (list RDSA rdsa-gbp-col)))))
+            (return-alist  (gnc:resolve-unknown-comm sumlist USD)))
+-      (test-equal "Shares fails" #f ((caadr (assoc RDSA return-alist)) 'total 
#f))
+-      (test-equal "Value fails" #f ((cdadr (assoc RDSA return-alist)) 'total 
#f)))
++      (test-error "Shares fails" 'wrong-type-arg ((caadr (assoc RDSA 
return-alist)) 'total #f))
++      (test-error "Value fails" 'wrong-type-arg ((cdadr (assoc RDSA 
return-alist)) 'total #f)))
+     (test-end "foreign-3way-gbp->dem->eur->usd")
+     (test-begin "foreign-3way-DEM>GBP")
+     ;; Three-way conversion, gbp->dem->eur->usd
+@@ -359,8 +359,8 @@
+                           (list DEM (list (list GBP dem-gbp-col)))
+                           (list GBP (list (list RDSA rdsa-gbp-col)))))
+            (return-alist  (gnc:resolve-unknown-comm sumlist USD)))
+-      (test-equal "Shares fails" #f ((caadr (assoc RDSA return-alist)) 'total 
#f))
+-      (test-equal "Value fails" #f ((cdadr (assoc RDSA return-alist)) 'total 
#f)))
++      (test-error "Shares fails" 'wrong-type-arg ((caadr (assoc RDSA 
return-alist)) 'total #f))
++      (test-error "Value fails" 'wrong-type-arg ((cdadr (assoc RDSA 
return-alist)) 'total #f)))
+     (test-end "foreign-3way-DEM>GBP")
+     (test-begin "foreign-DEM>EUR")
+     ;; Three-way conversion, gbp->dem->eur
+@@ -369,8 +369,8 @@
+                           (list GBP (list (list DEM gbp-dem-col)
+                                           (list RDSA rdsa-gbp-col)))))
+            (return-alist  (gnc:resolve-unknown-comm sumlist EUR)))
+-      (test-equal "Shares fails" #f ((caadr (assoc RDSA return-alist)) 'total 
#f))
+-      (test-equal "Value fails" #f ((cdadr (assoc RDSA return-alist)) 'total 
#f)))
++      (test-error "Shares fails" 'wrong-type-arg ((caadr (assoc RDSA 
return-alist)) 'total #f))
++      (test-error "Value fails" 'wrong-type-arg ((cdadr (assoc RDSA 
return-alist)) 'total #f)))
+     (test-end "foreign-DEM>EUR"))
+ 
+   (teardown)))
+@@ -753,9 +753,9 @@
+            (exchange-fn
+             (gnc:make-gnc-monetary AAPL 1)
+             USD
+-            (gnc-dmy2time64-neutral 20 02 2012)))))
++            (gnc-dmy2time64-neutral 20 02 2012))))))
+ 
+-      (teardown))))
++      (teardown)))
+ 
+ (define (test-get-match-commodity-splits-sorted)
+   (test-group-with-cleanup "test-get-match-commodity-splits-sorted"
+@@ -818,6 +818,6 @@
+                       "2012-02-20" "2013-08-09" "2014-07-11" "2014-08-08"
+                       "2014-08-08" "2014-12-05" "2014-12-05" "2015-04-02"
+                       "2015-10-23" "2015-10-23" "2016-03-11" "2016-03-11")
+-                    (map split->date all-splits)))
++                    (map split->date all-splits))))
+ 
+-      (teardown))))
++      (teardown)))
+diff --git a/gnucash/report/test/test-html-chart.scm 
b/gnucash/report/test/test-html-chart.scm
+index 8372b8ecb4b..01ba6b86e44 100644
+--- a/gnucash/report/test/test-html-chart.scm
++++ b/gnucash/report/test/test-html-chart.scm
+@@ -60,8 +60,8 @@
+       'abc
+       (gnc:html-chart-get chart '(options maintainAspectRatio)))
+ 
+-    (test-equal "path doesn't exist"
+-      #f
++    (test-error "path doesn't exist"
++      #t
+       (gnc:html-chart-get chart '(options scales xAxes (0) time)))
+ 
+     (gnc:html-chart-set! chart '(options scales xAxes (0) time) 
a-list-of-pairs)
+@@ -77,11 +77,11 @@
+ 
+     (test-error
+      "1st level option fails - cannot traverse through existing path"
+-     'invalid-path
++     'wrong-type-arg
+      (gnc:html-chart-set! chart '(options legend position invalid) 'de))
+ 
+-    (test-equal "deep nested new path - inexistent"
+-      #f
++    (test-error "deep nested new path - nonexistent"
++      'invalid-path
+       (gnc:html-chart-get chart '(create new nested path)))
+ 
+     (gnc:html-chart-set! chart '(create new nested path) 'newpath)
+@@ -115,6 +115,6 @@
+ 
+     (test-error
+      "deep nested new path - cannot set 6th index"
+-     'error
++     'index-too-high
+      (gnc:html-chart-set! chart '(create list-kth (6) nested path) 'k4th))
+     ))
+diff --git a/gnucash/report/test/test-report-utilities.scm 
b/gnucash/report/test/test-report-utilities.scm
+index cbdc060ca1b..bc69c0c6a72 100644
+--- a/gnucash/report/test/test-report-utilities.scm
++++ b/gnucash/report/test/test-report-utilities.scm
+@@ -483,8 +483,8 @@
+           (collector->list
+            (gnc:select-assoc-account-balance account-balances bank)))
+ 
+-        (test-equal "gnc:select-assoc-account-balance - miss"
+-          #f
++        (test-error "gnc:select-assoc-account-balance - miss"
++          'wrong-type-arg
+           (collector->list
+            (gnc:select-assoc-account-balance account-balances expense)))
+ 
+diff --git a/gnucash/report/test/test-report.scm 
b/gnucash/report/test/test-report.scm
+index 82ec40bb11f..2136e5be08a 100644
+--- a/gnucash/report/test/test-report.scm
++++ b/gnucash/report/test/test-report.scm
+@@ -195,8 +195,8 @@
+     (test-equal "gnc:report-name"
+       "basic report"
+       (gnc:report-name report))
+-    (test-equal "gnc:report-stylesheet"
+-      #f
++    (test-error "gnc:report-stylesheet"
++      'wrong-type-arg
+       (gnc:report-stylesheet report))
+     (test-equal "(gnc:all-report-template-guids)"
+       4
diff -Nru gnucash-5.13/debian/patches/series gnucash-5.13/debian/patches/series
--- gnucash-5.13/debian/patches/series  2025-10-03 21:02:43.000000000 -0700
+++ gnucash-5.13/debian/patches/series  2026-01-24 04:56:58.000000000 -0800
@@ -1,3 +1,4 @@
+fix-lambda-error.patch
 build-flags.patch
 
 #t-skip--python-bindings.patch

Attachment: signature.asc
Description: PGP signature

Reply via email to