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

  • Open
  • quality assurance status badge
Details
One participant
  • gemmaro
Owner
unassigned
Submitted by
gemmaro
Severity
normal
G
G
gemmaro wrote on 3 Jun 2023 07:01
(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
G
G
gemmaro wrote on 3 Jun 2023 07:05
[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
G
G
gemmaro wrote on 3 Jun 2023 07:05
[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
G
G
gemmaro wrote on 3 Jun 2023 07:05
[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
G
G
gemmaro wrote on 3 Jun 2023 07:05
[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
G
G
gemmaro wrote on 3 Jun 2023 07:05
[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
G
G
gemmaro wrote on 3 Jun 2023 07:05
[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
G
G
gemmaro wrote on 3 Jun 2023 07:05
[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
G
G
gemmaro wrote on 3 Jun 2023 07:05
[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
G
G
gemmaro wrote on 3 Jun 2023 07:05
[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
G
G
gemmaro wrote on 3 Jun 2023 07:05
[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
G
G
gemmaro wrote on 3 Jun 2023 07:05
[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
G
G
gemmaro wrote on 3 Jun 2023 07:05
[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
G
G
gemmaro wrote on 3 Jun 2023 07:05
[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
G
G
gemmaro wrote on 3 Jun 2023 07:05
[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
G
G
gemmaro wrote on 3 Jun 2023 07:05
[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
G
G
gemmaro wrote on 3 Jun 2023 07:05
[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
?