import: utils: End package descriptions with period.

* guix/import/utils.scm (beautify-description): Append period to last
words which do not end with one.
* tests/crate.scm: Append period to descriptions.
* tests/elm.scm: Append period to descriptions.
* tests/gem.scm: Append period to descriptions.
* tests/hexpm.scm: Append period to descriptions.
* tests/minetest.scm: Append period to descriptions.
* tests/pypi.scm: Append period to descriptions.
* tests/import-utils.scm ("beautify-description: transform fragment into
sentence"): Likewise.

Change-Id: I0b12c4d94cb26cf62fab5b7cbf7885e66ff6c10f
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
This commit is contained in:
Herman Rimm 2024-05-12 21:08:32 +02:00 committed by Ludovic Courtès
parent e62fd9004b
commit 510ad5d93c
No known key found for this signature in database
GPG Key ID: 090B11993D9AEBB5
8 changed files with 44 additions and 35 deletions

View File

@ -370,6 +370,15 @@ LENGTH characters."
(cons* "This" "package"
(string-downcase first) rest))
(_ words)))
(new-words
(match new-words
((rest ... last)
(reverse (cons (if (or (string-suffix? "." last)
(string-suffix? "!" last)
(string-suffix? "?" last))
last
(string-append last "."))
(reverse rest))))))
(cleaned
(string-join (map fix-word new-words))))
;; Use double spacing between sentences

View File

@ -503,7 +503,7 @@
(("rust-leaf-alice" ('unquote 'rust-leaf-alice-0.7))))))
(home-page "http://example.com")
(synopsis "summary")
(description "This package provides summary")
(description "This package provides summary.")
(license (list license:expat license:asl2.0))))
(string=? test-source-hash hash))
@ -592,7 +592,7 @@
('quasiquote (#:skip-build? #t)))
(home-page "http://example.com")
(synopsis "summary")
(description "This package provides summary")
(description "This package provides summary.")
(license (list license:expat license:asl2.0))))
(define-public 'rust-leaf-alice-0.7
(package
@ -611,7 +611,7 @@
(arguments ('quasiquote (#:skip-build? #t)))
(home-page "http://example.com")
(synopsis "summary")
(description "This package provides summary")
(description "This package provides summary.")
(license (list license:expat license:asl2.0))))
(define-public 'rust-leaf-bob-3
(package
@ -630,7 +630,7 @@
(arguments ('quasiquote (#:skip-build? #t)))
(home-page "http://example.com")
(synopsis "summary")
(description "This package provides summary")
(description "This package provides summary.")
(license (list license:expat license:asl2.0))))
(define-public 'rust-intermediate-b-1
(package
@ -653,7 +653,7 @@
('unquote rust-leaf-bob-3))))))
(home-page "http://example.com")
(synopsis "summary")
(description "This package provides summary")
(description "This package provides summary.")
(license (list license:expat license:asl2.0))))
(define-public 'rust-intermediate-a-1
(package
@ -680,7 +680,7 @@
('unquote rust-leaf-bob-3))))))
(home-page "http://example.com")
(synopsis "summary")
(description "This package provides summary")
(description "This package provides summary.")
(license (list license:expat license:asl2.0))))
(define-public 'rust-root-1
(package
@ -711,7 +711,7 @@
('unquote rust-intermediate-c-1))))))
(home-page "http://example.com")
(synopsis "summary")
(description "This package provides summary")
(description "This package provides summary.")
(license (list license:expat license:asl2.0)))))
#t)
(x
@ -740,7 +740,7 @@
('unquote rust-leaf-alice-0.7))))))
(home-page "http://example.com")
(synopsis "summary")
(description "This package provides summary")
(description "This package provides summary.")
(license (list license:expat license:asl2.0))))
(define-public 'rust-leaf-alice-0.7
(package
@ -758,7 +758,7 @@
(build-system cargo-build-system)
(home-page "http://example.com")
(synopsis "summary")
(description "This package provides summary")
(description "This package provides summary.")
(license (list license:expat license:asl2.0))))
(define-public 'rust-leaf-bob-3
(package
@ -776,7 +776,7 @@
(build-system cargo-build-system)
(home-page "http://example.com")
(synopsis "summary")
(description "This package provides summary")
(description "This package provides summary.")
(license (list license:expat license:asl2.0))))
(define-public 'rust-intermediate-b-1
(package
@ -798,7 +798,7 @@
('unquote rust-leaf-bob-3))))))
(home-page "http://example.com")
(synopsis "summary")
(description "This package provides summary")
(description "This package provides summary.")
(license (list license:expat license:asl2.0))))
(define-public 'rust-intermediate-a-1
(package
@ -824,7 +824,7 @@
('unquote rust-leaf-bob-3))))))
(home-page "http://example.com")
(synopsis "summary")
(description "This package provides summary")
(description "This package provides summary.")
(license (list license:expat license:asl2.0))))
(define-public 'rust-root-1
(package
@ -855,7 +855,7 @@
('unquote rust-intermediate-c-1))))))
(home-page "http://example.com")
(synopsis "summary")
(description "This package provides summary")
(description "This package provides summary.")
(license (list license:expat license:asl2.0)))))
#t)
(x
@ -972,7 +972,7 @@
('unquote 'rust-leaf-bob-4.0.0-yanked))))))
(home-page "http://example.com")
(synopsis "summary")
(description "This package provides summary")
(description "This package provides summary.")
(license (list license:expat license:asl2.0)))))
#t)
(x
@ -1038,7 +1038,7 @@
(build-system cargo-build-system)
(home-page "http://example.com")
(synopsis "summary")
(description "This package provides summary")
(description "This package provides summary.")
(license (list license:expat license:asl2.0))))
(define-public 'rust-leaf-bob-3.0.2-yanked
(package
@ -1058,7 +1058,7 @@
(build-system cargo-build-system)
(home-page "http://example.com")
(synopsis "summary")
(description "This package provides summary")
(description "This package provides summary.")
(license (list license:expat license:asl2.0))))
(define-public 'rust-leaf-bob-3
(package
@ -1076,7 +1076,7 @@
(build-system cargo-build-system)
(home-page "http://example.com")
(synopsis "summary")
(description "This package provides summary")
(description "This package provides summary.")
(license (list license:expat license:asl2.0))))
(define-public 'rust-bar-1
(package
@ -1103,7 +1103,7 @@
('unquote 'rust-leaf-bob-4.0.0-yanked))))))
(home-page "http://example.com")
(synopsis "summary")
(description "This package provides summary")
(description "This package provides summary.")
(license (list license:expat license:asl2.0)))))
#t)
(x

View File

@ -257,7 +257,7 @@ package definition."
"https://package.elm-lang.org/packages/elm-guix/demo/3.0.0")
(synopsis "A test for `(guix import elm)`")
(description
"This package provides a test for `(guix import elm)`")
"This package provides a test for `(guix import elm)`.")
(properties '((upstream-name . "elm-guix/demo")))
(license license:gpl3+)))
(equal? (directory-sha256 elm-guix-demo-dir)

View File

@ -117,7 +117,7 @@
(build-system ruby-build-system)
(propagated-inputs (list bundler ruby-bar))
(synopsis "A cool gem")
(description "This package provides a cool gem")
(description "This package provides a cool gem.")
(home-page "https://example.com")
(license (list license:expat license:asl2.0)))
#t)
@ -146,7 +146,7 @@
(build-system ruby-build-system)
(propagated-inputs (list bundler ruby-bar))
(synopsis "A cool gem")
(description "This package provides a cool gem")
(description "This package provides a cool gem.")
(home-page "https://example.com")
(license (list license:expat license:asl2.0)))
#t)
@ -182,7 +182,7 @@
(build-system ruby-build-system)
(propagated-inputs (list bundler))
(synopsis "Another cool gem")
(description "Another cool gem")
(description "Another cool gem.")
(home-page "https://example.com")
(license #f)) ;no licensing info
(package
@ -198,7 +198,7 @@
(build-system ruby-build-system)
(propagated-inputs (list bundler ruby-bar))
(synopsis "A cool gem")
(description "This package provides a cool gem")
(description "This package provides a cool gem.")
(home-page "https://example.com")
(license (list license:expat license:asl2.0))))
#t)
@ -234,7 +234,7 @@
(build-system ruby-build-system)
(propagated-inputs (list bundler))
(synopsis "Another cool gem")
(description "Another cool gem")
(description "Another cool gem.")
(home-page "https://example.com")
(license #f)) ;no licensing info
(package
@ -250,7 +250,7 @@
(build-system ruby-build-system)
(propagated-inputs (list bundler ruby-bar))
(synopsis "A cool gem")
(description "This package provides a cool gem")
(description "This package provides a cool gem.")
(home-page "https://example.com")
(license (list license:expat license:asl2.0))))
#t)

View File

@ -152,7 +152,7 @@
(build-system rebar-build-system)
(inputs (list erlang-blubb erlang-fasel))
(synopsis "A cool package")
(description "This package provides a cool package")
(description "This package provides a cool package.")
(home-page "https://hex.pm/packages/bla")
(license (list license:expat license:asl2.0)))
#t)
@ -212,7 +212,7 @@
(build-system mix-build-system)
(inputs (list erlang-fasel))
(synopsis "Another cool package")
(description "Another cool package")
(description "Another cool package.")
(home-page "https://hex.pm/packages/blubb")
(license license:expat))
(package
@ -227,7 +227,7 @@
"1k6d70mxwqgq78jrbr7yqnw187yki74jnagybi7nacrj4a67qjha"))))
(build-system gnu-build-system)
(synopsis "Yet another cool package")
(description "Yet another cool package")
(description "Yet another cool package.")
(home-page "https://hex.pm/packages/fasel")
(license "GPL"))
(package
@ -243,7 +243,7 @@
(build-system rebar-build-system)
(inputs (list erlang-blubb erlang-fasel))
(synopsis "A cool package")
(description "This package provides a cool package")
(description "This package provides a cool package.")
(home-page "https://hex.pm/packages/bla")
(license (list license:expat license:asl2.0))))
#t)

View File

@ -43,7 +43,7 @@ Differences are hard to spot, e.g. in CLOS vs. GOOPS."))
(test-equal "beautify-description: transform fragment into sentence"
"This package provides a function to establish world peace"
(beautify-description "A function to establish world peace"))
(beautify-description "A function to establish world peace."))
(test-equal "beautify-description: remove single quotes"
"CRAN likes to quote acronyms and function names."

View File

@ -48,7 +48,7 @@
(home-page "https://example.org/foo")
(repo "https://example.org/foo.git")
(synopsis "synopsis")
(guix-description "description")
(guix-description "description.")
(guix-license
'(list license:cc-by-sa4.0 license:lgpl3+))
(inputs '())

View File

@ -315,7 +315,7 @@ files specified by SPECS. Return its file name."
(native-inputs (list python-pytest))
(home-page "http://example.com")
(synopsis "summary")
(description "summary")
(description "summary.")
(license license:lgpl2.0))
(and (string=? default-sha256/base32 hash)
(equal? (pypi->guix-package "foo" #:version "1.0.0")
@ -356,7 +356,7 @@ to make sure we're testing wheels"))))
(native-inputs (list python-pytest))
(home-page "http://example.com")
(synopsis "summary")
(description "summary")
(description "summary.")
(license license:lgpl2.0))
(string=? default-sha256/base32 hash))
(x
@ -384,7 +384,7 @@ to make sure we're testing wheels"))))
(build-system pyproject-build-system)
(home-page "http://example.com")
(synopsis "summary")
(description "summary")
(description "summary.")
(license license:lgpl2.0))
(string=? default-sha256/base32 hash))
(x
@ -414,7 +414,7 @@ to make sure we're testing wheels"))))
(native-inputs (list python-pytest))
(home-page "http://example.com")
(synopsis "summary")
(description "summary")
(description "summary.")
(license license:lgpl2.0))
(string=? default-sha256/base32 hash))
(x