[PATCH v5] gnu: fossil: Update to 2.25.

  • Open
  • quality assurance status badge
Details
2 participants
  • ashish.is
  • Ludovic Courtès
Owner
unassigned
Submitted by
ashish.is
Severity
normal
A
A
ashish.is wrote on 15 Apr 01:54 +0200
[PATCH] gnu: fossil: update to 2.23
(address . guix-patches@gnu.org)(name . Ashish SHUKLA)(address . ashish.is@lostca.se)
12bbabebdc8c229f8a000858cfb96495a7259d61.1713138890.git.ashish.is@lostca.se
From: Ashish SHUKLA <ashish.is@lostca.se>

* gnu/packages/version-control.scm (fossil): Update to 2.23.

Signed-off-by: Ashish SHUKLA <ashish.is@lostca.se>
Change-Id: I1794e75cedc4a9bd878850e25686674cecd360e0
---
gnu/packages/version-control.scm | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)

Toggle diff (38 lines)
diff --git a/gnu/packages/version-control.scm b/gnu/packages/version-control.scm
index 19f128d45f..923f67a6a4 100644
--- a/gnu/packages/version-control.scm
+++ b/gnu/packages/version-control.scm
@@ -3015,17 +3015,17 @@ (define-public git-annex-remote-rclone
(define-public fossil
(package
(name "fossil")
- (version "2.20")
+ (version "2.23")
(source
(origin
(method url-fetch)
(uri (string-append
"https://www.fossil-scm.org/home/tarball/"
- "210e89a0597f225f49722b096cf5563bf193e920e02a9bd38503a906deacd416"
+ "47362306a7dd7c6fc3cab77cebe5d25469b0a9448479d9718eb5c49c8337b29"
"/fossil-src-" version ".tar.gz"))
;; XXX: Currently the above hash must be manually updated.
(sha256
- (base32 "08g7img88n2nwcdkpzmg4aqbp2iy40nllgas53502dspm97ym4h8"))
+ (base32 "1r1kabvmlhc0qgyq8g9zhq8i0123x9dba9b71j4xc71k14kfqjm9"))
(modules '((guix build utils)))
(snippet
'(delete-file-recursively "compat"))))
@@ -3035,7 +3035,7 @@ (define-public fossil
which ;for tests only
ed)) ;ditto
(inputs
- (list openssl zlib sqlite))
+ (list openssl zlib sqlite-next))
(arguments
`(#:configure-flags (list "--with-openssl=auto"
"--disable-internal-sqlite")

base-commit: 4e7337536ba41e888a601c92fada8a4adca9d2c6
--
2.41.0
A
A
ashish.is wrote on 22 May 01:59 +0200
[PATCH v2] gnu: fossil: Update to 2.24.
(address . 70389@debbugs.gnu.org)(name . Ashish SHUKLA)(address . ashish.is@lostca.se)
b96ed1d29cfc8601ccd8ead081ff931b11f52eb3.1716335986.git.ashish.is@lostca.se
From: Ashish SHUKLA <ashish.is@lostca.se>

* gnu/packages/version-control.scm (fossil): Update to 2.24.
[sources]: Switch to a simpler tarball URL. Add patches from
upstream to fix unit-tests.
[inputs]: Switch to sqlite-next as fossil needs bleeding edge
sqlite.

Change-Id: Id0cac2634282a0a141e2b17cb423c25e8aacee38
---
gnu/packages/version-control.scm | 30 +++++++++++++++++++++++-------
1 file changed, 23 insertions(+), 7 deletions(-)

Toggle diff (59 lines)
diff --git a/gnu/packages/version-control.scm b/gnu/packages/version-control.scm
index c01eb9decd..d985c531d0 100644
--- a/gnu/packages/version-control.scm
+++ b/gnu/packages/version-control.scm
@@ -3068,19 +3068,35 @@ (define-public git-annex-remote-rclone
(license license:gpl3+)))
(define-public fossil
+ (define (fossil-patch name from to hash)
+ (origin (method url-fetch)
+ (uri (string-append "https://fossil-scm.org/home/vpatch?from=" from
+ "&to=" to))
+ (sha256 (base32 hash))
+ (file-name name)))
(package
(name "fossil")
- (version "2.20")
+ (version "2.24")
(source
(origin
(method url-fetch)
(uri (string-append
- "https://www.fossil-scm.org/home/tarball/"
- "210e89a0597f225f49722b096cf5563bf193e920e02a9bd38503a906deacd416"
- "/fossil-src-" version ".tar.gz"))
- ;; XXX: Currently the above hash must be manually updated.
+ "https://fossil-scm.org/home/tarball/version-" version "/fossil-" version ".tar.gz"))
(sha256
- (base32 "08g7img88n2nwcdkpzmg4aqbp2iy40nllgas53502dspm97ym4h8"))
+ (base32 "0k1gjvxbvvs98yspnf7nj6rb0c7yf60savq7jywbkgimd0bkrkcm"))
+ (patch-flags '("-p0"))
+ (patches `(,(fossil-patch "fossil-disable-tests.patch"
+ "8be0372c10510437"
+ "5ad708085a90365f"
+ "1b4svsrz7cr1zi6qfpavj3ddm6dr0966jbgkbvgjz79ljqmpiasf")
+ ,(fossil-patch "fossil-fix-json-test.patch"
+ "fb4e90b662803e47"
+ "17c01c549e73c6b8"
+ "12gjzyxs22g9grv7qbgp9jg133bgcsj74621s05fk82j3fc7z59g")
+ ,(fossil-patch "fossil-comment-utf-tests.patch"
+ "5ad708085a90365f"
+ "fb4e90b662803e47"
+ "05h2mb6g0840yq74x1cdj95jmqb95i75h6g5v0rzqdc994b96cd4")))
(modules '((guix build utils)))
(snippet
'(delete-file-recursively "compat"))))
@@ -3090,7 +3106,7 @@ (define-public fossil
which ;for tests only
ed)) ;ditto
(inputs
- (list openssl zlib sqlite))
+ (list openssl zlib sqlite-next))
(arguments
`(#:configure-flags (list "--with-openssl=auto"
"--disable-internal-sqlite")

base-commit: 413ef75f89ac337f7ac3331a862c7c8cdc88aa64
--
2.45.1
A
A
Ashish SHUKLA wrote on 22 May 02:19 +0200
retitle bug 70389
(address . control@debbugs.gnu.org)
080c62214ee3a2566e4390ace04eec44@lostca.se
retitle 70389 [PATCH] gnu: fossil: update to 2.24
A
A
ashish.is wrote on 1 Aug 23:44 +0200
[PATCH v2] gnu: fossil: Update to 2.24.
(address . 70389@debbugs.gnu.org)(name . Ashish SHUKLA)(address . ashish.is@lostca.se)
7c073e6175196f701f9104c4ac5bc20991d8b562.1722548648.git.ashish.is@lostca.se
From: Ashish SHUKLA <ashish.is@lostca.se>

* gnu/packages/version-control.scm (fossil): Update to 2.24.
[sources]: switch to a simpler tarball URL. (patches): Add patches
from upstream to fix test failures. [inputs]: Switch to sqlite-next
as fossil needs bleeding edge sqlite.

* gnu/packages/patches/fossil-comment-utf-tests.patch: New file.
* gnu/packages/patches/fossil-disable-tests.patch: New file.
* gnu/packages/patches/fossil-fix-json-test.patch: New file.
* gnu/local.mk (dist_patch_DATA): Register them.

Change-Id: I0e4ffa6b5017cce345b28de953564e534282f6b4
---
Hi,

It seems fossil upstream has introduced a captcha on their web interface which
is where the patches in the previous revision were fetched from. This revision
bundles those patches.

Thanks!
Ashish

gnu/local.mk | 3 +
.../patches/fossil-comment-utf-tests.patch | 119 +++++++++++
.../patches/fossil-disable-tests.patch | 187 ++++++++++++++++++
.../patches/fossil-fix-json-test.patch | 18 ++
gnu/packages/version-control.scm | 16 +-
5 files changed, 336 insertions(+), 7 deletions(-)
create mode 100644 gnu/packages/patches/fossil-comment-utf-tests.patch
create mode 100644 gnu/packages/patches/fossil-disable-tests.patch
create mode 100644 gnu/packages/patches/fossil-fix-json-test.patch

Toggle diff (406 lines)
diff --git a/gnu/local.mk b/gnu/local.mk
index 6d2b14e72d..d328533eee 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -1240,6 +1240,9 @@ dist_patch_DATA = \
%D%/packages/patches/foobillard++-pkg-config.patch \
%D%/packages/patches/foomatic-filters-CVE-2015-8327.patch \
%D%/packages/patches/foomatic-filters-CVE-2015-8560.patch \
+ %D%/packages/patches/fossil-comment-utf-tests.patch \
+ %D%/packages/patches/fossil-disable-tests.patch \
+ %D%/packages/patches/fossil-fix-json-test.patch \
%D%/packages/patches/foxi-fix-build.patch \
%D%/packages/patches/fp16-implicit-double.patch \
%D%/packages/patches/fp16-system-libraries.patch \
diff --git a/gnu/packages/patches/fossil-comment-utf-tests.patch b/gnu/packages/patches/fossil-comment-utf-tests.patch
new file mode 100644
index 0000000000..7f03362be2
--- /dev/null
+++ b/gnu/packages/patches/fossil-comment-utf-tests.patch
@@ -0,0 +1,119 @@
+Index: test/utf.test
+==================================================================
+--- test/utf.test
++++ test/utf.test
+@@ -17609,25 +17609,25 @@
+ Has flag LOOK_LONG: no
+ Has flag LOOK_INVALID: no
+ Has flag LOOK_ODD: no
+ Has flag LOOK_SHORT: no}
+
+-utf-check 1179 utf-check-1179-2-129-1.jnk \
+-{File "%TEMP%/utf-check-1179-2-129-1.jnk" has 7 bytes.
+-Starts with UTF-8 BOM: no
+-Starts with UTF-16 BOM: yes
+-Looks like UTF-8: yes
+-Has flag LOOK_NUL: no
+-Has flag LOOK_CR: no
+-Has flag LOOK_LONE_CR: no
+-Has flag LOOK_LF: no
+-Has flag LOOK_LONE_LF: no
+-Has flag LOOK_CRLF: no
+-Has flag LOOK_LONG: no
+-Has flag LOOK_INVALID: yes
+-Has flag LOOK_ODD: no
+-Has flag LOOK_SHORT: no}
++#utf-check 1179 utf-check-1179-2-129-1.jnk \
++#{File "%TEMP%/utf-check-1179-2-129-1.jnk" has 7 bytes.
++#Starts with UTF-8 BOM: no
++#Starts with UTF-16 BOM: yes
++#Looks like UTF-8: yes
++#Has flag LOOK_NUL: no
++#Has flag LOOK_CR: no
++#Has flag LOOK_LONE_CR: no
++#Has flag LOOK_LF: no
++#Has flag LOOK_LONE_LF: no
++#Has flag LOOK_CRLF: no
++#Has flag LOOK_LONG: no
++#Has flag LOOK_INVALID: yes
++#Has flag LOOK_ODD: no
++#Has flag LOOK_SHORT: no}
+
+ utf-check 1180 utf-check-1180-2-130-0.jnk \
+ {File "%TEMP%/utf-check-1180-2-130-0.jnk" has 4 bytes.
+ Starts with UTF-8 BOM: no
+ Starts with UTF-16 BOM: yes
+@@ -24121,41 +24121,41 @@
+ Has flag LOOK_LONG: no
+ Has flag LOOK_INVALID: yes
+ Has flag LOOK_ODD: no
+ Has flag LOOK_SHORT: no}
+
+-utf-check 1586 utf-check-1586-3-128-0.jnk \
+-{File "%TEMP%/utf-check-1586-3-128-0.jnk" has 6 bytes.
+-Starts with UTF-8 BOM: no
+-Starts with UTF-16 BOM: reversed
+-Looks like UTF-16: no
+-Has flag LOOK_NUL: yes
+-Has flag LOOK_CR: no
+-Has flag LOOK_LONE_CR: no
+-Has flag LOOK_LF: no
+-Has flag LOOK_LONE_LF: no
+-Has flag LOOK_CRLF: no
+-Has flag LOOK_LONG: no
+-Has flag LOOK_INVALID: no
+-Has flag LOOK_ODD: no
+-Has flag LOOK_SHORT: no}
+-
+-utf-check 1587 utf-check-1587-3-128-1.jnk \
+-{File "%TEMP%/utf-check-1587-3-128-1.jnk" has 7 bytes.
+-Starts with UTF-8 BOM: no
+-Starts with UTF-16 BOM: reversed
+-Looks like UTF-8: no
+-Has flag LOOK_NUL: yes
+-Has flag LOOK_CR: no
+-Has flag LOOK_LONE_CR: no
+-Has flag LOOK_LF: no
+-Has flag LOOK_LONE_LF: no
+-Has flag LOOK_CRLF: no
+-Has flag LOOK_LONG: no
+-Has flag LOOK_INVALID: yes
+-Has flag LOOK_ODD: no
+-Has flag LOOK_SHORT: no}
++#utf-check 1586 utf-check-1586-3-128-0.jnk \
++#{File "%TEMP%/utf-check-1586-3-128-0.jnk" has 6 bytes.
++#Starts with UTF-8 BOM: no
++#Starts with UTF-16 BOM: reversed
++#Looks like UTF-16: no
++#Has flag LOOK_NUL: yes
++#Has flag LOOK_CR: no
++#Has flag LOOK_LONE_CR: no
++#Has flag LOOK_LF: no
++#Has flag LOOK_LONE_LF: no
++#Has flag LOOK_CRLF: no
++#Has flag LOOK_LONG: no
++#Has flag LOOK_INVALID: no
++#Has flag LOOK_ODD: no
++#Has flag LOOK_SHORT: no}
++
++#utf-check 1587 utf-check-1587-3-128-1.jnk \
++#{File "%TEMP%/utf-check-1587-3-128-1.jnk" has 7 bytes.
++#Starts with UTF-8 BOM: no
++#Starts with UTF-16 BOM: reversed
++#Looks like UTF-8: no
++#Has flag LOOK_NUL: yes
++#Has flag LOOK_CR: no
++#Has flag LOOK_LONE_CR: no
++#Has flag LOOK_LF: no
++#Has flag LOOK_LONE_LF: no
++#Has flag LOOK_CRLF: no
++#Has flag LOOK_LONG: no
++#Has flag LOOK_INVALID: yes
++#Has flag LOOK_ODD: no
++#Has flag LOOK_SHORT: no}
+
+ utf-check 1588 utf-check-1588-3-129-0.jnk \
+ {File "%TEMP%/utf-check-1588-3-129-0.jnk" has 6 bytes.
+ Starts with UTF-8 BOM: no
+ Starts with UTF-16 BOM: no
+
diff --git a/gnu/packages/patches/fossil-disable-tests.patch b/gnu/packages/patches/fossil-disable-tests.patch
new file mode 100644
index 0000000000..2aaf04e6d4
--- /dev/null
+++ b/gnu/packages/patches/fossil-disable-tests.patch
@@ -0,0 +1,187 @@
+Index: test/amend.test
+==================================================================
+--- test/amend.test
++++ test/amend.test
+@@ -313,10 +313,11 @@
+ }
+ foreach res [lsort -nocase $result] {
+ append t2exp "sym-$res*"
+ }
+ eval fossil amend $HASH $tags
++ set t1exp [string trimleft $t1exp ,]
+ test amend-tag-$tc.1 {[string match "*hash:*$HASH*tags:*$t1exp*" $RESULT]}
+ fossil tag ls --raw $HASH
+ test amend-tag-$tc.2 {[string match $t2exp $RESULT]}
+ fossil timeline -n 1
+ test amend-tag-$tc.3 {[string match $t3exp $RESULT]}
+
+Index: test/merge5.test
+==================================================================
+--- test/merge5.test
++++ test/merge5.test
+@@ -23,11 +23,11 @@
+ }
+ protOut {
+ fossil sqlite3 --no-repository reacts badly to SQL dumped from
+ repositories created from fossil older than version 2.0.
+ }
+-test merge5-sqlite3-issue false knownBug
++#test merge5-sqlite3-issue false knownBug
+ test_cleanup_then_return
+
+ # Verify the results of a check-out
+ #
+ proc checkout-test {testid expected_content} {
+
+Index: test/stash.test
+==================================================================
+--- test/stash.test
++++ test/stash.test
+@@ -168,14 +168,14 @@
+
+ ########
+ # fossil stash show|cat ?STASHID? ?DIFF-OPTIONS?
+ # fossil stash [g]diff ?STASHID? ?DIFF-OPTIONS?
+
+-fossil stash show
+-test stash-1-show {[normalize_result] eq $diff_stash_1}
+-fossil stash diff
+-test stash-1-diff {[normalize_result] eq $diff_stash_1} knownBug
++#fossil stash show
++#test stash-1-show {[normalize_result] eq $diff_stash_1}
++#fossil stash diff
++#test stash-1-diff {[normalize_result] eq $diff_stash_1} knownBug
+
+ ########
+ # fossil stash pop
+
+ stash-test 2 pop {
+@@ -206,16 +206,16 @@
+ # fossil: ./src/delta.c:231: checksum: Assertion '...' failed.
+ # Should be triggered by this stash-WY-1 test.
+ fossil checkout --force c1
+ fossil clean
+ fossil mv --soft f1 f1new
+-stash-test WY-1 {-expectError save -m "Reported 2016-02-09"} {
+- REVERT f1
+- DELETE f1new
+-} -changes {
+-} -addremove {
+-} -exists {f1 f2 f3} -notexists {f1new} -knownbugs {-code -result}
++#stash-test WY-1 {-expectError save -m "Reported 2016-02-09"} {
++# REVERT f1
++# DELETE f1new
++#} -changes {
++#} -addremove {
++#} -exists {f1 f2 f3} -notexists {f1new} -knownbugs {-code -result}
+ # TODO: add tests that verify the saved stash is sensible. Possibly
+ # by applying it and checking results. But until the SQLITE_CONSTRAINT
+ # error is fixed, there is nothing stashed to test.
+
+
+@@ -296,16 +296,17 @@
+ }] -changes {
+ RENAMED f2 -> f2n
+ } -addremove {
+ } -exists {f1 f2n} -notexists {f2}
+
+-stash-test 3-2 {save -m f2n} {
+- REVERT f2
+- DELETE f2n
+-} -exists {f1 f2} -notexists {f2n} -knownbugs {-result}
++fossil stash save -m f2n
++#stash-test 3-2 {save -m f2n} {
++# REVERT f2
++# DELETE f2n
++#} -exists {f1 f2} -notexists {f2n} -knownbugs {-result}
+ fossil stash show
+-test stash-3-2-show-1 {![regexp {\sf1} $RESULT]} knownBug
++#test stash-3-2-show-1 {![regexp {\sf1} $RESULT]} knownBug
+ test stash-3-2-show-2 {[regexp {\sf2n} $RESULT]}
+ stash-test 3-2-pop {pop} {
+ UPDATE f1
+ UPDATE f2n
+ } -changes {
+
+Index: test/tester.tcl
+==================================================================
+--- test/tester.tcl
++++ test/tester.tcl
+@@ -308,10 +308,11 @@
+ comment-format \
+ crlf-glob \
+ crnl-glob \
+ default-csp \
+ default-perms \
++ default-skin \
+ diff-binary \
+ diff-command \
+ dont-commit \
+ dont-push \
+ dotfiles \
+
+Index: test/utf.test
+==================================================================
+--- test/utf.test
++++ test/utf.test
+@@ -35,11 +35,11 @@
+ set i 1
+ foreach {fileName result} $args {
+ set fileName [file join $tempPath $fileName]
+ fossil test-looks-like-utf $fileName
+ set result [string map [list %TEMP% $tempPath \r\n \n] $result]
+- # if {$::RESULT ne $result} {puts stdout $::RESULT}
++ # if {$::RESULT ne $result} {puts stdout $::RESULT; exit}
+ test utf-check-$testname.$i {$::RESULT eq $result}
+ incr i
+ }
+ }
+
+@@ -17613,12 +17613,12 @@
+
+ utf-check 1179 utf-check-1179-2-129-1.jnk \
+ {File "%TEMP%/utf-check-1179-2-129-1.jnk" has 7 bytes.
+ Starts with UTF-8 BOM: no
+ Starts with UTF-16 BOM: yes
+-Looks like UTF-8: no
+-Has flag LOOK_NUL: yes
++Looks like UTF-8: yes
++Has flag LOOK_NUL: no
+ Has flag LOOK_CR: no
+ Has flag LOOK_LONE_CR: no
+ Has flag LOOK_LF: no
+ Has flag LOOK_LONE_LF: no
+ Has flag LOOK_CRLF: no
+@@ -24124,27 +24124,27 @@
+ Has flag LOOK_SHORT: no}
+
+ utf-check 1586 utf-check-1586-3-128-0.jnk \
+ {File "%TEMP%/utf-check-1586-3-128-0.jnk" has 6 bytes.
+ Starts with UTF-8 BOM: no
+-Starts with UTF-16 BOM: no
+-Looks like UTF-8: no
++Starts with UTF-16 BOM: reversed
++Looks like UTF-16: no
+ Has flag LOOK_NUL: yes
+ Has flag LOOK_CR: no
+ Has flag LOOK_LONE_CR: no
+ Has flag LOOK_LF: no
+ Has flag LOOK_LONE_LF: no
+ Has flag LOOK_CRLF: no
+ Has flag LOOK_LONG: no
+-Has flag LOOK_INVALID: yes
++Has flag LOOK_INVALID: no
+ Has flag LOOK_ODD: no
+ Has flag LOOK_SHORT: no}
+
+ utf-check 1587 utf-check-1587-3-128-1.jnk \
+ {File "%TEMP%/utf-check-1587-3-128-1.jnk" has 7 bytes.
+ Starts with UTF-8 BOM: no
+-Starts with UTF-16 BOM: no
++Starts with UTF-16 BOM: reversed
+ Looks like UTF-8: no
+ Has flag LOOK_NUL: yes
+ Has flag LOOK_CR: no
+ Has flag LOOK_LONE_CR: no
+ Has flag LOOK_LF: no
+
diff --git a/gnu/packages/patches/fossil-fix-json-test.patch b/gnu/packages/patches/fossil-fix-json-test.patch
new file mode 100644
index 0000000000..adafce2e9e
--- /dev/null
+++ b/gnu/packages/patches/fossil-fix-json-test.patch
@@ -0,0 +1,18 @@
+Index: test/json.test
+==================================================================
+--- test/json.test
++++ test/json.test
+@@ -107,11 +107,11 @@
+ set request [subst {POST $url HTTP/1.0\r
+ Host: localhost\r
+ User-Agent: Fossil-Test\r
+ Cookie: $cookie\r
+ Content-Type: application/json
+-Content-Length $len
++Content-Length: $len
+ \r
+ $data}]
+ } else {
+ set request [subst {GET $url HTTP/1.0\r
+ Host: localhost\r
+
diff --git a/gnu/packages/version-control.scm b/gnu/packages/version-control.scm
index 9f67237d5d..0951eb6f23 100644
--- a/gnu/packages/version-control.scm
+++ b/gnu/packages/version-control.scm
@@ -53,6 +53,7 @@
;;; Copyright © 2023 Josselin Poiret <dev@jpoiret.xyz>
;;; Copyright © 2024 Hilton Chain <hako@ultrarare.space>
;;; Copyright © 2024 Suhail Singh <suhail@bayesians.ca>
+;;; Copyright © 2024 Ashish SHUKLA <ashish.is@lostca.se>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -3132,17 +3133,18 @@ (define-public git-annex-remote-rclone
(define-public fossil
(package
(name "fossil")
- (version "2.20")
+ (version "2.24")
(source
(origin
(method url-fetch)
(uri (string-append
- "https://www.fossil-scm.org/home/tarball/"
- "210e89a0597f225f49722b096cf5563bf193e920e02a9bd38503a906deacd416"
- "/fossil-src-" version ".tar.gz"))
- ;; XXX: Currently the above hash must be manually updated.
+ "https://fossil-scm.org/home/tarball/version-" version "/fossil-" version ".tar.gz"))
(sha256
- (base32 "08g7img88n2nwcdkpzmg4aqbp2iy40nllgas53502dspm97ym4h8"))
+ (base32 "0k1gjvxbvvs98yspnf7nj6rb0c7yf60savq7jywbkgimd0bkrkcm"))
+ (patch-flags '("-p0"))
+ (patches (search-patches "fossil-comment-utf-tests.patch"
+ "fossil-disable-tests.patch"
+ "fossil-fix-json-test.patch"))
(modules '((guix build utils)))
(snippet
'(delete-file-recursively "compat"))))
@@ -3152,7 +3154,7 @@ (define-public fossil
which ;for tests only
ed)) ;ditto
(inputs
- (list openssl zlib sqlite))
+ (list openssl zlib sqlite-next))
(arguments
`(#:configure-flags (list "--with-openssl=auto"
"--disable-internal-sqlite")

base-commit: 2b4e3c9847dce02e371ff4dce615789fdfd101fa
--
2.45.2
A
A
Ashish wrote on 1 Aug 23:50 +0200
retitle bug report
(address . control@debbugs.gnu.org)
gfhgqs3qwvut6ingm5ne2ni3faswbbuc3olytxokrmo5vahmda@wgjzq6zflvtq
retitle 70389 [PATCH v2] gnu: fossil: Update to 2.24.
quit
L
L
Ludovic Courtès wrote on 15 Sep 23:59 +0200
Re: bug#70389: [PATCH v2] gnu: fossil: Update to 2.24.
(address . ashish.is@lostca.se)(address . 70389@debbugs.gnu.org)
87bk0obmsp.fsf_-_@gnu.org
Hi,

ashish.is@lostca.se skribis:

Toggle quote (20 lines)
> From: Ashish SHUKLA <ashish.is@lostca.se>
>
> * gnu/packages/version-control.scm (fossil): Update to 2.24.
> [sources]: switch to a simpler tarball URL. (patches): Add patches
> from upstream to fix test failures. [inputs]: Switch to sqlite-next
> as fossil needs bleeding edge sqlite.
>
> * gnu/packages/patches/fossil-comment-utf-tests.patch: New file.
> * gnu/packages/patches/fossil-disable-tests.patch: New file.
> * gnu/packages/patches/fossil-fix-json-test.patch: New file.
> * gnu/local.mk (dist_patch_DATA): Register them.
>
> Change-Id: I0e4ffa6b5017cce345b28de953564e534282f6b4
> ---
> Hi,
>
> It seems fossil upstream has introduced a captcha on their web interface which
> is where the patches in the previous revision were fetched from. This revision
> bundles those patches.

Right, this is terrible.

Toggle quote (8 lines)
> diff --git a/gnu/packages/patches/fossil-comment-utf-tests.patch b/gnu/packages/patches/fossil-comment-utf-tests.patch
> new file mode 100644
> index 0000000000..7f03362be2
> --- /dev/null
> +++ b/gnu/packages/patches/fossil-comment-utf-tests.patch
> @@ -0,0 +1,119 @@
> +Index: test/utf.test

Could you add a couple of lines at the top of each patch to (1) briefly
state what they’re about and (2) where they come from (upstream
revisions or branches they were taken from, as could be seen in the
/home/vpatch?from=X&to=Y URLs)?

Otherwise LGTM, thanks!

Ludo’.
A
A
Ashish SHUKLA wrote on 16 Sep 05:29 +0200
[PATCH v3] gnu: fossil: Update to 2.24.
(address . 70389@debbugs.gnu.org)(name . Ashish SHUKLA)(address . ashish.is@lostca.se)
90567de912b6539854b18e4657f8c82364f56245.1726457379.git.ashish.is@lostca.se
* gnu/packages/version-control.scm (fossil): Update to 2.24.
[sources]: switch to a simpler tarball URL. (patches): Add patches
from upstream to fix test failures. [inputs]: Switch to sqlite-next
as fossil needs bleeding edge sqlite.

* gnu/packages/patches/fossil-comment-utf-tests.patch: New file.
* gnu/packages/patches/fossil-disable-tests.patch: New file.
* gnu/packages/patches/fossil-fix-json-test.patch: New file.
* gnu/local.mk (dist_patch_DATA): Register them.

Change-Id: I0e4ffa6b5017cce345b28de953564e534282f6b4
---
Hi,

In this revision, the patches to fix/mask failing test cases are annotated with the upstream source URLs, and the commit messages.

HTH


gnu/local.mk | 3 +
.../patches/fossil-comment-utf-tests.patch | 124 ++++++++++++
.../patches/fossil-disable-tests.patch | 191 ++++++++++++++++++
.../patches/fossil-fix-json-test.patch | 22 ++
gnu/packages/version-control.scm | 16 +-
5 files changed, 349 insertions(+), 7 deletions(-)
create mode 100644 gnu/packages/patches/fossil-comment-utf-tests.patch
create mode 100644 gnu/packages/patches/fossil-disable-tests.patch
create mode 100644 gnu/packages/patches/fossil-fix-json-test.patch

Toggle diff (419 lines)
diff --git a/gnu/local.mk b/gnu/local.mk
index fcdf174099..f609e48881 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -1267,6 +1267,9 @@ dist_patch_DATA = \
%D%/packages/patches/foobillard++-pkg-config.patch \
%D%/packages/patches/foomatic-filters-CVE-2015-8327.patch \
%D%/packages/patches/foomatic-filters-CVE-2015-8560.patch \
+ %D%/packages/patches/fossil-comment-utf-tests.patch \
+ %D%/packages/patches/fossil-disable-tests.patch \
+ %D%/packages/patches/fossil-fix-json-test.patch \
%D%/packages/patches/foxi-fix-build.patch \
%D%/packages/patches/fp16-implicit-double.patch \
%D%/packages/patches/fp16-system-libraries.patch \
diff --git a/gnu/packages/patches/fossil-comment-utf-tests.patch b/gnu/packages/patches/fossil-comment-utf-tests.patch
new file mode 100644
index 0000000000..1d3c676af8
--- /dev/null
+++ b/gnu/packages/patches/fossil-comment-utf-tests.patch
@@ -0,0 +1,124 @@
+Source: https://fossil-scm.org/home/vdiff?from=5ad708085a90365f&to=fb4e90b662803e47
+
+Comment out UTF tests 1179, 1586, and 1587 as they give different results on
+different platforms, for reasons unknown.
+
+Index: test/utf.test
+==================================================================
+--- test/utf.test
++++ test/utf.test
+@@ -17609,25 +17609,25 @@
+ Has flag LOOK_LONG: no
+ Has flag LOOK_INVALID: no
+ Has flag LOOK_ODD: no
+ Has flag LOOK_SHORT: no}
+
+-utf-check 1179 utf-check-1179-2-129-1.jnk \
+-{File "%TEMP%/utf-check-1179-2-129-1.jnk" has 7 bytes.
+-Starts with UTF-8 BOM: no
+-Starts with UTF-16 BOM: yes
+-Looks like UTF-8: yes
+-Has flag LOOK_NUL: no
+-Has flag LOOK_CR: no
+-Has flag LOOK_LONE_CR: no
+-Has flag LOOK_LF: no
+-Has flag LOOK_LONE_LF: no
+-Has flag LOOK_CRLF: no
+-Has flag LOOK_LONG: no
+-Has flag LOOK_INVALID: yes
+-Has flag LOOK_ODD: no
+-Has flag LOOK_SHORT: no}
++#utf-check 1179 utf-check-1179-2-129-1.jnk \
++#{File "%TEMP%/utf-check-1179-2-129-1.jnk" has 7 bytes.
++#Starts with UTF-8 BOM: no
++#Starts with UTF-16 BOM: yes
++#Looks like UTF-8: yes
++#Has flag LOOK_NUL: no
++#Has flag LOOK_CR: no
++#Has flag LOOK_LONE_CR: no
++#Has flag LOOK_LF: no
++#Has flag LOOK_LONE_LF: no
++#Has flag LOOK_CRLF: no
++#Has flag LOOK_LONG: no
++#Has flag LOOK_INVALID: yes
++#Has flag LOOK_ODD: no
++#Has flag LOOK_SHORT: no}
+
+ utf-check 1180 utf-check-1180-2-130-0.jnk \
+ {File "%TEMP%/utf-check-1180-2-130-0.jnk" has 4 bytes.
+ Starts with UTF-8 BOM: no
+ Starts with UTF-16 BOM: yes
+@@ -24121,41 +24121,41 @@
+ Has flag LOOK_LONG: no
+ Has flag LOOK_INVALID: yes
+ Has flag LOOK_ODD: no
+ Has flag LOOK_SHORT: no}
+
+-utf-check 1586 utf-check-1586-3-128-0.jnk \
+-{File "%TEMP%/utf-check-1586-3-128-0.jnk" has 6 bytes.
+-Starts with UTF-8 BOM: no
+-Starts with UTF-16 BOM: reversed
+-Looks like UTF-16: no
+-Has flag LOOK_NUL: yes
+-Has flag LOOK_CR: no
+-Has flag LOOK_LONE_CR: no
+-Has flag LOOK_LF: no
+-Has flag LOOK_LONE_LF: no
+-Has flag LOOK_CRLF: no
+-Has flag LOOK_LONG: no
+-Has flag LOOK_INVALID: no
+-Has flag LOOK_ODD: no
+-Has flag LOOK_SHORT: no}
+-
+-utf-check 1587 utf-check-1587-3-128-1.jnk \
+-{File "%TEMP%/utf-check-1587-3-128-1.jnk" has 7 bytes.
+-Starts with UTF-8 BOM: no
+-Starts with UTF-16 BOM: reversed
+-Looks like UTF-8: no
+-Has flag LOOK_NUL: yes
+-Has flag LOOK_CR: no
+-Has flag LOOK_LONE_CR: no
+-Has flag LOOK_LF: no
+-Has flag LOOK_LONE_LF: no
+-Has flag LOOK_CRLF: no
+-Has flag LOOK_LONG: no
+-Has flag LOOK_INVALID: yes
+-Has flag LOOK_ODD: no
+-Has flag LOOK_SHORT: no}
++#utf-check 1586 utf-check-1586-3-128-0.jnk \
++#{File "%TEMP%/utf-check-1586-3-128-0.jnk" has 6 bytes.
++#Starts with UTF-8 BOM: no
++#Starts with UTF-16 BOM: reversed
++#Looks like UTF-16: no
++#Has flag LOOK_NUL: yes
++#Has flag LOOK_CR: no
++#Has flag LOOK_LONE_CR: no
++#Has flag LOOK_LF: no
++#Has flag LOOK_LONE_LF: no
++#Has flag LOOK_CRLF: no
++#Has flag LOOK_LONG: no
++#Has flag LOOK_INVALID: no
++#Has flag LOOK_ODD: no
++#Has flag LOOK_SHORT: no}
++
++#utf-check 1587 utf-check-1587-3-128-1.jnk \
++#{File "%TEMP%/utf-check-1587-3-128-1.jnk" has 7 bytes.
++#Starts with UTF-8 BOM: no
++#Starts with UTF-16 BOM: reversed
++#Looks like UTF-8: no
++#Has flag LOOK_NUL: yes
++#Has flag LOOK_CR: no
++#Has flag LOOK_LONE_CR: no
++#Has flag LOOK_LF: no
++#Has flag LOOK_LONE_LF: no
++#Has flag LOOK_CRLF: no
++#Has flag LOOK_LONG: no
++#Has flag LOOK_INVALID: yes
++#Has flag LOOK_ODD: no
++#Has flag LOOK_SHORT: no}
+
+ utf-check 1588 utf-check-1588-3-129-0.jnk \
+ {File "%TEMP%/utf-check-1588-3-129-0.jnk" has 6 bytes.
+ Starts with UTF-8 BOM: no
+ Starts with UTF-16 BOM: no
+
diff --git a/gnu/packages/patches/fossil-disable-tests.patch b/gnu/packages/patches/fossil-disable-tests.patch
new file mode 100644
index 0000000000..06bc3cb71a
--- /dev/null
+++ b/gnu/packages/patches/fossil-disable-tests.patch
@@ -0,0 +1,191 @@
+Source: https://fossil-scm.org/home/vdiff?to=5ad708085a90365f&from=8be0372c10510437
+
+Fix or disable brittle test cases that were broken by changes in 2.23.
+
+Index: test/amend.test
+==================================================================
+--- test/amend.test
++++ test/amend.test
+@@ -313,10 +313,11 @@
+ }
+ foreach res [lsort -nocase $result] {
+ append t2exp "sym-$res*"
+ }
+ eval fossil amend $HASH $tags
++ set t1exp [string trimleft $t1exp ,]
+ test amend-tag-$tc.1 {[string match "*hash:*$HASH*tags:*$t1exp*" $RESULT]}
+ fossil tag ls --raw $HASH
+ test amend-tag-$tc.2 {[string match $t2exp $RESULT]}
+ fossil timeline -n 1
+ test amend-tag-$tc.3 {[string match $t3exp $RESULT]}
+
+Index: test/merge5.test
+==================================================================
+--- test/merge5.test
++++ test/merge5.test
+@@ -23,11 +23,11 @@
+ }
+ protOut {
+ fossil sqlite3 --no-repository reacts badly to SQL dumped from
+ repositories created from fossil older than version 2.0.
+ }
+-test merge5-sqlite3-issue false knownBug
++#test merge5-sqlite3-issue false knownBug
+ test_cleanup_then_return
+
+ # Verify the results of a check-out
+ #
+ proc checkout-test {testid expected_content} {
+
+Index: test/stash.test
+==================================================================
+--- test/stash.test
++++ test/stash.test
+@@ -168,14 +168,14 @@
+
+ ########
+ # fossil stash show|cat ?STASHID? ?DIFF-OPTIONS?
+ # fossil stash [g]diff ?STASHID? ?DIFF-OPTIONS?
+
+-fossil stash show
+-test stash-1-show {[normalize_result] eq $diff_stash_1}
+-fossil stash diff
+-test stash-1-diff {[normalize_result] eq $diff_stash_1} knownBug
++#fossil stash show
++#test stash-1-show {[normalize_result] eq $diff_stash_1}
++#fossil stash diff
++#test stash-1-diff {[normalize_result] eq $diff_stash_1} knownBug
+
+ ########
+ # fossil stash pop
+
+ stash-test 2 pop {
+@@ -206,16 +206,16 @@
+ # fossil: ./src/delta.c:231: checksum: Assertion '...' failed.
+ # Should be triggered by this stash-WY-1 test.
+ fossil checkout --force c1
+ fossil clean
+ fossil mv --soft f1 f1new
+-stash-test WY-1 {-expectError save -m "Reported 2016-02-09"} {
+- REVERT f1
+- DELETE f1new
+-} -changes {
+-} -addremove {
+-} -exists {f1 f2 f3} -notexists {f1new} -knownbugs {-code -result}
++#stash-test WY-1 {-expectError save -m "Reported 2016-02-09"} {
++# REVERT f1
++# DELETE f1new
++#} -changes {
++#} -addremove {
++#} -exists {f1 f2 f3} -notexists {f1new} -knownbugs {-code -result}
+ # TODO: add tests that verify the saved stash is sensible. Possibly
+ # by applying it and checking results. But until the SQLITE_CONSTRAINT
+ # error is fixed, there is nothing stashed to test.
+
+
+@@ -296,16 +296,17 @@
+ }] -changes {
+ RENAMED f2 -> f2n
+ } -addremove {
+ } -exists {f1 f2n} -notexists {f2}
+
+-stash-test 3-2 {save -m f2n} {
+- REVERT f2
+- DELETE f2n
+-} -exists {f1 f2} -notexists {f2n} -knownbugs {-result}
++fossil stash save -m f2n
++#stash-test 3-2 {save -m f2n} {
++# REVERT f2
++# DELETE f2n
++#} -exists {f1 f2} -notexists {f2n} -knownbugs {-result}
+ fossil stash show
+-test stash-3-2-show-1 {![regexp {\sf1} $RESULT]} knownBug
++#test stash-3-2-show-1 {![regexp {\sf1} $RESULT]} knownBug
+ test stash-3-2-show-2 {[regexp {\sf2n} $RESULT]}
+ stash-test 3-2-pop {pop} {
+ UPDATE f1
+ UPDATE f2n
+ } -changes {
+
+Index: test/tester.tcl
+==================================================================
+--- test/tester.tcl
++++ test/tester.tcl
+@@ -308,10 +308,11 @@
+ comment-format \
+ crlf-glob \
+ crnl-glob \
+ default-csp \
+ default-perms \
++ default-skin \
+ diff-binary \
+ diff-command \
+ dont-commit \
+ dont-push \
+ dotfiles \
+
+Index: test/utf.test
+==================================================================
+--- test/utf.test
++++ test/utf.test
+@@ -35,11 +35,11 @@
+ set i 1
+ foreach {fileName result} $args {
+ set fileName [file join $tempPath $fileName]
+ fossil test-looks-like-utf $fileName
+ set result [string map [list %TEMP% $tempPath \r\n \n] $result]
+- # if {$::RESULT ne $result} {puts stdout $::RESULT}
++ # if {$::RESULT ne $result} {puts stdout $::RESULT; exit}
+ test utf-check-$testname.$i {$::RESULT eq $result}
+ incr i
+ }
+ }
+
+@@ -17613,12 +17613,12 @@
+
+ utf-check 1179 utf-check-1179-2-129-1.jnk \
+ {File "%TEMP%/utf-check-1179-2-129-1.jnk" has 7 bytes.
+ Starts with UTF-8 BOM: no
+ Starts with UTF-16 BOM: yes
+-Looks like UTF-8: no
+-Has flag LOOK_NUL: yes
++Looks like UTF-8: yes
++Has flag LOOK_NUL: no
+ Has flag LOOK_CR: no
+ Has flag LOOK_LONE_CR: no
+ Has flag LOOK_LF: no
+ Has flag LOOK_LONE_LF: no
+ Has flag LOOK_CRLF: no
+@@ -24124,27 +24124,27 @@
+ Has flag LOOK_SHORT: no}
+
+ utf-check 1586 utf-check-1586-3-128-0.jnk \
+ {File "%TEMP%/utf-check-1586-3-128-0.jnk" has 6 bytes.
+ Starts with UTF-8 BOM: no
+-Starts with UTF-16 BOM: no
+-Looks like UTF-8: no
++Starts with UTF-16 BOM: reversed
++Looks like UTF-16: no
+ Has flag LOOK_NUL: yes
+ Has flag LOOK_CR: no
+ Has flag LOOK_LONE_CR: no
+ Has flag LOOK_LF: no
+ Has flag LOOK_LONE_LF: no
+ Has flag LOOK_CRLF: no
+ Has flag LOOK_LONG: no
+-Has flag LOOK_INVALID: yes
++Has flag LOOK_INVALID: no
+ Has flag LOOK_ODD: no
+ Has flag LOOK_SHORT: no}
+
+ utf-check 1587 utf-check-1587-3-128-1.jnk \
+ {File "%TEMP%/utf-check-1587-3-128-1.jnk" has 7 bytes.
+ Starts with UTF-8 BOM: no
+-Starts with UTF-16 BOM: no
++Starts with UTF-16 BOM: reversed
+ Looks like UTF-8: no
+ Has flag LOOK_NUL: yes
+ Has flag LOOK_CR: no
+ Has flag LOOK_LONE_CR: no
+ Has flag LOOK_LF: no
+
diff --git a/gnu/packages/patches/fossil-fix-json-test.patch b/gnu/packages/patches/fossil-fix-json-test.patch
new file mode 100644
index 0000000000..7d26298028
--- /dev/null
+++ b/gnu/packages/patches/fossil-fix-json-test.patch
@@ -0,0 +1,22 @@
+Source: https://fossil-scm.org/home/vdiff?to=17c01c549e73c6b8&from=fb4e90b662803e47
+
+Fix json-cap-POSTenv-name, json-cap-POSTenv-notsetup tests
+
+Index: test/json.test
+==================================================================
+--- test/json.test
++++ test/json.test
+@@ -107,11 +107,11 @@
+ set request [subst {POST $url HTTP/1.0\r
+ Host: localhost\r
+ User-Agent: Fossil-Test\r
+ Cookie: $cookie\r
+ Content-Type: application/json
+-Content-Length $len
++Content-Length: $len
+ \r
+ $data}]
+ } else {
+ set request [subst {GET $url HTTP/1.0\r
+ Host: localhost\r
+
diff --git a/gnu/packages/version-control.scm b/gnu/packages/version-control.scm
index 852879901a..f438b7ada5 100644
--- a/gnu/packages/version-control.scm
+++ b/gnu/packages/version-control.scm
@@ -56,6 +56,7 @@
;;; Copyright © 2023 Zheng Junjie <873216071@qq.com>
;;; Copyright © 2024 Suhail Singh <suhail@bayesians.ca>
;;; Copyright © 2024 Simon Tournier <zimon.toutoune@gmail.com>
+;;; Copyright © 2024 Ashish SHUKLA <ashish.is@lostca.se>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -3223,17 +3224,18 @@ (define-public git-annex-remote-rclone
(define-public fossil
(package
(name "fossil")
- (version "2.20")
+ (version "2.24")
(source
(origin
(method url-fetch)
(uri (string-append
- "https://www.fossil-scm.org/home/tarball/"
- "210e89a0597f225f49722b096cf5563bf193e920e02a9bd38503a906deacd416"
- "/fossil-src-" version ".tar.gz"))
- ;; XXX: Currently the above hash must be manually updated.
+ "https://fossil-scm.org/home/tarball/version-" version "/fossil-" version ".tar.gz"))
(sha256
- (base32 "08g7img88n2nwcdkpzmg4aqbp2iy40nllgas53502dspm97ym4h8"))
+ (base32 "0k1gjvxbvvs98yspnf7nj6rb0c7yf60savq7jywbkgimd0bkrkcm"))
+ (patch-flags '("-p0"))
+ (patches (search-patches "fossil-comment-utf-tests.patch"
+ "fossil-disable-tests.patch"
+ "fossil-fix-json-test.patch"))
(modules '((guix build utils)))
(snippet
'(delete-file-recursively "compat"))))
@@ -3243,7 +3245,7 @@ (define-public fossil
which ;for tests only
ed)) ;ditto
(inputs
- (list openssl zlib sqlite))
+ (list openssl zlib sqlite-next))
(arguments
`(#:configure-flags (list "--with-openssl=auto"
"--disable-internal-sqlite")

base-commit: 8bb98e67cb3ff0a73463787654ab6460a3a9db0a
--
2.46.0
A
A
Ashish SHUKLA wrote on 16 Sep 17:48 +0200
[PATCH v4] gnu: fossil: Update to 2.24.
(address . 70389@debbugs.gnu.org)(name . Ashish SHUKLA)(address . ashish.is@lostca.se)
70ca87be51ea591a128edd857d15188e5d869c8f.1726501717.git.ashish.is@lostca.se
* gnu/packages/version-control.scm (fossil): Update to 2.24.
[sources]: switch to a simpler tarball URL. (patches): Add patches
from upstream to fix test failures. [inputs]: Switch to sqlite-next
as fossil needs bleeding edge sqlite.

* gnu/packages/patches/fossil-comment-utf-tests.patch: New file.
* gnu/packages/patches/fossil-disable-tests.patch: New file.
* gnu/packages/patches/fossil-fix-json-test.patch: New file.
* gnu/local.mk (dist_patch_DATA): Register them.

Change-Id: I0e4ffa6b5017cce345b28de953564e534282f6b4
---
Hi,

This revision fixes the build error in previous revision that was sneaked in due to reordering of the patches on my part.

Thanks!
Ashish


gnu/local.mk | 3 +
.../patches/fossil-comment-utf-tests.patch | 124 ++++++++++++
.../patches/fossil-disable-tests.patch | 191 ++++++++++++++++++
.../patches/fossil-fix-json-test.patch | 22 ++
gnu/packages/version-control.scm | 16 +-
5 files changed, 349 insertions(+), 7 deletions(-)
create mode 100644 gnu/packages/patches/fossil-comment-utf-tests.patch
create mode 100644 gnu/packages/patches/fossil-disable-tests.patch
create mode 100644 gnu/packages/patches/fossil-fix-json-test.patch

Toggle diff (419 lines)
diff --git a/gnu/local.mk b/gnu/local.mk
index fcdf174099..f609e48881 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -1267,6 +1267,9 @@ dist_patch_DATA = \
%D%/packages/patches/foobillard++-pkg-config.patch \
%D%/packages/patches/foomatic-filters-CVE-2015-8327.patch \
%D%/packages/patches/foomatic-filters-CVE-2015-8560.patch \
+ %D%/packages/patches/fossil-comment-utf-tests.patch \
+ %D%/packages/patches/fossil-disable-tests.patch \
+ %D%/packages/patches/fossil-fix-json-test.patch \
%D%/packages/patches/foxi-fix-build.patch \
%D%/packages/patches/fp16-implicit-double.patch \
%D%/packages/patches/fp16-system-libraries.patch \
diff --git a/gnu/packages/patches/fossil-comment-utf-tests.patch b/gnu/packages/patches/fossil-comment-utf-tests.patch
new file mode 100644
index 0000000000..1d3c676af8
--- /dev/null
+++ b/gnu/packages/patches/fossil-comment-utf-tests.patch
@@ -0,0 +1,124 @@
+Source: https://fossil-scm.org/home/vdiff?from=5ad708085a90365f&to=fb4e90b662803e47
+
+Comment out UTF tests 1179, 1586, and 1587 as they give different results on
+different platforms, for reasons unknown.
+
+Index: test/utf.test
+==================================================================
+--- test/utf.test
++++ test/utf.test
+@@ -17609,25 +17609,25 @@
+ Has flag LOOK_LONG: no
+ Has flag LOOK_INVALID: no
+ Has flag LOOK_ODD: no
+ Has flag LOOK_SHORT: no}
+
+-utf-check 1179 utf-check-1179-2-129-1.jnk \
+-{File "%TEMP%/utf-check-1179-2-129-1.jnk" has 7 bytes.
+-Starts with UTF-8 BOM: no
+-Starts with UTF-16 BOM: yes
+-Looks like UTF-8: yes
+-Has flag LOOK_NUL: no
+-Has flag LOOK_CR: no
+-Has flag LOOK_LONE_CR: no
+-Has flag LOOK_LF: no
+-Has flag LOOK_LONE_LF: no
+-Has flag LOOK_CRLF: no
+-Has flag LOOK_LONG: no
+-Has flag LOOK_INVALID: yes
+-Has flag LOOK_ODD: no
+-Has flag LOOK_SHORT: no}
++#utf-check 1179 utf-check-1179-2-129-1.jnk \
++#{File "%TEMP%/utf-check-1179-2-129-1.jnk" has 7 bytes.
++#Starts with UTF-8 BOM: no
++#Starts with UTF-16 BOM: yes
++#Looks like UTF-8: yes
++#Has flag LOOK_NUL: no
++#Has flag LOOK_CR: no
++#Has flag LOOK_LONE_CR: no
++#Has flag LOOK_LF: no
++#Has flag LOOK_LONE_LF: no
++#Has flag LOOK_CRLF: no
++#Has flag LOOK_LONG: no
++#Has flag LOOK_INVALID: yes
++#Has flag LOOK_ODD: no
++#Has flag LOOK_SHORT: no}
+
+ utf-check 1180 utf-check-1180-2-130-0.jnk \
+ {File "%TEMP%/utf-check-1180-2-130-0.jnk" has 4 bytes.
+ Starts with UTF-8 BOM: no
+ Starts with UTF-16 BOM: yes
+@@ -24121,41 +24121,41 @@
+ Has flag LOOK_LONG: no
+ Has flag LOOK_INVALID: yes
+ Has flag LOOK_ODD: no
+ Has flag LOOK_SHORT: no}
+
+-utf-check 1586 utf-check-1586-3-128-0.jnk \
+-{File "%TEMP%/utf-check-1586-3-128-0.jnk" has 6 bytes.
+-Starts with UTF-8 BOM: no
+-Starts with UTF-16 BOM: reversed
+-Looks like UTF-16: no
+-Has flag LOOK_NUL: yes
+-Has flag LOOK_CR: no
+-Has flag LOOK_LONE_CR: no
+-Has flag LOOK_LF: no
+-Has flag LOOK_LONE_LF: no
+-Has flag LOOK_CRLF: no
+-Has flag LOOK_LONG: no
+-Has flag LOOK_INVALID: no
+-Has flag LOOK_ODD: no
+-Has flag LOOK_SHORT: no}
+-
+-utf-check 1587 utf-check-1587-3-128-1.jnk \
+-{File "%TEMP%/utf-check-1587-3-128-1.jnk" has 7 bytes.
+-Starts with UTF-8 BOM: no
+-Starts with UTF-16 BOM: reversed
+-Looks like UTF-8: no
+-Has flag LOOK_NUL: yes
+-Has flag LOOK_CR: no
+-Has flag LOOK_LONE_CR: no
+-Has flag LOOK_LF: no
+-Has flag LOOK_LONE_LF: no
+-Has flag LOOK_CRLF: no
+-Has flag LOOK_LONG: no
+-Has flag LOOK_INVALID: yes
+-Has flag LOOK_ODD: no
+-Has flag LOOK_SHORT: no}
++#utf-check 1586 utf-check-1586-3-128-0.jnk \
++#{File "%TEMP%/utf-check-1586-3-128-0.jnk" has 6 bytes.
++#Starts with UTF-8 BOM: no
++#Starts with UTF-16 BOM: reversed
++#Looks like UTF-16: no
++#Has flag LOOK_NUL: yes
++#Has flag LOOK_CR: no
++#Has flag LOOK_LONE_CR: no
++#Has flag LOOK_LF: no
++#Has flag LOOK_LONE_LF: no
++#Has flag LOOK_CRLF: no
++#Has flag LOOK_LONG: no
++#Has flag LOOK_INVALID: no
++#Has flag LOOK_ODD: no
++#Has flag LOOK_SHORT: no}
++
++#utf-check 1587 utf-check-1587-3-128-1.jnk \
++#{File "%TEMP%/utf-check-1587-3-128-1.jnk" has 7 bytes.
++#Starts with UTF-8 BOM: no
++#Starts with UTF-16 BOM: reversed
++#Looks like UTF-8: no
++#Has flag LOOK_NUL: yes
++#Has flag LOOK_CR: no
++#Has flag LOOK_LONE_CR: no
++#Has flag LOOK_LF: no
++#Has flag LOOK_LONE_LF: no
++#Has flag LOOK_CRLF: no
++#Has flag LOOK_LONG: no
++#Has flag LOOK_INVALID: yes
++#Has flag LOOK_ODD: no
++#Has flag LOOK_SHORT: no}
+
+ utf-check 1588 utf-check-1588-3-129-0.jnk \
+ {File "%TEMP%/utf-check-1588-3-129-0.jnk" has 6 bytes.
+ Starts with UTF-8 BOM: no
+ Starts with UTF-16 BOM: no
+
diff --git a/gnu/packages/patches/fossil-disable-tests.patch b/gnu/packages/patches/fossil-disable-tests.patch
new file mode 100644
index 0000000000..06bc3cb71a
--- /dev/null
+++ b/gnu/packages/patches/fossil-disable-tests.patch
@@ -0,0 +1,191 @@
+Source: https://fossil-scm.org/home/vdiff?to=5ad708085a90365f&from=8be0372c10510437
+
+Fix or disable brittle test cases that were broken by changes in 2.23.
+
+Index: test/amend.test
+==================================================================
+--- test/amend.test
++++ test/amend.test
+@@ -313,10 +313,11 @@
+ }
+ foreach res [lsort -nocase $result] {
+ append t2exp "sym-$res*"
+ }
+ eval fossil amend $HASH $tags
++ set t1exp [string trimleft $t1exp ,]
+ test amend-tag-$tc.1 {[string match "*hash:*$HASH*tags:*$t1exp*" $RESULT]}
+ fossil tag ls --raw $HASH
+ test amend-tag-$tc.2 {[string match $t2exp $RESULT]}
+ fossil timeline -n 1
+ test amend-tag-$tc.3 {[string match $t3exp $RESULT]}
+
+Index: test/merge5.test
+==================================================================
+--- test/merge5.test
++++ test/merge5.test
+@@ -23,11 +23,11 @@
+ }
+ protOut {
+ fossil sqlite3 --no-repository reacts badly to SQL dumped from
+ repositories created from fossil older than version 2.0.
+ }
+-test merge5-sqlite3-issue false knownBug
++#test merge5-sqlite3-issue false knownBug
+ test_cleanup_then_return
+
+ # Verify the results of a check-out
+ #
+ proc checkout-test {testid expected_content} {
+
+Index: test/stash.test
+==================================================================
+--- test/stash.test
++++ test/stash.test
+@@ -168,14 +168,14 @@
+
+ ########
+ # fossil stash show|cat ?STASHID? ?DIFF-OPTIONS?
+ # fossil stash [g]diff ?STASHID? ?DIFF-OPTIONS?
+
+-fossil stash show
+-test stash-1-show {[normalize_result] eq $diff_stash_1}
+-fossil stash diff
+-test stash-1-diff {[normalize_result] eq $diff_stash_1} knownBug
++#fossil stash show
++#test stash-1-show {[normalize_result] eq $diff_stash_1}
++#fossil stash diff
++#test stash-1-diff {[normalize_result] eq $diff_stash_1} knownBug
+
+ ########
+ # fossil stash pop
+
+ stash-test 2 pop {
+@@ -206,16 +206,16 @@
+ # fossil: ./src/delta.c:231: checksum: Assertion '...' failed.
+ # Should be triggered by this stash-WY-1 test.
+ fossil checkout --force c1
+ fossil clean
+ fossil mv --soft f1 f1new
+-stash-test WY-1 {-expectError save -m "Reported 2016-02-09"} {
+- REVERT f1
+- DELETE f1new
+-} -changes {
+-} -addremove {
+-} -exists {f1 f2 f3} -notexists {f1new} -knownbugs {-code -result}
++#stash-test WY-1 {-expectError save -m "Reported 2016-02-09"} {
++# REVERT f1
++# DELETE f1new
++#} -changes {
++#} -addremove {
++#} -exists {f1 f2 f3} -notexists {f1new} -knownbugs {-code -result}
+ # TODO: add tests that verify the saved stash is sensible. Possibly
+ # by applying it and checking results. But until the SQLITE_CONSTRAINT
+ # error is fixed, there is nothing stashed to test.
+
+
+@@ -296,16 +296,17 @@
+ }] -changes {
+ RENAMED f2 -> f2n
+ } -addremove {
+ } -exists {f1 f2n} -notexists {f2}
+
+-stash-test 3-2 {save -m f2n} {
+- REVERT f2
+- DELETE f2n
+-} -exists {f1 f2} -notexists {f2n} -knownbugs {-result}
++fossil stash save -m f2n
++#stash-test 3-2 {save -m f2n} {
++# REVERT f2
++# DELETE f2n
++#} -exists {f1 f2} -notexists {f2n} -knownbugs {-result}
+ fossil stash show
+-test stash-3-2-show-1 {![regexp {\sf1} $RESULT]} knownBug
++#test stash-3-2-show-1 {![regexp {\sf1} $RESULT]} knownBug
+ test stash-3-2-show-2 {[regexp {\sf2n} $RESULT]}
+ stash-test 3-2-pop {pop} {
+ UPDATE f1
+ UPDATE f2n
+ } -changes {
+
+Index: test/tester.tcl
+==================================================================
+--- test/tester.tcl
++++ test/tester.tcl
+@@ -308,10 +308,11 @@
+ comment-format \
+ crlf-glob \
+ crnl-glob \
+ default-csp \
+ default-perms \
++ default-skin \
+ diff-binary \
+ diff-command \
+ dont-commit \
+ dont-push \
+ dotfiles \
+
+Index: test/utf.test
+==================================================================
+--- test/utf.test
++++ test/utf.test
+@@ -35,11 +35,11 @@
+ set i 1
+ foreach {fileName result} $args {
+ set fileName [file join $tempPath $fileName]
+ fossil test-looks-like-utf $fileName
+ set result [string map [list %TEMP% $tempPath \r\n \n] $result]
+- # if {$::RESULT ne $result} {puts stdout $::RESULT}
++ # if {$::RESULT ne $result} {puts stdout $::RESULT; exit}
+ test utf-check-$testname.$i {$::RESULT eq $result}
+ incr i
+ }
+ }
+
+@@ -17613,12 +17613,12 @@
+
+ utf-check 1179 utf-check-1179-2-129-1.jnk \
+ {File "%TEMP%/utf-check-1179-2-129-1.jnk" has 7 bytes.
+ Starts with UTF-8 BOM: no
+ Starts with UTF-16 BOM: yes
+-Looks like UTF-8: no
+-Has flag LOOK_NUL: yes
++Looks like UTF-8: yes
++Has flag LOOK_NUL: no
+ Has flag LOOK_CR: no
+ Has flag LOOK_LONE_CR: no
+ Has flag LOOK_LF: no
+ Has flag LOOK_LONE_LF: no
+ Has flag LOOK_CRLF: no
+@@ -24124,27 +24124,27 @@
+ Has flag LOOK_SHORT: no}
+
+ utf-check 1586 utf-check-1586-3-128-0.jnk \
+ {File "%TEMP%/utf-check-1586-3-128-0.jnk" has 6 bytes.
+ Starts with UTF-8 BOM: no
+-Starts with UTF-16 BOM: no
+-Looks like UTF-8: no
++Starts with UTF-16 BOM: reversed
++Looks like UTF-16: no
+ Has flag LOOK_NUL: yes
+ Has flag LOOK_CR: no
+ Has flag LOOK_LONE_CR: no
+ Has flag LOOK_LF: no
+ Has flag LOOK_LONE_LF: no
+ Has flag LOOK_CRLF: no
+ Has flag LOOK_LONG: no
+-Has flag LOOK_INVALID: yes
++Has flag LOOK_INVALID: no
+ Has flag LOOK_ODD: no
+ Has flag LOOK_SHORT: no}
+
+ utf-check 1587 utf-check-1587-3-128-1.jnk \
+ {File "%TEMP%/utf-check-1587-3-128-1.jnk" has 7 bytes.
+ Starts with UTF-8 BOM: no
+-Starts with UTF-16 BOM: no
++Starts with UTF-16 BOM: reversed
+ Looks like UTF-8: no
+ Has flag LOOK_NUL: yes
+ Has flag LOOK_CR: no
+ Has flag LOOK_LONE_CR: no
+ Has flag LOOK_LF: no
+
diff --git a/gnu/packages/patches/fossil-fix-json-test.patch b/gnu/packages/patches/fossil-fix-json-test.patch
new file mode 100644
index 0000000000..7d26298028
--- /dev/null
+++ b/gnu/packages/patches/fossil-fix-json-test.patch
@@ -0,0 +1,22 @@
+Source: https://fossil-scm.org/home/vdiff?to=17c01c549e73c6b8&from=fb4e90b662803e47
+
+Fix json-cap-POSTenv-name, json-cap-POSTenv-notsetup tests
+
+Index: test/json.test
+==================================================================
+--- test/json.test
++++ test/json.test
+@@ -107,11 +107,11 @@
+ set request [subst {POST $url HTTP/1.0\r
+ Host: localhost\r
+ User-Agent: Fossil-Test\r
+ Cookie: $cookie\r
+ Content-Type: application/json
+-Content-Length $len
++Content-Length: $len
+ \r
+ $data}]
+ } else {
+ set request [subst {GET $url HTTP/1.0\r
+ Host: localhost\r
+
diff --git a/gnu/packages/version-control.scm b/gnu/packages/version-control.scm
index 852879901a..14ec018205 100644
--- a/gnu/packages/version-control.scm
+++ b/gnu/packages/version-control.scm
@@ -56,6 +56,7 @@
;;; Copyright © 2023 Zheng Junjie <873216071@qq.com>
;;; Copyright © 2024 Suhail Singh <suhail@bayesians.ca>
;;; Copyright © 2024 Simon Tournier <zimon.toutoune@gmail.com>
+;;; Copyright © 2024 Ashish SHUKLA <ashish.is@lostca.se>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -3223,17 +3224,18 @@ (define-public git-annex-remote-rclone
(define-public fossil
(package
(name "fossil")
- (version "2.20")
+ (version "2.24")
(source
(origin
(method url-fetch)
(uri (string-append
- "https://www.fossil-scm.org/home/tarball/"
- "210e89a0597f225f49722b096cf5563bf193e920e02a9bd38503a906deacd416"
- "/fossil-src-" version ".tar.gz"))
- ;; XXX: Currently the above hash must be manually updated.
+ "https://fossil-scm.org/home/tarball/version-" version "/fossil-" version ".tar.gz"))
(sha256
- (base32 "08g7img88n2nwcdkpzmg4aqbp2iy40nllgas53502dspm97ym4h8"))
+ (base32 "0k1gjvxbvvs98yspnf7nj6rb0c7yf60savq7jywbkgimd0bkrkcm"))
+ (patch-flags '("-p0"))
+ (patches (search-patches "fossil-disable-tests.patch"
+ "fossil-comment-utf-tests.patch"
+ "fossil-fix-json-test.patch"))
(modules '((guix build utils)))
(snippet
'(delete-file-recursively "compat"))))
@@ -3243,7 +3245,7 @@ (define-public fossil
which ;for tests only
ed)) ;ditto
(inputs
- (list openssl zlib sqlite))
+ (list openssl zlib sqlite-next))
(arguments
`(#:configure-flags (list "--with-openssl=auto"
"--disable-internal-sqlite")

base-commit: ee64bcfb796ef36db4b63f79540627fb25f3320a
--
2.46.0
A
A
Ashish SHUKLA wrote on 16 Sep 17:51 +0200
retite bug report
(address . control@debbugs.gnu.org)
D47TULCRR3PC.23TH15GG6B52Y@lostca.se
retitle 70389 [PATCH v4] gnu: fossil: Update to 2.24.
quit
A
A
ashish.is wrote 2 days ago
[PATCH v5] gnu: fossil: Update to 2.25.
(address . 70389@debbugs.gnu.org)(name . Ashish SHUKLA)(address . ashish.is@lostca.se)
1b0c7c42a4cce63266a9be38d2f85d70b0232118.1731992026.git.ashish.is@lostca.se
From: Ashish SHUKLA <ashish.is@lostca.se>

* gnu/packages/version-control.scm (fossil): Update to 2.25.
[source]: switch to a simpler tarball URL.
[arguments]<configure-flags>: Add flag to enable JSON support.

Change-Id: I644dff44ce96d7f42e92cdbc994c4096ac55bf10
---
gnu/packages/version-control.scm | 14 +++++---------
1 file changed, 5 insertions(+), 9 deletions(-)

Toggle diff (41 lines)
diff --git a/gnu/packages/version-control.scm b/gnu/packages/version-control.scm
index c892a83a98..e39c57c137 100644
--- a/gnu/packages/version-control.scm
+++ b/gnu/packages/version-control.scm
@@ -3309,20 +3309,15 @@ (define-public git-annex-remote-rclone
(define-public fossil
(package
(name "fossil")
- (version "2.23")
+ (version "2.25")
(source
(origin
(method url-fetch)
(uri (string-append
- "https://www.fossil-scm.org/home/tarball/"
- "47362306a7dd7c6fc3cab77cebe5d25469b0a9448479d9718eb5c49c8337b29"
- "/fossil-src-" version ".tar.gz"))
- ;; XXX: Currently the above hash must be manually updated.
+ "https://fossil-scm.org/home/tarball/version-" version
+ "/fossil-" version ".tar.gz"))
(sha256
- (base32 "1r1kabvmlhc0qgyq8g9zhq8i0123x9dba9b71j4xc71k14kfqjm9"))
- (modules '((guix build utils)))
- (snippet
- '(delete-file-recursively "compat"))))
+ (base32 "18gws90by2q6a6rk7h3mx46pn79lz4zi3saxlyrdz5982mw9rvp4"))))
(build-system gnu-build-system)
(native-inputs
(list tcl ;for configuration only
@@ -3333,6 +3328,7 @@ (define-public fossil
(list openssl zlib sqlite-next))
(arguments
`(#:configure-flags (list "--with-openssl=auto"
+ "--enable-json"
"--disable-internal-sqlite")
#:test-target "test"
#:phases (modify-phases %standard-phases

base-commit: 4473f8ae902c2192cab6919363a9101ce9861e45
--
2.47.0
A
A
Ashish SHUKLA wrote 2 days ago
retitle bug
(address . control@debbugs.gnu.org)
D5PVY640JS28.3KED1M1MVGQ7K@lostca.se
retitle 70389 [PATCH v5] gnu: fossil: Update to 2.25.
quit
?
Your comment

Commenting via the web interface is currently disabled.

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

To respond to this issue using the mumi CLI, first switch to it
mumi current 70389
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