guix_mirror_bot pushed a commit to branch crypto-team
in repository guix.

commit bb39faab78a910bf33e206d43a2792f924457ffa
Author: Andreas Enge <[email protected]>
AuthorDate: Thu May 28 13:32:37 2026 +0200

    gnu: Remove utf8proc-bootstrap.
    
    More precisely, rename the utf8proc-bootstrap package, built without tests,
    to utf8proc, and drop the current utf8proc with tests depending on julia.
    
    * gnu/packages/textutils.scm (utf8proc-bootstrap): Rename to...
    (utf8proc): ...this and drop the previous definition.
    * gnu/packages/julia.scm (julia)[inputs]: Replace utf8proc-bootstrap by
    utf8proc.
    
    Fixes: guix/guix#5856
    Fixes: guix/guix#8911
    Change-Id: I293d61f5015f8302d001915c8f087ba500e5f211
---
 gnu/packages/julia.scm     |  2 +-
 gnu/packages/textutils.scm | 74 ++++++----------------------------------------
 2 files changed, 10 insertions(+), 66 deletions(-)

diff --git a/gnu/packages/julia.scm b/gnu/packages/julia.scm
index 20ce152286..c14c197194 100644
--- a/gnu/packages/julia.scm
+++ b/gnu/packages/julia.scm
@@ -526,7 +526,7 @@ using Dates: @dateformat_str, Date, DateTime, DateFormat, 
Time"))
        ("p7zip" ,p7zip)
        ("pcre2" ,pcre2)
        ("suitesparse" ,suitesparse)
-       ("utf8proc" ,utf8proc-bootstrap)
+       ("utf8proc" ,utf8proc)
        ("wget" ,wget)
        ("which" ,which)
        ("zlib" ,zlib)
diff --git a/gnu/packages/textutils.scm b/gnu/packages/textutils.scm
index 37ae97b497..9e89f0f41c 100644
--- a/gnu/packages/textutils.scm
+++ b/gnu/packages/textutils.scm
@@ -185,13 +185,14 @@ an encoding detection library, and enca, a command line 
frontend, integrating
 libenca and several charset conversion libraries and tools.")
     (license license:gpl2)))
 
-;; Newer utf8proc depends on julia for tests.  Since julia also depends on
-;; utf8proc, a dependency cycle is created.  This bootstrap variant of utf8proc
-;; disables tests.
-(define-public utf8proc-bootstrap
-  (hidden-package
+;; Tests depend on julia, which itself depends on utf8proc; the previous
+;; solution of a variant without tests broke this cycle, but made the main
+;; utf8proc and thus subversion and ultimately close to 700 packages depend
+;; on julia, which is excessively long to build for testing a tiny library.
+;; Instead we just opt for dropping all tests.
+(define-public utf8proc
    (package
-     (name "utf8proc-bootstrap")
+     (name "utf8proc")
      (version "2.11.3")
      (source
       (origin
@@ -204,7 +205,7 @@ libenca and several charset conversion libraries and 
tools.")
          (base32 "1ssix4zf3lac1afzlw2gbfg3n52gmggip8lv224gywqf3zyvyp8c"))))
      (build-system gnu-build-system)
      (arguments
-      (list #:tests? #f                 ;To break dependency cycle.
+      (list #:tests? #f
             #:make-flags
             #~(list (string-append "CC=" #$(cc-for-target))
                     (string-append "prefix=" #$output))
@@ -217,64 +218,7 @@ libenca and several charset conversion libraries and 
tools.")
      (description
       "@code{utf8proc} is a small C library that provides Unicode 
normalization,
 case-folding, and other operations for data in the UTF-8 encoding.")
-     (license license:expat))))
-
-(define-public utf8proc
-  (package
-    (inherit utf8proc-bootstrap)
-    (name "utf8proc")
-    (native-inputs
-     (let ((UNICODE_VERSION "17.0.0"))  ; defined in data/Makefile
-       ;; Only if the tests will be run should these be added.
-       (if (and (%current-system)
-                (supported-package? julia))
-           ;; Test data that is otherwise downloaded with curl.
-           (list (origin
-                   (method url-fetch)
-                   (uri (string-append
-                         "https://www.unicode.org/Public/";
-                         UNICODE_VERSION "/ucd/NormalizationTest.txt"))
-                   (sha256
-                    (base32
-                     "1cffwlxgn6sawxb627xqaw3shnnfxq0v7cbgsld5w1z7aca9f4fq")))
-                 (origin
-                   (method url-fetch)
-                   (uri (string-append
-                         "https://www.unicode.org/Public/";
-                         UNICODE_VERSION 
"/ucd/auxiliary/GraphemeBreakTest.txt"))
-                   (sha256
-                    (base32
-                     "1d9w6vdfxakjpp38qjvhgvbl2qx0zv5655ph54dhdb3hs9a96azf")))
-                 (origin
-                   (method url-fetch)
-                   (uri (string-append
-                         "https://www.unicode.org/Public/";
-                         UNICODE_VERSION "/ucd/DerivedCoreProperties.txt"))
-                   (sha256
-                    (base32
-                     "1gfsq4vdmzi803i2s8ih7mm4fgs907kvkg88kvv9fi4my9hm3lrr")))
-                 ;; For tests.
-                 julia
-                 perl)
-           '())))
-    (arguments
-     (if (this-package-native-input "julia")
-         (strip-keyword-arguments
-          '(#:tests?)
-          (substitute-keyword-arguments arguments
-            ((#:phases phases '%standard-phases)
-             #~(modify-phases #$phases
-                 (add-before 'check 'check-data
-                   (lambda* (#:key inputs native-inputs #:allow-other-keys)
-                     (for-each (lambda (i)
-                                 (copy-file (assoc-ref (or native-inputs 
inputs) i)
-                                            (string-append "data/" i)))
-                               '("NormalizationTest.txt" 
"GraphemeBreakTest.txt"
-                                 "DerivedCoreProperties.txt"))))))))
-          (substitute-keyword-arguments arguments
-            ((#:tests? _ #t) #f))))
-    (properties
-     (alist-delete 'hidden? (package-properties utf8proc-bootstrap)))))
+     (license license:expat)))
 
 (define-public libconfuse
   (package

Reply via email to