guix_mirror_bot pushed a commit to branch master
in repository guix.

commit 54adfac905724c3e5a84334c0e540ccae962e369
Author: Maxim Cournoyer <[email protected]>
AuthorDate: Sat Aug 8 17:30:08 2026 +0900

    gnu-maintenance: Regexp-quote literal components in computed patterns.
    
    * guix/gnu-maintenance.scm (rewrite-url): Regexp-quote literal components in
    computed patterns.
---
 guix/gnu-maintenance.scm | 9 ++++++---
 1 file changed, 6 insertions(+), 3 deletions(-)

diff --git a/guix/gnu-maintenance.scm b/guix/gnu-maintenance.scm
index 821427e614..95594bc839 100644
--- a/guix/gnu-maintenance.scm
+++ b/guix/gnu-maintenance.scm
@@ -651,15 +651,18 @@ rewritten to something like
              ;; More involved HTML crawl case to get the latest version or a
              ;; partial to-version.
              (let* ((pattern (if major-minor
-                                 (format #f "(~a|~a)" version major-minor)
-                                 (format #f "(~a)" version)))
+                                 (format #f "(~a|~a)"
+                                         (regexp-quote version)
+                                         (regexp-quote major-minor))
+                                 (format #f "(~a)" (regexp-quote version))))
                     (m (string-match pattern s)))
                (if m
                    ;; Crawl parent and rewrite current component.
                    (let* ((parent-url (string-join (reverse parents) "/"))
                           (links (url->links parent-url))
                           ;; The pattern matching the version.
-                          (pattern (string-append "^" (match:prefix m)
+                          (pattern (string-append "^" (regexp-quote
+                                                       (match:prefix m))
                                                   "(" %version-rx ")"
                                                   (match:suffix m) "$"))
                           (candidates (filter-map

Reply via email to