me
/
guix
Archived
1
0
Fork 0

gnu-maintenance: Recognize more source tarball naming schemes.

* guix/gnu-maintenance.scm (%package-name-rx): Add ".src" and ".orig"
suffixes.
* tests/gnu-maintenance.scm ("release-file?"): Add mpg321 and bvi
examples.
("tarball->version"): New test.
master
Ludovic Courtès 2021-04-05 11:30:20 +02:00
parent 6f32e27e97
commit ceeea60bbc
No known key found for this signature in database
GPG Key ID: 090B11993D9AEBB5
2 changed files with 17 additions and 3 deletions

View File

@ -595,7 +595,7 @@ list available from %GNU-FILE-LIST-URI over HTTP(S)."
(define %package-name-rx (define %package-name-rx
;; Regexp for a package name, e.g., "foo-X.Y". Since TeXmacs uses ;; Regexp for a package name, e.g., "foo-X.Y". Since TeXmacs uses
;; "TeXmacs-X.Y-src", the `-src' suffix is allowed. ;; "TeXmacs-X.Y-src", the `-src' suffix is allowed.
(make-regexp "^(.*)[-_](([0-9]|\\.)+)(-src)?")) (make-regexp "^(.*)[-_](([0-9]|\\.)+)(-src|\\.src|\\.orig)?"))
(define (gnu-package-name->name+version name+version) (define (gnu-package-name->name+version name+version)
"Return the package name and version number extracted from NAME+VERSION." "Return the package name and version number extracted from NAME+VERSION."

View File

@ -19,7 +19,8 @@
(define-module (test-gnu-maintenance) (define-module (test-gnu-maintenance)
#:use-module (guix gnu-maintenance) #:use-module (guix gnu-maintenance)
#:use-module (srfi srfi-1) #:use-module (srfi srfi-1)
#:use-module (srfi srfi-64)) #:use-module (srfi srfi-64)
#:use-module (ice-9 match))
(test-begin "gnu-maintenance") (test-begin "gnu-maintenance")
@ -31,7 +32,9 @@
("icecat" "icecat-38.4.0-gnu1.tar.bz2") ("icecat" "icecat-38.4.0-gnu1.tar.bz2")
("mit-scheme" "mit-scheme-9.2.tar.gz") ("mit-scheme" "mit-scheme-9.2.tar.gz")
("mediainfo" "mediainfo_20.09.tar.xz") ("mediainfo" "mediainfo_20.09.tar.xz")
("exiv2" "exiv2-0.27.3-Source.tar.gz"))) ("exiv2" "exiv2-0.27.3-Source.tar.gz")
("mpg321" "mpg321_0.3.2.orig.tar.gz")
("bvi" "bvi-1.4.1.src.tar.gz")))
(every (lambda (project+file) (every (lambda (project+file)
(not (apply release-file? project+file))) (not (apply release-file? project+file)))
'(("guile" "guile-www-1.1.1.tar.gz") '(("guile" "guile-www-1.1.1.tar.gz")
@ -40,4 +43,15 @@
("mit-scheme" "mit-scheme-9.2-doc-pdf.tar.gz") ("mit-scheme" "mit-scheme-9.2-doc-pdf.tar.gz")
("gnutls" "gnutls-3.2.18-w32.zip"))))) ("gnutls" "gnutls-3.2.18-w32.zip")))))
(test-assert "tarball->version"
(let ((tarball->version (@@ (guix gnu-maintenance) tarball->version)))
(every (match-lambda
((file version)
(equal? (tarball->version file) version)))
'(("coreutils-8.32.tar.gz" "8.32")
("mediainfo_20.09.tar.xz" "20.09")
("exiv2-0.27.3-Source.tar.gz" "0.27.3")
("mpg321_0.3.2.orig.tar.gz" "0.3.2")
("bvi-1.4.1.src.tar.gz" "1.4.1")))))
(test-end) (test-end)