[PATCH 00/16] Add tidyall and some tidiers.

  • Done
  • quality assurance status badge
Details
3 participants
  • Andrew Wong
  • gemmaro
  • Nicolas Goaziou
Owner
unassigned
Submitted by
gemmaro
Severity
normal

Debbugs page

gemmaro wrote 2 years ago
(address . guix-patches@gnu.org)(name . gemmaro)(address . gemmaro.dev@gmail.com)
cover.1685767964.git.gemmaro.dev@gmail.com
Hello,

This patchset adds tidyall and some tidyall compatible tidiers.
Some perl packages are updated and changed from inputs to propagated-inputs.

Thank you,
gemmaro.

gemmaro (16):
gnu: Add perl-ref-util.
gnu: perl-specio: Update to 0.48.
gnu: Add perl-lib-relative.
gnu: Add perl-specio-library-path-tiny.
gnu: perl-mixin-linewise: Update to 0.111.
gnu: perl-config-ini: Update to 0.029.
gnu: Add perl-list-someutils-xs.
gnu: perl-list-someutils: Update to 0.59.
gnu: perl-test-class-most: Fix to use propagated-inputs.
gnu: Add tidyall.
gnu: Add perl-encode-newlines.
gnu: Add perl-pod-wrap.
gnu: Add perl-test-cmd.
gnu: Add perl-pod-tidy.
gnu: Add perl-perl-tidy.
gnu: Add perl-code-tidyall-plugin-perl-alignmooseattributes.

gnu/packages/check.scm | 67 +++++++++
gnu/packages/perl-check.scm | 25 +++-
gnu/packages/perl.scm | 263 +++++++++++++++++++++++++++++++++---
3 files changed, 333 insertions(+), 22 deletions(-)


base-commit: c11b92a8aae6fe7fad0da8257ec28f5009c37b35
--
2.40.1
gemmaro wrote 2 years ago
[PATCH 02/16] gnu: perl-specio: Update to 0.48.
(address . 63866@debbugs.gnu.org)(name . gemmaro)(address . gemmaro.dev@gmail.com)
a951fbf242ffb842ecd545923ce2ec769f6e5d94.1685767964.git.gemmaro.dev@gmail.com
* gnu/packages/perl.scm (perl-specio): Update to 0.48.
---
Diff in the description field is due to the guix lint message: "sentences in
description should be followed by two spaces; possible infractions at 185,
314"

gnu/packages/perl.scm | 23 +++++++++++++----------
1 file changed, 13 insertions(+), 10 deletions(-)

Toggle diff (53 lines)
diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm
index 63144f27b2d..1d663ed679c 100644
--- a/gnu/packages/perl.scm
+++ b/gnu/packages/perl.scm
@@ -9522,7 +9522,7 @@ (define-public perl-sort-naturally
(define-public perl-specio
(package
(name "perl-specio")
- (version "0.38")
+ (version "0.48")
(source
(origin
(method url-fetch)
@@ -9530,25 +9530,28 @@ (define-public perl-specio
"Specio-" version ".tar.gz"))
(sha256
(base32
- "1s5xd9awwrzc94ymimjkxqs6jq513wwlmwwarxaklvg2hk4lps0l"))))
+ "1cl22s0z00jj4nlaz9yfmhi7pxq1s4qr21vkh7q4w9zih0spk18c"))))
(build-system perl-build-system)
+ (native-inputs (list perl-test-needs))
(propagated-inputs
(list perl-devel-stacktrace
perl-eval-closure
perl-module-runtime
perl-mro-compat
- perl-role-tiny
+ perl-ref-util
+ perl-role-tiny-2
+ perl-sub-quote
perl-test-fatal
- perl-test-needs))
+ perl-try-tiny))
(home-page "https://metacpan.org/release/Specio")
(synopsis "Classes for representing type constraints and coercion")
(description "The Specio distribution provides classes for representing type
-constraints and coercion, along with syntax sugar for declaring them. Note that
-this is not a proper type system for Perl. Nothing in this distribution will
-magically make the Perl interpreter start checking a value's type on assignment
-to a variable. In fact, there's no built-in way to apply a type to a variable at
-all. Instead, you can explicitly check a value against a type, and optionally
-coerce values to that type.")
+constraints and coercion, along with syntax sugar for declaring them. Note that this
+is not a proper type system for Perl. Nothing in this distribution will magically
+make the Perl interpreter start checking a value's type on assignment to a variable.
+In fact, there's no built-in way to apply a type to a variable at all. Instead, you
+can explicitly check a value against a type, and optionally coerce values to that
+type.")
(license license:artistic2.0)))
(define-public perl-spiffy
--
2.40.1
gemmaro wrote 2 years ago
[PATCH 01/16] gnu: Add perl-ref-util.
(address . 63866@debbugs.gnu.org)(name . gemmaro)(address . gemmaro.dev@gmail.com)
eb9010fbfb31ccecb7c676b48098362140aabfe2.1685767964.git.gemmaro.dev@gmail.com
* gnu/packages/perl.scm (perl-ref-util): New variable.
---
gnu/packages/perl.scm | 32 +++++++++++++++++++++++++++++++-
1 file changed, 31 insertions(+), 1 deletion(-)

Toggle diff (52 lines)
diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm
index d7312372de0..63144f27b2d 100644
--- a/gnu/packages/perl.scm
+++ b/gnu/packages/perl.scm
@@ -33,7 +33,7 @@
;;; Copyright © 2021 Raghav Gururajan <rg@raghavgururajan.name>
;;; Copyright © 2021 Maxime Devos <maximedevos@telenet.be>
;;; Copyright © 2022 Evgeny Pisemsky <evgeny@pisemsky.com>
-;;; Copyright © 2022 gemmaro <gemmaro.dev@gmail.com>
+;;; Copyright © 2022, 2023 gemmaro <gemmaro.dev@gmail.com>
;;; Copyright © 2023 Mădălin Ionel Patrașcu <madalinionel.patrascu@mdc-berlin.de>
;;; Copyright © 2023 Andreas Enge <andreas@enge.fr>
;;; Copyright © 2023 Jake Leporte <jakeleporte@outlook.com>
@@ -9153,6 +9153,36 @@ (define-public perl-readonly-xs
the scalar's @code{FLAGS} structure.")
(license license:perl-license)))
+(define-public perl-ref-util
+ (package
+ (name "perl-ref-util")
+ (version "0.204")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append
+ "mirror://cpan/authors/id/A/AR/ARC/Ref-Util-" version
+ ".tar.gz"))
+ (sha256
+ (base32
+ "1q85y5lzgl8wz5qnz3j6mch2fmllr668h54wszaz6i6gp8ysfps1"))))
+ (build-system perl-build-system)
+ (native-inputs (list perl-readonly))
+ (propagated-inputs (list perl-ref-util-xs))
+ (home-page "https://metacpan.org/release/Ref-Util")
+ (synopsis "Utility functions for checking references")
+ (description
+ "@code{Ref::Util} introduces several functions to help identify references in
+a smarter (and usually faster) way. The difference with conventional approach:
+@itemize
+@item No comparison against a string constant
+@item Supports blessed variables
+@item Supports tied variables and magic
+@item Ignores overloading
+@item Ignores subtle types
+@item Usually faster
+@end itemize")
+ (license license:x11)))
+
(define-public perl-ref-util-xs
(package
(name "perl-ref-util-xs")
--
2.40.1
gemmaro wrote 2 years ago
[PATCH 03/16] gnu: Add perl-lib-relative.
(address . 63866@debbugs.gnu.org)(name . gemmaro)(address . gemmaro.dev@gmail.com)
435e86a27cea1823e9c5a34026465fde7fd1eb4c.1685767964.git.gemmaro.dev@gmail.com
* gnu/packages/perl.scm (perl-lib-relative): New variable.
---
gnu/packages/perl.scm | 21 +++++++++++++++++++++
1 file changed, 21 insertions(+)

Toggle diff (34 lines)
diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm
index 1d663ed679c..5c6b1bb4b79 100644
--- a/gnu/packages/perl.scm
+++ b/gnu/packages/perl.scm
@@ -6308,6 +6308,27 @@ (define-public perl-libintl-perl
implemented for example in GNU gettext.")
(license license:gpl3+)))
+(define-public perl-lib-relative
+ (package
+ (name "perl-lib-relative")
+ (version "1.001")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append
+ "mirror://cpan/authors/id/D/DB/DBOOK/lib-relative-"
+ version ".tar.gz"))
+ (sha256
+ (base32
+ "0zr57f2ridjllirwpkch0did1n9fznk946an7gf49gkyy4hndqbb"))))
+ (build-system perl-build-system)
+ (home-page "https://metacpan.org/release/lib-relative")
+ (synopsis "Add paths relative to the current file to @code{@@INC}")
+ (description
+ "@code{lib::relative} module proposes a more straightforward method than
+adding a path to @code{@@INC}: take a path relative to the current
+file, absolutize it, and add it to @code{@@INC}.")
+ (license license:artistic2.0)))
+
(define-public perl-lingua-en-sentence
(package
(name "perl-lingua-en-sentence")
--
2.40.1
gemmaro wrote 2 years ago
[PATCH 04/16] gnu: Add perl-specio-library-path-tiny.
(address . 63866@debbugs.gnu.org)(name . gemmaro)(address . gemmaro.dev@gmail.com)
908048a7c76180863ed5c23dda44e4ac7d574c83.1685767964.git.gemmaro.dev@gmail.com
* gnu/packages/perl.scm (perl-specio-library-path-tiny): New variable.
---
gnu/packages/perl.scm | 23 +++++++++++++++++++++++
1 file changed, 23 insertions(+)

Toggle diff (36 lines)
diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm
index 5c6b1bb4b79..c78f0460a9d 100644
--- a/gnu/packages/perl.scm
+++ b/gnu/packages/perl.scm
@@ -9575,6 +9575,29 @@ (define-public perl-specio
type.")
(license license:artistic2.0)))
+(define-public perl-specio-library-path-tiny
+ (package
+ (name "perl-specio-library-path-tiny")
+ (version "0.05")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append
+ "mirror://cpan/authors/id/D/DR/DROLSKY/Specio-Library-Path-Tiny-"
+ version ".tar.gz"))
+ (sha256
+ (base32
+ "0lbsqb3l5ra2k6481dkc7m1zk92fjpwnvgvql1k2rsyspjwhppv0"))))
+ (build-system perl-build-system)
+ (native-inputs (list perl-file-pushd perl-test-fatal))
+ (propagated-inputs (list perl-path-tiny perl-specio))
+ (home-page "https://metacpan.org/release/Specio-Library-Path-Tiny")
+ (synopsis "Types and coercions for Specio")
+ (description
+ "This library provides a set of @code{Path::Tiny} types and coercions for
+Specio. These types can be used with @code{Moose}, @code{Moo},
+@code{Params::ValidationCompiler}, and other modules.")
+ (license license:asl2.0)))
+
(define-public perl-spiffy
(package
(name "perl-spiffy")
--
2.40.1
gemmaro wrote 2 years ago
[PATCH 05/16] gnu: perl-mixin-linewise: Update to 0.111.
(address . 63866@debbugs.gnu.org)(name . gemmaro)(address . gemmaro.dev@gmail.com)
14544b7e0cb87ba22f2b73721fd90bb4cdfed12f.1685767964.git.gemmaro.dev@gmail.com
* gnu/packages/perl.scm (perl-mixin-linewise): Update to 0.111.
---
gnu/packages/perl.scm | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)

Toggle diff (27 lines)
diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm
index c78f0460a9d..0038883f3d4 100644
--- a/gnu/packages/perl.scm
+++ b/gnu/packages/perl.scm
@@ -6821,7 +6821,7 @@ (define-public perl-mime-types
(define-public perl-mixin-linewise
(package
(name "perl-mixin-linewise")
- (version "0.108")
+ (version "0.111")
(source (origin
(method url-fetch)
(uri (string-append
@@ -6829,9 +6829,9 @@ (define-public perl-mixin-linewise
version ".tar.gz"))
(sha256
(base32
- "1wmfr19w9y8qys7b32mnj1vmps7qwdahqas71a9p62ac8xw0dwkx"))))
+ "1nq1gc4320djn5mqgk55v2vjm3zwq36wq7b365f2kdg9di8qi3nj"))))
(build-system perl-build-system)
- (inputs
+ (propagated-inputs
(list perl-perlio-utf8_strict perl-sub-exporter))
(home-page "https://metacpan.org/release/Mixin-Linewise")
(synopsis "Write your linewise code for handles; this does the rest")
--
2.40.1
gemmaro wrote 2 years ago
[PATCH 06/16] gnu: perl-config-ini: Update to 0.029.
(address . 63866@debbugs.gnu.org)(name . gemmaro)(address . gemmaro.dev@gmail.com)
347ce4df42f17a323c2b4986a609456015c22b36.1685767964.git.gemmaro.dev@gmail.com
* gnu/packages/perl.scm (perl-config-ini): Update to 0.029.
---
gnu/packages/perl.scm | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)

Toggle diff (27 lines)
diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm
index 0038883f3d4..a394b353b44 100644
--- a/gnu/packages/perl.scm
+++ b/gnu/packages/perl.scm
@@ -2085,7 +2085,7 @@ (define-public perl-config-gitlike
(define-public perl-config-ini
(package
(name "perl-config-ini")
- (version "0.025")
+ (version "0.029")
(source (origin
(method url-fetch)
(uri (string-append
@@ -2093,9 +2093,9 @@ (define-public perl-config-ini
version ".tar.gz"))
(sha256
(base32
- "0clphq6a17chvb663fvjnxqvyvh26g03x0fl4bg9vy4ibdnzg2v2"))))
+ "1spxzpwpwspw7cwkkg97rf0dafmjl95cv43xj1568402fdx7kghb"))))
(build-system perl-build-system)
- (inputs
+ (propagated-inputs
(list perl-mixin-linewise perl-perlio-utf8_strict perl-sub-exporter))
(home-page "https://metacpan.org/release/Config-INI")
(synopsis "Simple .ini-file format reader and writer")
--
2.40.1
gemmaro wrote 2 years ago
[PATCH 07/16] gnu: Add perl-list-someutils-xs.
(address . 63866@debbugs.gnu.org)(name . gemmaro)(address . gemmaro.dev@gmail.com)
b76287eef64cb744605b12efa03c3953aeebd033.1685767964.git.gemmaro.dev@gmail.com
* gnu/packages/perl.scm (perl-list-someutils-xs): New variable.
---
gnu/packages/perl.scm | 23 +++++++++++++++++++++++
1 file changed, 23 insertions(+)

Toggle diff (36 lines)
diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm
index a394b353b44..9c80d44df0f 100644
--- a/gnu/packages/perl.scm
+++ b/gnu/packages/perl.scm
@@ -6535,6 +6535,29 @@ (define-public perl-list-someutils
portions of this module couldn't be compiled on this machine.")
(license (package-license perl))))
+(define-public perl-list-someutils-xs
+ (package
+ (name "perl-list-someutils-xs")
+ (version "0.58")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append
+ "mirror://cpan/authors/id/D/DR/DROLSKY/List-SomeUtils-XS-"
+ version ".tar.gz"))
+ (sha256
+ (base32
+ "15xjnkjj4yxv1qn9krsbkzzkm51hibg2k3lf5767j6s848k4v7jg"))))
+ (build-system perl-build-system)
+ (arguments
+ `(#:tests? #f)) ;tests need perl-list-someutils
+ (home-page "https://metacpan.org/release/List-SomeUtils-XS")
+ (synopsis "XS implementation for @code{List::SomeUtils}")
+ (description
+ "@code{List::SomeUtils::XS} is a XS implementation for
+@code{List::SomeUtils}. There are no user-facing parts here. See
+@code{List::SomeUtils} for API details.")
+ (license license:artistic2.0)))
+
(define-public perl-mailtools
(package
(name "perl-mailtools")
--
2.40.1
gemmaro wrote 2 years ago
[PATCH 08/16] gnu: perl-list-someutils: Update to 0.59.
(address . 63866@debbugs.gnu.org)(name . gemmaro)(address . gemmaro.dev@gmail.com)
b5a6cf11e8a81265951a22258d0691c9f1d5825e.1685767964.git.gemmaro.dev@gmail.com
* gnu/packages/perl.scm (perl-list-someutils): New variable.
---
gnu/packages/perl.scm | 9 +++++----
1 file changed, 5 insertions(+), 4 deletions(-)

Toggle diff (32 lines)
diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm
index 9c80d44df0f..5a0a58910f9 100644
--- a/gnu/packages/perl.scm
+++ b/gnu/packages/perl.scm
@@ -6508,7 +6508,7 @@ (define-public perl-list-moreutils-xs
(define-public perl-list-someutils
(package
(name "perl-list-someutils")
- (version "0.56")
+ (version "0.59")
(source
(origin
(method url-fetch)
@@ -6517,12 +6517,13 @@ (define-public perl-list-someutils
version
".tar.gz"))
(sha256
- (base32 "1xw9dzg949997b10y6zgzrmhmk2ap274qivnk0wc1033x2fdk9za"))))
+ (base32 "0yywl9qrb8lz8gmnda5dzrwn4xf8s38kink2c2jgayy6wir07czs"))))
(build-system perl-build-system)
(native-inputs
(list perl-test-leaktrace))
- (inputs
- (list perl-exporter-tiny perl-module-implementation))
+ (propagated-inputs
+ (list perl-exporter-tiny perl-module-implementation
+ perl-list-someutils-xs))
(home-page "https://metacpan.org/release/List-SomeUtils")
(synopsis "Provide the stuff missing in List::Util")
(description "@code{List::SomeUtils} provides some trivial but commonly
--
2.40.1
gemmaro wrote 2 years ago
[PATCH 09/16] gnu: perl-test-class-most: Fix to use propagated-inputs.
(address . 63866@debbugs.gnu.org)(name . gemmaro)(address . gemmaro.dev@gmail.com)
29167814ab088588dc4439b5bfb7e433abba3774.1685767964.git.gemmaro.dev@gmail.com
* gnu/packages/perl-check.scm (perl-test-class-most): Fix to use propagated-inputs.
---
gnu/packages/perl-check.scm | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)

Toggle diff (23 lines)
diff --git a/gnu/packages/perl-check.scm b/gnu/packages/perl-check.scm
index 7bf58832bcd..467c23e249e 100644
--- a/gnu/packages/perl-check.scm
+++ b/gnu/packages/perl-check.scm
@@ -16,6 +16,7 @@
;;; Copyright © 2018 Kei Kebreau <kkebreau@posteo.net>
;;; Copyright © 2020 Paul Garlick <pgarlick@tourbillion-technology.com>
;;; Copyright © 2020 Nicolas Goaziou <mail@nicolasgoaziou.fr>
+;;; Copyright © 2023 gemmaro <gemmaro.dev@gmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -212,7 +213,7 @@ (define-public perl-test-class-most
(build-system perl-build-system)
(native-inputs
(list perl-module-build))
- (inputs
+ (propagated-inputs
(list perl-test-class perl-test-most perl-module-runtime
perl-try-tiny perl-mro-compat))
(home-page "https://metacpan.org/release/Test-Class-Most")
--
2.40.1
gemmaro wrote 2 years ago
[PATCH 10/16] gnu: Add tidyall.
(address . 63866@debbugs.gnu.org)(name . gemmaro)(address . gemmaro.dev@gmail.com)
a905684d417e98894e3c2943cc5c0fd46f822826.1685767964.git.gemmaro.dev@gmail.com
* gnu/packages/check.scm (tidyall): New variable.
---
gnu/packages/check.scm | 67 ++++++++++++++++++++++++++++++++++++++++++
1 file changed, 67 insertions(+)

Toggle diff (101 lines)
diff --git a/gnu/packages/check.scm b/gnu/packages/check.scm
index 87728fefa32..5a3c5ad5ff1 100644
--- a/gnu/packages/check.scm
+++ b/gnu/packages/check.scm
@@ -43,6 +43,7 @@
;;; Copyright © 2022 jgart <jgart@dismail.de>
;;; Copyright © 2023 Luis Felipe López Acevedo <luis.felipe.la@protonmail.com>
;;; Copyright © 2023 Timo Wilken <guix@twilken.net>
+;;; Copyright © 2023 gemmaro <gemmaro.dev@gmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -75,6 +76,8 @@ (define-module (gnu packages check)
#:use-module (gnu packages guile)
#:use-module (gnu packages guile-xyz)
#:use-module (gnu packages perl)
+ #:use-module (gnu packages perl-check)
+ #:use-module (gnu packages php)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages python)
#:use-module (gnu packages python-check)
@@ -97,6 +100,7 @@ (define-module (gnu packages check)
#:use-module (guix build-system go)
#:use-module (guix build-system guile)
#:use-module (guix build-system meson)
+ #:use-module (guix build-system perl)
#:use-module (guix build-system pyproject)
#:use-module (guix build-system python)
#:use-module (guix build-system trivial)
@@ -3119,6 +3123,69 @@ (define-public python-pyhamcrest
allowing you to declaratively define \"match\" rules.")
(license license:bsd-3)))
+(define-public tidyall
+ (package
+ (name "tidyall")
+ (version "0.83")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append
+ "mirror://cpan/authors/id/D/DR/DROLSKY/Code-TidyAll-"
+ version ".tar.gz"))
+ (sha256
+ (base32
+ "18awq4fb72pbfdrc8h1cdvbwwbp456pnz6aam1cgq5vb7b85580n"))))
+ (build-system perl-build-system)
+ (arguments
+ (list #:phases #~(modify-phases %standard-phases
+ (delete 'remove-command-line-tool)
+ (add-after 'install 'wrap-programs
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let ((out (assoc-ref outputs "out")))
+ (wrap-program (string-append out "/bin/tidyall")
+ `("PERL5LIB" ":" prefix
+ (,(getenv "PERL5LIB")
+ ,(string-append out
+ "/lib/perl5/site_perl"))))))))))
+ (native-inputs (list perl-test-class-most perl-test-differences
+ perl-test-fatal perl-test-warnings perl-lib-relative))
+ (inputs (list php bash-minimal))
+ (propagated-inputs (list perl-capture-tiny
+ perl-config-ini
+ perl-timedate
+ perl-file-which
+ perl-ipc-run3
+ perl-ipc-system-simple
+ perl-list-compare
+ perl-list-someutils
+ perl-log-any
+ perl-module-runtime
+ perl-moo-2
+ perl-path-tiny
+ perl-scope-guard
+ perl-specio
+ perl-specio-library-path-tiny
+ perl-text-diff
+ perl-time-duration-parse
+ perl-try-tiny
+ perl-parallel-forkmanager
+ perl-file-pushd))
+ (home-page "https://metacpan.org/release/Code-TidyAll")
+ (synopsis "Engine for tidyall, your all-in-one code tidier and validator")
+ (description
+ "@command{tidyall} makes a lot of code tidiers and validators available
+from a single unified interface. You can run @command{tidyall} on a
+single file or on an entire project hierarchy, and configure which
+tidiers/validators are applied to which files. @command{tidyall} will
+back up files beforehand, and for efficiency will only consider files
+that have changed since they were last processed.
+
+Note that if you see some missing tidier or validator modules error,
+you can let tidyall load them after install them. For example, one
+can run @code{guix shell perl-perl-tidy perl} in advance to load
+@code{Perl::Tidy}.")
+ (license license:perl-license)))
+
(define-public unittest-cpp
(package
(name "unittest-cpp")
--
2.40.1
gemmaro wrote 2 years ago
[PATCH 11/16] gnu: Add perl-encode-newlines.
(address . 63866@debbugs.gnu.org)(name . gemmaro)(address . gemmaro.dev@gmail.com)
19546a38af31c4de44b5ea420232562fbe92dffc.1685767964.git.gemmaro.dev@gmail.com
* gnu/packages/perl.scm (perl-encode-newlines): New variable.
---
gnu/packages/perl.scm | 20 ++++++++++++++++++++
1 file changed, 20 insertions(+)

Toggle diff (33 lines)
diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm
index 5a0a58910f9..aa302df478a 100644
--- a/gnu/packages/perl.scm
+++ b/gnu/packages/perl.scm
@@ -4266,6 +4266,26 @@ (define-public perl-encode-hanextra
\"UNISYS\".")
(license license:expat)))
+(define-public perl-encode-newlines
+ (package
+ (name "perl-encode-newlines")
+ (version "0.05")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append
+ "mirror://cpan/authors/id/N/NE/NEILB/Encode-Newlines-"
+ version ".tar.gz"))
+ (sha256
+ (base32
+ "1gipd3wnma28w5gjbzycfkpi6chksy14lhxkp4hwizf8r351zcrl"))))
+ (build-system perl-build-system)
+ (home-page "https://metacpan.org/release/Encode-Newlines")
+ (synopsis "Normalize line ending sequences")
+ (description
+ "This module provides the @code{CR}, @code{LF}, @code{CRLF} and
+@code{Native} encodings, to aid in normalizing line endings.")
+ (license license:perl-license)))
+
(define-public perl-env-path
(package
(name "perl-env-path")
--
2.40.1
gemmaro wrote 2 years ago
[PATCH 12/16] gnu: Add perl-pod-wrap.
(address . 63866@debbugs.gnu.org)(name . gemmaro)(address . gemmaro.dev@gmail.com)
2e321a1361b82dd6eca59e0903a67e3f92d95ef8.1685767964.git.gemmaro.dev@gmail.com
* gnu/packages/perl.scm (perl-pod-wrap): New variable.
---
gnu/packages/perl.scm | 24 ++++++++++++++++++++++++
1 file changed, 24 insertions(+)

Toggle diff (37 lines)
diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm
index aa302df478a..d731d2e8389 100644
--- a/gnu/packages/perl.scm
+++ b/gnu/packages/perl.scm
@@ -12521,6 +12521,30 @@ (define-public perl-pod-constants
(or it can't find %INC{caller()}).")
(license license:artistic2.0)))
+(define-public perl-pod-wrap
+ (package
+ (name "perl-pod-wrap")
+ (version "0.01")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append
+ "mirror://cpan/authors/id/N/NU/NUFFIN/Pod-Wrap-" version
+ ".tar.gz"))
+ (sha256
+ (base32
+ "0qwb5hp26f85xnb3zivf8ccfdplabiyl5sd53c6wgdgvzzicpjjh"))))
+ (build-system perl-build-system)
+ (native-inputs (list perl-module-build))
+ (propagated-inputs (list perl-pod-parser))
+ (home-page "https://metacpan.org/release/Pod-Wrap")
+ (synopsis "Wrap pod paragraphs, leaving verbatim text and code alone")
+ (description
+ "This is a @code{Pod::Parser} subclass, based on @code{Pod::Stripper}.
+It parses perl files, wrapping pod text, and leaving everything else
+intact. It prints it's output to wherever you point it to (like you
+do with @code{Pod::Parser} (and @code{Pod::Stripper})).")
+ (license license:perl-license)))
+
(define-public perl-text-soundex
(package
(name "perl-text-soundex")
--
2.40.1
gemmaro wrote 2 years ago
[PATCH 13/16] gnu: Add perl-test-cmd.
(address . 63866@debbugs.gnu.org)(name . gemmaro)(address . gemmaro.dev@gmail.com)
fdad575e2c20ad41e84389b907d82ab85a44578c.1685767964.git.gemmaro.dev@gmail.com
* gnu/packages/perl-check.scm (perl-test-cmd): New variable.
---
gnu/packages/perl-check.scm | 22 ++++++++++++++++++++++
1 file changed, 22 insertions(+)

Toggle diff (35 lines)
diff --git a/gnu/packages/perl-check.scm b/gnu/packages/perl-check.scm
index 467c23e249e..1350a6f2cff 100644
--- a/gnu/packages/perl-check.scm
+++ b/gnu/packages/perl-check.scm
@@ -252,6 +252,28 @@ (define-public perl-test-cleannamespaces
called as methods, which usually isn't want you want.")
(license perl-license)))
+(define-public perl-test-cmd
+ (package
+ (name "perl-test-cmd")
+ (version "1.09")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append
+ "mirror://cpan/authors/id/N/NE/NEILB/Test-Cmd-" version
+ ".tar.gz"))
+ (sha256
+ (base32
+ "114nfafwfxxn7kig265b7lg0znb5ybvc282sjjwf14g7vpn20cyg"))))
+ (build-system perl-build-system)
+ (home-page "https://metacpan.org/release/Test-Cmd")
+ (synopsis "Perl module for portable testing of commands and scripts")
+ (description
+ "The @code{Test::Cmd} module provides a low-level framework for
+portable automated testing of executable commands and scripts (in any
+language, not just Perl), especially commands and scripts that
+interact with the file system.")
+ (license perl-license)))
+
(define-public perl-test-command
(package
(name "perl-test-command")
--
2.40.1
gemmaro wrote 2 years ago
[PATCH 14/16] gnu: Add perl-pod-tidy.
(address . 63866@debbugs.gnu.org)(name . gemmaro)(address . gemmaro.dev@gmail.com)
5e545f34464d380788a5d61988bb4720354799b6.1685767964.git.gemmaro.dev@gmail.com
* gnu/packages/perl.scm (perl-pod-tidy): New variable.
---
gnu/packages/perl.scm | 27 +++++++++++++++++++++++++++
1 file changed, 27 insertions(+)

Toggle diff (40 lines)
diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm
index d731d2e8389..a89ccef5f14 100644
--- a/gnu/packages/perl.scm
+++ b/gnu/packages/perl.scm
@@ -8996,6 +8996,33 @@ (define-public perl-pod-spell
mystery words like \"@code{$thing}\" or \"@code{Foo::Bar}\" or \"@code{hashref}\").")
(license license:artistic2.0)))
+(define-public perl-pod-tidy
+ (package
+ (name "perl-pod-tidy")
+ (version "0.10")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append
+ "mirror://cpan/authors/id/J/JH/JHOBLITT/Pod-Tidy-" version
+ ".tar.gz"))
+ (sha256
+ (base32
+ "1gcxjplgksnc5iggi8dzbkbkcryii5wjhypd7fs3kmbwx91y2vl8"))))
+ (build-system perl-build-system)
+ (native-inputs (list perl-module-build perl-encode-newlines perl-test-cmd))
+ (propagated-inputs (list perl-io-string
+ perl-pod-parser
+ perl-pod-wrap
+ perl-test-distribution
+ perl-text-glob))
+ (home-page "https://metacpan.org/release/Pod-Tidy")
+ (synopsis "Reformatting Pod processor")
+ (description
+ "This module provides the @emph{heavy lifting} needed by the
+@code{podtidy} utility although the API should be general enough that
+it can be used directly.")
+ (license license:perl-license)))
+
(define-public perl-posix-strftime-compiler
(package
(name "perl-posix-strftime-compiler")
--
2.40.1
gemmaro wrote 2 years ago
[PATCH 15/16] gnu: Add perl-perl-tidy.
(address . 63866@debbugs.gnu.org)(name . gemmaro)(address . gemmaro.dev@gmail.com)
a16dfdd414c28fcef93dda55d68144d28062e75a.1685767964.git.gemmaro.dev@gmail.com
* gnu/packages/perl.scm (perl-perl-tidy): New variable.
---
gnu/packages/perl.scm | 22 ++++++++++++++++++++++
1 file changed, 22 insertions(+)

Toggle diff (35 lines)
diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm
index a89ccef5f14..439ef189169 100644
--- a/gnu/packages/perl.scm
+++ b/gnu/packages/perl.scm
@@ -8877,6 +8877,28 @@ (define-public perl-perlio-utf8_strict
for correctness.")
(license (package-license perl))))
+(define-public perl-perl-tidy
+ (package
+ (name "perl-perl-tidy")
+ (version "20230309")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append
+ "mirror://cpan/authors/id/S/SH/SHANCOCK/Perl-Tidy-"
+ version ".tar.gz"))
+ (sha256
+ (base32
+ "060w6v3kdc7wvf7xgp9cvah9vgmba6s2jn4cl5qxc66612i4jag2"))))
+ (build-system perl-build-system)
+ (home-page "https://metacpan.org/release/Perl-Tidy")
+ (synopsis "Indent and reformat Perl scripts")
+ (description
+ "This module makes the functionality of the @command{perltidy} utility
+available to Perl scripts. Any or all of the input parameters may be
+omitted, in which case the @code{@@ARGV} array will be used to provide
+input parameters as described in the @samp{perltidy(1)} man page.")
+ (license license:gpl2)))
+
(define-public perl-pegex
(package
(name "perl-pegex")
--
2.40.1
gemmaro wrote 2 years ago
[PATCH 16/16] gnu: Add perl-code-tidyall-plugin-perl-alignmooseattributes.
(address . 63866@debbugs.gnu.org)(name . gemmaro)(address . gemmaro.dev@gmail.com)
90e89550fdb10fd487a0078539de32c7ac456a1a.1685767964.git.gemmaro.dev@gmail.com
* gnu/packages/perl.scm (perl-code-tidyall-plugin-perl-alignmooseattributes):
New validate.
---
gnu/packages/perl.scm | 27 +++++++++++++++++++++++++++
1 file changed, 27 insertions(+)

Toggle diff (47 lines)
diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm
index 439ef189169..e72f1dcc137 100644
--- a/gnu/packages/perl.scm
+++ b/gnu/packages/perl.scm
@@ -68,6 +68,7 @@ (define-module (gnu packages perl)
#:use-module (guix search-paths)
#:use-module (gnu packages base)
#:use-module (gnu packages bash)
+ #:use-module (gnu packages check)
#:use-module (gnu packages compression)
#:use-module (gnu packages databases)
#:use-module (gnu packages fontutils)
@@ -1903,6 +1904,32 @@ (define-public perl-clone-pp
and objects.")
(license (package-license perl))))
+(define-public perl-code-tidyall-plugin-perl-alignmooseattributes
+ (package
+ (name "perl-code-tidyall-plugin-perl-alignmooseattributes")
+ (version "0.01")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append
+ "mirror://cpan/authors/id/J/JS/JSWARTZ/"
+ "Code-TidyAll-Plugin-Perl-AlignMooseAttributes-"
+ version ".tar.gz"))
+ (sha256
+ (base32
+ "1r8w5kfm17j1dyrrsjhwww423zzdzhx1i3d3brl32wzhasgf47cd"))))
+ (build-system perl-build-system)
+ (propagated-inputs (list tidyall perl-text-aligner))
+ (home-page
+ "https://metacpan.org/release/Code-TidyAll-Plugin-Perl-AlignMooseAttributes")
+ (synopsis "TidyAll plugin to sort and align Moose-style attributes")
+ (description
+ "This tidyall plugin sorts and aligns consecutive Moose-style attribute
+lines. Only consecutive attributes, each on a single line, will be
+affected. Multi-line attributes will not be affected. This plugin
+has a preprocess step that hides these lines to prevent perltidy from
+splitting them into multiple lines.")
+ (license license:perl-license)))
+
(define-public perl-common-sense
(package
(name "perl-common-sense")
--
2.40.1
gemmaro wrote 7 months ago
[PATCH v2 01/12] gnu: Add perl-xstring.
(address . 63866@debbugs.gnu.org)(name . gemmaro)(address . gemmaro.dev@gmail.com)
8f70afa35d5b8cffeb7db01feb4d461adbb722a6.1722861235.git.gemmaro.dev@gmail.com
* gnu/packages/perl.scm (perl-xstring): New variable.

Change-Id: Id98d20c9bd16d56cde6d3e82ea4acec7feb1dac0
---
This revision drops some additional packages (tidyall plugins),
and updates package versions and styles.

gnu/packages/perl.scm | 21 ++++++++++++++++++++-
1 file changed, 20 insertions(+), 1 deletion(-)

Toggle diff (43 lines)
diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm
index a0eec2baed..1c0c561365 100644
--- a/gnu/packages/perl.scm
+++ b/gnu/packages/perl.scm
@@ -33,7 +33,7 @@
;;; Copyright © 2021 Raghav Gururajan <rg@raghavgururajan.name>
;;; Copyright © 2021 Maxime Devos <maximedevos@telenet.be>
;;; Copyright © 2022, 2023 Evgeny Pisemsky <mail@pisemsky.site>
-;;; Copyright © 2022, 2023 gemmaro <gemmaro.dev@gmail.com>
+;;; Copyright © 2022, 2023, 2024 gemmaro <gemmaro.dev@gmail.com>
;;; Copyright © 2023 Mădălin Ionel Patrașcu <madalinionel.patrascu@mdc-berlin.de>
;;; Copyright © 2023 Andreas Enge <andreas@enge.fr>
;;; Copyright © 2023 Jake Leporte <jakeleporte@outlook.com>
@@ -11938,6 +11938,25 @@ (define-public perl-xsloader
to implement cheap automatic dynamic loading of Perl modules.")
(license (package-license perl))))
+(define-public perl-xstring
+ (package
+ (name "perl-xstring")
+ (version "0.005")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "mirror://cpan/authors/id/A/AT/ATOOMIC/XString-"
+ version ".tar.gz"))
+ (sha256
+ (base32 "117q718hlw6gi9zy16ssm0pf0lll4l20hg77395bmrmf35fgaizj"))))
+ (build-system perl-build-system)
+ (home-page "https://metacpan.org/release/XString")
+ (synopsis "Isolated string helpers from @samp{B}")
+ (description
+ "XString provides the @samp{B} string helpers in one isolated
+package. Right now only @code{cstring} and @code{perlstring} are available.")
+ (license license:perl-license)))
+
(define-public perl-xs-object-magic
(package
(name "perl-xs-object-magic")

base-commit: 3c309a7b7020a9645bfe775d9f53f43f05d076bf
--
2.45.2
gemmaro wrote 7 months ago
[PATCH v2 02/12] gnu: Add perl-ref-util.
(address . 63866@debbugs.gnu.org)(name . gemmaro)(address . gemmaro.dev@gmail.com)
b861daea39fee49a2c080b0ef7f975ad2812048b.1722861235.git.gemmaro.dev@gmail.com
* gnu/packages/perl.scm (perl-ref-util): New variable.

Change-Id: I097a6e0a0d71d17a8584b0f3309570282872e043
---
gnu/packages/perl.scm | 29 +++++++++++++++++++++++++++++
1 file changed, 29 insertions(+)

Toggle diff (42 lines)
diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm
index 1c0c561365..406cbeb3e4 100644
--- a/gnu/packages/perl.scm
+++ b/gnu/packages/perl.scm
@@ -9248,6 +9248,35 @@ (define-public perl-readonly-xs
the scalar's @code{FLAGS} structure.")
(license license:perl-license)))
+(define-public perl-ref-util
+ (package
+ (name "perl-ref-util")
+ (version "0.204")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "mirror://cpan/authors/id/A/AR/ARC/Ref-Util-"
+ version ".tar.gz"))
+ (sha256
+ (base32 "1q85y5lzgl8wz5qnz3j6mch2fmllr668h54wszaz6i6gp8ysfps1"))))
+ (build-system perl-build-system)
+ (native-inputs (list perl-readonly))
+ (propagated-inputs (list perl-ref-util-xs))
+ (home-page "https://metacpan.org/release/Ref-Util")
+ (synopsis "Utility functions for checking references")
+ (description
+ "@code{Ref::Util} introduces several functions to help identify references in
+a smarter (and usually faster) way. The difference with conventional approach:
+@itemize
+@item No comparison against a string constant
+@item Supports blessed variables
+@item Supports tied variables and magic
+@item Ignores overloading
+@item Ignores subtle types
+@item Usually faster
+@end itemize")
+ (license license:x11)))
+
(define-public perl-ref-util-xs
(package
(name "perl-ref-util-xs")
--
2.45.2
gemmaro wrote 7 months ago
[PATCH v2 03/12] gnu: Add perl-lib-relative.
(address . 63866@debbugs.gnu.org)(name . gemmaro)(address . gemmaro.dev@gmail.com)
aa71feaaff22057a91f990032f9f14a7fc328455.1722861235.git.gemmaro.dev@gmail.com
* gnu/packages/perl.scm (perl-lib-relative): New variable.

Change-Id: I6d5a48cd78c5a0a47180a2365ebecc1372d4ccc2
---
gnu/packages/perl.scm | 20 ++++++++++++++++++++
1 file changed, 20 insertions(+)

Toggle diff (33 lines)
diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm
index 406cbeb3e4..7dad48ab7a 100644
--- a/gnu/packages/perl.scm
+++ b/gnu/packages/perl.scm
@@ -6388,6 +6388,26 @@ (define-public perl-libintl-perl
implemented for example in GNU gettext.")
(license license:gpl3+)))
+(define-public perl-lib-relative
+ (package
+ (name "perl-lib-relative")
+ (version "1.002")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "mirror://cpan/authors/id/D/DB/DBOOK/lib-relative-"
+ version ".tar.gz"))
+ (sha256
+ (base32 "12x7r08y04ml02wawhnk7j8zcb0ijd6vwy1yc0bnjh3w2qah4iz4"))))
+ (build-system perl-build-system)
+ (home-page "https://metacpan.org/release/lib-relative")
+ (synopsis "Add paths relative to the current file to @code{@@INC}")
+ (description
+ "@code{lib::relative} module proposes a more straightforward method than
+adding a path to @code{@@INC}: take a path relative to the current
+file, absolutize it, and add it to @code{@@INC}.")
+ (license license:artistic2.0)))
+
(define-public perl-lingua-en-sentence
(package
(name "perl-lingua-en-sentence")
--
2.45.2
gemmaro wrote 7 months ago
[PATCH v2 04/12] gnu: perl-config-ini: Update to 0.029.
(address . 63866@debbugs.gnu.org)(name . gemmaro)(address . gemmaro.dev@gmail.com)
3ace5ce0c66e227666fa1a13cf915cd11cbd66cd.1722861235.git.gemmaro.dev@gmail.com
* gnu/packages/perl.scm (perl-config-ini): Update to 0.029.

Change-Id: I933f102d4e1502385fee9848c5cbe24e988e6a63
---
gnu/packages/perl.scm | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

Toggle diff (24 lines)
diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm
index 7dad48ab7a..bd08ad9f1b 100644
--- a/gnu/packages/perl.scm
+++ b/gnu/packages/perl.scm
@@ -2085,7 +2085,7 @@ (define-public perl-config-gitlike
(define-public perl-config-ini
(package
(name "perl-config-ini")
- (version "0.025")
+ (version "0.029")
(source (origin
(method url-fetch)
(uri (string-append
@@ -2093,7 +2093,7 @@ (define-public perl-config-ini
version ".tar.gz"))
(sha256
(base32
- "0clphq6a17chvb663fvjnxqvyvh26g03x0fl4bg9vy4ibdnzg2v2"))))
+ "1spxzpwpwspw7cwkkg97rf0dafmjl95cv43xj1568402fdx7kghb"))))
(build-system perl-build-system)
(inputs
(list perl-mixin-linewise perl-perlio-utf8_strict perl-sub-exporter))
--
2.45.2
gemmaro wrote 7 months ago
[PATCH v2 05/12] gnu: perl-config-ini: Use propagated inputs.
(address . 63866@debbugs.gnu.org)(name . gemmaro)(address . gemmaro.dev@gmail.com)
c04aafc8e7d211d61bbad0ddc574c0f5023dbdef.1722861235.git.gemmaro.dev@gmail.com
* gnu/packages/perl.scm (perl-config-ini): Use propagated inputs for runtime dependencies.

Change-Id: Ib12ab79444fdd5d90a6e6405e615cb0804edf326
---
gnu/packages/perl.scm | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

Toggle diff (15 lines)
diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm
index bd08ad9f1b..37cd34a2ca 100644
--- a/gnu/packages/perl.scm
+++ b/gnu/packages/perl.scm
@@ -2095,7 +2095,7 @@ (define-public perl-config-ini
(base32
"1spxzpwpwspw7cwkkg97rf0dafmjl95cv43xj1568402fdx7kghb"))))
(build-system perl-build-system)
- (inputs
+ (propagated-inputs
(list perl-mixin-linewise perl-perlio-utf8_strict perl-sub-exporter))
(home-page "https://metacpan.org/release/Config-INI")
(synopsis "Simple .ini-file format reader and writer")
--
2.45.2
gemmaro wrote 7 months ago
[PATCH v2 06/12] gnu: perl-list-someutils: Use propagated inputs.
(address . 63866@debbugs.gnu.org)(name . gemmaro)(address . gemmaro.dev@gmail.com)
01dd0b7675c225f65ee09954efd638e7c8d8ecb5.1722861235.git.gemmaro.dev@gmail.com
* gnu/packages/perl.scm (perl-list-someutils): Use propagated inputs for
runtime dependencies.

Change-Id: Id7d903ad38c2aa9781716bca35d2c19bbbb8081d
---
gnu/packages/perl.scm | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

Toggle diff (15 lines)
diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm
index 37cd34a2ca..0382dd1842 100644
--- a/gnu/packages/perl.scm
+++ b/gnu/packages/perl.scm
@@ -6600,7 +6600,7 @@ (define-public perl-list-someutils
(build-system perl-build-system)
(native-inputs
(list perl-test-leaktrace))
- (inputs
+ (propagated-inputs
(list perl-exporter-tiny perl-module-implementation))
(home-page "https://metacpan.org/release/List-SomeUtils")
(synopsis "Provide the stuff missing in List::Util")
--
2.45.2
gemmaro wrote 7 months ago
[PATCH v2 07/12] gnu: Add perl-list-someutils-xs.
(address . 63866@debbugs.gnu.org)(name . gemmaro)(address . gemmaro.dev@gmail.com)
fed979c591f8dd7140455f14bf92036dbddd9fe9.1722861235.git.gemmaro.dev@gmail.com
* gnu/packages/perl.scm (perl-list-someutils-xs): New variable.

Change-Id: Ieded415cd553c7300250c814e0a1da2aa649e253
---
gnu/packages/perl.scm | 23 +++++++++++++++++++++++
1 file changed, 23 insertions(+)

Toggle diff (36 lines)
diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm
index 0382dd1842..b380bbd6f5 100644
--- a/gnu/packages/perl.scm
+++ b/gnu/packages/perl.scm
@@ -6614,6 +6614,29 @@ (define-public perl-list-someutils
portions of this module couldn't be compiled on this machine.")
(license (package-license perl))))
+(define-public perl-list-someutils-xs
+ (package
+ (name "perl-list-someutils-xs")
+ (version "0.58")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append
+ "mirror://cpan/authors/id/D/DR/DROLSKY/List-SomeUtils-XS-"
+ version ".tar.gz"))
+ (sha256
+ (base32 "15xjnkjj4yxv1qn9krsbkzzkm51hibg2k3lf5767j6s848k4v7jg"))))
+ (build-system perl-build-system)
+ (native-inputs (list perl-list-someutils perl-test-warnings
+ perl-test-leaktrace))
+ (home-page "https://metacpan.org/release/List-SomeUtils-XS")
+ (synopsis "XS implementation for @code{List::SomeUtils}")
+ (description
+ "@code{List::SomeUtils::XS} is a XS implementation for
+@code{List::SomeUtils}. There are no user-facing parts here. See
+@code{List::SomeUtils} for API details.")
+ (license license:artistic2.0)))
+
(define-public perl-mailtools
(package
(name "perl-mailtools")
--
2.45.2
gemmaro wrote 7 months ago
[PATCH v2 08/12] gnu: perl-mixin-linewise: Update to 0.111.
(address . 63866@debbugs.gnu.org)(name . gemmaro)(address . gemmaro.dev@gmail.com)
77c1122a7067e78e0250d331aa5bc6fb9342fc6b.1722861235.git.gemmaro.dev@gmail.com
* gnu/packages/perl.scm (perl-mixin-linewise): Update to 0.111.

Change-Id: Ic00a5390217f72d759c2b23840cb3c7e808e7fca
---
gnu/packages/perl.scm | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)

Toggle diff (27 lines)
diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm
index b380bbd6f5..fa546b101c 100644
--- a/gnu/packages/perl.scm
+++ b/gnu/packages/perl.scm
@@ -6923,7 +6923,7 @@ (define-public perl-mime-types
(define-public perl-mixin-linewise
(package
(name "perl-mixin-linewise")
- (version "0.108")
+ (version "0.111")
(source (origin
(method url-fetch)
(uri (string-append
@@ -6931,9 +6931,9 @@ (define-public perl-mixin-linewise
version ".tar.gz"))
(sha256
(base32
- "1wmfr19w9y8qys7b32mnj1vmps7qwdahqas71a9p62ac8xw0dwkx"))))
+ "1nq1gc4320djn5mqgk55v2vjm3zwq36wq7b365f2kdg9di8qi3nj"))))
(build-system perl-build-system)
- (inputs
+ (propagated-inputs
(list perl-perlio-utf8_strict perl-sub-exporter))
(home-page "https://metacpan.org/release/Mixin-Linewise")
(synopsis "Write your linewise code for handles; this does the rest")
--
2.45.2
gemmaro wrote 7 months ago
[PATCH v2 09/12] gnu: perl-specio: Update to 0.48.
(address . 63866@debbugs.gnu.org)(name . gemmaro)(address . gemmaro.dev@gmail.com)
9891899135bdaf238351b2efe94e7cb9f13b660e.1722861235.git.gemmaro.dev@gmail.com
* gnu/packages/perl.scm (perl-specio): Update to 0.48.

Change-Id: I7c6dbe379fafc17a4290add9dd3bcc9b3e90acbc
---
gnu/packages/perl.scm | 24 ++++++++++++++----------
1 file changed, 14 insertions(+), 10 deletions(-)

Toggle diff (54 lines)
diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm
index fa546b101c..ddf3128ac7 100644
--- a/gnu/packages/perl.scm
+++ b/gnu/packages/perl.scm
@@ -9659,7 +9659,7 @@ (define-public perl-sort-naturally
(define-public perl-specio
(package
(name "perl-specio")
- (version "0.38")
+ (version "0.48")
(source
(origin
(method url-fetch)
@@ -9667,25 +9667,29 @@ (define-public perl-specio
"Specio-" version ".tar.gz"))
(sha256
(base32
- "1s5xd9awwrzc94ymimjkxqs6jq513wwlmwwarxaklvg2hk4lps0l"))))
+ "1cl22s0z00jj4nlaz9yfmhi7pxq1s4qr21vkh7q4w9zih0spk18c"))))
(build-system perl-build-system)
+ (native-inputs (list perl-test-needs perl-moose perl-moo perl-namespace-autoclean))
(propagated-inputs
(list perl-devel-stacktrace
perl-eval-closure
perl-module-runtime
perl-mro-compat
- perl-role-tiny
+ perl-ref-util
+ perl-role-tiny-2
+ perl-sub-quote
perl-test-fatal
- perl-test-needs))
+ perl-try-tiny
+ perl-xstring))
(home-page "https://metacpan.org/release/Specio")
(synopsis "Classes for representing type constraints and coercion")
(description "The Specio distribution provides classes for representing type
-constraints and coercion, along with syntax sugar for declaring them. Note that
-this is not a proper type system for Perl. Nothing in this distribution will
-magically make the Perl interpreter start checking a value's type on assignment
-to a variable. In fact, there's no built-in way to apply a type to a variable at
-all. Instead, you can explicitly check a value against a type, and optionally
-coerce values to that type.")
+constraints and coercion, along with syntax sugar for declaring them. Note that this
+is not a proper type system for Perl. Nothing in this distribution will magically
+make the Perl interpreter start checking a value's type on assignment to a variable.
+In fact, there's no built-in way to apply a type to a variable at all. Instead, you
+can explicitly check a value against a type, and optionally coerce values to that
+type.")
(license license:artistic2.0)))
(define-public perl-spiffy
--
2.45.2
gemmaro wrote 7 months ago
[PATCH v2 10/12] gnu: Add perl-specio-library-path-tiny.
(address . 63866@debbugs.gnu.org)(name . gemmaro)(address . gemmaro.dev@gmail.com)
57d12b6dfbadc9b4b7641c8d02bb5cd5199ea465.1722861235.git.gemmaro.dev@gmail.com
* gnu/packages/perl.scm (perl-specio-library-path-tiny): New variable.

Change-Id: Ib23fdd44f292390ee05906559e01c286e2de180c
---
gnu/packages/perl.scm | 23 +++++++++++++++++++++++
1 file changed, 23 insertions(+)

Toggle diff (36 lines)
diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm
index ddf3128ac7..0700dbd745 100644
--- a/gnu/packages/perl.scm
+++ b/gnu/packages/perl.scm
@@ -9692,6 +9692,29 @@ (define-public perl-specio
type.")
(license license:artistic2.0)))
+(define-public perl-specio-library-path-tiny
+ (package
+ (name "perl-specio-library-path-tiny")
+ (version "0.05")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append
+ "mirror://cpan/authors/id/D/DR/DROLSKY/Specio-Library-Path-Tiny-"
+ version ".tar.gz"))
+ (sha256
+ (base32 "0lbsqb3l5ra2k6481dkc7m1zk92fjpwnvgvql1k2rsyspjwhppv0"))))
+ (build-system perl-build-system)
+ (native-inputs (list perl-file-pushd perl-test-fatal))
+ (propagated-inputs (list perl-path-tiny perl-specio))
+ (home-page "https://metacpan.org/release/Specio-Library-Path-Tiny")
+ (synopsis "Types and coercions for Specio")
+ (description
+ "This library provides a set of @code{Path::Tiny} types and coercions for
+Specio. These types can be used with @code{Moose}, @code{Moo},
+@code{Params::ValidationCompiler}, and other modules.")
+ (license license:asl2.0)))
+
(define-public perl-spiffy
(package
(name "perl-spiffy")
--
2.45.2
gemmaro wrote 7 months ago
[PATCH v2 11/12] gnu: perl-test-class-most: Use propagated inputs.
(address . 63866@debbugs.gnu.org)(name . gemmaro)(address . gemmaro.dev@gmail.com)
2538fb0f8264e6e4a53c2ca43ec7d12873fb17d7.1722861235.git.gemmaro.dev@gmail.com
* gnu/packages/perl-check.scm (perl-test-class-most): Use propagated inputs
for runtime dependencies.

Change-Id: I78c09e16d8532ae4a46a97230d8e4ee55ddd4a53
---
gnu/packages/perl-check.scm | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)

Toggle diff (23 lines)
diff --git a/gnu/packages/perl-check.scm b/gnu/packages/perl-check.scm
index 5ef56227ce..ef60c2b6aa 100644
--- a/gnu/packages/perl-check.scm
+++ b/gnu/packages/perl-check.scm
@@ -16,6 +16,7 @@
;;; Copyright © 2018 Kei Kebreau <kkebreau@posteo.net>
;;; Copyright © 2020 Paul Garlick <pgarlick@tourbillion-technology.com>
;;; Copyright © 2020 Nicolas Goaziou <mail@nicolasgoaziou.fr>
+;;; Copyright © 2024 gemmaro <gemmaro.dev@gmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -213,7 +214,7 @@ (define-public perl-test-class-most
(build-system perl-build-system)
(native-inputs
(list perl-module-build))
- (inputs
+ (propagated-inputs
(list perl-test-class perl-test-most perl-module-runtime
perl-try-tiny perl-mro-compat))
(home-page "https://metacpan.org/release/Test-Class-Most")
--
2.45.2
gemmaro wrote 7 months ago
[PATCH v2 12/12] gnu: Add tidyall.
(address . 63866@debbugs.gnu.org)(name . gemmaro)(address . gemmaro.dev@gmail.com)
1546050290d68601ccbaece315a0850048c5ec52.1722861235.git.gemmaro.dev@gmail.com
* gnu/packages/check.scm (tidyall): New variable.

Change-Id: Icc6b370cd6089da99d40fa57f5092845a98d609c
---
gnu/packages/check.scm | 68 ++++++++++++++++++++++++++++++++++++++++++
1 file changed, 68 insertions(+)

Toggle diff (102 lines)
diff --git a/gnu/packages/check.scm b/gnu/packages/check.scm
index 21a975f340..6a7c17e0a3 100644
--- a/gnu/packages/check.scm
+++ b/gnu/packages/check.scm
@@ -51,6 +51,7 @@
;;; Copyright © 2024 Giacomo Leidi <goodoldpaul@autistici.org>
;;; Copyright © 2024 Zheng Junjie <873216071@qq.com>
;;; Copyright © 2024 Navid Afkhami <navid.afkhami@mdc-berlin.de>
+;;; Copyright © 2024 gemmaro <gemmaro.dev@gmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -90,6 +91,8 @@ (define-module (gnu packages check)
#:use-module (gnu packages maths)
#:use-module (gnu packages ncurses)
#:use-module (gnu packages perl)
+ #:use-module (gnu packages perl-check)
+ #:use-module (gnu packages php)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages python)
#:use-module (gnu packages python-check)
@@ -114,6 +117,7 @@ (define-module (gnu packages check)
#:use-module (guix build-system go)
#:use-module (guix build-system guile)
#:use-module (guix build-system meson)
+ #:use-module (guix build-system perl)
#:use-module (guix build-system pyproject)
#:use-module (guix build-system python)
#:use-module (guix build-system trivial)
@@ -3447,6 +3451,70 @@ (define-public theft
(description "Theft is a library for property-based testing.")
(license license:isc)))
+(define-public tidyall
+ (package
+ (name "tidyall")
+ (version "0.84")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append
+ "mirror://cpan/authors/id/D/DR/DROLSKY/Code-TidyAll-" version
+ ".tar.gz"))
+ (sha256
+ (base32 "1xxil8yfbd4nizwaaris07sp441nhx3ixr4qj13l1x6pxphi9h5k"))))
+ (build-system perl-build-system)
+ (arguments
+ (list
+ #:phases #~(modify-phases %standard-phases
+ (delete 'remove-command-line-tool)
+ (add-after 'install 'wrap-programs
+ (lambda _
+ (wrap-program (string-append #$output "/bin/tidyall")
+ (list "PERL5LIB" ":"
+ 'prefix
+ (list (getenv "PERL5LIB")
+ (string-append #$output
+ "/lib/perl5/site_perl")))))))))
+ (native-inputs (list perl-test-class-most perl-test-differences
+ perl-test-fatal perl-test-warnings perl-lib-relative))
+ (inputs (list php bash-minimal))
+ (propagated-inputs (list perl-capture-tiny
+ perl-config-ini
+ perl-timedate
+ perl-file-which
+ perl-ipc-run3
+ perl-ipc-system-simple
+ perl-list-compare
+ perl-list-someutils
+ perl-log-any
+ perl-module-runtime
+ perl-moo-2
+ perl-path-tiny
+ perl-scope-guard
+ perl-specio
+ perl-specio-library-path-tiny
+ perl-text-diff
+ perl-time-duration-parse
+ perl-try-tiny
+ perl-parallel-forkmanager
+ perl-file-pushd))
+ (home-page "https://metacpan.org/release/Code-TidyAll")
+ (synopsis "Engine for tidyall, your all-in-one code tidier and validator")
+ (description
+ "@command{tidyall} makes a lot of code tidiers and validators available
+from a single unified interface. You can run @command{tidyall} on a
+single file or on an entire project hierarchy, and configure which
+tidiers/validators are applied to which files. @command{tidyall} will
+back up files beforehand, and for efficiency will only consider files
+that have changed since they were last processed.
+
+Note that if you see some missing tidier or validator modules error,
+you can let tidyall load them after install them. For example, one
+can run @code{guix shell perl-perl-tidy perl} in advance to load
+@code{Perl::Tidy}.")
+ (license license:perl-license)))
+
(define-public unittest-cpp
(package
(name "unittest-cpp")
--
2.45.2
Andrew Wong wrote 1 months ago
Re: [PATCH 00/16] Add tidyall and some tidiers.
(address . 63866@debbugs.gnu.org)(name . gemmaro)(address . gemmaro.dev@gmail.com)
bb47bf19-8f6d-43d3-b630-074aee197d5b@gmail.com
Hi,

I was gonna review this patch but it seems that the first patch "Add
perl-xstring" (at least) doesn't apply (at least via 'mumi am'). Perhaps
the patches are too old to apply to the latest guix?

- Andrew
gemmaro wrote 1 months ago
[PATCH v3 00/13] gnu: Add tidyall.
(address . 63866@debbugs.gnu.org)(name . gemmaro)(address . gemmaro.dev@gmail.com)
20250205035933.7504-1-gemmaro.dev@gmail.com
Andrew Wong <brosasaki@gmail.com> writes:

Toggle quote (8 lines)
> Hi,
>
> I was gonna review this patch but it seems that the first patch "Add
> perl-xstring" (at least) doesn't apply (at least via 'mumi am'). Perhaps the
> patches are too old to apply to the latest guix?
>
> - Andrew

Thank you for your feedback. I have updated the patches to align with the
latest source. Here are the changes made:

* Updated copyright year to 2025.
* Split "[PATCH v2 08/12] gnu: perl-mixin-linewise: Update to 0.111." into:
* "[PATCH v3 08/13] gnu: perl-mixin-linewise: Update to 0.111." and
* "[PATCH v3 09/13] gnu: perl-mixin-linewise: Use propagated inputs."
* Updated Specio to version 0.49 (previously 0.48).
* Reconsidered native and propagated inputs.
* Reverted description changes and maintain original content.
* Removed php from inputs and moved it in native-inputs, since it is for an
optional plugin.

Please let me know if you encounter any further issues.

Regards,
gemamro.

gemmaro (13):
gnu: Add perl-xstring.
gnu: Add perl-ref-util.
gnu: Add perl-lib-relative.
gnu: perl-config-ini: Update to 0.029.
gnu: perl-config-ini: Use propagated inputs.
gnu: perl-list-someutils: Use propagated inputs.
gnu: Add perl-list-someutils-xs.
gnu: perl-mixin-linewise: Update to 0.111.
gnu: perl-mixin-linewise: Use propagated inputs.
gnu: perl-specio: Update to 0.49.
gnu: Add perl-specio-library-path-tiny.
gnu: perl-test-class-most: Use propagated inputs.
gnu: Add tidyall.

gnu/packages/check.scm | 73 ++++++++++++++++-
gnu/packages/perl-check.scm | 3 +-
gnu/packages/perl.scm | 154 +++++++++++++++++++++++++++++++++---
3 files changed, 215 insertions(+), 15 deletions(-)

--
2.47.1
gemmaro wrote 1 months ago
[PATCH v3 01/13] gnu: Add perl-xstring.
(address . 63866@debbugs.gnu.org)(name . gemmaro)(address . gemmaro.dev@gmail.com)
20250205035933.7504-2-gemmaro.dev@gmail.com
* gnu/packages/perl.scm (perl-xstring): New variable.
---
gnu/packages/perl.scm | 21 ++++++++++++++++++++-
1 file changed, 20 insertions(+), 1 deletion(-)

Toggle diff (41 lines)
diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm
index 13d9db9959..c8d3192e2f 100644
--- a/gnu/packages/perl.scm
+++ b/gnu/packages/perl.scm
@@ -33,7 +33,7 @@
;;; Copyright © 2021 Raghav Gururajan <rg@raghavgururajan.name>
;;; Copyright © 2021 Maxime Devos <maximedevos@telenet.be>
;;; Copyright © 2022, 2023 Evgeny Pisemsky <mail@pisemsky.site>
-;;; Copyright © 2022, 2023, 2024 gemmaro <gemmaro.dev@gmail.com>
+;;; Copyright © 2022, 2023, 2024, 2025 gemmaro <gemmaro.dev@gmail.com>
;;; Copyright © 2023 Mădălin Ionel Patrașcu <madalinionel.patrascu@mdc-berlin.de>
;;; Copyright © 2023 Andreas Enge <andreas@enge.fr>
;;; Copyright © 2023 Jake Leporte <jakeleporte@outlook.com>
@@ -12767,6 +12767,25 @@ (define-public perl-xsloader
to implement cheap automatic dynamic loading of Perl modules.")
(license (package-license perl))))
+(define-public perl-xstring
+ (package
+ (name "perl-xstring")
+ (version "0.005")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "mirror://cpan/authors/id/A/AT/ATOOMIC/XString-"
+ version ".tar.gz"))
+ (sha256
+ (base32 "117q718hlw6gi9zy16ssm0pf0lll4l20hg77395bmrmf35fgaizj"))))
+ (build-system perl-build-system)
+ (home-page "https://metacpan.org/release/XString")
+ (synopsis "Isolated string helpers from @samp{B}")
+ (description
+ "XString provides the @samp{B} string helpers in one isolated
+package. Right now only @code{cstring} and @code{perlstring} are available.")
+ (license license:perl-license)))
+
(define-public perl-xs-object-magic
(package
(name "perl-xs-object-magic")
--
2.47.1
gemmaro wrote 1 months ago
[PATCH v3 02/13] gnu: Add perl-ref-util.
(address . 63866@debbugs.gnu.org)(name . gemmaro)(address . gemmaro.dev@gmail.com)
20250205035933.7504-3-gemmaro.dev@gmail.com
* gnu/packages/perl.scm (perl-ref-util): New variable.
---
gnu/packages/perl.scm | 29 +++++++++++++++++++++++++++++
1 file changed, 29 insertions(+)

Toggle diff (42 lines)
diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm
index c8d3192e2f..85bdc7ebf6 100644
--- a/gnu/packages/perl.scm
+++ b/gnu/packages/perl.scm
@@ -9818,6 +9818,35 @@ (define-public perl-readonly-xs
the scalar's @code{FLAGS} structure.")
(license license:perl-license)))
+(define-public perl-ref-util
+ (package
+ (name "perl-ref-util")
+ (version "0.204")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "mirror://cpan/authors/id/A/AR/ARC/Ref-Util-"
+ version ".tar.gz"))
+ (sha256
+ (base32 "1q85y5lzgl8wz5qnz3j6mch2fmllr668h54wszaz6i6gp8ysfps1"))))
+ (build-system perl-build-system)
+ (native-inputs (list perl-readonly))
+ (propagated-inputs (list perl-ref-util-xs))
+ (home-page "https://metacpan.org/release/Ref-Util")
+ (synopsis "Utility functions for checking references")
+ (description
+ "@code{Ref::Util} introduces several functions to help identify references in
+a smarter (and usually faster) way. The difference with conventional approach:
+@itemize
+@item No comparison against a string constant
+@item Supports blessed variables
+@item Supports tied variables and magic
+@item Ignores overloading
+@item Ignores subtle types
+@item Usually faster
+@end itemize")
+ (license license:x11)))
+
(define-public perl-ref-util-xs
(package
(name "perl-ref-util-xs")
--
2.47.1
gemmaro wrote 1 months ago
[PATCH v3 03/13] gnu: Add perl-lib-relative.
(address . 63866@debbugs.gnu.org)(name . gemmaro)(address . gemmaro.dev@gmail.com)
20250205035933.7504-4-gemmaro.dev@gmail.com
* gnu/packages/perl.scm (perl-lib-relative): New variable.
---
gnu/packages/perl.scm | 20 ++++++++++++++++++++
1 file changed, 20 insertions(+)

Toggle diff (33 lines)
diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm
index 85bdc7ebf6..d184eec149 100644
--- a/gnu/packages/perl.scm
+++ b/gnu/packages/perl.scm
@@ -6796,6 +6796,26 @@ (define-public perl-libintl-perl
implemented for example in GNU gettext.")
(license license:gpl3+)))
+(define-public perl-lib-relative
+ (package
+ (name "perl-lib-relative")
+ (version "1.002")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "mirror://cpan/authors/id/D/DB/DBOOK/lib-relative-"
+ version ".tar.gz"))
+ (sha256
+ (base32 "12x7r08y04ml02wawhnk7j8zcb0ijd6vwy1yc0bnjh3w2qah4iz4"))))
+ (build-system perl-build-system)
+ (home-page "https://metacpan.org/release/lib-relative")
+ (synopsis "Add paths relative to the current file to @code{@@INC}")
+ (description
+ "@code{lib::relative} module proposes a more straightforward method than
+adding a path to @code{@@INC}: take a path relative to the current
+file, absolutize it, and add it to @code{@@INC}.")
+ (license license:artistic2.0)))
+
(define-public perl-lingua-en-sentence
(package
(name "perl-lingua-en-sentence")
--
2.47.1
gemmaro wrote 1 months ago
[PATCH v3 04/13] gnu: perl-config-ini: Update to 0.029.
(address . 63866@debbugs.gnu.org)(name . gemmaro)(address . gemmaro.dev@gmail.com)
20250205035933.7504-5-gemmaro.dev@gmail.com
* gnu/packages/perl.scm (perl-config-ini): Update to 0.029.
---
gnu/packages/perl.scm | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

Toggle diff (24 lines)
diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm
index d184eec149..5eab25cef7 100644
--- a/gnu/packages/perl.scm
+++ b/gnu/packages/perl.scm
@@ -2120,7 +2120,7 @@ (define-public perl-config-gitlike
(define-public perl-config-ini
(package
(name "perl-config-ini")
- (version "0.025")
+ (version "0.029")
(source (origin
(method url-fetch)
(uri (string-append
@@ -2128,7 +2128,7 @@ (define-public perl-config-ini
version ".tar.gz"))
(sha256
(base32
- "0clphq6a17chvb663fvjnxqvyvh26g03x0fl4bg9vy4ibdnzg2v2"))))
+ "1spxzpwpwspw7cwkkg97rf0dafmjl95cv43xj1568402fdx7kghb"))))
(build-system perl-build-system)
(inputs
(list perl-mixin-linewise perl-perlio-utf8_strict perl-sub-exporter))
--
2.47.1
gemmaro wrote 1 months ago
[PATCH v3 05/13] gnu: perl-config-ini: Use propagated inputs.
(address . 63866@debbugs.gnu.org)(name . gemmaro)(address . gemmaro.dev@gmail.com)
20250205035933.7504-6-gemmaro.dev@gmail.com
* gnu/packages/perl.scm (perl-config-ini): Use propagated inputs
for runtime dependencies.
---
gnu/packages/perl.scm | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

Toggle diff (15 lines)
diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm
index 5eab25cef7..bb3a2cf4ac 100644
--- a/gnu/packages/perl.scm
+++ b/gnu/packages/perl.scm
@@ -2130,7 +2130,7 @@ (define-public perl-config-ini
(base32
"1spxzpwpwspw7cwkkg97rf0dafmjl95cv43xj1568402fdx7kghb"))))
(build-system perl-build-system)
- (inputs
+ (propagated-inputs
(list perl-mixin-linewise perl-perlio-utf8_strict perl-sub-exporter))
(home-page "https://metacpan.org/release/Config-INI")
(synopsis "Simple .ini-file format reader and writer")
--
2.47.1
gemmaro wrote 1 months ago
[PATCH v3 06/13] gnu: perl-list-someutils: Use propagated inputs.
(address . 63866@debbugs.gnu.org)(name . gemmaro)(address . gemmaro.dev@gmail.com)
20250205035933.7504-7-gemmaro.dev@gmail.com
* gnu/packages/perl.scm (perl-list-someutils): Use propagated inputs
for runtime dependencies.
---
gnu/packages/perl.scm | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

Toggle diff (15 lines)
diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm
index bb3a2cf4ac..dce625e86b 100644
--- a/gnu/packages/perl.scm
+++ b/gnu/packages/perl.scm
@@ -7008,7 +7008,7 @@ (define-public perl-list-someutils
(build-system perl-build-system)
(native-inputs
(list perl-test-leaktrace))
- (inputs
+ (propagated-inputs
(list perl-exporter-tiny perl-module-implementation))
(home-page "https://metacpan.org/release/List-SomeUtils")
(synopsis "Provide the stuff missing in List::Util")
--
2.47.1
gemmaro wrote 1 months ago
[PATCH v3 07/13] gnu: Add perl-list-someutils-xs.
(address . 63866@debbugs.gnu.org)(name . gemmaro)(address . gemmaro.dev@gmail.com)
20250205035933.7504-8-gemmaro.dev@gmail.com
* gnu/packages/perl.scm (perl-list-someutils-xs): New variable.
---
gnu/packages/perl.scm | 23 +++++++++++++++++++++++
1 file changed, 23 insertions(+)

Toggle diff (36 lines)
diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm
index dce625e86b..64f41a3835 100644
--- a/gnu/packages/perl.scm
+++ b/gnu/packages/perl.scm
@@ -7022,6 +7022,29 @@ (define-public perl-list-someutils
portions of this module couldn't be compiled on this machine.")
(license (package-license perl))))
+(define-public perl-list-someutils-xs
+ (package
+ (name "perl-list-someutils-xs")
+ (version "0.58")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append
+ "mirror://cpan/authors/id/D/DR/DROLSKY/List-SomeUtils-XS-"
+ version ".tar.gz"))
+ (sha256
+ (base32 "15xjnkjj4yxv1qn9krsbkzzkm51hibg2k3lf5767j6s848k4v7jg"))))
+ (build-system perl-build-system)
+ (native-inputs (list perl-list-someutils perl-test-warnings
+ perl-test-leaktrace))
+ (home-page "https://metacpan.org/release/List-SomeUtils-XS")
+ (synopsis "XS implementation for @code{List::SomeUtils}")
+ (description
+ "@code{List::SomeUtils::XS} is a XS implementation for
+@code{List::SomeUtils}. There are no user-facing parts here. See
+@code{List::SomeUtils} for API details.")
+ (license license:artistic2.0)))
+
(define-public perl-mailtools
(package
(name "perl-mailtools")
--
2.47.1
gemmaro wrote 1 months ago
[PATCH v3 08/13] gnu: perl-mixin-linewise: Update to 0.111.
(address . 63866@debbugs.gnu.org)(name . gemmaro)(address . gemmaro.dev@gmail.com)
20250205035933.7504-9-gemmaro.dev@gmail.com
* gnu/packages/perl.scm (perl-mixin-linewise): Update to 0.111.
---
gnu/packages/perl.scm | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

Toggle diff (24 lines)
diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm
index 64f41a3835..880320d567 100644
--- a/gnu/packages/perl.scm
+++ b/gnu/packages/perl.scm
@@ -7418,7 +7418,7 @@ (define-public perl-minimumversion
(define-public perl-mixin-linewise
(package
(name "perl-mixin-linewise")
- (version "0.108")
+ (version "0.111")
(source (origin
(method url-fetch)
(uri (string-append
@@ -7426,7 +7426,7 @@ (define-public perl-mixin-linewise
version ".tar.gz"))
(sha256
(base32
- "1wmfr19w9y8qys7b32mnj1vmps7qwdahqas71a9p62ac8xw0dwkx"))))
+ "1nq1gc4320djn5mqgk55v2vjm3zwq36wq7b365f2kdg9di8qi3nj"))))
(build-system perl-build-system)
(inputs
(list perl-perlio-utf8_strict perl-sub-exporter))
--
2.47.1
gemmaro wrote 1 months ago
[PATCH v3 09/13] gnu: perl-mixin-linewise: Use propagated inputs.
(address . 63866@debbugs.gnu.org)(name . gemmaro)(address . gemmaro.dev@gmail.com)
20250205035933.7504-10-gemmaro.dev@gmail.com
* gnu/packages/perl.scm (perl-mixin-linewise): Use propagated inputs
for runtime dependencies.
---
gnu/packages/perl.scm | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

Toggle diff (15 lines)
diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm
index 880320d567..70ae056f21 100644
--- a/gnu/packages/perl.scm
+++ b/gnu/packages/perl.scm
@@ -7428,7 +7428,7 @@ (define-public perl-mixin-linewise
(base32
"1nq1gc4320djn5mqgk55v2vjm3zwq36wq7b365f2kdg9di8qi3nj"))))
(build-system perl-build-system)
- (inputs
+ (propagated-inputs
(list perl-perlio-utf8_strict perl-sub-exporter))
(home-page "https://metacpan.org/release/Mixin-Linewise")
(synopsis "Write your linewise code for handles; this does the rest")
--
2.47.1
gemmaro wrote 1 months ago
[PATCH v3 10/13] gnu: perl-specio: Update to 0.49.
(address . 63866@debbugs.gnu.org)(name . gemmaro)(address . gemmaro.dev@gmail.com)
20250205035933.7504-11-gemmaro.dev@gmail.com
* gnu/packages/perl.scm (perl-specio): Update to 0.49.
[native-inputs]: Add packages for testing.
[propagated-inputs]: Update and add runtime packages.
---
gnu/packages/perl.scm | 24 +++++++++++++++++++-----
1 file changed, 19 insertions(+), 5 deletions(-)

Toggle diff (50 lines)
diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm
index 70ae056f21..336e16d53f 100644
--- a/gnu/packages/perl.scm
+++ b/gnu/packages/perl.scm
@@ -10250,7 +10250,7 @@ (define-public perl-sort-naturally
(define-public perl-specio
(package
(name "perl-specio")
- (version "0.38")
+ (version "0.49")
(source
(origin
(method url-fetch)
@@ -10258,16 +10258,30 @@ (define-public perl-specio
"Specio-" version ".tar.gz"))
(sha256
(base32
- "1s5xd9awwrzc94ymimjkxqs6jq513wwlmwwarxaklvg2hk4lps0l"))))
+ "1by79pab88avvwv3r8sm78wsml1jssq3kc5yvk4fyf1p5ck6cmz8"))))
(build-system perl-build-system)
+ (native-inputs (list perl-pathtools ;contains File::Spec
+ perl-test-needs
+ perl-xstring
+ ;; optional test requirements
+ perl-moo-2
+ perl-moose
+ perl-namespace-autoclean))
(propagated-inputs
- (list perl-devel-stacktrace
+ (list perl-carp
+ perl-clone
+ perl-devel-stacktrace
perl-eval-closure
+ perl-exporter
perl-module-runtime
perl-mro-compat
- perl-role-tiny
+ perl-ref-util
+ perl-role-tiny-2 ;contains Role::Tiny::With
+ perl-scalar-list-utils ;contains List::Util and Scalar::Util
+ perl-sub-quote
perl-test-fatal
- perl-test-needs))
+ perl-test-simple ;contains Test::More
+ perl-try-tiny))
(home-page "https://metacpan.org/release/Specio")
(synopsis "Classes for representing type constraints and coercion")
(description "The Specio distribution provides classes for representing type
--
2.47.1
gemmaro wrote 1 months ago
[PATCH v3 11/13] gnu: Add perl-specio-library-path-tiny.
(address . 63866@debbugs.gnu.org)(name . gemmaro)(address . gemmaro.dev@gmail.com)
20250205035933.7504-12-gemmaro.dev@gmail.com
* gnu/packages/perl.scm (perl-specio-library-path-tiny): New variable.
---
gnu/packages/perl.scm | 23 +++++++++++++++++++++++
1 file changed, 23 insertions(+)

Toggle diff (36 lines)
diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm
index 336e16d53f..030e01f079 100644
--- a/gnu/packages/perl.scm
+++ b/gnu/packages/perl.scm
@@ -10293,6 +10293,29 @@ (define-public perl-specio
coerce values to that type.")
(license license:artistic2.0)))
+(define-public perl-specio-library-path-tiny
+ (package
+ (name "perl-specio-library-path-tiny")
+ (version "0.05")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append
+ "mirror://cpan/authors/id/D/DR/DROLSKY/Specio-Library-Path-Tiny-"
+ version ".tar.gz"))
+ (sha256
+ (base32 "0lbsqb3l5ra2k6481dkc7m1zk92fjpwnvgvql1k2rsyspjwhppv0"))))
+ (build-system perl-build-system)
+ (native-inputs (list perl-file-pushd perl-test-fatal))
+ (propagated-inputs (list perl-path-tiny perl-specio))
+ (home-page "https://metacpan.org/release/Specio-Library-Path-Tiny")
+ (synopsis "Types and coercions for Specio")
+ (description
+ "This library provides a set of @code{Path::Tiny} types and coercions for
+Specio. These types can be used with @code{Moose}, @code{Moo},
+@code{Params::ValidationCompiler}, and other modules.")
+ (license license:asl2.0)))
+
(define-public perl-spiffy
(package
(name "perl-spiffy")
--
2.47.1
gemmaro wrote 1 months ago
[PATCH v3 12/13] gnu: perl-test-class-most: Use propagated inputs.
(address . 63866@debbugs.gnu.org)(name . gemmaro)(address . gemmaro.dev@gmail.com)
20250205035933.7504-13-gemmaro.dev@gmail.com
* gnu/packages/perl-check.scm (perl-test-class-most): Use propagated inputs
for runtime dependencies.
---
gnu/packages/perl-check.scm | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)

Toggle diff (23 lines)
diff --git a/gnu/packages/perl-check.scm b/gnu/packages/perl-check.scm
index e1eb5a0764..9b59170efc 100644
--- a/gnu/packages/perl-check.scm
+++ b/gnu/packages/perl-check.scm
@@ -16,6 +16,7 @@
;;; Copyright © 2018 Kei Kebreau <kkebreau@posteo.net>
;;; Copyright © 2020 Paul Garlick <pgarlick@tourbillion-technology.com>
;;; Copyright © 2020 Nicolas Goaziou <mail@nicolasgoaziou.fr>
+;;; Copyright © 2025 gemmaro <gemmaro.dev@gmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -236,7 +237,7 @@ (define-public perl-test-class-most
(build-system perl-build-system)
(native-inputs
(list perl-module-build))
- (inputs
+ (propagated-inputs
(list perl-test-class perl-test-most perl-module-runtime
perl-try-tiny perl-mro-compat))
(home-page "https://metacpan.org/release/Test-Class-Most")
--
2.47.1
gemmaro wrote 1 months ago
[PATCH v3 13/13] gnu: Add tidyall.
(address . 63866@debbugs.gnu.org)(name . gemmaro)(address . gemmaro.dev@gmail.com)
20250205035933.7504-14-gemmaro.dev@gmail.com
* gnu/packages/check.scm (tidyall): New variable.

Change-Id: Ic79089652d5768b62f626aa625905b904bfb40fc
---
gnu/packages/check.scm | 73 +++++++++++++++++++++++++++++++++++++++++-
1 file changed, 72 insertions(+), 1 deletion(-)

Toggle diff (107 lines)
diff --git a/gnu/packages/check.scm b/gnu/packages/check.scm
index df858af4bd..cd09d9a393 100644
--- a/gnu/packages/check.scm
+++ b/gnu/packages/check.scm
@@ -52,7 +52,7 @@
;;; Copyright © 2024 Giacomo Leidi <goodoldpaul@autistici.org>
;;; Copyright © 2024 Zheng Junjie <873216071@qq.com>
;;; Copyright © 2024 Navid Afkhami <navid.afkhami@mdc-berlin.de>
-;;; Copyright © 2024 gemmaro <gemmaro.dev@gmail.com>
+;;; Copyright © 2024, 2025 gemmaro <gemmaro.dev@gmail.com>
;;; Copyright © 2024 Ashvith Shetty <ashvithshetty10@gmail.com>
;;;
;;; This file is part of GNU Guix.
@@ -97,6 +97,8 @@ (define-module (gnu packages check)
#:use-module (gnu packages maths)
#:use-module (gnu packages ncurses)
#:use-module (gnu packages perl)
+ #:use-module (gnu packages perl-check)
+ #:use-module (gnu packages php)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages python)
#:use-module (gnu packages python-check)
@@ -121,6 +123,7 @@ (define-module (gnu packages check)
#:use-module (guix build-system go)
#:use-module (guix build-system guile)
#:use-module (guix build-system meson)
+ #:use-module (guix build-system perl)
#:use-module (guix build-system pyproject)
#:use-module (guix build-system python)
#:use-module (guix build-system trivial)
@@ -3879,6 +3882,74 @@ (define-public trompeloeil
"Trompeloeil is a thread-safe header-only mocking framework for C++11/14.")
(license license:boost1.0)))
+(define-public tidyall
+ (package
+ (name "tidyall")
+ (version "0.84")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append
+ "mirror://cpan/authors/id/D/DR/DROLSKY/Code-TidyAll-" version
+ ".tar.gz"))
+ (sha256
+ (base32 "1xxil8yfbd4nizwaaris07sp441nhx3ixr4qj13l1x6pxphi9h5k"))))
+ (build-system perl-build-system)
+ (arguments
+ (list
+ #:phases #~(modify-phases %standard-phases
+ (delete 'remove-command-line-tool)
+ (add-after 'install 'wrap-programs
+ (lambda _
+ (wrap-program (string-append #$output "/bin/tidyall")
+ (list "PERL5LIB" ":"
+ 'prefix
+ (list (getenv "PERL5LIB")
+ (string-append #$output
+ "/lib/perl5/site_perl")))))))))
+ (native-inputs (list perl-test-class-most
+ perl-test-differences
+ perl-test-fatal
+ perl-test-warnings
+ perl-lib-relative
+ php))
+ (inputs (list bash-minimal))
+ (propagated-inputs (list perl-capture-tiny
+ perl-config-ini
+ perl-timedate
+ perl-file-which
+ perl-ipc-run3
+ perl-ipc-system-simple
+ perl-list-compare
+ perl-list-someutils
+ perl-log-any
+ perl-module-runtime
+ perl-moo-2
+ perl-path-tiny
+ perl-scope-guard
+ perl-specio
+ perl-specio-library-path-tiny
+ perl-text-diff
+ perl-time-duration-parse
+ perl-try-tiny
+ perl-parallel-forkmanager
+ perl-file-pushd))
+ (home-page "https://metacpan.org/release/Code-TidyAll")
+ (synopsis "Engine for tidyall, your all-in-one code tidier and validator")
+ (description
+ "@command{tidyall} makes a lot of code tidiers and validators available
+from a single unified interface. You can run @command{tidyall} on a
+single file or on an entire project hierarchy, and configure which
+tidiers/validators are applied to which files. @command{tidyall} will
+back up files beforehand, and for efficiency will only consider files
+that have changed since they were last processed.
+
+Note that if you see some missing tidier or validator modules error,
+you can let tidyall load them after install them. For example, one
+can run @code{guix shell perl-perl-tidy perl} in advance to load
+@code{Perl::Tidy}.")
+ (license license:perl-license)))
+
(define-public unittest-cpp
(package
(name "unittest-cpp")
--
2.47.1
Nicolas Goaziou wrote 3 weeks ago
Re: [PATCH 00/16] Add tidyall and some tidiers.
(address . 63866-done@debbugs.gnu.org)
8734g6vyw5.fsf@nicolasgoaziou.fr
Hello,

Toggle quote (2 lines)
> * gnu/packages/check.scm (tidyall): New variable.

Applied. Thank you.

Regards,
--
Nicolas Goaziou
Closed
?
Your comment

Commenting via the web interface is currently disabled.

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

To respond to this issue using the mumi CLI, first switch to it
mumi current 63866
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
You may also tag this issue. See list of standard tags. For example, to set the confirmed and easy tags
mumi command -t +confirmed -t +easy
Or, remove the moreinfo tag and set the help tag
mumi command -t -moreinfo -t +help