[PATCH 00/95] PHP package chain.

  • Open
  • quality assurance status badge
Details
3 participants
  • Ludovic Courtès
  • Nicolas Graves
  • Wilko Meyer
Owner
unassigned
Submitted by
Nicolas Graves
Severity
normal
N
N
Nicolas Graves wrote on 19 Dec 2023 14:42
[PATCH 00/95] PHP package chain.
(address . guix-patches@gnu.org)
20231219134708.18227-1-ngraves@ngraves.fr
This patch series introduces a PHP package chain able to build phpunit
and test the vast majority of this chain's packages. phpunit is the
standard tool to test php packages.

Note that this patch series has to be applied as a whole, packages are
added in the order from the file, and not in the order required to
build a the subset of previous packages.

Nicolas Graves (95):
gnu: Add abnfgen.
gnu: php-xyz: Add copyright and useful modules.
gnu: Add php-cache-tag-interop.
gnu: Add php-doctrine-collections.
gnu: Add php-doctrine-common.
gnu: Add php-doctrine-deprecations.
gnu: Add php-doctrine-event-manager.
gnu: Add php-doctrine-instantiator.
gnu: Add php-doctrine-lexer.
gnu: Add php-doctrine-persistence.
gnu: Add php-dms-phpunit-arraysubset-asserts.
gnu: Add php-egulias-email-validator.
gnu: Add php-fig-log-test.
gnu: Add php-hamcrest-hamcrest-php.
gnu: Add php-mockery-mockery.
gnu: Add php-myclabs-deep-copy.
gnu: Add php-nikic-php-parser.
gnu: Add php-phar-io-manifest.
gnu: Add php-phar-io-version.
gnu: Add php-phpdocumentor-reflection-common.
gnu: Add php-phpdocumentor-reflection-docblock.
gnu: Add php-phpdocumentor-type-resolver.
gnu: Add php-phpspec-prophecy.
gnu: Add php-phpstan-phpdoc-parser.
gnu: Add php-phpunit-php-code-coverage.
gnu: Add php-phpunit-php-file-iterator.
gnu: Add php-phpunit-php-invoker.
gnu: Add php-phpunit-php-timer.
gnu: Add php-phpunit-php-text-template.
gnu: Add php-phpunit-php-token-stream.
gnu: Add php-predis-predis.
gnu: Add php-psr-log.
gnu: Add php-psr-cache.
gnu: Add php-psr-cache-1.
gnu: Add php-psr-container.
gnu: Add php-psr-event-dispatcher.
gnu: Add php-psr-simple-cache.
gnu: Add php-sebastian-cli-parser.
gnu: Add php-sebastian-code-unit.
gnu: Add php-sebastian-code-unit-reverse-lookup.
gnu: Add php-sebastian-comparator.
gnu: Add php-sebastian-complexity.
gnu: Add php-sebastian-diff.
gnu: Add php-sebastian-environment.
gnu: Add php-sebastian-exporter.
gnu: Add php-sebastian-global-state.
gnu: Add php-sebastian-lines-of-code.
gnu: Add php-sebastian-object-enumerator.
gnu: Add php-sebastian-object-reflector.
gnu: Add php-sebastian-recursion-context.
gnu: Add php-sebastian-resource-operations.
gnu: Add php-sebastian-type.
gnu: Add php-sebastian-version.
gnu: Add php-symfony-cache.
gnu: Add php-cache-integration-tests.
gnu: Add php-symfony-cache-contracts.
gnu: Add php-symfony-config.
gnu: Add php-symfony-console.
gnu: Add php-symfony-dependency-injection.
gnu: Add php-symfony-deprecation-contracts.
gnu: Add php-symfony-error-handler.
gnu: Add php-symfony-event-dispatcher.
gnu: Add php-symfony-event-dispatcher-contracts.
gnu: Add php-symfony-expression-language.
gnu: Add php-symfony-filesystem.
gnu: Add php-symfony-finder.
gnu: Add php-symfony-http-foundation.
gnu: Add php-symfony-http-kernel.
gnu: Add php-symfony-intl.
gnu: Add php-symfony-lock.
gnu: Add php-symfony-mime.
gnu: Add php-symfony-phpunit-bridge.
gnu: Add php-symfony-process.
gnu: Add php-symfony-property-info.
gnu: Add php-symfony-polyfill-ctype.
gnu: Add php-symfony-polyfill-intl-grapheme.
gnu: Add php-symfony-polyfill-intl-idn.
gnu: Add php-symfony-polyfill-intl-normalizer.
gnu: Add php-symfony-polyfill-mbstring.
gnu: Add php-symfony-polyfill-uuid.
gnu: Add php-symfony-service-contracts.
gnu: Add php-symfony-stopwatch.
gnu: Add php-symfony-string.
gnu: Add php-symfony-translation-contracts.
gnu: Add php-symfony-uid.
gnu: Add php-symfony-var-dumper.
gnu: Add php-symfony-var-exporter.
gnu: Add php-symfony-yaml.
gnu: Add php-doctrine-cache.
gnu: Add php-doctrine-annotations.
gnu: Add php-doctrine-dbal.
gnu: Add php-theseer-tokenizer.
gnu: Add php-twig-twig.
gnu: Add php-webmozart-assert.
gnu: Add php-phpunit-phpunit.

gnu/packages/check.scm | 24 +
...t-hamcrest-php-phpunit-compatibility.patch | 190 ++
...ymfony-phpunit-bridge-getVendors-fix.patch | 46 +
gnu/packages/php-xyz.scm | 2588 ++++++++++++++++-
4 files changed, 2845 insertions(+), 3 deletions(-)
create mode 100644 gnu/packages/patches/php-hamcrest-hamcrest-php-phpunit-compatibility.patch
create mode 100644 gnu/packages/patches/php-symfony-phpunit-bridge-getVendors-fix.patch

--
2.41.0
N
N
Nicolas Graves wrote on 19 Dec 2023 14:56
[PATCH 01/95] gnu: Add abnfgen.
(address . 67902@debbugs.gnu.org)(address . ngraves@ngraves.fr)
20231219140934.22783-1-ngraves@ngraves.fr
* gnu/packages/check.scm (abnfgen): New variable.

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

Toggle diff (37 lines)
diff --git a/gnu/packages/check.scm b/gnu/packages/check.scm
index 5181d3a164..e75f3cc83d 100644
--- a/gnu/packages/check.scm
+++ b/gnu/packages/check.scm
@@ -109,6 +109,30 @@ (define-module (gnu packages check)
#:use-module (guix deprecation)
#:use-module (srfi srfi-1))
+(define-public abnfgen
+ (package
+ (name "abnfgen")
+ (version "0.21")
+ (source
+ (origin
+ (method url-fetch)
+ (uri "https://www.quut.com/abnfgen/abnfgen-0.21.tar.gz")
+ (sha256
+ (base32 "0vjkbsgr193r0fz0f29sljkw28djwavk51m1izinfjqb07k89xsv"))))
+ (build-system gnu-build-system)
+ (home-page "https://www.quut.com/abnfgen")
+ (synopsis "Generate random documents matching an ABNF grammar.")
+ (description
+ "Given an Augmented Backus-Naur form (ABNF) grammar (RFC 4234),
+this package provides a binary to quickly generate lots of random documents
+that match that grammar. That is useful for
+@itemize
+@item verifying an ABNF grammar's syntactical correctness
+@item illustrating a grammar with non-obvious examples
+@item testing software that is supposed to consume documents described by a grammar
+@end itemize")
+ (license license:expat)))
+
(define-public pict
(package
(name "pict")
--
2.41.0
N
N
Nicolas Graves wrote on 19 Dec 2023 14:56
[PATCH 02/95] gnu: php-xyz: Add copyright and useful modules.
(address . 67902@debbugs.gnu.org)(address . ngraves@ngraves.fr)
20231219140934.22783-2-ngraves@ngraves.fr
* gnu/packages/php-xyz.scm: Add copyright and useful modules.

Change-Id: I80fd9d604128c6dc09e8af49039d46972f26f971
---
gnu/packages/php-xyz.scm | 15 ++++++++++++---
1 file changed, 12 insertions(+), 3 deletions(-)

Toggle diff (40 lines)
diff --git a/gnu/packages/php-xyz.scm b/gnu/packages/php-xyz.scm
index ac90ee3c25..97f9570a72 100644
--- a/gnu/packages/php-xyz.scm
+++ b/gnu/packages/php-xyz.scm
@@ -1,5 +1,6 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2019 Julien Lepiller <julien@lepiller.eu>
+;;; Copyright © 2023 Nicolas Graves <ngraves@ngraves.fr>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -17,15 +18,23 @@
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
(define-module (gnu packages php-xyz)
- #:use-module (gnu packages)
- #:use-module (gnu packages php)
#:use-module (guix packages)
#:use-module (guix download)
+ #:use-module (guix gexp)
#:use-module (guix git-download)
#:use-module (guix build-system composer)
#:use-module (guix build-system gnu)
#:use-module (guix utils)
- #:use-module ((guix licenses) #:prefix license:))
+ #:use-module (srfi srfi-1)
+ #:use-module (srfi srfi-26)
+ #:use-module (ice-9 match)
+ #:use-module ((guix licenses) #:prefix license:)
+ #:use-module (gnu packages)
+ #:use-module (gnu packages check)
+ #:use-module (gnu packages databases)
+ #:use-module (gnu packages linux)
+ #:use-module (gnu packages php)
+ #:use-module (gnu packages version-control))
(define-public composer-classloader
(package
--
2.41.0
N
N
Nicolas Graves wrote on 19 Dec 2023 14:56
[PATCH 03/95] gnu: Add php-cache-tag-interop.
(address . 67902@debbugs.gnu.org)(address . ngraves@ngraves.fr)
20231219140934.22783-3-ngraves@ngraves.fr
* gnu/packages/php-xyz.scm (php-cache-tag-interop): New variable.

Change-Id: I6d43ace6b911f22c91964925e807e7685cedced8
---
gnu/packages/php-xyz.scm | 22 ++++++++++++++++++++++
1 file changed, 22 insertions(+)

Toggle diff (32 lines)
diff --git a/gnu/packages/php-xyz.scm b/gnu/packages/php-xyz.scm
index 97f9570a72..a4c00e45be 100644
--- a/gnu/packages/php-xyz.scm
+++ b/gnu/packages/php-xyz.scm
@@ -67,3 +67,25 @@ (define-public composer-classloader
build its autoloading feature. This package is used by the composer-build-system
to build its own store-aware autoloading feature.")
(license license:expat)))
+
+(define-public php-cache-tag-interop
+ (package
+ (name "php-cache-tag-interop")
+ (version "1.1.0")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/php-cache/tag-interop")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "08x7sqxhkwni0arrl68xb2fxd2qjwdkxlxmjq7j3q2ic2qbl8iif"))))
+ (build-system composer-build-system)
+ (inputs (list php-psr-cache))
+ (synopsis "PHP framework for tags")
+ (description "This package provides a PHP framework interoperable
+interfaces for tags.")
+ (home-page "https://www.php-cache.com/en/latest/")
+ (license license:expat)))
+
--
2.41.0
N
N
Nicolas Graves wrote on 19 Dec 2023 14:56
[PATCH 04/95] gnu: Add php-doctrine-collections.
(address . 67902@debbugs.gnu.org)(address . ngraves@ngraves.fr)
20231219140934.22783-4-ngraves@ngraves.fr
* gnu/packages/php-xyz.scm (php-doctrine-collections): New variable.

Change-Id: Iacf76a4b9520389943acae985c42c4f268240fdd
---
gnu/packages/php-xyz.scm | 27 +++++++++++++++++++++++++++
1 file changed, 27 insertions(+)

Toggle diff (37 lines)
diff --git a/gnu/packages/php-xyz.scm b/gnu/packages/php-xyz.scm
index a4c00e45be..62fc999463 100644
--- a/gnu/packages/php-xyz.scm
+++ b/gnu/packages/php-xyz.scm
@@ -89,3 +89,30 @@ (define-public php-cache-tag-interop
(home-page "https://www.php-cache.com/en/latest/")
(license license:expat)))
+(define-public php-doctrine-collections
+ (package
+ (name "php-doctrine-collections")
+ (version "2.1.4")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/doctrine/collections")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "0b384rkxl70bb164373c3y3n72816jkggjm9vg58avb7lqx3dq1i"))))
+ (build-system composer-build-system)
+ (arguments
+ '(#:test-flags '("--bootstrap" "vendor/autoload.php")))
+ (inputs
+ (list php-doctrine-deprecations))
+ (native-inputs
+ (list php-phpunit-phpunit))
+ (synopsis "Additional functionality on top of PHP arrays")
+ (description
+ "This package provides a PHP library that adds additional functionality
+on top of arrays.")
+ (home-page "https://www.doctrine-project.org/projects/collections")
+ (license license:expat)))
+
--
2.41.0
N
N
Nicolas Graves wrote on 19 Dec 2023 14:56
[PATCH 05/95] gnu: Add php-doctrine-common.
(address . 67902@debbugs.gnu.org)(address . ngraves@ngraves.fr)
20231219140934.22783-5-ngraves@ngraves.fr
* gnu/packages/php-xyz.scm (php-doctrine-common): New variable.

Change-Id: I261b3f5e5aa32869bb6358064ac1cb049f018d6a
---
gnu/packages/php-xyz.scm | 27 +++++++++++++++++++++++++++
1 file changed, 27 insertions(+)

Toggle diff (37 lines)
diff --git a/gnu/packages/php-xyz.scm b/gnu/packages/php-xyz.scm
index 62fc999463..484bf03896 100644
--- a/gnu/packages/php-xyz.scm
+++ b/gnu/packages/php-xyz.scm
@@ -116,3 +116,30 @@ (define-public php-doctrine-collections
(home-page "https://www.doctrine-project.org/projects/collections")
(license license:expat)))
+(define-public php-doctrine-common
+ (package
+ (name "php-doctrine-common")
+ (version "3.4.3")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/doctrine/common")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "1hivhghwmqs5jaiicayni35xkpclmdf5r9fb15y5jx7rl5wrsh7f"))))
+ (build-system composer-build-system)
+ (arguments
+ '(#:test-flags '("--bootstrap" "vendor/autoload.php")))
+ (inputs
+ (list php-doctrine-persistence))
+ (native-inputs
+ (list php-phpunit-phpunit))
+ (synopsis "PHP utility library for Doctrine projects")
+ (description
+ "This package provides additional functionality that other Doctrine
+projects depend on such as better reflection support, proxies and much more.")
+ (home-page "https://www.doctrine-project.org/projects/common")
+ (license license:expat)))
+
--
2.41.0
N
N
Nicolas Graves wrote on 19 Dec 2023 14:56
[PATCH 07/95] gnu: Add php-doctrine-event-manager.
(address . 67902@debbugs.gnu.org)(address . ngraves@ngraves.fr)
20231219140934.22783-7-ngraves@ngraves.fr
* gnu/packages/php-xyz.scm (php-doctrine-event-manager): New variable.

Change-Id: Ice871ae3e5206489027e2c67629af182ae21ad77
---
gnu/packages/php-xyz.scm | 23 +++++++++++++++++++++++
1 file changed, 23 insertions(+)

Toggle diff (33 lines)
diff --git a/gnu/packages/php-xyz.scm b/gnu/packages/php-xyz.scm
index a43f0499dd..438034e50c 100644
--- a/gnu/packages/php-xyz.scm
+++ b/gnu/packages/php-xyz.scm
@@ -167,3 +167,26 @@ (define-public php-doctrine-deprecations
(home-page "https://github.com/doctrine/deprecations")
(license license:expat)))
+(define-public php-doctrine-event-manager
+ (package
+ (name "php-doctrine-event-manager")
+ (version "2.0.0")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/doctrine/event-manager")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "093ghp48ci4xazswlaxlmiabw7vay1nvv382nc1i6nrdxn781y0g"))))
+ (build-system composer-build-system)
+ (native-inputs
+ (list php-phpunit-phpunit))
+ (synopsis "Simple PHP event system")
+ (description
+ "This package provides the Doctrine Event Manager, a simple PHP event
+system that was built to be used with the various Doctrine projects.")
+ (home-page "https://www.doctrine-project.org/projects/event-manager")
+ (license license:expat)))
+
--
2.41.0
N
N
Nicolas Graves wrote on 19 Dec 2023 14:56
[PATCH 06/95] gnu: Add php-doctrine-deprecations.
(address . 67902@debbugs.gnu.org)(address . ngraves@ngraves.fr)
20231219140934.22783-6-ngraves@ngraves.fr
* gnu/packages/php-xyz.scm (php-doctrine-deprecations): New variable.

Change-Id: Id91e6a41c2f0d1f97f46f316c1f1152c8931d3ca
---
gnu/packages/php-xyz.scm | 24 ++++++++++++++++++++++++
1 file changed, 24 insertions(+)

Toggle diff (34 lines)
diff --git a/gnu/packages/php-xyz.scm b/gnu/packages/php-xyz.scm
index 484bf03896..a43f0499dd 100644
--- a/gnu/packages/php-xyz.scm
+++ b/gnu/packages/php-xyz.scm
@@ -143,3 +143,27 @@ (define-public php-doctrine-common
(home-page "https://www.doctrine-project.org/projects/common")
(license license:expat)))
+(define-public php-doctrine-deprecations
+ (package
+ (name "php-doctrine-deprecations")
+ (version "1.1.1")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/doctrine/deprecations")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "15xq18cl1ws37ansc8h1chbjgybvljxsjgwlp8w3ia5zffwxhrdd"))))
+ (build-system composer-build-system)
+ (inputs
+ (list php-doctrine-lexer php-psr-cache))
+ (native-inputs
+ (list php-phpunit-phpunit php-psr-log))
+ (synopsis "Thin library around PHP deprecation strategies")
+ (description "This package provides a layer on top of PHP deprecations
+strategies, with no side-effects by default and customization options.")
+ (home-page "https://github.com/doctrine/deprecations")
+ (license license:expat)))
+
--
2.41.0
N
N
Nicolas Graves wrote on 19 Dec 2023 14:56
[PATCH 09/95] gnu: Add php-doctrine-lexer.
(address . 67902@debbugs.gnu.org)(address . ngraves@ngraves.fr)
20231219140934.22783-9-ngraves@ngraves.fr
* gnu/packages/php-xyz.scm (php-doctrine-lexer): New variable.

Change-Id: Ied15d214343882c95f80798976f6ab52a5773d7d
---
gnu/packages/php-xyz.scm | 23 +++++++++++++++++++++++
1 file changed, 23 insertions(+)

Toggle diff (33 lines)
diff --git a/gnu/packages/php-xyz.scm b/gnu/packages/php-xyz.scm
index 51a5f6a3f6..464e5f9598 100644
--- a/gnu/packages/php-xyz.scm
+++ b/gnu/packages/php-xyz.scm
@@ -212,3 +212,26 @@ (define-public php-doctrine-instantiator
(home-page "https://www.doctrine-project.org/projects/instantiator")
(license license:expat)))
+(define-public php-doctrine-lexer
+ (package
+ (name "php-doctrine-lexer")
+ (version "3.0.0")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/doctrine/lexer")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "1kxwq8s9i7gndg66i1c5h6f21w8fc4smd8nj6sg2p0vzrg4m2l43"))))
+ (build-system composer-build-system)
+ (native-inputs
+ (list php-phpunit-phpunit))
+ (synopsis "PHP Doctrine Lexer parser library")
+ (description
+ "This package provides a Doctrine Lexer parser library that can be used
+in Top-Down, Recursive Descent Parsers in PHP.")
+ (home-page "https://www.doctrine-project.org/projects/lexer")
+ (license license:expat)))
+
--
2.41.0
N
N
Nicolas Graves wrote on 19 Dec 2023 14:56
[PATCH 11/95] gnu: Add php-dms-phpunit-arraysubset-asserts.
(address . 67902@debbugs.gnu.org)(address . ngraves@ngraves.fr)
20231219140934.22783-11-ngraves@ngraves.fr
* gnu/packages/php-xyz.scm (php-dms-phpunit-arraysubset-asserts): New variable.

Change-Id: I77869b75a9dbe28d3ae80de25ba2949f4648c078
---
gnu/packages/php-xyz.scm | 22 ++++++++++++++++++++++
1 file changed, 22 insertions(+)

Toggle diff (32 lines)
diff --git a/gnu/packages/php-xyz.scm b/gnu/packages/php-xyz.scm
index 34cd9cc3a3..a470ab9ed9 100644
--- a/gnu/packages/php-xyz.scm
+++ b/gnu/packages/php-xyz.scm
@@ -264,3 +264,25 @@ (define-public php-doctrine-persistence
(home-page "https://www.doctrine-project.org/projects/persistence")
(license license:expat)))
+(define-public php-dms-phpunit-arraysubset-asserts
+ (package
+ (name "php-dms-phpunit-arraysubset-asserts")
+ (version "0.4.0")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/rdohms/phpunit-arraysubset-asserts")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "1hqr99yzppsvv05dscidp2x9acmgpixv39309cv2rwj13qy41hh3"))))
+ (build-system composer-build-system)
+ (inputs (list php-phpunit-phpunit))
+ (synopsis "PHP ArraySubset")
+ (description
+ "This package provides PHP ArraySubset and related asserts once
+deprecated in PHPUnit 8.")
+ (home-page "https://github.com/rdohms/phpunit-arraysubset-asserts")
+ (license license:expat)))
+
--
2.41.0
N
N
Nicolas Graves wrote on 19 Dec 2023 14:56
[PATCH 10/95] gnu: Add php-doctrine-persistence.
(address . 67902@debbugs.gnu.org)(address . ngraves@ngraves.fr)
20231219140934.22783-10-ngraves@ngraves.fr
* gnu/packages/php-xyz.scm (php-doctrine-persistence): New variable.

Change-Id: I9b09ecf84c8334e3967e68f1a86333457ad5a63c
---
gnu/packages/php-xyz.scm | 29 +++++++++++++++++++++++++++++
1 file changed, 29 insertions(+)

Toggle diff (39 lines)
diff --git a/gnu/packages/php-xyz.scm b/gnu/packages/php-xyz.scm
index 464e5f9598..34cd9cc3a3 100644
--- a/gnu/packages/php-xyz.scm
+++ b/gnu/packages/php-xyz.scm
@@ -235,3 +235,32 @@ (define-public php-doctrine-lexer
(home-page "https://www.doctrine-project.org/projects/lexer")
(license license:expat)))
+(define-public php-doctrine-persistence
+ (package
+ (name "php-doctrine-persistence")
+ (version "3.2.0")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/doctrine/persistence")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "1fynsqafdbajbjirqzhj5gjwkfc7yz45nadgqbhrmh29i0q952bq"))))
+ (build-system composer-build-system)
+ ;; Native inputs here create a loop that is hard to break.
+ ;; Maybe use a -bootstrap version if testing becomes important.
+ (arguments
+ '(#:tests? #f))
+ (inputs
+ (list php-doctrine-event-manager php-psr-cache))
+ (native-inputs
+ (list php-phpunit-phpunit))
+ (synopsis "Shared functionality between the Doctrine object mappers")
+ (description
+ "This package provides a set of shared interfaces and functionality that
+the different Doctrine object mappers share.")
+ (home-page "https://www.doctrine-project.org/projects/persistence")
+ (license license:expat)))
+
--
2.41.0
N
N
Nicolas Graves wrote on 19 Dec 2023 14:56
[PATCH 08/95] gnu: Add php-doctrine-instantiator.
(address . 67902@debbugs.gnu.org)(address . ngraves@ngraves.fr)
20231219140934.22783-8-ngraves@ngraves.fr
* gnu/packages/php-xyz.scm (php-doctrine-instantiator): New variable.

Change-Id: I3552f77fef0a42964f36a751cf8fe83167d1a236
---
gnu/packages/php-xyz.scm | 22 ++++++++++++++++++++++
1 file changed, 22 insertions(+)

Toggle diff (32 lines)
diff --git a/gnu/packages/php-xyz.scm b/gnu/packages/php-xyz.scm
index 438034e50c..51a5f6a3f6 100644
--- a/gnu/packages/php-xyz.scm
+++ b/gnu/packages/php-xyz.scm
@@ -190,3 +190,25 @@ (define-public php-doctrine-event-manager
(home-page "https://www.doctrine-project.org/projects/event-manager")
(license license:expat)))
+(define-public php-doctrine-instantiator
+ (package
+ (name "php-doctrine-instantiator")
+ (version "2.0.0")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/doctrine/instantiator")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "1y8ajlwdzrw92lx6bnc5p7lwgrgbf602lqlyxfrsff7x538as73n"))))
+ (build-system composer-build-system)
+ (native-inputs
+ (list php-phpunit-phpunit))
+ (synopsis "Utility for instantiating PHP objects")
+ (description "This package provides a small, lightweight utility to
+instantiate objects in PHP without invoking their constructors")
+ (home-page "https://www.doctrine-project.org/projects/instantiator")
+ (license license:expat)))
+
--
2.41.0
N
N
Nicolas Graves wrote on 19 Dec 2023 14:56
[PATCH 12/95] gnu: Add php-egulias-email-validator.
(address . 67902@debbugs.gnu.org)(address . ngraves@ngraves.fr)
20231219140934.22783-12-ngraves@ngraves.fr
* gnu/packages/php-xyz.scm (php-egulias-email-validator): New variable.

Change-Id: I2a9df3ca79962aa01ce3a7a8e7d7da536350249a
---
gnu/packages/php-xyz.scm | 47 ++++++++++++++++++++++++++++++++++++++++
1 file changed, 47 insertions(+)

Toggle diff (57 lines)
diff --git a/gnu/packages/php-xyz.scm b/gnu/packages/php-xyz.scm
index a470ab9ed9..322fd56852 100644
--- a/gnu/packages/php-xyz.scm
+++ b/gnu/packages/php-xyz.scm
@@ -286,3 +286,50 @@ (define-public php-dms-phpunit-arraysubset-asserts
(home-page "https://github.com/rdohms/phpunit-arraysubset-asserts")
(license license:expat)))
+(define-public php-egulias-email-validator
+ (package
+ (name "php-egulias-email-validator")
+ (version "4.0.2")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/egulias/EmailValidator")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "0nyqri3421gkiswn70f7f8cfz4vs1vcadxdyvwjykbgc4fz5skz2"))))
+ (build-system composer-build-system)
+ (arguments
+ (list
+ #:test-flags ''("--exclude" "skipTest") ; FIXME
+ #:phases
+ #~(modify-phases %standard-phases
+ (add-before 'check 'deactivate-failing-tests
+ (lambda _
+ (substitute*
+ "tests/EmailValidator/Validation/DNSCheckValidationTest.php"
+ (("(.*)@dataProvider validEmailsProvider" all blank)
+ (string-append all "\n"
+ blank "@group skipTest"))
+ (("(.*)public function testDomainAcceptsNoMailError\\(\\)" all blank)
+ (string-append
+ blank "/**\n"
+ blank " * @group skipTest\n"
+ blank " */\n"
+ all))
+ (("(.*)public function testNoDNSError\\(\\)" all blank)
+ (string-append
+ blank "/**\n"
+ blank " * @group skipTest\n"
+ blank " */\n"
+ all))))))))
+ (inputs
+ (list php-doctrine-lexer php-symfony-polyfill-intl-idn))
+ (native-inputs
+ (list php-phpunit-phpunit))
+ (synopsis "PHP email address validator")
+ (description "A library for validating emails against several RFCs")
+ (home-page "https://github.com/egulias/EmailValidator")
+ (license license:expat)))
+
--
2.41.0
N
N
Nicolas Graves wrote on 19 Dec 2023 14:56
[PATCH 13/95] gnu: Add php-fig-log-test.
(address . 67902@debbugs.gnu.org)(address . ngraves@ngraves.fr)
20231219140934.22783-13-ngraves@ngraves.fr
* gnu/packages/php-xyz.scm (php-fig-log-test): New variable.

Change-Id: Icb94f6bd039271246c36fa0d1520efbed5f9a39c
---
gnu/packages/php-xyz.scm | 27 +++++++++++++++++++++++++++
1 file changed, 27 insertions(+)

Toggle diff (37 lines)
diff --git a/gnu/packages/php-xyz.scm b/gnu/packages/php-xyz.scm
index 322fd56852..c82a6d4141 100644
--- a/gnu/packages/php-xyz.scm
+++ b/gnu/packages/php-xyz.scm
@@ -333,3 +333,30 @@ (define-public php-egulias-email-validator
(home-page "https://github.com/egulias/EmailValidator")
(license license:expat)))
+(define-public php-fig-log-test
+ (package
+ (name "php-fig-log-test")
+ (version "1.1.0")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/php-fig/log-test")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "0qli30g6gj458r09sbxx286dpjmh30yhhl7vnfw5m7f91x3lfdlz"))))
+ (build-system composer-build-system)
+ (arguments
+ '(#:test-flags '("--bootstrap" "vendor/autoload.php")))
+ (inputs
+ (list php-psr-log))
+ (native-inputs
+ (list php-phpunit-phpunit))
+ (synopsis "Tests utils for the PHP psr/log package")
+ (description
+ "This package provides test utilities for the psr/log package that backs
+the PSR-3 specification.")
+ (home-page "https://github.com/php-fig/log-test")
+ (license license:expat)))
+
--
2.41.0
N
N
Nicolas Graves wrote on 19 Dec 2023 14:56
[PATCH 15/95] gnu: Add php-mockery-mockery.
(address . 67902@debbugs.gnu.org)(address . ngraves@ngraves.fr)
20231219140934.22783-15-ngraves@ngraves.fr
* gnu/packages/php-xyz.scm (php-mockery-mockery): New variable.

Change-Id: I8aa6531bbd060528aab5c132344cf73489034b43
---
gnu/packages/php-xyz.scm | 44 ++++++++++++++++++++++++++++++++++++++++
1 file changed, 44 insertions(+)

Toggle diff (54 lines)
diff --git a/gnu/packages/php-xyz.scm b/gnu/packages/php-xyz.scm
index eaeb435317..da2cc7f56e 100644
--- a/gnu/packages/php-xyz.scm
+++ b/gnu/packages/php-xyz.scm
@@ -400,3 +400,47 @@ (define-public php-hamcrest-hamcrest-php
(home-page "https://github.com/hamcrest/hamcrest-php")
(license license:bsd-3)))
+(define-public php-mockery-mockery
+ (package
+ (name "php-mockery-mockery")
+ (version "1.6.6")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/mockery/mockery")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "1z6nla99wswa339f6l8sging4xfnkkp1lkby5fn7g9zh9hdqxx0l"))))
+ (build-system composer-build-system)
+ (arguments
+ (list
+ #:test-flags ''("--bootstrap" "vendor/autoload.php")
+ #:phases
+ #~(modify-phases %standard-phases
+ (add-before 'check 'remove-duplicate-hamcrest-require
+ (lambda _
+ ;; Remove duplicate hamcrest require.
+ (substitute* "vendor/autoload_conf.php"
+ ((".*Hamcrest.php';")
+ ""))
+ ;; Fix failing test.
+ (substitute* "tests/Mockery/HamcrestExpectationTest.php"
+ (("anything\\(\\)")
+ "\\Hamcrest\\Matchers::anything()")
+ (("greaterThan\\(")
+ "\\Hamcrest\\Matchers::greaterThan("))
+ ;; FIXME Delete failing test.
+ (delete-file "\
+tests/Mockery/Adapter/Phpunit/MockeryPHPUnitIntegrationTest.php"))))))
+ (inputs
+ (list php-hamcrest-hamcrest-php))
+ (native-inputs
+ (list php-phpunit-phpunit))
+ (synopsis "PHP mock object framework")
+ (description "This package provides a simple and flexible PHP mock object
+framework, often used for tests.")
+ (home-page "https://github.com/mockery/mockery")
+ (license license:bsd-3)))
+
--
2.41.0
N
N
Nicolas Graves wrote on 19 Dec 2023 14:56
[PATCH 17/95] gnu: Add php-nikic-php-parser.
(address . 67902@debbugs.gnu.org)(address . ngraves@ngraves.fr)
20231219140934.22783-17-ngraves@ngraves.fr
* gnu/packages/php-xyz.scm (php-nikic-php-parser): New variable.

Change-Id: I18394021d9b96293cd0258c530eebd6f196c5f68
---
gnu/packages/php-xyz.scm | 22 ++++++++++++++++++++++
1 file changed, 22 insertions(+)

Toggle diff (32 lines)
diff --git a/gnu/packages/php-xyz.scm b/gnu/packages/php-xyz.scm
index 36e1c71b9f..e750504485 100644
--- a/gnu/packages/php-xyz.scm
+++ b/gnu/packages/php-xyz.scm
@@ -473,3 +473,25 @@ (define-public php-myclabs-deep-copy
(home-page "https://github.com/myclabs/DeepCopy")
(license license:expat)))
+(define-public php-nikic-php-parser
+ (package
+ (name "php-nikic-php-parser")
+ (version "4.17.1")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/nikic/PHP-Parser")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "1zwcdsgkhg41y2fmqm6jsp91rwgklz1fg09zwayfp43mx7hicq2h"))))
+ (build-system composer-build-system)
+ (native-inputs
+ (list php-phpunit-phpunit))
+ (synopsis "PHP parser written in PHP")
+ (description "This package provides a PHP parser written in PHP, to
+simplify static code analysis and manipulation.")
+ (home-page "https://github.com/nikic/PHP-Parser")
+ (license license:bsd-3)))
+
--
2.41.0
N
N
Nicolas Graves wrote on 19 Dec 2023 14:56
[PATCH 14/95] gnu: Add php-hamcrest-hamcrest-php.
(address . 67902@debbugs.gnu.org)(address . ngraves@ngraves.fr)
20231219140934.22783-14-ngraves@ngraves.fr
* gnu/packages/php-xyz.scm (php-hamcrest-hamcrest-php): New variable.
* gnu/packages/patches/php-hamcrest-hamcrest-php-phpunit-compatibility.patch:
New file.

Change-Id: I573bbb3eb909c3d4ce2b560d925ea8da55d380f2
---
...t-hamcrest-php-phpunit-compatibility.patch | 190 ++++++++++++++++++
gnu/packages/php-xyz.scm | 40 ++++
2 files changed, 230 insertions(+)
create mode 100644 gnu/packages/patches/php-hamcrest-hamcrest-php-phpunit-compatibility.patch

Toggle diff (246 lines)
diff --git a/gnu/packages/patches/php-hamcrest-hamcrest-php-phpunit-compatibility.patch b/gnu/packages/patches/php-hamcrest-hamcrest-php-phpunit-compatibility.patch
new file mode 100644
index 0000000000..40b38d30de
--- /dev/null
+++ b/gnu/packages/patches/php-hamcrest-hamcrest-php-phpunit-compatibility.patch
@@ -0,0 +1,190 @@
+From a23ce52b659b841fcc693ca800be8794d963c929 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?David=20Pr=C3=A9vot?= <taffit@debian.org>
+Date: Sun, 12 Jul 2020 12:18:05 -0400
+Subject: [PATCH] Compatibility with recent PHPUnit (8)
+
+---
+ tests/Hamcrest/Core/CombinableMatcherTest.php | 2 +-
+ tests/Hamcrest/Core/IsInstanceOfTest.php | 2 +-
+ tests/Hamcrest/Core/SetTest.php | 2 +-
+ tests/Hamcrest/FeatureMatcherTest.php | 2 +-
+ tests/Hamcrest/MatcherAssertTest.php | 2 +-
+ tests/Hamcrest/StringDescriptionTest.php | 2 +-
+ tests/Hamcrest/Text/IsEqualIgnoringWhiteSpaceTest.php | 2 +-
+ tests/Hamcrest/Text/StringContainsIgnoringCaseTest.php | 2 +-
+ tests/Hamcrest/Text/StringContainsInOrderTest.php | 2 +-
+ tests/Hamcrest/Text/StringContainsTest.php | 2 +-
+ tests/Hamcrest/Text/StringEndsWithTest.php | 2 +-
+ tests/Hamcrest/Text/StringStartsWithTest.php | 2 +-
+ tests/Hamcrest/Xml/HasXPathTest.php | 2 +-
+ 13 files changed, 13 insertions(+), 13 deletions(-)
+
+diff --git a/tests/Hamcrest/Core/CombinableMatcherTest.php b/tests/Hamcrest/Core/CombinableMatcherTest.php
+index 463c75437..5a5fe235c 100644
+--- a/tests/Hamcrest/Core/CombinableMatcherTest.php
++++ b/tests/Hamcrest/Core/CombinableMatcherTest.php
+@@ -7,7 +7,7 @@ class CombinableMatcherTest extends \Hamcrest\AbstractMatcherTest
+ private $_either_3_or_4;
+ private $_not_3_and_not_4;
+
+- protected function setUp()
++ protected function setUp(): void
+ {
+ $this->_either_3_or_4 = \Hamcrest\Core\CombinableMatcher::either(equalTo(3))->orElse(equalTo(4));
+ $this->_not_3_and_not_4 = \Hamcrest\Core\CombinableMatcher::both(not(equalTo(3)))->andAlso(not(equalTo(4)));
+diff --git a/tests/Hamcrest/Core/IsInstanceOfTest.php b/tests/Hamcrest/Core/IsInstanceOfTest.php
+index f74cfdb52..0d6228ae5 100644
+--- a/tests/Hamcrest/Core/IsInstanceOfTest.php
++++ b/tests/Hamcrest/Core/IsInstanceOfTest.php
+@@ -7,7 +7,7 @@ class IsInstanceOfTest extends \Hamcrest\AbstractMatcherTest
+ private $_baseClassInstance;
+ private $_subClassInstance;
+
+- protected function setUp()
++ protected function setUp(): void
+ {
+ $this->_baseClassInstance = new \Hamcrest\Core\SampleBaseClass('good');
+ $this->_subClassInstance = new \Hamcrest\Core\SampleSubClass('good');
+diff --git a/tests/Hamcrest/Core/SetTest.php b/tests/Hamcrest/Core/SetTest.php
+index aa5e4e7be..35ae3b996 100644
+--- a/tests/Hamcrest/Core/SetTest.php
++++ b/tests/Hamcrest/Core/SetTest.php
+@@ -7,7 +7,7 @@ class SetTest extends \Hamcrest\AbstractMatcherTest
+ public static $_classProperty;
+ public $_instanceProperty;
+
+- protected function setUp()
++ protected function setUp(): void
+ {
+ self::$_classProperty = null;
+ unset($this->_instanceProperty);
+diff --git a/tests/Hamcrest/FeatureMatcherTest.php b/tests/Hamcrest/FeatureMatcherTest.php
+index 1b0230498..0308300ac 100644
+--- a/tests/Hamcrest/FeatureMatcherTest.php
++++ b/tests/Hamcrest/FeatureMatcherTest.php
+@@ -34,7 +34,7 @@ class FeatureMatcherTest extends \Hamcrest\AbstractMatcherTest
+
+ private $_resultMatcher;
+
+- protected function setUp()
++ protected function setUp(): void
+ {
+ $this->_resultMatcher = $this->_resultMatcher();
+ }
+diff --git a/tests/Hamcrest/MatcherAssertTest.php b/tests/Hamcrest/MatcherAssertTest.php
+index dc12fba54..ee287fb1e 100644
+--- a/tests/Hamcrest/MatcherAssertTest.php
++++ b/tests/Hamcrest/MatcherAssertTest.php
+@@ -6,7 +6,7 @@
+ class MatcherAssertTest extends TestCase
+ {
+
+- protected function setUp()
++ protected function setUp(): void
+ {
+ \Hamcrest\MatcherAssert::resetCount();
+ }
+diff --git a/tests/Hamcrest/StringDescriptionTest.php b/tests/Hamcrest/StringDescriptionTest.php
+index ed716d13e..402682ac7 100644
+--- a/tests/Hamcrest/StringDescriptionTest.php
++++ b/tests/Hamcrest/StringDescriptionTest.php
+@@ -23,7 +23,7 @@ class StringDescriptionTest extends TestCase
+
+ private $_description;
+
+- protected function setUp()
++ protected function setUp(): void
+ {
+ $this->_description = new \Hamcrest\StringDescription();
+ }
+diff --git a/tests/Hamcrest/Text/IsEqualIgnoringWhiteSpaceTest.php b/tests/Hamcrest/Text/IsEqualIgnoringWhiteSpaceTest.php
+index 27ad338b7..48ad19eb9 100644
+--- a/tests/Hamcrest/Text/IsEqualIgnoringWhiteSpaceTest.php
++++ b/tests/Hamcrest/Text/IsEqualIgnoringWhiteSpaceTest.php
+@@ -6,7 +6,7 @@ class IsEqualIgnoringWhiteSpaceTest extends \Hamcrest\AbstractMatcherTest
+
+ private $_matcher;
+
+- protected function setUp()
++ protected function setUp(): void
+ {
+ $this->_matcher = \Hamcrest\Text\IsEqualIgnoringWhiteSpace::equalToIgnoringWhiteSpace(
+ "Hello World how\n are we? "
+diff --git a/tests/Hamcrest/Text/StringContainsIgnoringCaseTest.php b/tests/Hamcrest/Text/StringContainsIgnoringCaseTest.php
+index 73023007b..3d2b287de 100644
+--- a/tests/Hamcrest/Text/StringContainsIgnoringCaseTest.php
++++ b/tests/Hamcrest/Text/StringContainsIgnoringCaseTest.php
+@@ -8,7 +8,7 @@ class StringContainsIgnoringCaseTest extends \Hamcrest\AbstractMatcherTest
+
+ private $_stringContains;
+
+- protected function setUp()
++ protected function setUp(): void
+ {
+ $this->_stringContains = \Hamcrest\Text\StringContainsIgnoringCase::containsStringIgnoringCase(
+ strtolower(self::EXCERPT)
+diff --git a/tests/Hamcrest/Text/StringContainsInOrderTest.php b/tests/Hamcrest/Text/StringContainsInOrderTest.php
+index 4c465b29d..0f9d0a0a1 100644
+--- a/tests/Hamcrest/Text/StringContainsInOrderTest.php
++++ b/tests/Hamcrest/Text/StringContainsInOrderTest.php
+@@ -6,7 +6,7 @@ class StringContainsInOrderTest extends \Hamcrest\AbstractMatcherTest
+
+ private $_m;
+
+- protected function setUp()
++ protected function setUp(): void
+ {
+ $this->_m = \Hamcrest\Text\StringContainsInOrder::stringContainsInOrder(array('a', 'b', 'c'));
+ }
+diff --git a/tests/Hamcrest/Text/StringContainsTest.php b/tests/Hamcrest/Text/StringContainsTest.php
+index bf4afa3c9..971fa98fd 100644
+--- a/tests/Hamcrest/Text/StringContainsTest.php
++++ b/tests/Hamcrest/Text/StringContainsTest.php
+@@ -8,7 +8,7 @@ class StringContainsTest extends \Hamcrest\AbstractMatcherTest
+
+ private $_stringContains;
+
+- protected function setUp()
++ protected function setUp(): void
+ {
+ $this->_stringContains = \Hamcrest\Text\StringContains::containsString(self::EXCERPT);
+ }
+diff --git a/tests/Hamcrest/Text/StringEndsWithTest.php b/tests/Hamcrest/Text/StringEndsWithTest.php
+index 9a30f9520..58b43e538 100644
+--- a/tests/Hamcrest/Text/StringEndsWithTest.php
++++ b/tests/Hamcrest/Text/StringEndsWithTest.php
+@@ -8,7 +8,7 @@ class StringEndsWithTest extends \Hamcrest\AbstractMatcherTest
+
+ private $_stringEndsWith;
+
+- protected function setUp()
++ protected function setUp(): void
+ {
+ $this->_stringEndsWith = \Hamcrest\Text\StringEndsWith::endsWith(self::EXCERPT);
+ }
+diff --git a/tests/Hamcrest/Text/StringStartsWithTest.php b/tests/Hamcrest/Text/StringStartsWithTest.php
+index 3be201f1a..72fa59b6e 100644
+--- a/tests/Hamcrest/Text/StringStartsWithTest.php
++++ b/tests/Hamcrest/Text/StringStartsWithTest.php
+@@ -8,7 +8,7 @@ class StringStartsWithTest extends \Hamcrest\AbstractMatcherTest
+
+ private $_stringStartsWith;
+
+- protected function setUp()
++ protected function setUp(): void
+ {
+ $this->_stringStartsWith = \Hamcrest\Text\StringStartsWith::startsWith(self::EXCERPT);
+ }
+diff --git a/tests/Hamcrest/Xml/HasXPathTest.php b/tests/Hamcrest/Xml/HasXPathTest.php
+index 677488716..f51264ea9 100644
+--- a/tests/Hamcrest/Xml/HasXPathTest.php
++++ b/tests/Hamcrest/Xml/HasXPathTest.php
+@@ -7,7 +7,7 @@ class HasXPathTest extends \Hamcrest\AbstractMatcherTest
+ protected static $doc;
+ protected static $html;
+
+- public static function setUpBeforeClass()
++ public static function setUpBeforeClass(): void
+ {
+ self::$xml = <<<XML
+ <?xml version="1.0"?>
diff --git a/gnu/packages/php-xyz.scm b/gnu/packages/php-xyz.scm
index c82a6d4141..eaeb435317 100644
--- a/gnu/packages/php-xyz.scm
+++ b/gnu/packages/php-xyz.scm
@@ -360,3 +360,43 @@ (define-public php-fig-log-test
(home-page "https://github.com/php-fig/log-test")
(license license:expat)))
+(define-public php-hamcrest-hamcrest-php
+ (package
+ (name "php-hamcrest-hamcrest-php")
+ (version "2.0.1")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/hamcrest/hamcrest-php")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "1n6idxz1rc17zky84khrqfyndh4ffb7jvd1nb14saxdissgq5y5j"))
+ (patches
+ (search-patches "php-hamcrest-hamcrest-php-phpunit-compatibility.patch"))))
+ (build-system composer-build-system)
+ (arguments
+ `(#:test-flags
+ '("--configuration" "tests/phpunit.xml.dist"
+ "--exclude-group" "skipTest")
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'fix-recent-phpunit-build
+ (lambda _
+ (substitute* "tests/Hamcrest/UtilTest.php"
+ (("assertInternalType\\('array', ")
+ "assertIsArray(")
+ ;; Ignore this test.
+ (("@expectedException InvalidArgumentException")
+ "@group skipTest")))))))
+ (native-inputs
+ (list php-phpunit-php-file-iterator php-phpunit-phpunit))
+ (synopsis "PHP port of Hamcrest Matchers")
+ (description "Hamcrest is a matching library originally written for Java,
+but subsequently ported to many other languages. This package is the
+official PHP port of Hamcrest and essentially follows a literal translation of
+the original Java API for Hamcrest, with a few PHP-related exceptions.")
+ (home-page "https://github.com/hamcrest/hamcrest-php")
+ (license license:bsd-3)))
+
--
2.41.0
N
N
Nicolas Graves wrote on 19 Dec 2023 14:56
[PATCH 18/95] gnu: Add php-phar-io-manifest.
(address . 67902@debbugs.gnu.org)(address . ngraves@ngraves.fr)
20231219140934.22783-18-ngraves@ngraves.fr
* gnu/packages/php-xyz.scm (php-phar-io-manifest): New variable.

Change-Id: Idfb14ce342d8e8593fafe5a97f37bcba0779dda7
---
gnu/packages/php-xyz.scm | 22 ++++++++++++++++++++++
1 file changed, 22 insertions(+)

Toggle diff (32 lines)
diff --git a/gnu/packages/php-xyz.scm b/gnu/packages/php-xyz.scm
index e750504485..5414e34266 100644
--- a/gnu/packages/php-xyz.scm
+++ b/gnu/packages/php-xyz.scm
@@ -495,3 +495,25 @@ (define-public php-nikic-php-parser
(home-page "https://github.com/nikic/PHP-Parser")
(license license:bsd-3)))
+(define-public php-phar-io-manifest
+ (package
+ (name "php-phar-io-manifest")
+ (version "2.0.3")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/phar-io/manifest")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "10bj0c38a988mwv0h8g7lk2npyghsf0bzbvys1msxlckjy7b1zww"))))
+ (build-system composer-build-system)
+ (inputs
+ (list php-phar-io-version))
+ (synopsis "PHP Archive information reader")
+ (description "This package contains a component for reading phar.io manifest
+information from a PHP Archive (PHAR).")
+ (home-page "https://phar.io")
+ (license license:bsd-3)))
+
--
2.41.0
N
N
Nicolas Graves wrote on 19 Dec 2023 14:56
[PATCH 16/95] gnu: Add php-myclabs-deep-copy.
(address . 67902@debbugs.gnu.org)(address . ngraves@ngraves.fr)
20231219140934.22783-16-ngraves@ngraves.fr
* gnu/packages/php-xyz.scm (php-myclabs-deep-copy): New variable.

Change-Id: I24ef64da525ce084e864dfa02eb12461755458cf
---
gnu/packages/php-xyz.scm | 29 +++++++++++++++++++++++++++++
1 file changed, 29 insertions(+)

Toggle diff (39 lines)
diff --git a/gnu/packages/php-xyz.scm b/gnu/packages/php-xyz.scm
index da2cc7f56e..36e1c71b9f 100644
--- a/gnu/packages/php-xyz.scm
+++ b/gnu/packages/php-xyz.scm
@@ -444,3 +444,32 @@ (define-public php-mockery-mockery
(home-page "https://github.com/mockery/mockery")
(license license:bsd-3)))
+(define-public php-myclabs-deep-copy
+ (package
+ (name "php-myclabs-deep-copy")
+ (version "1.11.1")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/myclabs/DeepCopy")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "1jica9cx65a3l70p1sn6vjz5dxdqfwf5msvn1v4qnp6ah7rh4xcv"))))
+ (build-system composer-build-system)
+ (arguments
+ '(#:test-flags '("--bootstrap" "vendor/autoload.php")))
+ (native-inputs
+ (list php-phpunit-phpunit
+ php-doctrine-collections
+ php-doctrine-common
+ php-phpspec-prophecy))
+ (synopsis "Create copies of PHP objects")
+ (description "This package contains a facility to create deep copies (clones)
+of PHP objects. This package not only creates a new copy of an object, it
+recursively create new copies of any object referenced by the object. It is
+designed to work even in the presence of cycles in the association graph.")
+ (home-page "https://github.com/myclabs/DeepCopy")
+ (license license:expat)))
+
--
2.41.0
N
N
Nicolas Graves wrote on 19 Dec 2023 14:57
[PATCH 20/95] gnu: Add php-phpdocumentor-reflection-common.
(address . 67902@debbugs.gnu.org)(address . ngraves@ngraves.fr)
20231219140934.22783-20-ngraves@ngraves.fr
* gnu/packages/php-xyz.scm (php-phpdocumentor-reflection-common): New variable.

Change-Id: I50bdc401ee32e068ae01724f7b1ac3b09bb7e66f
---
gnu/packages/php-xyz.scm | 22 ++++++++++++++++++++++
1 file changed, 22 insertions(+)

Toggle diff (32 lines)
diff --git a/gnu/packages/php-xyz.scm b/gnu/packages/php-xyz.scm
index 87889eae11..5bcae5d4ed 100644
--- a/gnu/packages/php-xyz.scm
+++ b/gnu/packages/php-xyz.scm
@@ -537,3 +537,25 @@ (define-public php-phar-io-version
(home-page "https://phar.io")
(license license:bsd-3)))
+(define-public php-phpdocumentor-reflection-common
+ (package
+ (name "php-phpdocumentor-reflection-common")
+ (version "2.2.0")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/phpDocumentor/ReflectionCommon")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "1q685cpwbfxqy42iz61xxv6zbcc1qskn07nkipflj6c5s935l8jy"))))
+ (build-system composer-build-system)
+ (native-inputs
+ (list php-phpunit-phpunit))
+ (synopsis "Common reflection classes for phpdocumentor")
+ (description "This package contains common classes used by phpdocumentor
+to analyze the code structure.")
+ (home-page "http://www.phpdoc.org")
+ (license license:expat)))
+
--
2.41.0
N
N
Nicolas Graves wrote on 19 Dec 2023 14:57
[PATCH 19/95] gnu: Add php-phar-io-version.
(address . 67902@debbugs.gnu.org)(address . ngraves@ngraves.fr)
20231219140934.22783-19-ngraves@ngraves.fr
* gnu/packages/php-xyz.scm (php-phar-io-version): New variable.

Change-Id: Ifa17bbb32419e17b99e06343b83728274f5fa9de
---
gnu/packages/php-xyz.scm | 20 ++++++++++++++++++++
1 file changed, 20 insertions(+)

Toggle diff (30 lines)
diff --git a/gnu/packages/php-xyz.scm b/gnu/packages/php-xyz.scm
index 5414e34266..87889eae11 100644
--- a/gnu/packages/php-xyz.scm
+++ b/gnu/packages/php-xyz.scm
@@ -517,3 +517,23 @@ (define-public php-phar-io-manifest
(home-page "https://phar.io")
(license license:bsd-3)))
+(define-public php-phar-io-version
+ (package
+ (name "php-phar-io-version")
+ (version "3.2.1")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/phar-io/version")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "0cl43mn5vxm8m364b6sjmklva201vx0kpm3zf8aq021l3xllh5fz"))))
+ (build-system composer-build-system)
+ (synopsis "Library for handling version information and constraints")
+ (description "This package contains a library for handling version information
+and constraints.")
+ (home-page "https://phar.io")
+ (license license:bsd-3)))
+
--
2.41.0
N
N
Nicolas Graves wrote on 19 Dec 2023 14:57
[PATCH 21/95] gnu: Add php-phpdocumentor-reflection-docblock.
(address . 67902@debbugs.gnu.org)(address . ngraves@ngraves.fr)
20231219140934.22783-21-ngraves@ngraves.fr
* gnu/packages/php-xyz.scm (php-phpdocumentor-reflection-docblock): New variable.

Change-Id: Ia309917aa0dfda04c1b024c91bb10c73a8aa976b
---
gnu/packages/php-xyz.scm | 35 +++++++++++++++++++++++++++++++++++
1 file changed, 35 insertions(+)

Toggle diff (45 lines)
diff --git a/gnu/packages/php-xyz.scm b/gnu/packages/php-xyz.scm
index 5bcae5d4ed..8f72e6ce0b 100644
--- a/gnu/packages/php-xyz.scm
+++ b/gnu/packages/php-xyz.scm
@@ -559,3 +559,38 @@ (define-public php-phpdocumentor-reflection-common
(home-page "http://www.phpdoc.org")
(license license:expat)))
+(define-public php-phpdocumentor-reflection-docblock
+ (package
+ (name "php-phpdocumentor-reflection-docblock")
+ (version "5.3.0")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/phpDocumentor/ReflectionDocBlock")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "0d7j45b84191f0z8fn5a9fmfjfc3apa9g02pbm4b27w4yybfaqjj"))))
+ (build-system composer-build-system)
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'phpunit-point-to-right-listener
+ (lambda* (#:key inputs #:allow-other-keys)
+ (substitute* "phpunit.xml.dist"
+ (("vendor\
+(/mockery/mockery/library/Mockery/Adapter/Phpunit/TestListener\\.php)" a file)
+ (search-input-file
+ inputs (string-append "share/web" file)))))))))
+ (native-inputs
+ (list php-phpunit-phpunit php-mockery-mockery))
+ (inputs (list php-webmozart-assert
+ php-phpdocumentor-reflection-common
+ php-phpdocumentor-type-resolver))
+ (synopsis "Library for retrieving documentation in code from the code")
+ (description "This package provides PHP support for annotations via
+DocBlocks or otherwise retrieve information that is embedded in a DocBlock.")
+ (home-page "https://github.com/phpDocumentor/ReflectionDocBlock")
+ (license license:expat)))
+
--
2.41.0
N
N
Nicolas Graves wrote on 19 Dec 2023 14:57
[PATCH 22/95] gnu: Add php-phpdocumentor-type-resolver.
(address . 67902@debbugs.gnu.org)(address . ngraves@ngraves.fr)
20231219140934.22783-22-ngraves@ngraves.fr
* gnu/packages/php-xyz.scm (php-phpdocumentor-type-resolver): New variable.

Change-Id: I02aa76ea62067f888b2ca8dfd8c1841d6afba3ab
---
gnu/packages/php-xyz.scm | 26 ++++++++++++++++++++++++++
1 file changed, 26 insertions(+)

Toggle diff (36 lines)
diff --git a/gnu/packages/php-xyz.scm b/gnu/packages/php-xyz.scm
index 8f72e6ce0b..9c7230d1d3 100644
--- a/gnu/packages/php-xyz.scm
+++ b/gnu/packages/php-xyz.scm
@@ -594,3 +594,29 @@ (define-public php-phpdocumentor-reflection-docblock
(home-page "https://github.com/phpDocumentor/ReflectionDocBlock")
(license license:expat)))
+(define-public php-phpdocumentor-type-resolver
+ (package
+ (name "php-phpdocumentor-type-resolver")
+ (version "1.7.3")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/phpDocumentor/TypeResolver")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "0yird46q6pny0lz0w6kcw1ljmvavcmzhjmaim6jphmf63k40yx6n"))))
+ (build-system composer-build-system)
+ (inputs
+ (list php-doctrine-deprecations
+ php-phpdocumentor-reflection-common
+ php-phpstan-phpdoc-parser))
+ (native-inputs
+ (list php-phpunit-phpunit))
+ (synopsis "Resolver of class names, types and structural element names")
+ (description "This package provides a PSR-5 based resolver of class names,
+types and structural element names.")
+ (home-page "http://www.phpdoc.org")
+ (license license:expat)))
+
--
2.41.0
N
N
Nicolas Graves wrote on 19 Dec 2023 14:57
[PATCH 24/95] gnu: Add php-phpstan-phpdoc-parser.
(address . 67902@debbugs.gnu.org)(address . ngraves@ngraves.fr)
20231219140934.22783-24-ngraves@ngraves.fr
* gnu/packages/php-xyz.scm (php-phpstan-phpdoc-parser): New variable.

Change-Id: Ia6fc12ef3b3ccccde0dec0528f473369c0ddc4a1
---
gnu/packages/php-xyz.scm | 40 ++++++++++++++++++++++++++++++++++++++++
1 file changed, 40 insertions(+)

Toggle diff (50 lines)
diff --git a/gnu/packages/php-xyz.scm b/gnu/packages/php-xyz.scm
index 590c352c72..fbb3d57291 100644
--- a/gnu/packages/php-xyz.scm
+++ b/gnu/packages/php-xyz.scm
@@ -647,3 +647,43 @@ (define-public php-phpspec-prophecy
(home-page "https://github.com/phpspec/prophecy")
(license license:expat)))
+(define-public php-phpstan-phpdoc-parser
+ (package
+ (name "php-phpstan-phpdoc-parser")
+ (version "1.24.2")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/phpstan/phpdoc-parser")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "0sdnij33y0baqi4wzspzr67id00vk1p0n851s2a056njpyym65lv"))
+ (snippet '(begin
+ (delete-file "tests/abnfgen-0.20.tar.gz")
+ (delete-file "build-abnfgen.sh")))))
+ (build-system composer-build-system)
+ (arguments
+ (list
+ #:test-flags ''("--bootstrap" "vendor/autoload.php")
+ #:phases
+ #~(modify-phases %standard-phases
+ (add-after 'unpack 'unbundle-abnfgen
+ (lambda _
+ (substitute* "tests/PHPStan/Parser/FuzzyTest.php"
+ (("__DIR__ \\. '/\\.\\./\\.\\./\\.\\./tools/abnfgen/abnfgen'")
+ (string-append "'" #$(this-package-native-input "abnfgen")
+ "/bin/abnfgen'"))))))))
+ (native-inputs
+ (list abnfgen
+ php-phpunit-phpunit
+ php-symfony-process
+ php-doctrine-annotations))
+ (synopsis "PHPDoc parser")
+ (description
+ "This package provides a PHPDoc parser with support for nullable,
+intersection and generic types.")
+ (home-page "https://github.com/phpstan/phpdoc-parser")
+ (license license:expat)))
+
--
2.41.0
N
N
Nicolas Graves wrote on 19 Dec 2023 14:57
[PATCH 23/95] gnu: Add php-phpspec-prophecy.
(address . 67902@debbugs.gnu.org)(address . ngraves@ngraves.fr)
20231219140934.22783-23-ngraves@ngraves.fr
* gnu/packages/php-xyz.scm (php-phpspec-prophecy): New variable.

Change-Id: Iaeb9800ce9c0881ef161310e72897008679a4545
---
gnu/packages/php-xyz.scm | 27 +++++++++++++++++++++++++++
1 file changed, 27 insertions(+)

Toggle diff (37 lines)
diff --git a/gnu/packages/php-xyz.scm b/gnu/packages/php-xyz.scm
index 9c7230d1d3..590c352c72 100644
--- a/gnu/packages/php-xyz.scm
+++ b/gnu/packages/php-xyz.scm
@@ -620,3 +620,30 @@ (define-public php-phpdocumentor-type-resolver
(home-page "http://www.phpdoc.org")
(license license:expat)))
+(define-public php-phpspec-prophecy
+ (package
+ (name "php-phpspec-prophecy")
+ (version "1.17.0")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/phpspec/prophecy")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "1hl6n7y0f68hlsw174izqjph2y7f195dggr4n8sfzffw3iqya0w5"))))
+ (build-system composer-build-system)
+ (inputs
+ (list php-sebastian-recursion-context
+ php-doctrine-instantiator
+ php-sebastian-comparator
+ php-phpdocumentor-reflection-docblock))
+ (native-inputs
+ (list php-phpunit-phpunit))
+ (synopsis "Mocking framework for PHP 5.3+")
+ (description "This package contains a mocking framework for testing PHP
+5.3+ projects.")
+ (home-page "https://github.com/phpspec/prophecy")
+ (license license:expat)))
+
--
2.41.0
N
N
Nicolas Graves wrote on 19 Dec 2023 14:57
[PATCH 25/95] gnu: Add php-phpunit-php-code-coverage.
(address . 67902@debbugs.gnu.org)(address . ngraves@ngraves.fr)
20231219140934.22783-25-ngraves@ngraves.fr
* gnu/packages/php-xyz.scm (php-phpunit-php-code-coverage): New variable.

Change-Id: I2a11ef7bbee5c3448461bd19fa54bfb4f4572126
---
gnu/packages/php-xyz.scm | 33 +++++++++++++++++++++++++++++++++
1 file changed, 33 insertions(+)

Toggle diff (43 lines)
diff --git a/gnu/packages/php-xyz.scm b/gnu/packages/php-xyz.scm
index fbb3d57291..2fddac6c77 100644
--- a/gnu/packages/php-xyz.scm
+++ b/gnu/packages/php-xyz.scm
@@ -687,3 +687,36 @@ (define-public php-phpstan-phpdoc-parser
(home-page "https://github.com/phpstan/phpdoc-parser")
(license license:expat)))
+(define-public php-phpunit-php-code-coverage
+ (package
+ (name "php-phpunit-php-code-coverage")
+ (version "9.2.29")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/sebastianbergmann/php-code-coverage")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "16hza9xf1x1rixym4rwhffipwbl3r1jq2hi1r1d1c5fpsdcpg31p"))))
+ (build-system composer-build-system)
+ (inputs
+ (list php-nikic-php-parser
+ php-sebastian-complexity
+ php-sebastian-lines-of-code
+ php-sebastian-version
+ php-sebastian-environment
+ php-sebastian-code-unit-reverse-lookup
+ php-theseer-tokenizer
+ php-phpunit-php-text-template
+ php-phpunit-php-token-stream
+ php-phpunit-php-file-iterator))
+ (native-inputs
+ (list php-phpunit-phpunit))
+ (synopsis "Code coverage information library")
+ (description "This package is a library that provides collection,
+processing, and rendering functionality for PHP code coverage information.")
+ (home-page "https://github.com/sebastianbergmann/php-code-coverage")
+ (license license:bsd-3)))
+
--
2.41.0
N
N
Nicolas Graves wrote on 19 Dec 2023 14:57
[PATCH 26/95] gnu: Add php-phpunit-php-file-iterator.
(address . 67902@debbugs.gnu.org)(address . ngraves@ngraves.fr)
20231219140934.22783-26-ngraves@ngraves.fr
* gnu/packages/php-xyz.scm (php-phpunit-php-file-iterator): New variable.

Change-Id: I489c9ff48dbe98d174ed5bc33add2788b343f6a0
---
gnu/packages/php-xyz.scm | 22 ++++++++++++++++++++++
1 file changed, 22 insertions(+)

Toggle diff (32 lines)
diff --git a/gnu/packages/php-xyz.scm b/gnu/packages/php-xyz.scm
index 2fddac6c77..2c26699230 100644
--- a/gnu/packages/php-xyz.scm
+++ b/gnu/packages/php-xyz.scm
@@ -720,3 +720,25 @@ (define-public php-phpunit-php-code-coverage
(home-page "https://github.com/sebastianbergmann/php-code-coverage")
(license license:bsd-3)))
+(define-public php-phpunit-php-file-iterator
+ (package
+ (name "php-phpunit-php-file-iterator")
+ (version "3.0.6")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/sebastianbergmann/php-file-iterator")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "0s5n9z3a50n2vclb14l89ifvgh9amffig2y34h1yslzas07ar22w"))))
+ (build-system composer-build-system)
+ (native-inputs
+ (list php-phpunit-phpunit))
+ (synopsis "Filter file by extension")
+ (description "This package contains a @code{FilterIterator} implementation
+that filters files based on a list of suffixes.")
+ (home-page "https://github.com/sebastianbergmann/php-file-iterator/")
+ (license license:bsd-3)))
+
--
2.41.0
N
N
Nicolas Graves wrote on 19 Dec 2023 14:57
[PATCH 27/95] gnu: Add php-phpunit-php-invoker.
(address . 67902@debbugs.gnu.org)(address . ngraves@ngraves.fr)
20231219140934.22783-27-ngraves@ngraves.fr
* gnu/packages/php-xyz.scm (php-phpunit-php-invoker): New variable.

Change-Id: I82fa520f510e59ab78b221d2415096cd0597799b
---
gnu/packages/php-xyz.scm | 22 ++++++++++++++++++++++
1 file changed, 22 insertions(+)

Toggle diff (32 lines)
diff --git a/gnu/packages/php-xyz.scm b/gnu/packages/php-xyz.scm
index 2c26699230..3df6f92a2d 100644
--- a/gnu/packages/php-xyz.scm
+++ b/gnu/packages/php-xyz.scm
@@ -742,3 +742,25 @@ (define-public php-phpunit-php-file-iterator
(home-page "https://github.com/sebastianbergmann/php-file-iterator/")
(license license:bsd-3)))
+(define-public php-phpunit-php-invoker
+ (package
+ (name "php-phpunit-php-invoker")
+ (version "4.0.0")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/sebastianbergmann/php-invoker")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "11mnr7k7nxgi2s0fz0f4b947b7prjj5jhbqvx1hm0p9rdn0biggn"))))
+ (build-system composer-build-system)
+ (native-inputs
+ (list php-phpunit-phpunit))
+ (synopsis "PHP library for invoking functions")
+ (description "This package contains a library to invoke callables with a
+timeout.")
+ (home-page "https://github.com/sebastianbergmann/php-invoker/")
+ (license license:bsd-3)))
+
--
2.41.0
N
N
Nicolas Graves wrote on 19 Dec 2023 14:57
[PATCH 28/95] gnu: Add php-phpunit-php-timer.
(address . 67902@debbugs.gnu.org)(address . ngraves@ngraves.fr)
20231219140934.22783-28-ngraves@ngraves.fr
* gnu/packages/php-xyz.scm (php-phpunit-php-timer): New variable.

Change-Id: I4f8cef7408431778a46cb044c181b4620a286ccf
---
gnu/packages/php-xyz.scm | 23 +++++++++++++++++++++++
1 file changed, 23 insertions(+)

Toggle diff (33 lines)
diff --git a/gnu/packages/php-xyz.scm b/gnu/packages/php-xyz.scm
index 3df6f92a2d..046d13b954 100644
--- a/gnu/packages/php-xyz.scm
+++ b/gnu/packages/php-xyz.scm
@@ -764,3 +764,26 @@ (define-public php-phpunit-php-invoker
(home-page "https://github.com/sebastianbergmann/php-invoker/")
(license license:bsd-3)))
+(define-public php-phpunit-php-timer
+ (package
+ (name "php-phpunit-php-timer")
+ (version "5.0.3")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/sebastianbergmann/php-timer")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "0y3wc4ywmpzbjkgnyf8aq2k2kybfmbic2qz46wrqr8d78ah2csf0"))))
+ (build-system composer-build-system)
+ (native-inputs
+ (list php-phpunit-phpunit
+ php-sebastian-global-state))
+ (synopsis "Utility class for timing")
+ (description "This package contains a stand-alone component originally part
+of PHPUnit. It provides a utility class for timing.")
+ (home-page "https://github.com/sebastianbergmann/php-timer/")
+ (license license:bsd-3)))
+
--
2.41.0
N
N
Nicolas Graves wrote on 19 Dec 2023 14:57
[PATCH 31/95] gnu: Add php-predis-predis.
(address . 67902@debbugs.gnu.org)(address . ngraves@ngraves.fr)
20231219140934.22783-31-ngraves@ngraves.fr
* gnu/packages/php-xyz.scm (php-predis-predis): New variable.

Change-Id: I34fa3edc7978bc5108ef8d71fb0d75ebeb290ffa
---
gnu/packages/php-xyz.scm | 34 ++++++++++++++++++++++++++++++++++
1 file changed, 34 insertions(+)

Toggle diff (44 lines)
diff --git a/gnu/packages/php-xyz.scm b/gnu/packages/php-xyz.scm
index b6fb3e0ac2..09b2d9797e 100644
--- a/gnu/packages/php-xyz.scm
+++ b/gnu/packages/php-xyz.scm
@@ -830,3 +830,37 @@ (define-public php-phpunit-php-token-stream
extension.")
(license license:bsd-3)))
+(define-public php-predis-predis
+ (package
+ (name "php-predis-predis")
+ (version "2.2.2")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/predis/predis")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "1y0cn6mmqkdh56jlhqx8fjmkr8nipw20rnwgpc9y9qgk0l0mv4c8"))))
+ (build-system composer-build-system)
+ (arguments
+ (list
+ #:phases
+ #~(modify-phases %standard-phases
+ (add-before 'check 'pre-check
+ (lambda _
+ ;; Launch the redis server.
+ (invoke "redis-server" "--daemonize" "yes")
+ ;; Fix the sole failing test.
+ (substitute* "tests/Predis/Command/Redis/ACL_Test.php"
+ (("User Test has no permissions to run the 'get' command")
+ "This user has no permissions to run the 'get' command")))))))
+ (native-inputs
+ (list redis php-phpunit-phpunit))
+ (synopsis "Redis client for PHP")
+ (description "This package provides a flexible and feature-complete Redis
+client for PHP.")
+ (home-page "https://github.com/predis/predis")
+ (license license:expat)))
+
--
2.41.0
N
N
Nicolas Graves wrote on 19 Dec 2023 14:57
[PATCH 30/95] gnu: Add php-phpunit-php-token-stream.
(address . 67902@debbugs.gnu.org)(address . ngraves@ngraves.fr)
20231219140934.22783-30-ngraves@ngraves.fr
* gnu/packages/php-xyz.scm (php-phpunit-php-token-stream): New variable.

Change-Id: I97e5eb6cdceddad3aa02481db0d39c8fc5f53779
---
gnu/packages/php-xyz.scm | 22 ++++++++++++++++++++++
1 file changed, 22 insertions(+)

Toggle diff (32 lines)
diff --git a/gnu/packages/php-xyz.scm b/gnu/packages/php-xyz.scm
index 53b8fcd284..b6fb3e0ac2 100644
--- a/gnu/packages/php-xyz.scm
+++ b/gnu/packages/php-xyz.scm
@@ -808,3 +808,25 @@ (define-public php-phpunit-php-text-template
(home-page "https://github.com/sebastianbergmann/php-text-template/")
(license license:bsd-3)))
+(define-public php-phpunit-php-token-stream
+ (package
+ (name "php-phpunit-php-token-stream")
+ (version "4.0.4")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/sebastianbergmann/php-token-stream")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "17pyrfxvjld57i43wanfk84d8x327lwmn1avk6hbwapn4bxic0lv"))))
+ (build-system composer-build-system)
+ (native-inputs
+ (list php-phpunit-phpunit))
+ (home-page "https://github.com/sebastianbergmann/php-token-stream")
+ (synopsis "Wrapper around PHP's tokenizer extension")
+ (description "This library provides a wrapper around PHP's tokenizer
+extension.")
+ (license license:bsd-3)))
+
--
2.41.0
N
N
Nicolas Graves wrote on 19 Dec 2023 14:57
[PATCH 32/95] gnu: Add php-psr-log.
(address . 67902@debbugs.gnu.org)(address . ngraves@ngraves.fr)
20231219140934.22783-32-ngraves@ngraves.fr
* gnu/packages/php-xyz.scm (php-psr-log): New variable.

Change-Id: I9c0d1d813aa2badd0c53dc32bec70bca033e0331
---
gnu/packages/php-xyz.scm | 20 ++++++++++++++++++++
1 file changed, 20 insertions(+)

Toggle diff (30 lines)
diff --git a/gnu/packages/php-xyz.scm b/gnu/packages/php-xyz.scm
index 09b2d9797e..49c1738153 100644
--- a/gnu/packages/php-xyz.scm
+++ b/gnu/packages/php-xyz.scm
@@ -864,3 +864,23 @@ (define-public php-predis-predis
(home-page "https://github.com/predis/predis")
(license license:expat)))
+(define-public php-psr-log
+ (package
+ (name "php-psr-log")
+ (version "3.0.0")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/php-fig/log")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "0z3qnkxbn7y2grq6k2h659aswvi8hrm6dyw4x0qcdsd9l2nlx0kf"))))
+ (build-system composer-build-system)
+ (synopsis "PHP interface for logging")
+ (description "This package provides a common interface for PHP logging
+libraries.")
+ (home-page "https://github.com/php-fig/log")
+ (license license:expat)))
+
--
2.41.0
N
N
Nicolas Graves wrote on 19 Dec 2023 14:57
[PATCH 33/95] gnu: Add php-psr-cache.
(address . 67902@debbugs.gnu.org)(address . ngraves@ngraves.fr)
20231219140934.22783-33-ngraves@ngraves.fr
* gnu/packages/php-xyz.scm (php-psr-cache): New variable.

Change-Id: I189f4338cb0c0538c239c39743f10440490852e7
---
gnu/packages/php-xyz.scm | 20 ++++++++++++++++++++
1 file changed, 20 insertions(+)

Toggle diff (30 lines)
diff --git a/gnu/packages/php-xyz.scm b/gnu/packages/php-xyz.scm
index 49c1738153..c5f587b636 100644
--- a/gnu/packages/php-xyz.scm
+++ b/gnu/packages/php-xyz.scm
@@ -884,3 +884,23 @@ (define-public php-psr-log
(home-page "https://github.com/php-fig/log")
(license license:expat)))
+(define-public php-psr-cache
+ (package
+ (name "php-psr-cache")
+ (version "3.0.0")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/php-fig/cache")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "17z58lcndi97s2lxivv9pcr9yqvrzvrhinwvr2xh4g310wc6pcal"))))
+ (build-system composer-build-system)
+ (synopsis "Cache libraries in PHP")
+ (description
+ "This package provides a common interface for caching PHP libraries.")
+ (home-page "https://github.com/php-fig/cache")
+ (license license:expat)))
+
--
2.41.0
N
N
Nicolas Graves wrote on 19 Dec 2023 14:57
[PATCH 34/95] gnu: Add php-psr-cache-1.
(address . 67902@debbugs.gnu.org)(address . ngraves@ngraves.fr)
20231219140934.22783-34-ngraves@ngraves.fr
* gnu/packages/php-xyz.scm (php-psr-cache-1): New variable.

Change-Id: If9979aa47b11df707f5f6d777d00d99164fc4c11
---
gnu/packages/php-xyz.scm | 14 ++++++++++++++
1 file changed, 14 insertions(+)

Toggle diff (24 lines)
diff --git a/gnu/packages/php-xyz.scm b/gnu/packages/php-xyz.scm
index c5f587b636..b5c0e6f21c 100644
--- a/gnu/packages/php-xyz.scm
+++ b/gnu/packages/php-xyz.scm
@@ -904,3 +904,17 @@ (define-public php-psr-cache
(home-page "https://github.com/php-fig/cache")
(license license:expat)))
+(define-public php-psr-cache-1
+ (package/inherit php-psr-cache
+ (name "php-psr-cache")
+ (version "1.0.1")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/php-fig/cache")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "165nhqrqh7q2rrxz86iywv5nkyr0ybxfbnmcxk54bsy6yhkhvg3s"))))))
+
--
2.41.0
N
N
Nicolas Graves wrote on 19 Dec 2023 14:57
[PATCH 35/95] gnu: Add php-psr-container.
(address . 67902@debbugs.gnu.org)(address . ngraves@ngraves.fr)
20231219140934.22783-35-ngraves@ngraves.fr
* gnu/packages/php-xyz.scm (php-psr-container): New variable.

Change-Id: I85d5f4625f4269d652ccd92ba3e944bb1e3e444b
---
gnu/packages/php-xyz.scm | 22 ++++++++++++++++++++++
1 file changed, 22 insertions(+)

Toggle diff (32 lines)
diff --git a/gnu/packages/php-xyz.scm b/gnu/packages/php-xyz.scm
index b5c0e6f21c..5c92f18941 100644
--- a/gnu/packages/php-xyz.scm
+++ b/gnu/packages/php-xyz.scm
@@ -918,3 +918,25 @@ (define-public php-psr-cache-1
(sha256
(base32 "165nhqrqh7q2rrxz86iywv5nkyr0ybxfbnmcxk54bsy6yhkhvg3s"))))))
+(define-public php-psr-container
+ (package
+ (name "php-psr-container")
+ (version "2.0.2")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/php-fig/container")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "02438i87fa344xm6iv2wsk5pmyjkacdiaa085a4zggw1ivwch8dc"))))
+ (build-system composer-build-system)
+ (synopsis "PHP interfaces relates to PSR-11")
+ (description "This package provides all interfaces related to PSR-11
+(Container Interface). This is not a Container implementation of its
+own. It is merely abstractions that describe the components of a Dependency
+Injection Container.")
+ (home-page "https://github.com/php-fig/container")
+ (license license:expat)))
+
--
2.41.0
N
N
Nicolas Graves wrote on 19 Dec 2023 14:57
[PATCH 36/95] gnu: Add php-psr-event-dispatcher.
(address . 67902@debbugs.gnu.org)(address . ngraves@ngraves.fr)
20231219140934.22783-36-ngraves@ngraves.fr
* gnu/packages/php-xyz.scm (php-psr-event-dispatcher): New variable.

Change-Id: I62db3ea0f3a1429a6bd25c843738b022f3909177
---
gnu/packages/php-xyz.scm | 20 ++++++++++++++++++++
1 file changed, 20 insertions(+)

Toggle diff (30 lines)
diff --git a/gnu/packages/php-xyz.scm b/gnu/packages/php-xyz.scm
index 5c92f18941..f9cf7e5210 100644
--- a/gnu/packages/php-xyz.scm
+++ b/gnu/packages/php-xyz.scm
@@ -940,3 +940,23 @@ (define-public php-psr-container
(home-page "https://github.com/php-fig/container")
(license license:expat)))
+(define-public php-psr-event-dispatcher
+ (package
+ (name "php-psr-event-dispatcher")
+ (version "1.0.0")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/php-fig/event-dispatcher")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "1rxjscznzihbpgngwci61ji8qy5c623qmpy9zpqbj0f5vv8l99kp"))))
+ (build-system composer-build-system)
+ (synopsis "PHP interfaces for event handling")
+ (description "This package provides PHP standard interfaces for event
+handling.")
+ (home-page "https://github.com/php-fig/event-dispatcher")
+ (license license:expat)))
+
--
2.41.0
N
N
Nicolas Graves wrote on 19 Dec 2023 14:57
[PATCH 29/95] gnu: Add php-phpunit-php-text-template.
(address . 67902@debbugs.gnu.org)(address . ngraves@ngraves.fr)
20231219140934.22783-29-ngraves@ngraves.fr
* gnu/packages/php-xyz.scm (php-phpunit-php-text-template): New variable.

Change-Id: Iadf473821625474fa375f9845d40af4d57e37773
---
gnu/packages/php-xyz.scm | 21 +++++++++++++++++++++
1 file changed, 21 insertions(+)

Toggle diff (31 lines)
diff --git a/gnu/packages/php-xyz.scm b/gnu/packages/php-xyz.scm
index 046d13b954..53b8fcd284 100644
--- a/gnu/packages/php-xyz.scm
+++ b/gnu/packages/php-xyz.scm
@@ -787,3 +787,24 @@ (define-public php-phpunit-php-timer
(home-page "https://github.com/sebastianbergmann/php-timer/")
(license license:bsd-3)))
+(define-public php-phpunit-php-text-template
+ (package
+ (name "php-phpunit-php-text-template")
+ (version "3.0.1")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/sebastianbergmann/php-text-template")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "0q7wpi398sxwrzx7gsakk7vg2v9wv62bglbnd4w9m7svksriwn4a"))))
+ (build-system composer-build-system)
+ (native-inputs
+ (list php-phpunit-phpunit))
+ (synopsis "Simple template engine")
+ (description "This package contains a library for a simple templating engine.")
+ (home-page "https://github.com/sebastianbergmann/php-text-template/")
+ (license license:bsd-3)))
+
--
2.41.0
N
N
Nicolas Graves wrote on 19 Dec 2023 14:57
[PATCH 37/95] gnu: Add php-psr-simple-cache.
(address . 67902@debbugs.gnu.org)(address . ngraves@ngraves.fr)
20231219140934.22783-37-ngraves@ngraves.fr
* gnu/packages/php-xyz.scm (php-psr-simple-cache): New variable.

Change-Id: Ibefc321e391d0501ed4c53345aa053df972bbb8f
---
gnu/packages/php-xyz.scm | 20 ++++++++++++++++++++
1 file changed, 20 insertions(+)

Toggle diff (30 lines)
diff --git a/gnu/packages/php-xyz.scm b/gnu/packages/php-xyz.scm
index f9cf7e5210..8bccc9e04b 100644
--- a/gnu/packages/php-xyz.scm
+++ b/gnu/packages/php-xyz.scm
@@ -960,3 +960,23 @@ (define-public php-psr-event-dispatcher
(home-page "https://github.com/php-fig/event-dispatcher")
(license license:expat)))
+(define-public php-psr-simple-cache
+ (package
+ (name "php-psr-simple-cache")
+ (version "3.0.0")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/php-fig/simple-cache")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "0gndf4ygvgbw790hxxvv9d2qpnzdi409m1n9f36jw7fy1cg6gbax"))))
+ (build-system composer-build-system)
+ (synopsis "Simple cache in PHP")
+ (description "This package provides common interfaces in PHP for simple
+caching.")
+ (home-page "https://github.com/php-fig/simple-cache")
+ (license license:expat)))
+
--
2.41.0
N
N
Nicolas Graves wrote on 19 Dec 2023 14:57
[PATCH 38/95] gnu: Add php-sebastian-cli-parser.
(address . 67902@debbugs.gnu.org)(address . ngraves@ngraves.fr)
20231219140934.22783-38-ngraves@ngraves.fr
* gnu/packages/php-xyz.scm (php-sebastian-cli-parser): New variable.

Change-Id: I5b03444eccee5ab2719e39cd0b231fbf632c4428
---
gnu/packages/php-xyz.scm | 22 ++++++++++++++++++++++
1 file changed, 22 insertions(+)

Toggle diff (32 lines)
diff --git a/gnu/packages/php-xyz.scm b/gnu/packages/php-xyz.scm
index 8bccc9e04b..5c1024674b 100644
--- a/gnu/packages/php-xyz.scm
+++ b/gnu/packages/php-xyz.scm
@@ -980,3 +980,25 @@ (define-public php-psr-simple-cache
(home-page "https://github.com/php-fig/simple-cache")
(license license:expat)))
+(define-public php-sebastian-cli-parser
+ (package
+ (name "php-sebastian-cli-parser")
+ (version "2.0.0")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/sebastianbergmann/cli-parser")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "08fhain1fwhnhvv0546pszm907g56gqi37pn39dlq1rs6vxsnqd7"))))
+ (build-system composer-build-system)
+ (native-inputs
+ (list php-phpunit-phpunit))
+ (synopsis "Parse CLI options in PHP")
+ (description "This package provides a PHP library for parsing command-line
+options.")
+ (home-page "https://github.com/sebastianbergmann/cli-parser")
+ (license license:bsd-3)))
+
--
2.41.0
N
N
Nicolas Graves wrote on 19 Dec 2023 14:57
[PATCH 39/95] gnu: Add php-sebastian-code-unit.
(address . 67902@debbugs.gnu.org)(address . ngraves@ngraves.fr)
20231219140934.22783-39-ngraves@ngraves.fr
* gnu/packages/php-xyz.scm (php-sebastian-code-unit): New variable.

Change-Id: Ifd09120cd9bf772706f329623ebf186248267a60
---
gnu/packages/php-xyz.scm | 24 ++++++++++++++++++++++++
1 file changed, 24 insertions(+)

Toggle diff (34 lines)
diff --git a/gnu/packages/php-xyz.scm b/gnu/packages/php-xyz.scm
index 5c1024674b..9407e01839 100644
--- a/gnu/packages/php-xyz.scm
+++ b/gnu/packages/php-xyz.scm
@@ -1002,3 +1002,27 @@ (define-public php-sebastian-cli-parser
(home-page "https://github.com/sebastianbergmann/cli-parser")
(license license:bsd-3)))
+(define-public php-sebastian-code-unit
+ (package
+ (name "php-sebastian-code-unit")
+ (version "2.0.0")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/sebastianbergmann/code-unit")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "1k259by6jyhzl5qbnamh7270r2jgiw4bjxiy9hc2j8g9gv7ddp10"))))
+ (build-system composer-build-system)
+ (arguments
+ '(#:test-flags '("--bootstrap" "vendor/autoload.php")))
+ (native-inputs
+ (list php-phpunit-phpunit))
+ (synopsis "PHP collection of value objects for code units")
+ (description "This package contains a collection of value objects that
+represent the PHP code units.")
+ (home-page "https://github.com/sebastianbergmann/code-unit")
+ (license license:bsd-3)))
+
--
2.41.0
N
N
Nicolas Graves wrote on 19 Dec 2023 14:57
[PATCH 40/95] gnu: Add php-sebastian-code-unit-reverse-lookup.
(address . 67902@debbugs.gnu.org)(address . ngraves@ngraves.fr)
20231219140934.22783-40-ngraves@ngraves.fr
* gnu/packages/php-xyz.scm (php-sebastian-code-unit-reverse-lookup): New variable.

Change-Id: Ie958f6e6d8b5b56ba0b99df8bd457e50ebc549f1
---
gnu/packages/php-xyz.scm | 22 ++++++++++++++++++++++
1 file changed, 22 insertions(+)

Toggle diff (32 lines)
diff --git a/gnu/packages/php-xyz.scm b/gnu/packages/php-xyz.scm
index 9407e01839..a7dfc71746 100644
--- a/gnu/packages/php-xyz.scm
+++ b/gnu/packages/php-xyz.scm
@@ -1026,3 +1026,25 @@ (define-public php-sebastian-code-unit
(home-page "https://github.com/sebastianbergmann/code-unit")
(license license:bsd-3)))
+(define-public php-sebastian-code-unit-reverse-lookup
+ (package
+ (name "php-sebastian-code-unit-reverse-lookup")
+ (version "2.0.3")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/sebastianbergmann/code-unit-reverse-lookup")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "1zb5lwi46fgarrlbbbxp93md7wfwaxlrmrzvmrmxfqjmxjncpyp0"))))
+ (build-system composer-build-system)
+ (native-inputs
+ (list php-phpunit-phpunit))
+ (synopsis "Look up function name from location")
+ (description "This package provides a facility to look up which function or
+method a line of code belongs to in PHP.")
+ (home-page "https://github.com/sebastianbergmann/code-unit-reverse-lookup")
+ (license license:bsd-3)))
+
--
2.41.0
N
N
Nicolas Graves wrote on 19 Dec 2023 14:57
[PATCH 42/95] gnu: Add php-sebastian-complexity.
(address . 67902@debbugs.gnu.org)(address . ngraves@ngraves.fr)
20231219140934.22783-42-ngraves@ngraves.fr
* gnu/packages/php-xyz.scm (php-sebastian-complexity): New variable.

Change-Id: I6a817b9bb5a34c742dadbd9ce95e14710566cd91
---
gnu/packages/php-xyz.scm | 24 ++++++++++++++++++++++++
1 file changed, 24 insertions(+)

Toggle diff (34 lines)
diff --git a/gnu/packages/php-xyz.scm b/gnu/packages/php-xyz.scm
index c5d51d5d84..2a671e37c3 100644
--- a/gnu/packages/php-xyz.scm
+++ b/gnu/packages/php-xyz.scm
@@ -1072,3 +1072,27 @@ (define-public php-sebastian-comparator
(home-page "https://github.com/sebastianbergmann/comparator")
(license license:bsd-3)))
+(define-public php-sebastian-complexity
+ (package
+ (name "php-sebastian-complexity")
+ (version "2.0.2")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/sebastianbergmann/complexity")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "0mrivs3dxv4kyy9js6n33ardqnijg9v6jiiypb7b97xgmf4w694w"))))
+ (build-system composer-build-system)
+ (native-inputs
+ (list php-phpunit-phpunit))
+ (inputs
+ (list php-nikic-php-parser))
+ (synopsis "Calculate the complexity of PHP code")
+ (description "This package provides a PHP library for calculating the
+complexity of PHP code units.")
+ (home-page "https://github.com/sebastianbergmann/complexity")
+ (license license:bsd-3)))
+
--
2.41.0
N
N
Nicolas Graves wrote on 19 Dec 2023 14:57
[PATCH 41/95] gnu: Add php-sebastian-comparator.
(address . 67902@debbugs.gnu.org)(address . ngraves@ngraves.fr)
20231219140934.22783-41-ngraves@ngraves.fr
* gnu/packages/php-xyz.scm (php-sebastian-comparator): New variable.

Change-Id: I7ab566fde1bef653ea59f412d0808ec29ede8275
---
gnu/packages/php-xyz.scm | 24 ++++++++++++++++++++++++
1 file changed, 24 insertions(+)

Toggle diff (34 lines)
diff --git a/gnu/packages/php-xyz.scm b/gnu/packages/php-xyz.scm
index a7dfc71746..c5d51d5d84 100644
--- a/gnu/packages/php-xyz.scm
+++ b/gnu/packages/php-xyz.scm
@@ -1048,3 +1048,27 @@ (define-public php-sebastian-code-unit-reverse-lookup
(home-page "https://github.com/sebastianbergmann/code-unit-reverse-lookup")
(license license:bsd-3)))
+(define-public php-sebastian-comparator
+ (package
+ (name "php-sebastian-comparator")
+ (version "4.0.8")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/sebastianbergmann/comparator")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "00manwzfmsk8vkvra63mbpimkhr8sq9qi1dm3rdkspizy4gg0idl"))))
+ (build-system composer-build-system)
+ (native-inputs
+ (list php-phpunit-phpunit))
+ (inputs
+ (list php-sebastian-exporter php-sebastian-diff))
+ (synopsis "PHP value comparison")
+ (description "This package provides the functionality to compare PHP values
+for equality.")
+ (home-page "https://github.com/sebastianbergmann/comparator")
+ (license license:bsd-3)))
+
--
2.41.0
N
N
Nicolas Graves wrote on 19 Dec 2023 14:57
[PATCH 44/95] gnu: Add php-sebastian-environment.
(address . 67902@debbugs.gnu.org)(address . ngraves@ngraves.fr)
20231219140934.22783-44-ngraves@ngraves.fr
* gnu/packages/php-xyz.scm (php-sebastian-environment): New variable.

Change-Id: I1b1e30bb547ffc6e105f2a6ae711d7a3d8029233
---
gnu/packages/php-xyz.scm | 21 +++++++++++++++++++++
1 file changed, 21 insertions(+)

Toggle diff (31 lines)
diff --git a/gnu/packages/php-xyz.scm b/gnu/packages/php-xyz.scm
index 51a96948b3..53da205216 100644
--- a/gnu/packages/php-xyz.scm
+++ b/gnu/packages/php-xyz.scm
@@ -1117,3 +1117,24 @@ (define-public php-sebastian-diff
(home-page "https://github.com/sebastianbergmann/diff")
(license license:bsd-3)))
+(define-public php-sebastian-environment
+ (package
+ (name "php-sebastian-environment")
+ (version "5.1.5")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/sebastianbergmann/environment")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "0zfgwzvk1nrib9k5iz8x51g70222qw7kjyh34gp6zaqjsj6dpbiw"))))
+ (build-system composer-build-system)
+ (native-inputs
+ (list php-phpunit-phpunit))
+ (synopsis "Handle HHVM and PHP environments")
+ (description "This package provides functionality to handle HHVM/PHP environments")
+ (home-page "https://github.com/sebastianbergmann/environment")
+ (license license:bsd-3)))
+
--
2.41.0
N
N
Nicolas Graves wrote on 19 Dec 2023 14:57
[PATCH 43/95] gnu: Add php-sebastian-diff.
(address . 67902@debbugs.gnu.org)(address . ngraves@ngraves.fr)
20231219140934.22783-43-ngraves@ngraves.fr
* gnu/packages/php-xyz.scm (php-sebastian-diff): New variable.

Change-Id: I1b94c3afca08b8df079ee3a22006f3adb4d4324a
---
gnu/packages/php-xyz.scm | 21 +++++++++++++++++++++
1 file changed, 21 insertions(+)

Toggle diff (31 lines)
diff --git a/gnu/packages/php-xyz.scm b/gnu/packages/php-xyz.scm
index 2a671e37c3..51a96948b3 100644
--- a/gnu/packages/php-xyz.scm
+++ b/gnu/packages/php-xyz.scm
@@ -1096,3 +1096,24 @@ (define-public php-sebastian-complexity
(home-page "https://github.com/sebastianbergmann/complexity")
(license license:bsd-3)))
+(define-public php-sebastian-diff
+ (package
+ (name "php-sebastian-diff")
+ (version "4.0.5")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/sebastianbergmann/diff")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "1pxy6g7q5q0nr3yiyimf2dbm0m80dx440mc8p2j2z2fccpyj85dd"))))
+ (build-system composer-build-system)
+ (native-inputs
+ (list git-minimal php-phpunit-phpunit php-symfony-process))
+ (synopsis "Diff implementation")
+ (description "This package contains a PHP implementation of a diff function.")
+ (home-page "https://github.com/sebastianbergmann/diff")
+ (license license:bsd-3)))
+
--
2.41.0
N
N
Nicolas Graves wrote on 19 Dec 2023 14:57
[PATCH 45/95] gnu: Add php-sebastian-exporter.
(address . 67902@debbugs.gnu.org)(address . ngraves@ngraves.fr)
20231219140934.22783-45-ngraves@ngraves.fr
* gnu/packages/php-xyz.scm (php-sebastian-exporter): New variable.

Change-Id: I7b3148e79e369a82b0f78b0891c8544485885d19
---
gnu/packages/php-xyz.scm | 24 ++++++++++++++++++++++++
1 file changed, 24 insertions(+)

Toggle diff (34 lines)
diff --git a/gnu/packages/php-xyz.scm b/gnu/packages/php-xyz.scm
index 53da205216..97bb12a2fb 100644
--- a/gnu/packages/php-xyz.scm
+++ b/gnu/packages/php-xyz.scm
@@ -1138,3 +1138,27 @@ (define-public php-sebastian-environment
(home-page "https://github.com/sebastianbergmann/environment")
(license license:bsd-3)))
+(define-public php-sebastian-exporter
+ (package
+ (name "php-sebastian-exporter")
+ (version "4.0.5")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/sebastianbergmann/exporter")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "03jgh5vw1h6n97cklni667wj5ml1b4h15wdkra0j7m1b8gxym7lj"))))
+ (build-system composer-build-system)
+ (native-inputs
+ (list php-phpunit-phpunit))
+ (inputs
+ (list php-sebastian-recursion-context))
+ (synopsis "Visualize PHP variables")
+ (description "This package provides the functionality to export PHP
+variables for visualization")
+ (home-page "https://github.com/sebastianbergmann/exporter")
+ (license license:bsd-3)))
+
--
2.41.0
N
N
Nicolas Graves wrote on 19 Dec 2023 14:57
[PATCH 47/95] gnu: Add php-sebastian-lines-of-code.
(address . 67902@debbugs.gnu.org)(address . ngraves@ngraves.fr)
20231219140934.22783-47-ngraves@ngraves.fr
* gnu/packages/php-xyz.scm (php-sebastian-lines-of-code): New variable.

Change-Id: Ifb0a4e00fab18c53a495d6816d2b0de19389b661
---
gnu/packages/php-xyz.scm | 31 +++++++++++++++++++++++++++++++
1 file changed, 31 insertions(+)

Toggle diff (41 lines)
diff --git a/gnu/packages/php-xyz.scm b/gnu/packages/php-xyz.scm
index 2b93d56432..c2bbaa061c 100644
--- a/gnu/packages/php-xyz.scm
+++ b/gnu/packages/php-xyz.scm
@@ -1187,3 +1187,34 @@ (define-public php-sebastian-global-state
(home-page "https://github.com/sebastianbergmann/global-state")
(license license:bsd-3)))
+(define-public php-sebastian-lines-of-code
+ (package
+ (name "php-sebastian-lines-of-code")
+ (version "2.0.1")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/sebastianbergmann/lines-of-code")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "1j5yk9565mh4s46735jlqiz9kxwgxai7g0a0x802alhv9qjpm5p6"))))
+ (build-system composer-build-system)
+ (arguments
+ (list
+ #:phases
+ #~(modify-phases %standard-phases
+ (add-before 'check 'remove-failing-tests
+ (lambda _
+ (delete-file "tests/unit/LineCountingVisitorTest.php"))))))
+ (native-inputs
+ (list php-phpunit-phpunit))
+ (inputs
+ (list php-nikic-php-parser))
+ (synopsis "Count PHP source code lines")
+ (description "This package provides a library for counting the lines of
+code in PHP source code.")
+ (home-page "https://github.com/sebastianbergmann/lines-of-code")
+ (license license:bsd-3)))
+
--
2.41.0
N
N
Nicolas Graves wrote on 19 Dec 2023 14:57
[PATCH 46/95] gnu: Add php-sebastian-global-state.
(address . 67902@debbugs.gnu.org)(address . ngraves@ngraves.fr)
20231219140934.22783-46-ngraves@ngraves.fr
* gnu/packages/php-xyz.scm (php-sebastian-global-state): New variable.

Change-Id: I3badfb2486751d423f32a6e6b13e4f33eb1358cc
---
gnu/packages/php-xyz.scm | 25 +++++++++++++++++++++++++
1 file changed, 25 insertions(+)

Toggle diff (35 lines)
diff --git a/gnu/packages/php-xyz.scm b/gnu/packages/php-xyz.scm
index 97bb12a2fb..2b93d56432 100644
--- a/gnu/packages/php-xyz.scm
+++ b/gnu/packages/php-xyz.scm
@@ -1162,3 +1162,28 @@ (define-public php-sebastian-exporter
(home-page "https://github.com/sebastianbergmann/exporter")
(license license:bsd-3)))
+(define-public php-sebastian-global-state
+ (package
+ (name "php-sebastian-global-state")
+ (version "5.0.5")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/sebastianbergmann/global-state")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "0vchgv62hy58dkz2gqa9h6yv6c8kvygc84kvbsd5h6nhlcwfzygr"))))
+ (build-system composer-build-system)
+ (native-inputs
+ (list php-phpunit-phpunit))
+ (inputs
+ (list php-sebastian-recursion-context php-sebastian-object-reflector))
+ (synopsis "Snapshotting of global state")
+ (description "This package contains a stand-alone component originally part
+of PHPUnit. It provides support for creating a snapshot of the global state
+of a PHP program.")
+ (home-page "https://github.com/sebastianbergmann/global-state")
+ (license license:bsd-3)))
+
--
2.41.0
N
N
Nicolas Graves wrote on 19 Dec 2023 14:57
[PATCH 49/95] gnu: Add php-sebastian-object-reflector.
(address . 67902@debbugs.gnu.org)(address . ngraves@ngraves.fr)
20231219140934.22783-49-ngraves@ngraves.fr
* gnu/packages/php-xyz.scm (php-sebastian-object-reflector): New variable.

Change-Id: I861e16fe53e5e07597c3417380a95068295662e4
---
gnu/packages/php-xyz.scm | 37 +++++++++++++++++++++++++++++++++++++
1 file changed, 37 insertions(+)

Toggle diff (47 lines)
diff --git a/gnu/packages/php-xyz.scm b/gnu/packages/php-xyz.scm
index 21bb663ee2..e7f057248f 100644
--- a/gnu/packages/php-xyz.scm
+++ b/gnu/packages/php-xyz.scm
@@ -1242,3 +1242,40 @@ (define-public php-sebastian-object-enumerator
(home-page "https://github.com/sebastianbergmann/object-enumerator/")
(license license:bsd-3)))
+(define-public php-sebastian-object-reflector
+ (package
+ (name "php-sebastian-object-reflector")
+ (version "2.0.4")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/sebastianbergmann/object-reflector")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "1jrdfxr94c43za4z7dp0hql6q06zpgzljwv7514lwn7qs51lnn9h"))))
+ (build-system composer-build-system)
+ (arguments
+ (list
+ #:test-flags ''("--exclude" "skipTest")
+ #:phases
+ #~(modify-phases %standard-phases
+ (add-before 'check 'fix-tests
+ (lambda _
+ ;; Deactivate risky/deprecated tests.
+ (substitute* "tests/ObjectReflectorTest.php"
+ (("(.*)public function testReflectsAttribute" all blank)
+ (string-append
+ blank "/**\n"
+ blank " * @group skipTest\n"
+ blank " */\n"
+ all))))))))
+ (native-inputs
+ (list php-phpunit-phpunit))
+ (synopsis "PHP reflexion library")
+ (description "This package allows reflection of object attributes,
+including inherited and non-public ones.")
+ (home-page "https://github.com/sebastianbergmann/object-reflector/")
+ (license license:bsd-3)))
+
--
2.41.0
N
N
Nicolas Graves wrote on 19 Dec 2023 14:57
[PATCH 50/95] gnu: Add php-sebastian-recursion-context.
(address . 67902@debbugs.gnu.org)(address . ngraves@ngraves.fr)
20231219140934.22783-50-ngraves@ngraves.fr
* gnu/packages/php-xyz.scm (php-sebastian-recursion-context): New variable.

Change-Id: I665c07ffe03ac71fec513dff6cc6c2b8df9ac606
---
gnu/packages/php-xyz.scm | 22 ++++++++++++++++++++++
1 file changed, 22 insertions(+)

Toggle diff (32 lines)
diff --git a/gnu/packages/php-xyz.scm b/gnu/packages/php-xyz.scm
index e7f057248f..6048264aa7 100644
--- a/gnu/packages/php-xyz.scm
+++ b/gnu/packages/php-xyz.scm
@@ -1279,3 +1279,25 @@ (define-public php-sebastian-object-reflector
(home-page "https://github.com/sebastianbergmann/object-reflector/")
(license license:bsd-3)))
+(define-public php-sebastian-recursion-context
+ (package
+ (name "php-sebastian-recursion-context")
+ (version "4.0.5")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/sebastianbergmann/recursion-context")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "02agysiipm41366ww518imz4jz9c3d2886pd3zn1j9m1c2qx7f53"))))
+ (build-system composer-build-system)
+ (native-inputs
+ (list php-phpunit-phpunit))
+ (synopsis "Process PHP variables recursively")
+ (description "This package provides functionality to recursively process
+PHP variables")
+ (home-page "https://github.com/sebastianbergmann/recursion-context")
+ (license license:bsd-3)))
+
--
2.41.0
N
N
Nicolas Graves wrote on 19 Dec 2023 14:57
[PATCH 52/95] gnu: Add php-sebastian-type.
(address . 67902@debbugs.gnu.org)(address . ngraves@ngraves.fr)
20231219140934.22783-52-ngraves@ngraves.fr
* gnu/packages/php-xyz.scm (php-sebastian-type): New variable.

Change-Id: I561f5887ffb45acc63fc5a8a523d3766b31150b4
---
gnu/packages/php-xyz.scm | 22 ++++++++++++++++++++++
1 file changed, 22 insertions(+)

Toggle diff (32 lines)
diff --git a/gnu/packages/php-xyz.scm b/gnu/packages/php-xyz.scm
index f22cd7fb98..e1ac626962 100644
--- a/gnu/packages/php-xyz.scm
+++ b/gnu/packages/php-xyz.scm
@@ -1323,3 +1323,25 @@ (define-public php-sebastian-resource-operations
(home-page "https://github.com/sebastianbergmann/resource-operations")
(license license:bsd-3)))
+(define-public php-sebastian-type
+ (package
+ (name "php-sebastian-type")
+ (version "3.2.1")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/sebastianbergmann/type")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "0pr3r2zdwm7rzfj2g37kbxs69wq5cbmglhrxnrjmbf3d6zsv5b54"))))
+ (build-system composer-build-system)
+ (native-inputs
+ (list php-phpunit-phpunit))
+ (synopsis "PHP type system representation")
+ (description "This package is a collection of value objects that represent
+the types of the PHP type system.")
+ (home-page "https://github.com/sebastianbergmann/type")
+ (license license:bsd-3)))
+
--
2.41.0
N
N
Nicolas Graves wrote on 19 Dec 2023 14:57
[PATCH 51/95] gnu: Add php-sebastian-resource-operations.
(address . 67902@debbugs.gnu.org)(address . ngraves@ngraves.fr)
20231219140934.22783-51-ngraves@ngraves.fr
* gnu/packages/php-xyz.scm (php-sebastian-resource-operations): New variable.

Change-Id: Ife7ac40a551a8b6bc704622f70f6a2eb7b4b5856
---
gnu/packages/php-xyz.scm | 22 ++++++++++++++++++++++
1 file changed, 22 insertions(+)

Toggle diff (32 lines)
diff --git a/gnu/packages/php-xyz.scm b/gnu/packages/php-xyz.scm
index 6048264aa7..f22cd7fb98 100644
--- a/gnu/packages/php-xyz.scm
+++ b/gnu/packages/php-xyz.scm
@@ -1301,3 +1301,25 @@ (define-public php-sebastian-recursion-context
(home-page "https://github.com/sebastianbergmann/recursion-context")
(license license:bsd-3)))
+(define-public php-sebastian-resource-operations
+ (package
+ (name "php-sebastian-resource-operations")
+ (version "3.0.3")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/sebastianbergmann/resource-operations")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "1nx8basy2347x9fvr7x4wbz58wh18h8m8qywksc6k47n6srj2qir"))))
+ (build-system composer-build-system)
+ (native-inputs
+ (list php-phpunit-phpunit))
+ (synopsis "List built-in PHP functions")
+ (description "This package provides a list of PHP built-in functions that
+operate on resources.")
+ (home-page "https://github.com/sebastianbergmann/resource-operations")
+ (license license:bsd-3)))
+
--
2.41.0
N
N
Nicolas Graves wrote on 19 Dec 2023 14:57
[PATCH 53/95] gnu: Add php-sebastian-version.
(address . 67902@debbugs.gnu.org)(address . ngraves@ngraves.fr)
20231219140934.22783-53-ngraves@ngraves.fr
* gnu/packages/php-xyz.scm (php-sebastian-version): New variable.

Change-Id: Ib06b81af002d6b9b28a08ff21764e85b1867907f
---
gnu/packages/php-xyz.scm | 20 ++++++++++++++++++++
1 file changed, 20 insertions(+)

Toggle diff (30 lines)
diff --git a/gnu/packages/php-xyz.scm b/gnu/packages/php-xyz.scm
index e1ac626962..e31d112e8b 100644
--- a/gnu/packages/php-xyz.scm
+++ b/gnu/packages/php-xyz.scm
@@ -1345,3 +1345,23 @@ (define-public php-sebastian-type
(home-page "https://github.com/sebastianbergmann/type")
(license license:bsd-3)))
+(define-public php-sebastian-version
+ (package
+ (name "php-sebastian-version")
+ (version "3.0.2")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/sebastianbergmann/version")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "0645hyzf4dbmy3gk7mda3bk1rnxn7qzifawi5ss5mgkqp6x5awvj"))))
+ (build-system composer-build-system)
+ (synopsis "PHP versionning library")
+ (description "This package is a library that helps with managing the version
+number of Git-hosted PHP projects.")
+ (home-page "https://github.com/sebastianbergmann/version")
+ (license license:bsd-3)))
+
--
2.41.0
N
N
Nicolas Graves wrote on 19 Dec 2023 14:57
[PATCH 54/95] gnu: Add php-symfony-cache.
(address . 67902@debbugs.gnu.org)(address . ngraves@ngraves.fr)
20231219140934.22783-54-ngraves@ngraves.fr
* gnu/packages/php-xyz.scm (php-symfony-cache): New variable.

Change-Id: I08ee7e14f2571970d9555ff9593703308820656a
---
gnu/packages/php-xyz.scm | 36 ++++++++++++++++++++++++++++++++++++
1 file changed, 36 insertions(+)

Toggle diff (46 lines)
diff --git a/gnu/packages/php-xyz.scm b/gnu/packages/php-xyz.scm
index e31d112e8b..8a6e5ca416 100644
--- a/gnu/packages/php-xyz.scm
+++ b/gnu/packages/php-xyz.scm
@@ -1365,3 +1365,39 @@ (define-public php-sebastian-version
(home-page "https://github.com/sebastianbergmann/version")
(license license:bsd-3)))
+(define-public php-symfony-cache
+ (package
+ (name "php-symfony-cache")
+ (version "6.3.5")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/symfony/cache")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "1sg9wrzaarylzf4r1kndgf6m6a4s0i0wnnz84ycj43xbv2dll2q3"))))
+ (build-system composer-build-system)
+ (inputs
+ (list php-psr-cache
+ php-psr-log
+ php-symfony-cache-contracts
+ php-symfony-service-contracts
+ php-symfony-var-exporter))
+ (native-inputs
+ (list php-phpunit-phpunit
+ php-cache-integration-tests
+ php-doctrine-dbal
+ php-psr-simple-cache
+ php-symfony-dependency-injection
+ php-symfony-filesystem
+ php-symfony-http-kernel
+ php-symfony-phpunit-bridge))
+ (synopsis "Complete PHP cache library")
+ (description "This package provides an extended implementation of the PHP
+PSR-6 caching interface, the PHP PSR-16 common interface for caching
+libraries.")
+ (home-page "https://symfony.com")
+ (license license:expat)))
+
--
2.41.0
N
N
Nicolas Graves wrote on 19 Dec 2023 14:57
[PATCH 56/95] gnu: Add php-symfony-cache-contracts.
(address . 67902@debbugs.gnu.org)(address . ngraves@ngraves.fr)
20231219140934.22783-56-ngraves@ngraves.fr
* gnu/packages/php-xyz.scm (php-symfony-cache-contracts): New variable.

Change-Id: I56a7534b544b5c6ab05f94e7d68fec746b3096e0
---
gnu/packages/php-xyz.scm | 22 ++++++++++++++++++++++
1 file changed, 22 insertions(+)

Toggle diff (32 lines)
diff --git a/gnu/packages/php-xyz.scm b/gnu/packages/php-xyz.scm
index b9f71d9073..84c9e4878d 100644
--- a/gnu/packages/php-xyz.scm
+++ b/gnu/packages/php-xyz.scm
@@ -1443,3 +1443,25 @@ (define-public php-cache-integration-tests
(home-page "https://github.com/php-cache/integration-tests")
(license license:expat)))
+(define-public php-symfony-cache-contracts
+ (package
+ (name "php-symfony-cache-contracts")
+ (version "3.3.0")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/symfony/cache-contracts")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "1pjdcm7zwvhf0dcnb7h1c65zc9xpj551dlljag4nliq7i23ypj5y"))))
+ (build-system composer-build-system)
+ (inputs
+ (list php-psr-cache))
+ (synopsis "PHP caching abtractions")
+ (description "This package provides PHP generic abstractions related to
+caching.")
+ (home-page "https://symfony.com")
+ (license license:expat)))
+
--
2.41.0
N
N
Nicolas Graves wrote on 19 Dec 2023 14:57
[PATCH 57/95] gnu: Add php-symfony-config.
(address . 67902@debbugs.gnu.org)(address . ngraves@ngraves.fr)
20231219140934.22783-57-ngraves@ngraves.fr
* gnu/packages/php-xyz.scm (php-symfony-config): New variable.

Change-Id: I269a8fc89b874c917e6ee49f50b633a31501a8e8
---
gnu/packages/php-xyz.scm | 27 +++++++++++++++++++++++++++
1 file changed, 27 insertions(+)

Toggle diff (37 lines)
diff --git a/gnu/packages/php-xyz.scm b/gnu/packages/php-xyz.scm
index 84c9e4878d..a638d5db73 100644
--- a/gnu/packages/php-xyz.scm
+++ b/gnu/packages/php-xyz.scm
@@ -1465,3 +1465,30 @@ (define-public php-symfony-cache-contracts
(home-page "https://symfony.com")
(license license:expat)))
+(define-public php-symfony-config
+ (package
+ (name "php-symfony-config")
+ (version "6.3.0")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/symfony/config")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "0rvpmh9h9gp095l6f4bmsn6flrikig2gsxxpan521dw27aw3r9sx"))))
+ (build-system composer-build-system)
+ (inputs (list php-symfony-deprecation-contracts
+ php-symfony-filesystem
+ php-symfony-polyfill-ctype))
+ (native-inputs
+ (list php-phpunit-phpunit
+ php-symfony-event-dispatcher))
+ (synopsis "Configure PHP values")
+ (description
+ "This package provides utilities to find, load, combine, autofill and
+validate configuration values of any kind.")
+ (home-page "https://symfony.com")
+ (license license:expat)))
+
--
2.41.0
N
N
Nicolas Graves wrote on 19 Dec 2023 14:57
[PATCH 58/95] gnu: Add php-symfony-console.
(address . 67902@debbugs.gnu.org)(address . ngraves@ngraves.fr)
20231219140934.22783-58-ngraves@ngraves.fr
* gnu/packages/php-xyz.scm (php-symfony-console): New variable.

Change-Id: I45f446c29a1fcbf4105388ecde89c3b6045d3826
---
gnu/packages/php-xyz.scm | 52 ++++++++++++++++++++++++++++++++++++++++
1 file changed, 52 insertions(+)

Toggle diff (62 lines)
diff --git a/gnu/packages/php-xyz.scm b/gnu/packages/php-xyz.scm
index a638d5db73..331b54be35 100644
--- a/gnu/packages/php-xyz.scm
+++ b/gnu/packages/php-xyz.scm
@@ -1492,3 +1492,55 @@ (define-public php-symfony-config
(home-page "https://symfony.com")
(license license:expat)))
+(define-public php-symfony-console
+ (package
+ (name "php-symfony-console")
+ (version "6.3.2")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/symfony/console")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "1k6vncnkrd80ly965b1a648gyc47yy24vy2hx75842l62xj280p2"))))
+ (build-system composer-build-system)
+ (arguments
+ (list
+ #:test-flags ''("--exclude" "skipTest")
+ #:phases
+ #~(modify-phases %standard-phases
+ (add-before 'check 'fix-tests
+ (lambda _
+ ;; Deactivate failing tests.
+ (substitute* "Tests/Helper/QuestionHelperTest.php"
+ (("(.*)public function testAutocompleteMoveCursorBackwards" all blank)
+ (string-append
+ blank "/**\n"
+ blank " * @group skipTest\n"
+ blank " */\n"
+ all))))))))
+ (inputs
+ (list php-symfony-polyfill-mbstring
+ php-symfony-deprecation-contracts
+ php-symfony-service-contracts
+ php-symfony-string))
+ (native-inputs
+ (list php-phpunit-phpunit
+ php-psr-log
+ php-symfony-dependency-injection
+ php-symfony-event-dispatcher
+ (package/inherit php-symfony-lock
+ (arguments '(#:tests? #f))
+ (native-inputs '()))
+ php-symfony-phpunit-bridge
+ php-symfony-process
+ php-symfony-var-dumper))
+ (synopsis "Create PHP CLI applications")
+ (description
+ "This package provides utilities to ease the creation of beautiful and
+testable command line interfaces.")
+ (home-page "https://symfony.com")
+ (license license:expat)))
+
--
2.41.0
N
N
Nicolas Graves wrote on 19 Dec 2023 14:57
[PATCH 59/95] gnu: Add php-symfony-dependency-injection.
(address . 67902@debbugs.gnu.org)(address . ngraves@ngraves.fr)
20231219140934.22783-59-ngraves@ngraves.fr
* gnu/packages/php-xyz.scm (php-symfony-dependency-injection): New variable.

Change-Id: Ia24e5ef934127bdbc678b59eb6f1a49bf6b7cb95
---
gnu/packages/php-xyz.scm | 61 ++++++++++++++++++++++++++++++++++++++++
1 file changed, 61 insertions(+)

Toggle diff (71 lines)
diff --git a/gnu/packages/php-xyz.scm b/gnu/packages/php-xyz.scm
index 331b54be35..98b65f0cc1 100644
--- a/gnu/packages/php-xyz.scm
+++ b/gnu/packages/php-xyz.scm
@@ -1544,3 +1544,64 @@ (define-public php-symfony-console
(home-page "https://symfony.com")
(license license:expat)))
+(define-public php-symfony-dependency-injection
+ (package
+ (name "php-symfony-dependency-injection")
+ (version "6.3.5")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/symfony/dependency-injection")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "1ns3l4qmghpcfzm58vjajpyagavkqyrdqqd0pxdn7r4dh5h6m0wf"))))
+ (build-system composer-build-system)
+ (arguments
+ (list
+ #:test-flags ''("--exclude" "skipTest" "--dont-report-useless-tests")
+ #:phases
+ #~(modify-phases %standard-phases
+ (add-before 'check 'fix-tests
+ (lambda _
+ ;; Deactivate failing tests.
+ (substitute* "Tests/Dumper/PhpDumperTest.php"
+ (("(.*)public function testDumpAsFiles.*" all blank)
+ (string-append
+ blank "/**\n"
+ blank " * @group skipTest\n"
+ blank " */\n"
+ all))
+ (("(.*)public function testDeprecatedParametersAsFiles\\(\\)" all blank)
+ (string-append
+ blank "/**\n"
+ blank " * @group skipTest\n"
+ blank " */\n"
+ all))
+ (("(.*)public function testNonSharedLazyAsFiles\\(\\)" all blank)
+ (string-append
+ blank "/**\n"
+ blank " * @group skipTest\n"
+ blank " */\n"
+ all))))))))
+ (inputs
+ (list php-psr-container
+ php-symfony-deprecation-contracts
+ php-symfony-service-contracts
+ php-symfony-var-exporter))
+ (native-inputs
+ (list php-phpunit-phpunit
+ (package/inherit php-symfony-config
+ (arguments '(#:tests? #f))
+ (native-inputs '()))
+ php-symfony-expression-language
+ php-symfony-phpunit-bridge
+ php-symfony-yaml))
+ (synopsis "Construct objects in PHP")
+ (description
+ "This package provides utilities to standardize and centralize the way
+objects are constructed in your PHP application.")
+ (home-page "https://symfony.com")
+ (license license:expat)))
+
--
2.41.0
N
N
Nicolas Graves wrote on 19 Dec 2023 14:57
[PATCH 60/95] gnu: Add php-symfony-deprecation-contracts.
(address . 67902@debbugs.gnu.org)(address . ngraves@ngraves.fr)
20231219140934.22783-60-ngraves@ngraves.fr
* gnu/packages/php-xyz.scm (php-symfony-deprecation-contracts): New variable.

Change-Id: I4c55b434a870b9eebd29ae4a4a1a6275d99ada98
---
gnu/packages/php-xyz.scm | 21 +++++++++++++++++++++
1 file changed, 21 insertions(+)

Toggle diff (31 lines)
diff --git a/gnu/packages/php-xyz.scm b/gnu/packages/php-xyz.scm
index 98b65f0cc1..9aa2badffb 100644
--- a/gnu/packages/php-xyz.scm
+++ b/gnu/packages/php-xyz.scm
@@ -1605,3 +1605,24 @@ (define-public php-symfony-dependency-injection
(home-page "https://symfony.com")
(license license:expat)))
+(define-public php-symfony-deprecation-contracts
+ (package
+ (name "php-symfony-deprecation-contracts")
+ (version "3.3.0")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/symfony/deprecation-contracts")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "084i60zif71y07ryh6gb4mvrzp3gpzk342r2p9q8jzw9vggxyhv9"))))
+ (build-system composer-build-system)
+ (synopsis "Trigger deprecation notices in PHP")
+ (description
+ "This package provides a generic function and convention to trigger
+deprecation notices.")
+ (home-page "https://symfony.com")
+ (license license:expat)))
+
--
2.41.0
N
N
Nicolas Graves wrote on 19 Dec 2023 14:57
[PATCH 61/95] gnu: Add php-symfony-error-handler.
(address . 67902@debbugs.gnu.org)(address . ngraves@ngraves.fr)
20231219140934.22783-61-ngraves@ngraves.fr
* gnu/packages/php-xyz.scm (php-symfony-error-handler): New variable.

Change-Id: Ie8fdaf7a409a1762039992c1c4118eb81b57bcf5
---
gnu/packages/php-xyz.scm | 24 ++++++++++++++++++++++++
1 file changed, 24 insertions(+)

Toggle diff (34 lines)
diff --git a/gnu/packages/php-xyz.scm b/gnu/packages/php-xyz.scm
index 9aa2badffb..98e11e860c 100644
--- a/gnu/packages/php-xyz.scm
+++ b/gnu/packages/php-xyz.scm
@@ -1626,3 +1626,27 @@ (define-public php-symfony-deprecation-contracts
(home-page "https://symfony.com")
(license license:expat)))
+(define-public php-symfony-error-handler
+ (package
+ (name "php-symfony-error-handler")
+ (version "6.0.19")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/symfony/error-handler")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "1vvpmx5v6b22ip44vs3lgyxk0m5cfwkgdpd8rfpp6lbh61ildcph"))))
+ (build-system composer-build-system)
+ (inputs
+ (list php-psr-log php-symfony-var-dumper))
+ (native-inputs
+ (list php-phpunit-phpunit))
+ (synopsis "Ease debugging in PHP")
+ (description "This package provides tools to manage errors and ease
+debugging PHP code.")
+ (home-page "https://symfony.com")
+ (license license:expat)))
+
--
2.41.0
N
N
Nicolas Graves wrote on 19 Dec 2023 14:57
[PATCH 62/95] gnu: Add php-symfony-event-dispatcher.
(address . 67902@debbugs.gnu.org)(address . ngraves@ngraves.fr)
20231219140934.22783-62-ngraves@ngraves.fr
* gnu/packages/php-xyz.scm (php-symfony-event-dispatcher): New variable.

Change-Id: Idfe2d10c39a2890ceb23b96013a98a7966f9dffd
---
gnu/packages/php-xyz.scm | 33 +++++++++++++++++++++++++++++++++
1 file changed, 33 insertions(+)

Toggle diff (43 lines)
diff --git a/gnu/packages/php-xyz.scm b/gnu/packages/php-xyz.scm
index 98e11e860c..1d5f033585 100644
--- a/gnu/packages/php-xyz.scm
+++ b/gnu/packages/php-xyz.scm
@@ -1650,3 +1650,36 @@ (define-public php-symfony-error-handler
(home-page "https://symfony.com")
(license license:expat)))
+(define-public php-symfony-event-dispatcher
+ (package
+ (name "php-symfony-event-dispatcher")
+ (version "6.3.2")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/symfony/event-dispatcher")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "10dnagg5939knb3xqym1dcnkcpf7cjzylk3r7d80l9khgxmw8gr8"))))
+ (build-system composer-build-system)
+ (inputs
+ (list php-symfony-event-dispatcher-contracts))
+ (native-inputs
+ (list php-phpunit-phpunit
+ (package/inherit php-symfony-config
+ (arguments '(#:tests? #f))
+ (native-inputs '()))
+ (package/inherit php-symfony-dependency-injection
+ (arguments '(#:tests? #f))
+ (native-inputs '()))
+ php-symfony-error-handler
+ php-symfony-stopwatch))
+ (synopsis "Dispatch events between PHP application components")
+ (description
+ "This package provides tools that allow your application components to
+communicate with each other by dispatching events and listening to them.")
+ (home-page "https://symfony.com")
+ (license license:expat)))
+
--
2.41.0
N
N
Nicolas Graves wrote on 19 Dec 2023 14:57
[PATCH 48/95] gnu: Add php-sebastian-object-enumerator.
(address . 67902@debbugs.gnu.org)(address . ngraves@ngraves.fr)
20231219140934.22783-48-ngraves@ngraves.fr
* gnu/packages/php-xyz.scm (php-sebastian-object-enumerator): New variable.

Change-Id: I7117290def9ed314359a69c5aded24d7ae5e5158
---
gnu/packages/php-xyz.scm | 24 ++++++++++++++++++++++++
1 file changed, 24 insertions(+)

Toggle diff (34 lines)
diff --git a/gnu/packages/php-xyz.scm b/gnu/packages/php-xyz.scm
index c2bbaa061c..21bb663ee2 100644
--- a/gnu/packages/php-xyz.scm
+++ b/gnu/packages/php-xyz.scm
@@ -1218,3 +1218,27 @@ (define-public php-sebastian-lines-of-code
(home-page "https://github.com/sebastianbergmann/lines-of-code")
(license license:bsd-3)))
+(define-public php-sebastian-object-enumerator
+ (package
+ (name "php-sebastian-object-enumerator")
+ (version "4.0.4")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/sebastianbergmann/object-enumerator")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "1f3zghb32g2mrh2abkasi79y6cq1aisp2dam5hnv0y76sddkrsd6"))))
+ (build-system composer-build-system)
+ (native-inputs
+ (list php-phpunit-phpunit))
+ (inputs
+ (list php-sebastian-recursion-context php-sebastian-object-reflector))
+ (synopsis "Enumerate PHP objects")
+ (description "This package allows PHP programs to traverse array structures
+and object graphs to enumerate all referenced objects.")
+ (home-page "https://github.com/sebastianbergmann/object-enumerator/")
+ (license license:bsd-3)))
+
--
2.41.0
N
N
Nicolas Graves wrote on 19 Dec 2023 14:57
[PATCH 64/95] gnu: Add php-symfony-expression-language.
(address . 67902@debbugs.gnu.org)(address . ngraves@ngraves.fr)
20231219140934.22783-64-ngraves@ngraves.fr
* gnu/packages/php-xyz.scm (php-symfony-expression-language): New variable.

Change-Id: I9eaa197237562ea7d57092edd687ac3bd76c6f16
---
gnu/packages/php-xyz.scm | 28 ++++++++++++++++++++++++++++
1 file changed, 28 insertions(+)

Toggle diff (38 lines)
diff --git a/gnu/packages/php-xyz.scm b/gnu/packages/php-xyz.scm
index 97fba315e0..21ad335183 100644
--- a/gnu/packages/php-xyz.scm
+++ b/gnu/packages/php-xyz.scm
@@ -1704,3 +1704,31 @@ (define-public php-symfony-event-dispatcher-contracts
(home-page "https://symfony.com")
(license license:expat)))
+(define-public php-symfony-expression-language
+ (package
+ (name "php-symfony-expression-language")
+ (version "6.3.0")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/symfony/expression-language")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "0xbsjnqb4mm6c8l0lri4qsdb9y9fjavjnx9g0n3gbwy8gh5v0d03"))))
+ (build-system composer-build-system)
+ (inputs
+ (list (package/inherit php-symfony-cache
+ (arguments '(#:tests? #f))
+ (native-inputs '()))
+ php-symfony-deprecation-contracts
+ php-symfony-service-contracts))
+ (native-inputs
+ (list php-phpunit-phpunit php-symfony-phpunit-bridge))
+ (synopsis "Evaluate PHP expressions")
+ (description "This package provides an engine that can compile and
+evaluate expressions.")
+ (home-page "https://symfony.com")
+ (license license:expat)))
+
--
2.41.0
N
N
Nicolas Graves wrote on 19 Dec 2023 14:57
[PATCH 63/95] gnu: Add php-symfony-event-dispatcher-contracts.
(address . 67902@debbugs.gnu.org)(address . ngraves@ngraves.fr)
20231219140934.22783-63-ngraves@ngraves.fr
* gnu/packages/php-xyz.scm (php-symfony-event-dispatcher-contracts): New variable.

Change-Id: If1222680634687bce31050c604b93e386489931d
---
gnu/packages/php-xyz.scm | 21 +++++++++++++++++++++
1 file changed, 21 insertions(+)

Toggle diff (31 lines)
diff --git a/gnu/packages/php-xyz.scm b/gnu/packages/php-xyz.scm
index 1d5f033585..97fba315e0 100644
--- a/gnu/packages/php-xyz.scm
+++ b/gnu/packages/php-xyz.scm
@@ -1683,3 +1683,24 @@ (define-public php-symfony-event-dispatcher
(home-page "https://symfony.com")
(license license:expat)))
+(define-public php-symfony-event-dispatcher-contracts
+ (package
+ (name "php-symfony-event-dispatcher-contracts")
+ (version "3.3.0")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/symfony/event-dispatcher-contracts")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "1l2vigh39v7a4kcx3jxllsd0flvhanhidr61dvvf653v7ll8igk3"))))
+ (build-system composer-build-system)
+ (inputs (list php-psr-event-dispatcher))
+ (synopsis "PHP abstractions for event handling")
+ (description "This package provides generic abstractions related to
+dispatching event in PHP.")
+ (home-page "https://symfony.com")
+ (license license:expat)))
+
--
2.41.0
N
N
Nicolas Graves wrote on 19 Dec 2023 14:57
[PATCH 65/95] gnu: Add php-symfony-filesystem.
(address . 67902@debbugs.gnu.org)(address . ngraves@ngraves.fr)
20231219140934.22783-65-ngraves@ngraves.fr
* gnu/packages/php-xyz.scm (php-symfony-filesystem): New variable.

Change-Id: I783fe197168f6dc755de2444ecc16fa9de8f7077
---
gnu/packages/php-xyz.scm | 26 ++++++++++++++++++++++++++
1 file changed, 26 insertions(+)

Toggle diff (36 lines)
diff --git a/gnu/packages/php-xyz.scm b/gnu/packages/php-xyz.scm
index 21ad335183..9a273064b1 100644
--- a/gnu/packages/php-xyz.scm
+++ b/gnu/packages/php-xyz.scm
@@ -1732,3 +1732,29 @@ (define-public php-symfony-expression-language
(home-page "https://symfony.com")
(license license:expat)))
+(define-public php-symfony-filesystem
+ (package
+ (name "php-symfony-filesystem")
+ (version "6.3.0")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/symfony/filesystem")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "0m0kza9lz6wh707mzpc0pascwvmxnlmwgpl55w8zpmbs9a2jjsik"))))
+ (build-system composer-build-system)
+ (arguments
+ '(#:test-flags '("--exclude-group" "network")))
+ (inputs
+ (list php-symfony-polyfill-ctype php-symfony-polyfill-mbstring))
+ (native-inputs
+ (list php-phpunit-phpunit))
+ (synopsis "Basic PHP utilities for the filesystem")
+ (description "This package provides basic utilities for the filesystem in
+the Symfony PHP framework.")
+ (home-page "https://symfony.com")
+ (license license:expat)))
+
--
2.41.0
N
N
Nicolas Graves wrote on 19 Dec 2023 14:57
[PATCH 67/95] gnu: Add php-symfony-http-foundation.
(address . 67902@debbugs.gnu.org)(address . ngraves@ngraves.fr)
20231219140934.22783-67-ngraves@ngraves.fr
* gnu/packages/php-xyz.scm (php-symfony-http-foundation): New variable.

Change-Id: I92bebdbfd4177781bf5aeb150a7ad3b325842ec2
---
gnu/packages/php-xyz.scm | 29 +++++++++++++++++++++++++++++
1 file changed, 29 insertions(+)

Toggle diff (39 lines)
diff --git a/gnu/packages/php-xyz.scm b/gnu/packages/php-xyz.scm
index 32e5b906b2..0cd6c5ddaf 100644
--- a/gnu/packages/php-xyz.scm
+++ b/gnu/packages/php-xyz.scm
@@ -1799,3 +1799,32 @@ (define-public php-symfony-finder
(home-page "https://symfony.com")
(license license:expat)))
+(define-public php-symfony-http-foundation
+ (package
+ (name "php-symfony-http-foundation")
+ (version "6.3.7")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/symfony/http-foundation")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "18g5cvyvww5a5qac9iw606lkyya4dndrzs6ddxayp7a3nr1i733n"))))
+ (build-system composer-build-system)
+ (inputs
+ (list php-symfony-polyfill-mbstring php-symfony-deprecation-contracts))
+ (native-inputs
+ (list php-doctrine-dbal
+ php-phpunit-phpunit
+ php-predis-predis
+ php-symfony-phpunit-bridge
+ php-symfony-mime
+ php-symfony-expression-language))
+ (synopsis "PHP HTTP specification")
+ (description "This package defines an object-oriented layer for the HTTP
+specification in PHP.")
+ (home-page "https://symfony.com")
+ (license license:expat)))
+
--
2.41.0
N
N
Nicolas Graves wrote on 19 Dec 2023 14:57
[PATCH 55/95] gnu: Add php-cache-integration-tests.
(address . 67902@debbugs.gnu.org)(address . ngraves@ngraves.fr)
20231219140934.22783-55-ngraves@ngraves.fr
* gnu/packages/php-xyz.scm (php-cache-integration-tests): New variable.

Change-Id: I561d088a95cdcb8629a7e6cab9503be7cf658492
---
gnu/packages/php-xyz.scm | 42 ++++++++++++++++++++++++++++++++++++++++
1 file changed, 42 insertions(+)

Toggle diff (52 lines)
diff --git a/gnu/packages/php-xyz.scm b/gnu/packages/php-xyz.scm
index 8a6e5ca416..b9f71d9073 100644
--- a/gnu/packages/php-xyz.scm
+++ b/gnu/packages/php-xyz.scm
@@ -1401,3 +1401,45 @@ (define-public php-symfony-cache
(home-page "https://symfony.com")
(license license:expat)))
+(define-public php-cache-integration-tests
+ (package
+ (name "php-cache-integration-tests")
+ (version "0.17.0")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/php-cache/integration-tests")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "0i079z0jmcji4kn9mcxdv2093ypcd6albwkhhkiv39py31bjdpgg"))))
+ (build-system composer-build-system)
+ (arguments
+ (list
+ #:test-flags ''("--testsuite" "Symfony")
+ #:phases
+ #~(modify-phases %standard-phases
+ (add-before 'check 'fix-tests
+ (lambda _
+ ;; Adapt phpunit config to Guix context.
+ (substitute* "phpunit.xml.dist"
+ (("\\./vendor/symfony/cache")
+ (string-append
+ #$(this-package-native-input "php-symfony-cache")
+ "/share/web/symfony/cache"))))))))
+ (inputs
+ (list php-psr-cache php-cache-tag-interop))
+ (native-inputs
+ (list php-phpunit-phpunit
+ (package/inherit php-symfony-cache
+ (arguments '(#:tests? #f))
+ (native-inputs '()))
+ php-symfony-filesystem
+ php-symfony-phpunit-bridge))
+ (synopsis "PHP integration tests")
+ (description "This package provides PHP integration tests for PSR-6 and
+PSR-16 cache implementations.")
+ (home-page "https://github.com/php-cache/integration-tests")
+ (license license:expat)))
+
--
2.41.0
N
N
Nicolas Graves wrote on 19 Dec 2023 14:57
[PATCH 66/95] gnu: Add php-symfony-finder.
(address . 67902@debbugs.gnu.org)(address . ngraves@ngraves.fr)
20231219140934.22783-66-ngraves@ngraves.fr
* gnu/packages/php-xyz.scm (php-symfony-finder): New variable.

Change-Id: I1a0d3f342bfb3904044096dc5785e3003e30978d
---
gnu/packages/php-xyz.scm | 41 ++++++++++++++++++++++++++++++++++++++++
1 file changed, 41 insertions(+)

Toggle diff (51 lines)
diff --git a/gnu/packages/php-xyz.scm b/gnu/packages/php-xyz.scm
index 9a273064b1..32e5b906b2 100644
--- a/gnu/packages/php-xyz.scm
+++ b/gnu/packages/php-xyz.scm
@@ -1758,3 +1758,44 @@ (define-public php-symfony-filesystem
(home-page "https://symfony.com")
(license license:expat)))
+(define-public php-symfony-finder
+ (package
+ (name "php-symfony-finder")
+ (version "6.3.5")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/symfony/finder")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "02fjcdlzpk40kqirv61n7hzyfc2b803r186l80s50vaavgj9iv9k"))))
+ (build-system composer-build-system)
+ (arguments
+ (list
+ #:test-flags ''("--exclude-group" "network,skipTest")
+ #:phases
+ #~(modify-phases %standard-phases
+ (add-before 'check 'fix-tests
+ (lambda _
+ ;; Ignore this sole failing test.
+ (substitute* "Tests/Iterator/SortableIteratorTest.php"
+ (("(.*)\\* @dataProvider getAcceptData" all blank)
+ (string-append all "\n"
+ blank "* @group skipTest")))
+ ;; Without process isolation, setUp will be executed everytime,
+ ;; not just for the first test.
+ (substitute* (list "Tests/Iterator/RealIteratorTestCase.php"
+ "Tests/Iterator/VcsIgnoredFilterIteratorTest.php")
+ (("static function setUpBeforeClass")
+ "function setUp")))))))
+ (native-inputs
+ (list php-phpunit-phpunit php-symfony-filesystem))
+ (synopsis "Find files in PHP")
+ (description
+ "This package provides PHP utilities to find files and directories via an
+intuitive fluent interface.")
+ (home-page "https://symfony.com")
+ (license license:expat)))
+
--
2.41.0
N
N
Nicolas Graves wrote on 19 Dec 2023 14:57
[PATCH 68/95] gnu: Add php-symfony-http-kernel.
(address . 67902@debbugs.gnu.org)(address . ngraves@ngraves.fr)
20231219140934.22783-68-ngraves@ngraves.fr
* gnu/packages/php-xyz.scm (php-symfony-http-kernel): New variable.

Change-Id: Ib5ea43ae5426dabcf4726e8fef2cb0ecd0d87c15
---
gnu/packages/php-xyz.scm | 33 +++++++++++++++++++++++++++++++++
1 file changed, 33 insertions(+)

Toggle diff (43 lines)
diff --git a/gnu/packages/php-xyz.scm b/gnu/packages/php-xyz.scm
index 0cd6c5ddaf..343e946e57 100644
--- a/gnu/packages/php-xyz.scm
+++ b/gnu/packages/php-xyz.scm
@@ -1828,3 +1828,36 @@ (define-public php-symfony-http-foundation
(home-page "https://symfony.com")
(license license:expat)))
+(define-public php-symfony-http-kernel
+ (package
+ (name "php-symfony-http-kernel")
+ (version "6.3.7")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/symfony/http-kernel")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "1dhvy4fn4qzqxsk4wiz6z53y3vz9z1n3d7js0s4858z1z7pdsfwv"))))
+ (build-system composer-build-system)
+ (inputs
+ (list php-symfony-deprecation-contracts
+ php-symfony-error-handler
+ php-symfony-event-dispatcher
+ php-symfony-http-foundation
+ php-symfony-polyfill-ctype
+ php-psr-log))
+ (native-inputs
+ (list php-phpunit-phpunit
+ php-symfony-dependency-injection
+ php-symfony-phpunit-bridge
+ php-symfony-uid))
+ (synopsis "Handle HTTP requests in PHP")
+ (description
+ "This package provides a structured process for converting an HTTP
+Request into a Response.")
+ (home-page "https://symfony.com")
+ (license license:expat)))
+
--
2.41.0
N
N
Nicolas Graves wrote on 19 Dec 2023 14:57
[PATCH 70/95] gnu: Add php-symfony-lock.
(address . 67902@debbugs.gnu.org)(address . ngraves@ngraves.fr)
20231219140934.22783-70-ngraves@ngraves.fr
* gnu/packages/php-xyz.scm (php-symfony-lock): New variable.

Change-Id: Iae351b0e64fb305158d7dad97d5cfb5c1b143e08
---
gnu/packages/php-xyz.scm | 36 ++++++++++++++++++++++++++++++++++++
1 file changed, 36 insertions(+)

Toggle diff (46 lines)
diff --git a/gnu/packages/php-xyz.scm b/gnu/packages/php-xyz.scm
index 8104319e4c..a88ce09d63 100644
--- a/gnu/packages/php-xyz.scm
+++ b/gnu/packages/php-xyz.scm
@@ -1885,3 +1885,39 @@ (define-public php-symfony-intl
(home-page "https://symfony.com")
(license license:expat)))
+(define-public php-symfony-lock
+ (package
+ (name "php-symfony-lock")
+ (version "6.3.7")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/symfony/lock")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "1ldnv0hlakxi3cs1x39swg7kr60rj8m55ivxfn7ggfw38b8725xz"))))
+ (build-system composer-build-system)
+ (arguments
+ (list
+ #:phases
+ #~(modify-phases %standard-phases
+ (add-before 'check 'pre-check
+ (lambda _
+ (invoke "redis-server" "--daemonize" "yes"))))))
+ (inputs
+ (list php-psr-log php-symfony-deprecation-contracts))
+ (native-inputs
+ (list php-doctrine-dbal
+ php-phpunit-phpunit
+ php-predis-predis
+ redis
+ util-linux))
+ (synopsis "Manage PHP locks")
+ (description
+ "This package provides utilities to create and manage locks in PHP, a
+mechanism to provide exclusive access to a shared resource.")
+ (home-page "https://symfony.com")
+ (license license:expat)))
+
--
2.41.0
N
N
Nicolas Graves wrote on 19 Dec 2023 14:57
[PATCH 69/95] gnu: Add php-symfony-intl.
(address . 67902@debbugs.gnu.org)(address . ngraves@ngraves.fr)
20231219140934.22783-69-ngraves@ngraves.fr
* gnu/packages/php-xyz.scm (php-symfony-intl): New variable.

Change-Id: I8f84be5b247f204f1520a3deaef9d9a6db6e0458
---
gnu/packages/php-xyz.scm | 24 ++++++++++++++++++++++++
1 file changed, 24 insertions(+)

Toggle diff (34 lines)
diff --git a/gnu/packages/php-xyz.scm b/gnu/packages/php-xyz.scm
index 343e946e57..8104319e4c 100644
--- a/gnu/packages/php-xyz.scm
+++ b/gnu/packages/php-xyz.scm
@@ -1861,3 +1861,27 @@ (define-public php-symfony-http-kernel
(home-page "https://symfony.com")
(license license:expat)))
+(define-public php-symfony-intl
+ (package
+ (name "php-symfony-intl")
+ (version "6.3.2")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/symfony/intl")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "0ym89qrymyzydzp5r1b07xz89njdk5349ll7dz9sbzj9cnqiqbmx"))))
+ (build-system composer-build-system)
+ (native-inputs (list php-phpunit-phpunit
+ php-symfony-filesystem
+ php-symfony-finder
+ php-symfony-var-exporter))
+ (synopsis "Localization data in PHP")
+ (description "This package provides access to the localization data of the
+ICU library.")
+ (home-page "https://symfony.com")
+ (license license:expat)))
+
--
2.41.0
N
N
Nicolas Graves wrote on 19 Dec 2023 14:57
[PATCH 71/95] gnu: Add php-symfony-mime.
(address . 67902@debbugs.gnu.org)(address . ngraves@ngraves.fr)
20231219140934.22783-71-ngraves@ngraves.fr
* gnu/packages/php-xyz.scm (php-symfony-mime): New variable.

Change-Id: I95fa00cd3ca1c57a464617b71ce23d4eb7ae9fba
---
gnu/packages/php-xyz.scm | 33 +++++++++++++++++++++++++++++++++
1 file changed, 33 insertions(+)

Toggle diff (43 lines)
diff --git a/gnu/packages/php-xyz.scm b/gnu/packages/php-xyz.scm
index a88ce09d63..6cd3295b85 100644
--- a/gnu/packages/php-xyz.scm
+++ b/gnu/packages/php-xyz.scm
@@ -1921,3 +1921,36 @@ (define-public php-symfony-lock
(home-page "https://symfony.com")
(license license:expat)))
+(define-public php-symfony-mime
+ (package
+ (name "php-symfony-mime")
+ (version "6.3.5")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/symfony/mime")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "1zx83vii3kdj51kbdg515a7plq4rwfnfa7b4590ry2lrv0ryxvjp"))))
+ (build-system composer-build-system)
+ (arguments
+ '(#:test-flags '("--exclude" "network")
+ #:tests? #f)) ; TODO package php-symfony-serializer
+ (inputs
+ (list php-symfony-polyfill-intl-idn
+ php-symfony-deprecation-contracts
+ php-symfony-polyfill-mbstring))
+ (native-inputs
+ (list php-phpunit-phpunit
+ php-egulias-email-validator
+ php-symfony-dependency-injection
+ php-symfony-phpunit-bridge
+ php-symfony-property-info))
+ (synopsis "Manipulate MIME messages with PHP")
+ (description
+ "This package provides utilities to manipulate MIME messages in PHP.")
+ (home-page "https://symfony.com")
+ (license license:expat)))
+
--
2.41.0
N
N
Nicolas Graves wrote on 19 Dec 2023 14:57
[PATCH 73/95] gnu: Add php-symfony-process.
(address . 67902@debbugs.gnu.org)(address . ngraves@ngraves.fr)
20231219140934.22783-73-ngraves@ngraves.fr
* gnu/packages/php-xyz.scm (php-symfony-process): New variable.

Change-Id: I90eafe94a8f22ce857d163ba3d71999900fa49d8
---
gnu/packages/php-xyz.scm | 22 ++++++++++++++++++++++
1 file changed, 22 insertions(+)

Toggle diff (32 lines)
diff --git a/gnu/packages/php-xyz.scm b/gnu/packages/php-xyz.scm
index d6a49d1f75..bbe6f6aa01 100644
--- a/gnu/packages/php-xyz.scm
+++ b/gnu/packages/php-xyz.scm
@@ -2031,3 +2031,25 @@ (define-public php-symfony-phpunit-bridge
(home-page "https://symfony.com")
(license license:expat)))
+(define-public php-symfony-process
+ (package
+ (name "php-symfony-process")
+ (version "6.3.4")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/symfony/process")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "05jp156j8gxgm9ksxdmbmx1h844k02pml4iq9v54l04iah2qgi7k"))))
+ (build-system composer-build-system)
+ (native-inputs
+ (list php-phpunit-phpunit))
+ (synopsis "Subprocesses in PHP")
+ (description "This package provides the functionality to execute commands
+in sub-processes.")
+ (home-page "https://symfony.com")
+ (license license:expat)))
+
--
2.41.0
N
N
Nicolas Graves wrote on 19 Dec 2023 14:57
[PATCH 72/95] gnu: Add php-symfony-phpunit-bridge.
(address . 67902@debbugs.gnu.org)(address . ngraves@ngraves.fr)
20231219140934.22783-72-ngraves@ngraves.fr
* gnu/packages/php-xyz.scm (php-symfony-phpunit-bridge): New variable.
* gnu/packages/patches/php-symfony-phpunit-bridge-getVendors-fix.patch:
New file.

Change-Id: Ie72bd332a6fb7aaf96a59ce24e6008e6aa599f59
---
...ymfony-phpunit-bridge-getVendors-fix.patch | 46 +++++++++++
gnu/packages/php-xyz.scm | 77 +++++++++++++++++++
2 files changed, 123 insertions(+)
create mode 100644 gnu/packages/patches/php-symfony-phpunit-bridge-getVendors-fix.patch

Toggle diff (139 lines)
diff --git a/gnu/packages/patches/php-symfony-phpunit-bridge-getVendors-fix.patch b/gnu/packages/patches/php-symfony-phpunit-bridge-getVendors-fix.patch
new file mode 100644
index 0000000000..fd48e2ce6c
--- /dev/null
+++ b/gnu/packages/patches/php-symfony-phpunit-bridge-getVendors-fix.patch
@@ -0,0 +1,46 @@
+From 4b7c29c3e98aa55ea7567a3d496595e539f30cdb Mon Sep 17 00:00:00 2001
+From: Nicolas Graves <ngraves@ngraves.fr>
+Date: Sun, 22 Oct 2023 16:31:40 +0200
+Subject: [PATCH] Deprecation.php: Do not check for composer in getVendors.
+
+---
+ DeprecationErrorHandler/Deprecation.php | 23 ++---------------------
+ 1 file changed, 2 insertions(+), 21 deletions(-)
+
+diff --git a/DeprecationErrorHandler/Deprecation.php b/DeprecationErrorHandler/Deprecation.php
+index 79cfa0c..b7074f7 100644
+--- a/DeprecationErrorHandler/Deprecation.php
++++ b/DeprecationErrorHandler/Deprecation.php
+@@ -365,27 +365,8 @@ class Deprecation
+ if (class_exists(DebugClassLoader::class, false)) {
+ self::$vendors[] = \dirname((new \ReflectionClass(DebugClassLoader::class))->getFileName());
+ }
+- foreach (get_declared_classes() as $class) {
+- if ('C' === $class[0] && 0 === strpos($class, 'ComposerAutoloaderInit')) {
+- $r = new \ReflectionClass($class);
+- $v = \dirname($r->getFileName(), 2);
+- if (file_exists($v.'/composer/installed.json')) {
+- self::$vendors[] = $v;
+- $loader = require $v.'/autoload.php';
+- $paths = self::addSourcePathsFromPrefixes(
+- array_merge($loader->getPrefixes(), $loader->getPrefixesPsr4()),
+- $paths
+- );
+- }
+- }
+- }
+- foreach ($paths as $path) {
+- foreach (self::$vendors as $vendor) {
+- if (0 !== strpos($path, $vendor)) {
+- self::$internalPaths[] = $path;
+- }
+- }
+- }
++ self::$vendors[] = $v;
++ self::$internalPaths[] = $paths;
+ }
+
+ return self::$vendors;
+--
+2.41.0
+
diff --git a/gnu/packages/php-xyz.scm b/gnu/packages/php-xyz.scm
index 6cd3295b85..d6a49d1f75 100644
--- a/gnu/packages/php-xyz.scm
+++ b/gnu/packages/php-xyz.scm
@@ -1954,3 +1954,80 @@ (define-public php-symfony-mime
(home-page "https://symfony.com")
(license license:expat)))
+(define-public php-symfony-phpunit-bridge
+ (package
+ (name "php-symfony-phpunit-bridge")
+ (version "6.3.6")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/symfony/phpunit-bridge")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "1v5zdjb0d7282wq0ghwzn9x005wqlzjmx2msi9vhp1c4l513fxgf"))
+ (patches
+ (search-patches "php-symfony-phpunit-bridge-getVendors-fix.patch"))))
+ (build-system composer-build-system)
+ (arguments
+ (list
+ #:test-flags ; Some tests are useless but get reported as risky.
+ ''("--bootstrap" "vendor/autoload.php" "--dont-report-useless-tests")
+ #:phases
+ #~(modify-phases %standard-phases
+ (add-after 'unpack 'deactivate-bootstrap.php
+ (lambda _
+ (substitute* "composer.json"
+ ((".*\"files\".*")
+ ""))))
+ (add-before 'check 'pre-check
+ (lambda* (#:key inputs #:allow-other-keys)
+ ;; Adapt some PHP test code to Guix context.
+ (mkdir-p
+ (string-append (getcwd) "/vendor/myfakevendor/myfakepackage1"))
+ (substitute* "Tests/DeprecationErrorHandler/DeprecationTest.php"
+ (("(.*)self::\\$vendorDir = \\$vendorDir;" all blank)
+ (string-append
+ blank "$vendorDir = '" (getcwd) "/vendor/';\n"
+ all)))
+ (substitute* "DeprecationErrorHandler/Deprecation.php"
+ (("(self::\\$vendors\\[\\] = )\\$v;" all eq)
+ (string-append eq "'" (getcwd) "/vendor';"))
+ (("(self::\\$internalPaths)\\[\\] = \\$paths;" all def)
+ (string-append
+ def " = ["
+ "'" (getcwd) "/Tests/DeprecationErrorHandler/Deprecation.php',"
+ "'" (getcwd) "/Tests/DeprecationErrorHandler/DeprecationTest.php',"
+ "'" (getcwd) "/Tests/DeprecationErrorHandler.php',"
+ "];")))
+ ;; Remove failing tests. All but two are probably failing
+ ;; because of some version mismatch of php-symfony-error-handler.
+ (for-each
+ (lambda (f)
+ (delete-file
+ (string-append "Tests/DeprecationErrorHandler/" f)))
+ '("partially_quiet.phpt"
+ "partially_quiet2.phpt"
+ "trigger_deprecation_types.phpt"
+ "trigger_error_types.phpt"
+ "weak_vendors_on_vendor.phpt"))
+ (delete-file "Tests/CoverageListenerTest.php")
+ ;; For most simple cases, handle php-symfony-error-handler
+ ;; discrepancies.
+ (substitute* (find-files "Tests" "\\.phpt")
+ (("Remaining indirect deprecation notices")
+ "Other deprecation notices")
+ (("Remaining direct deprecation notices")
+ "Other deprecation notices")))))))
+ (native-inputs
+ (list php-phpunit-phpunit
+ php-symfony-deprecation-contracts
+ php-symfony-error-handler))
+ (synopsis "Utilities for PHPUnit")
+ (description
+ "This package provides utilities for PHPUnit, especially user deprecation
+notices management.")
+ (home-page "https://symfony.com")
+ (license license:expat)))
+
--
2.41.0
N
N
Nicolas Graves wrote on 19 Dec 2023 14:57
[PATCH 74/95] gnu: Add php-symfony-property-info.
(address . 67902@debbugs.gnu.org)(address . ngraves@ngraves.fr)
20231219140934.22783-74-ngraves@ngraves.fr
* gnu/packages/php-xyz.scm (php-symfony-property-info): New variable.

Change-Id: I7e327c1987f35c73a2772bcac33c98c26434e466
---
gnu/packages/php-xyz.scm | 26 ++++++++++++++++++++++++++
1 file changed, 26 insertions(+)

Toggle diff (36 lines)
diff --git a/gnu/packages/php-xyz.scm b/gnu/packages/php-xyz.scm
index bbe6f6aa01..81f9f6fcdb 100644
--- a/gnu/packages/php-xyz.scm
+++ b/gnu/packages/php-xyz.scm
@@ -2053,3 +2053,29 @@ (define-public php-symfony-process
(home-page "https://symfony.com")
(license license:expat)))
+(define-public php-symfony-property-info
+ (package
+ (name "php-symfony-property-info")
+ (version "6.3.0")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/symfony/property-info")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "1ign8wdlgfx15kjc15vddp2mmpbhh7bbmbfkwg1qhyaqknjrifxr"))))
+ (build-system composer-build-system)
+ ;; Native inputs here create a loop that is hard to break.
+ ;; Maybe use a -bootstrap version if testing becomes important.
+ (arguments '(#:tests? #f))
+ (inputs
+ (list php-symfony-string))
+ (synopsis "Get PHP class properties")
+ (description
+ "This package provides utilities to extract information about PHP class'
+properties using metadata of popular sources.")
+ (home-page "https://symfony.com")
+ (license license:expat)))
+
--
2.41.0
N
N
Nicolas Graves wrote on 19 Dec 2023 14:57
[PATCH 75/95] gnu: Add php-symfony-polyfill-ctype.
(address . 67902@debbugs.gnu.org)(address . ngraves@ngraves.fr)
20231219140934.22783-75-ngraves@ngraves.fr
* gnu/packages/php-xyz.scm (php-symfony-polyfill-ctype): New variable.

Change-Id: I0508970374a7fb378df722ca6ca65a64d0222673
---
gnu/packages/php-xyz.scm | 20 ++++++++++++++++++++
1 file changed, 20 insertions(+)

Toggle diff (30 lines)
diff --git a/gnu/packages/php-xyz.scm b/gnu/packages/php-xyz.scm
index 81f9f6fcdb..44c5363525 100644
--- a/gnu/packages/php-xyz.scm
+++ b/gnu/packages/php-xyz.scm
@@ -2079,3 +2079,23 @@ (define-public php-symfony-property-info
(home-page "https://symfony.com")
(license license:expat)))
+(define-public php-symfony-polyfill-ctype
+ (package
+ (name "php-symfony-polyfill-ctype")
+ (version "1.28.0")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/symfony/polyfill-ctype")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "1xl4a18gvgc346m8s8pp2lphzlfdvy0jm82bkjrl09ym5qaxk5kv"))))
+ (build-system composer-build-system)
+ (synopsis "Ctype functions for older PHP versions")
+ (description "This component provides @code{ctype_*} functions to users
+who run php versions without the ctype extension.")
+ (home-page "https://symfony.com")
+ (license license:expat)))
+
--
2.41.0
N
N
Nicolas Graves wrote on 19 Dec 2023 14:57
[PATCH 76/95] gnu: Add php-symfony-polyfill-intl-grapheme.
(address . 67902@debbugs.gnu.org)(address . ngraves@ngraves.fr)
20231219140934.22783-76-ngraves@ngraves.fr
* gnu/packages/php-xyz.scm (php-symfony-polyfill-intl-grapheme): New variable.

Change-Id: I6ba8af443e75d09f590b26bf218ba24227b461b5
---
gnu/packages/php-xyz.scm | 20 ++++++++++++++++++++
1 file changed, 20 insertions(+)

Toggle diff (30 lines)
diff --git a/gnu/packages/php-xyz.scm b/gnu/packages/php-xyz.scm
index 44c5363525..1d6d16bd47 100644
--- a/gnu/packages/php-xyz.scm
+++ b/gnu/packages/php-xyz.scm
@@ -2099,3 +2099,23 @@ (define-public php-symfony-polyfill-ctype
(home-page "https://symfony.com")
(license license:expat)))
+(define-public php-symfony-polyfill-intl-grapheme
+ (package
+ (name "php-symfony-polyfill-intl-grapheme")
+ (version "1.28.0")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/symfony/polyfill-intl-grapheme")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "17zmi5by8qskfyl7f10imblara9xck8l996n0pnadcjbjs95h58s"))))
+ (build-system composer-build-system)
+ (synopsis "Intl's grapheme_* functions for older PHP")
+ (description "This package provides Symfony polyfill for intl's grapheme_*
+functions.")
+ (home-page "https://symfony.com")
+ (license license:expat)))
+
--
2.41.0
N
N
Nicolas Graves wrote on 19 Dec 2023 14:57
[PATCH 78/95] gnu: Add php-symfony-polyfill-intl-normalizer.
(address . 67902@debbugs.gnu.org)(address . ngraves@ngraves.fr)
20231219140934.22783-78-ngraves@ngraves.fr
* gnu/packages/php-xyz.scm (php-symfony-polyfill-intl-normalizer): New variable.

Change-Id: Ia34e991eceed9d9207c010eaf7351fc0cdea5004
---
gnu/packages/php-xyz.scm | 20 ++++++++++++++++++++
1 file changed, 20 insertions(+)

Toggle diff (30 lines)
diff --git a/gnu/packages/php-xyz.scm b/gnu/packages/php-xyz.scm
index c0d28cce05..afd75ce0d2 100644
--- a/gnu/packages/php-xyz.scm
+++ b/gnu/packages/php-xyz.scm
@@ -2151,3 +2151,23 @@ (define-public php-symfony-polyfill-intl-idn
(home-page "https://symfony.com")
(license license:expat)))
+(define-public php-symfony-polyfill-intl-normalizer
+ (package
+ (name "php-symfony-polyfill-intl-normalizer")
+ (version "1.28.0")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/symfony/polyfill-intl-normalizer")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "1rnf6hhs5sp6fsjjbrp4c32nbbs4zg4gngwycl7pz2hiifanwsyf"))))
+ (build-system composer-build-system)
+ (synopsis "Intl's normalizer_* functions for older PHP")
+ (description "This package provides Symfony polyfill for intl's
+normalizer_* functions.")
+ (home-page "https://symfony.com")
+ (license license:expat)))
+
--
2.41.0
N
N
Nicolas Graves wrote on 19 Dec 2023 14:58
[PATCH 79/95] gnu: Add php-symfony-polyfill-mbstring.
(address . 67902@debbugs.gnu.org)(address . ngraves@ngraves.fr)
20231219140934.22783-79-ngraves@ngraves.fr
* gnu/packages/php-xyz.scm (php-symfony-polyfill-mbstring): New variable.

Change-Id: I8a75f962e375e2905183a41a4a5ffb8cb7156cd7
---
gnu/packages/php-xyz.scm | 20 ++++++++++++++++++++
1 file changed, 20 insertions(+)

Toggle diff (30 lines)
diff --git a/gnu/packages/php-xyz.scm b/gnu/packages/php-xyz.scm
index afd75ce0d2..820aad9d0e 100644
--- a/gnu/packages/php-xyz.scm
+++ b/gnu/packages/php-xyz.scm
@@ -2171,3 +2171,23 @@ (define-public php-symfony-polyfill-intl-normalizer
(home-page "https://symfony.com")
(license license:expat)))
+(define-public php-symfony-polyfill-mbstring
+ (package
+ (name "php-symfony-polyfill-mbstring")
+ (version "1.28.0")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/symfony/polyfill-mbstring")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "0845szanlrflafgjf7zy7624h9j5gxfdyrriv28443g932xd8dzr"))))
+ (build-system composer-build-system)
+ (synopsis "Polyfill for PHPs Mbstring extension")
+ (description "This package provides a partial, native PHP implementation
+for the Mbstring extension.")
+ (home-page "https://symfony.com")
+ (license license:expat)))
+
--
2.41.0
N
N
Nicolas Graves wrote on 19 Dec 2023 14:57
[PATCH 77/95] gnu: Add php-symfony-polyfill-intl-idn.
(address . 67902@debbugs.gnu.org)(address . ngraves@ngraves.fr)
20231219140934.22783-77-ngraves@ngraves.fr
* gnu/packages/php-xyz.scm (php-symfony-polyfill-intl-idn): New variable.

Change-Id: Icca9053843d2297a08f992eb463598dd86326fbc
---
gnu/packages/php-xyz.scm | 32 ++++++++++++++++++++++++++++++++
1 file changed, 32 insertions(+)

Toggle diff (42 lines)
diff --git a/gnu/packages/php-xyz.scm b/gnu/packages/php-xyz.scm
index 1d6d16bd47..c0d28cce05 100644
--- a/gnu/packages/php-xyz.scm
+++ b/gnu/packages/php-xyz.scm
@@ -2119,3 +2119,35 @@ (define-public php-symfony-polyfill-intl-grapheme
(home-page "https://symfony.com")
(license license:expat)))
+(define-public php-symfony-polyfill-intl-idn
+ (package
+ (name "php-symfony-polyfill-intl-idn")
+ (version "1.28.0")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/symfony/polyfill-intl-idn")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "00mp7cn68r8sdbwcjjjp3bgch9zjpkv9b80srawsmq77spwpd0sh"))))
+ (build-system composer-build-system)
+ (arguments
+ '(#:phases (modify-phases %standard-phases
+ (add-after 'unpack 'remove-polyfill-php72-dependency
+ (lambda _
+ (substitute* "composer.json"
+ ((".*symfony/polyfill-intl-normalizer.*," all)
+ (string-drop-right all 1))
+ ((".*symfony/polyfill-php72.*")
+ "")))))))
+ (inputs
+ (list php-symfony-polyfill-intl-normalizer))
+ (synopsis "Intl's iden_ functions for older PHP")
+ (description
+ "This package provides Symfony polyfill for intl's idn_to_ascii and
+idn_to_utf8 functions.")
+ (home-page "https://symfony.com")
+ (license license:expat)))
+
--
2.41.0
N
N
Nicolas Graves wrote on 19 Dec 2023 14:58
[PATCH 80/95] gnu: Add php-symfony-polyfill-uuid.
(address . 67902@debbugs.gnu.org)(address . ngraves@ngraves.fr)
20231219140934.22783-80-ngraves@ngraves.fr
* gnu/packages/php-xyz.scm (php-symfony-polyfill-uuid): New variable.

Change-Id: I0665b86b5cc4070a33336d409392d99d960caade
---
gnu/packages/php-xyz.scm | 19 +++++++++++++++++++
1 file changed, 19 insertions(+)

Toggle diff (29 lines)
diff --git a/gnu/packages/php-xyz.scm b/gnu/packages/php-xyz.scm
index 820aad9d0e..1e00b2e84d 100644
--- a/gnu/packages/php-xyz.scm
+++ b/gnu/packages/php-xyz.scm
@@ -2191,3 +2191,22 @@ (define-public php-symfony-polyfill-mbstring
(home-page "https://symfony.com")
(license license:expat)))
+(define-public php-symfony-polyfill-uuid
+ (package
+ (name "php-symfony-polyfill-uuid")
+ (version "1.28.0")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/symfony/polyfill-uuid")
+ (commit "9c44518a5aff8da565c8a55dbe85d2769e6f630e")))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "0l7q6hj0xbibq0417q25kvvpwy5mq6fkwvi675yrw3q9w3advrrx"))))
+ (build-system composer-build-system)
+ (synopsis "UUIDs for older PHP versions")
+ (description "This package provides Symfony polyfill for uuid functions.")
+ (home-page "https://symfony.com")
+ (license license:expat)))
+
--
2.41.0
N
N
Nicolas Graves wrote on 19 Dec 2023 14:58
[PATCH 81/95] gnu: Add php-symfony-service-contracts.
(address . 67902@debbugs.gnu.org)(address . ngraves@ngraves.fr)
20231219140934.22783-81-ngraves@ngraves.fr
* gnu/packages/php-xyz.scm (php-symfony-service-contracts): New variable.

Change-Id: I6e3a8f5cf17e3a71a362a97373cd77bf08781e87
---
gnu/packages/php-xyz.scm | 26 ++++++++++++++++++++++++++
1 file changed, 26 insertions(+)

Toggle diff (36 lines)
diff --git a/gnu/packages/php-xyz.scm b/gnu/packages/php-xyz.scm
index 1e00b2e84d..b2be6b259c 100644
--- a/gnu/packages/php-xyz.scm
+++ b/gnu/packages/php-xyz.scm
@@ -2210,3 +2210,29 @@ (define-public php-symfony-polyfill-uuid
(home-page "https://symfony.com")
(license license:expat)))
+(define-public php-symfony-service-contracts
+ (package
+ (name "php-symfony-service-contracts")
+ (version "3.3.0")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/symfony/service-contracts")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "01ilvij609w7mlrif68fc5vs3dw69pmwyci0gp8nh0wljbp9fw5c"))))
+ (build-system composer-build-system)
+ (arguments
+ `(#:test-flags '("--bootstrap" "vendor/autoload.php" "Test")))
+ (native-inputs
+ (list php-phpunit-phpunit))
+ (inputs
+ (list php-psr-container))
+ (synopsis "PHP abstractions related to writing services")
+ (description "This package provides generic abstractions related to
+writing PHP services.")
+ (home-page "https://symfony.com")
+ (license license:expat)))
+
--
2.41.0
N
N
Nicolas Graves wrote on 19 Dec 2023 14:58
[PATCH 82/95] gnu: Add php-symfony-stopwatch.
(address . 67902@debbugs.gnu.org)(address . ngraves@ngraves.fr)
20231219140934.22783-82-ngraves@ngraves.fr
* gnu/packages/php-xyz.scm (php-symfony-stopwatch): New variable.

Change-Id: I71387577b53c9b91233e46177f7b93015f659af5
---
gnu/packages/php-xyz.scm | 23 +++++++++++++++++++++++
1 file changed, 23 insertions(+)

Toggle diff (33 lines)
diff --git a/gnu/packages/php-xyz.scm b/gnu/packages/php-xyz.scm
index b2be6b259c..ddefc1d67e 100644
--- a/gnu/packages/php-xyz.scm
+++ b/gnu/packages/php-xyz.scm
@@ -2236,3 +2236,26 @@ (define-public php-symfony-service-contracts
(home-page "https://symfony.com")
(license license:expat)))
+(define-public php-symfony-stopwatch
+ (package
+ (name "php-symfony-stopwatch")
+ (version "6.3.0")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/symfony/stopwatch")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "1q65jbmnshq9dcjm7kx25kymxqgpqds0bcbf8fjmdmp2sxbvzjxr"))))
+ (build-system composer-build-system)
+ (inputs
+ (list php-symfony-service-contracts))
+ (native-inputs
+ (list php-phpunit-phpunit))
+ (synopsis "Profile PHP code")
+ (description "This package provides a way to profile code.")
+ (home-page "https://symfony.com")
+ (license license:expat)))
+
--
2.41.0
N
N
Nicolas Graves wrote on 19 Dec 2023 14:58
[PATCH 90/95] gnu: Add php-doctrine-annotations.
(address . 67902@debbugs.gnu.org)(address . ngraves@ngraves.fr)
20231219140934.22783-90-ngraves@ngraves.fr
* gnu/packages/php-xyz.scm (php-doctrine-annotations): New variable.

Change-Id: Ifd8f2f247f94b47833e6ef8b80788f3a3e9dcca4
---
gnu/packages/php-xyz.scm | 29 +++++++++++++++++++++++++++++
1 file changed, 29 insertions(+)

Toggle diff (39 lines)
diff --git a/gnu/packages/php-xyz.scm b/gnu/packages/php-xyz.scm
index 036554b8ab..2b246dee1e 100644
--- a/gnu/packages/php-xyz.scm
+++ b/gnu/packages/php-xyz.scm
@@ -2449,3 +2449,32 @@ (define-public php-doctrine-cache
(home-page "https://www.doctrine-project.org/projects/cache")
(license license:expat)))
+;; This package is placed here because it needs to be defined after
+;; php-symfony-cache due to package inheritance.
+(define-public php-doctrine-annotations
+ (package
+ (name "php-doctrine-annotations")
+ (version "2.0.1")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/doctrine/annotations")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "04hsykqcigvmv6rvwjay5scvjji6rcqzwdw9clzfa3xx50mbz38n"))))
+ (build-system composer-build-system)
+ (inputs
+ (list php-doctrine-lexer php-psr-cache))
+ (native-inputs
+ (list php-phpunit-phpunit
+ (package/inherit php-symfony-cache
+ (arguments '(#:tests? #f))
+ (native-inputs '()))))
+ (synopsis "Docblock PHP Annotations Parser")
+ (description
+ "This package provides a Docblock PHP Annotations Parser.")
+ (home-page "https://www.doctrine-project.org/projects/annotations")
+ (license license:expat)))
+
--
2.41.0
N
N
Nicolas Graves wrote on 19 Dec 2023 14:58
[PATCH 92/95] gnu: Add php-theseer-tokenizer.
(address . 67902@debbugs.gnu.org)(address . ngraves@ngraves.fr)
20231219140934.22783-92-ngraves@ngraves.fr
* gnu/packages/php-xyz.scm (php-theseer-tokenizer): New variable.

Change-Id: Ie1a5c3e5161bea664d3999de65e981aa978162b2
---
gnu/packages/php-xyz.scm | 22 ++++++++++++++++++++++
1 file changed, 22 insertions(+)

Toggle diff (32 lines)
diff --git a/gnu/packages/php-xyz.scm b/gnu/packages/php-xyz.scm
index 125b9d0069..20445725b2 100644
--- a/gnu/packages/php-xyz.scm
+++ b/gnu/packages/php-xyz.scm
@@ -2514,3 +2514,25 @@ (define-public php-doctrine-dbal
(home-page "https://www.doctrine-project.org/projects/dbal")
(license license:expat)))
+(define-public php-theseer-tokenizer
+ (package
+ (name "php-theseer-tokenizer")
+ (version "1.2.1")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/theseer/tokenizer")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "071bbsxd05rvl41shv7zn86d4f55cd7cjisk9gf0chxk0542sad7"))))
+ (build-system composer-build-system)
+ (native-inputs
+ (list php-phpunit-phpunit))
+ (synopsis "Convert PHP to XML")
+ (description "This package provides a small library for converting tokenized
+PHP source code into XML and potentially other formats.")
+ (home-page "https://github.com/theseer/tokenizer")
+ (license license:bsd-3)))
+
--
2.41.0
N
N
Nicolas Graves wrote on 19 Dec 2023 14:58
[PATCH 83/95] gnu: Add php-symfony-string.
(address . 67902@debbugs.gnu.org)(address . ngraves@ngraves.fr)
20231219140934.22783-83-ngraves@ngraves.fr
* gnu/packages/php-xyz.scm (php-symfony-string): New variable.

Change-Id: I2973216fae718c4204d1adc12ed3ca9c7b45974e
---
gnu/packages/php-xyz.scm | 31 +++++++++++++++++++++++++++++++
1 file changed, 31 insertions(+)

Toggle diff (41 lines)
diff --git a/gnu/packages/php-xyz.scm b/gnu/packages/php-xyz.scm
index ddefc1d67e..67c385d3d1 100644
--- a/gnu/packages/php-xyz.scm
+++ b/gnu/packages/php-xyz.scm
@@ -2259,3 +2259,34 @@ (define-public php-symfony-stopwatch
(home-page "https://symfony.com")
(license license:expat)))
+(define-public php-symfony-string
+ (package
+ (name "php-symfony-string")
+ (version "6.3.2")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/symfony/string")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "0i16bw3b278r8assyly7qrajfln7qg47cxlccq7wmwmypsbihm9l"))))
+ (build-system composer-build-system)
+ (inputs
+ (list php-symfony-polyfill-ctype
+ php-symfony-polyfill-intl-grapheme
+ php-symfony-polyfill-intl-normalizer
+ php-symfony-polyfill-mbstring))
+ (native-inputs
+ (list php-phpunit-phpunit
+ php-symfony-error-handler
+ php-symfony-intl
+ php-symfony-translation-contracts))
+ (synopsis "Manipulate strings in PHP")
+ (description
+ "This package provides a PHP object-oriented API to strings and deals with
+bytes, UTF-8 code points and grapheme clusters in a unified way.")
+ (home-page "https://symfony.com")
+ (license license:expat)))
+
--
2.41.0
N
N
Nicolas Graves wrote on 19 Dec 2023 14:58
[PATCH 86/95] gnu: Add php-symfony-var-dumper.
(address . 67902@debbugs.gnu.org)(address . ngraves@ngraves.fr)
20231219140934.22783-86-ngraves@ngraves.fr
* gnu/packages/php-xyz.scm (php-symfony-var-dumper): New variable.

Change-Id: I11abab742960fd65b88867729c0e28ce8f947601
---
gnu/packages/php-xyz.scm | 27 +++++++++++++++++++++++++++
1 file changed, 27 insertions(+)

Toggle diff (37 lines)
diff --git a/gnu/packages/php-xyz.scm b/gnu/packages/php-xyz.scm
index 833401dc20..1a2fcba136 100644
--- a/gnu/packages/php-xyz.scm
+++ b/gnu/packages/php-xyz.scm
@@ -2334,3 +2334,30 @@ (define-public php-symfony-uid
(home-page "https://symfony.com")
(license license:expat)))
+(define-public php-symfony-var-dumper
+ (package
+ (name "php-symfony-var-dumper")
+ (version "6.0.19")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/symfony/var-dumper")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "0mnbwsy3as81d94plgxaqpwacznhv2gp45q5h737shfhgyxx9ms3"))))
+ (build-system composer-build-system)
+ ;; Native inputs here create a loop that is hard to break.
+ ;; Maybe use a -bootstrap version if testing becomes important.
+ (arguments
+ '(#:tests? #f))
+ (inputs
+ (list php-symfony-deprecation-contracts php-symfony-polyfill-mbstring))
+ (synopsis "Walk through any PHP variable")
+ (description
+ "This package provides mechanisms for walking through any arbitrary PHP
+variable.")
+ (home-page "https://symfony.com")
+ (license license:expat)))
+
--
2.41.0
N
N
Nicolas Graves wrote on 19 Dec 2023 14:58
[PATCH 87/95] gnu: Add php-symfony-var-exporter.
(address . 67902@debbugs.gnu.org)(address . ngraves@ngraves.fr)
20231219140934.22783-87-ngraves@ngraves.fr
* gnu/packages/php-xyz.scm (php-symfony-var-exporter): New variable.

Change-Id: I8b4c6f253dced619e77a84c01dcaf4bcd4b963d4
---
gnu/packages/php-xyz.scm | 26 ++++++++++++++++++++++++++
1 file changed, 26 insertions(+)

Toggle diff (36 lines)
diff --git a/gnu/packages/php-xyz.scm b/gnu/packages/php-xyz.scm
index 1a2fcba136..6bd9545f1f 100644
--- a/gnu/packages/php-xyz.scm
+++ b/gnu/packages/php-xyz.scm
@@ -2361,3 +2361,29 @@ (define-public php-symfony-var-dumper
(home-page "https://symfony.com")
(license license:expat)))
+(define-public php-symfony-var-exporter
+ (package
+ (name "php-symfony-var-exporter")
+ (version "6.3.4")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/symfony/var-exporter")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "1ca40bggpjj41w92dwikzk1zldr4k1bs677j0c7vmh4kjm8ij939"))))
+ (build-system composer-build-system)
+ (arguments
+ (list
+ #:test-flags ''("--bootstrap" "vendor/autoload.php" "Tests")))
+ (native-inputs
+ (list php-phpunit-phpunit php-symfony-var-dumper))
+ (synopsis "Export PHP data structures to code")
+ (description
+ "This package allows exporting any serializable PHP data structure to
+plain PHP code.")
+ (home-page "https://symfony.com")
+ (license license:expat)))
+
--
2.41.0
N
N
Nicolas Graves wrote on 19 Dec 2023 14:58
[PATCH 85/95] gnu: Add php-symfony-uid.
(address . 67902@debbugs.gnu.org)(address . ngraves@ngraves.fr)
20231219140934.22783-85-ngraves@ngraves.fr
* gnu/packages/php-xyz.scm (php-symfony-uid): New variable.

Change-Id: If448a44102c6afef02b388c4cc6b8cbf6dfa7df2
---
gnu/packages/php-xyz.scm | 24 ++++++++++++++++++++++++
1 file changed, 24 insertions(+)

Toggle diff (34 lines)
diff --git a/gnu/packages/php-xyz.scm b/gnu/packages/php-xyz.scm
index 89ea42794f..833401dc20 100644
--- a/gnu/packages/php-xyz.scm
+++ b/gnu/packages/php-xyz.scm
@@ -2310,3 +2310,27 @@ (define-public php-symfony-translation-contracts
(home-page "https://symfony.com")
(license license:expat)))
+(define-public php-symfony-uid
+ (package
+ (name "php-symfony-uid")
+ (version "6.3.0")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/symfony/uid")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "117xpazf9i5vkl961lr2b4d2245gka7xb5nnjw6x99aykv9hx640"))))
+ (build-system composer-build-system)
+ (inputs
+ (list php-symfony-polyfill-uuid))
+ (native-inputs
+ (list php-phpunit-phpunit php-symfony-console php-symfony-phpunit-bridge))
+ (synopsis "PHP API to generate UIDs")
+ (description "This package provides an object-oriented API to generate and
+represent UIDs.")
+ (home-page "https://symfony.com")
+ (license license:expat)))
+
--
2.41.0
N
N
Nicolas Graves wrote on 19 Dec 2023 14:58
[PATCH 88/95] gnu: Add php-symfony-yaml.
(address . 67902@debbugs.gnu.org)(address . ngraves@ngraves.fr)
20231219140934.22783-88-ngraves@ngraves.fr
* gnu/packages/php-xyz.scm (php-symfony-yaml): New variable.

Change-Id: I798f2192136eaf4c08ff2fd02c07fe618b1f5b12
---
gnu/packages/php-xyz.scm | 28 ++++++++++++++++++++++++++++
1 file changed, 28 insertions(+)

Toggle diff (38 lines)
diff --git a/gnu/packages/php-xyz.scm b/gnu/packages/php-xyz.scm
index 6bd9545f1f..89130274e0 100644
--- a/gnu/packages/php-xyz.scm
+++ b/gnu/packages/php-xyz.scm
@@ -2387,3 +2387,31 @@ (define-public php-symfony-var-exporter
(home-page "https://symfony.com")
(license license:expat)))
+(define-public php-symfony-yaml
+ (package
+ (name "php-symfony-yaml")
+ (version "6.3.3")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/symfony/yaml")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "1i1wji066qi227w88jl2w4s7sddc7m8lji9japs7bkil3scqm6ia"))))
+ (build-system composer-build-system)
+ (inputs
+ (list php-symfony-deprecation-contracts php-symfony-polyfill-ctype))
+ (native-inputs
+ (list php-phpunit-phpunit
+ (package/inherit php-symfony-console
+ (arguments '(#:tests? #f))
+ (native-inputs '()))
+ php-symfony-phpunit-bridge))
+ (synopsis "Load and dump YAML files")
+ (description "This package provides a PHP component that loads and dumps
+YAML files.")
+ (home-page "https://symfony.com")
+ (license license:expat)))
+
--
2.41.0
N
N
Nicolas Graves wrote on 19 Dec 2023 14:58
[PATCH 89/95] gnu: Add php-doctrine-cache.
(address . 67902@debbugs.gnu.org)(address . ngraves@ngraves.fr)
20231219140934.22783-89-ngraves@ngraves.fr
* gnu/packages/php-xyz.scm (php-doctrine-cache): New variable.

Change-Id: I4db60b0dfc7bd84eb698cb10812fc48b8238f788
---
gnu/packages/php-xyz.scm | 34 ++++++++++++++++++++++++++++++++++
1 file changed, 34 insertions(+)

Toggle diff (44 lines)
diff --git a/gnu/packages/php-xyz.scm b/gnu/packages/php-xyz.scm
index 89130274e0..036554b8ab 100644
--- a/gnu/packages/php-xyz.scm
+++ b/gnu/packages/php-xyz.scm
@@ -2415,3 +2415,37 @@ (define-public php-symfony-yaml
(home-page "https://symfony.com")
(license license:expat)))
+;; This package is placed here because it needs to be defined after
+;; php-symfony-cache due to package inheritance.
+(define-public php-doctrine-cache
+ (package
+ (name "php-doctrine-cache")
+ (version "2.2.0")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/doctrine/cache")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "0dq1sylirjhps485s748qmb79cz64njs9wy9qxj10h3r01b6knz6"))))
+ (build-system composer-build-system)
+ (arguments
+ '(#:test-flags '("--bootstrap" "vendor/autoload.php")))
+ (native-inputs
+ (list php-phpunit-phpunit
+ php-psr-cache
+ php-cache-integration-tests
+ (package/inherit php-symfony-cache
+ (arguments '(#:tests? #f))
+ (native-inputs '()))
+ php-symfony-var-exporter))
+ (synopsis "PHP cache library")
+ (description
+ "This package provides a PHP cache popular library. This implementation
+supports many different drivers such as redis, memcache, apc, mongodb and
+others.")
+ (home-page "https://www.doctrine-project.org/projects/cache")
+ (license license:expat)))
+
--
2.41.0
N
N
Nicolas Graves wrote on 19 Dec 2023 14:58
[PATCH 91/95] gnu: Add php-doctrine-dbal.
(address . 67902@debbugs.gnu.org)(address . ngraves@ngraves.fr)
20231219140934.22783-91-ngraves@ngraves.fr
* gnu/packages/php-xyz.scm (php-doctrine-dbal): New variable.

Change-Id: Ifb88a4da25e138ee22448237604d448332878ae9
---
gnu/packages/php-xyz.scm | 36 ++++++++++++++++++++++++++++++++++++
1 file changed, 36 insertions(+)

Toggle diff (46 lines)
diff --git a/gnu/packages/php-xyz.scm b/gnu/packages/php-xyz.scm
index 2b246dee1e..125b9d0069 100644
--- a/gnu/packages/php-xyz.scm
+++ b/gnu/packages/php-xyz.scm
@@ -2478,3 +2478,39 @@ (define-public php-doctrine-annotations
(home-page "https://www.doctrine-project.org/projects/annotations")
(license license:expat)))
+;; This package is placed here because it needs to be defined after
+;; php-symfony-cache due to package inheritance.
+(define-public php-doctrine-dbal
+ (package
+ (name "php-doctrine-dbal")
+ (version "3.7.1")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/doctrine/dbal")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "0fj68qx0bsczc0hh5y86zk9a5p693lx0sav8lidrz5nagqjhlnf2"))))
+ (build-system composer-build-system)
+ (arguments
+ '(#:test-flags '("--bootstrap" "vendor/autoload.php")))
+ (inputs
+ (list php-doctrine-deprecations php-psr-cache php-psr-log))
+ (native-inputs
+ (list php-phpunit-phpunit
+ php-doctrine-cache
+ php-doctrine-event-manager
+ php-fig-log-test
+ (package/inherit php-symfony-cache
+ (arguments '(#:tests? #f))
+ (native-inputs '()))
+ php-symfony-console))
+ (synopsis "Handle databases in PHP")
+ (description
+ "This package provides a PHP database abstraction layer (DBAL) with many
+features for database schema introspection and management.")
+ (home-page "https://www.doctrine-project.org/projects/dbal")
+ (license license:expat)))
+
--
2.41.0
N
N
Nicolas Graves wrote on 19 Dec 2023 14:58
[PATCH 93/95] gnu: Add php-twig-twig.
(address . 67902@debbugs.gnu.org)(address . ngraves@ngraves.fr)
20231219140934.22783-93-ngraves@ngraves.fr
* gnu/packages/php-xyz.scm (php-twig-twig): New variable.

Change-Id: I4f0f48269676a31ced17c4705eac239752ac9421
---
gnu/packages/php-xyz.scm | 26 ++++++++++++++++++++++++++
1 file changed, 26 insertions(+)

Toggle diff (36 lines)
diff --git a/gnu/packages/php-xyz.scm b/gnu/packages/php-xyz.scm
index 20445725b2..fc36464698 100644
--- a/gnu/packages/php-xyz.scm
+++ b/gnu/packages/php-xyz.scm
@@ -2536,3 +2536,29 @@ (define-public php-theseer-tokenizer
(home-page "https://github.com/theseer/tokenizer")
(license license:bsd-3)))
+(define-public php-twig-twig
+ (package
+ (name "php-twig-twig")
+ (version "3.7.1")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/twigphp/Twig")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "16bf5n29j4pa98h35hnx14d6fch4f9va92vvm1j1l4n7gm63p3kl"))))
+ (build-system composer-build-system)
+ (inputs
+ (list php-symfony-polyfill-mbstring php-symfony-polyfill-ctype))
+ (native-inputs
+ (list php-phpunit-phpunit
+ php-symfony-phpunit-bridge
+ php-psr-container))
+ (synopsis "Template language for PHP")
+ (description
+ "This package provides a flexible template language for PHP.")
+ (home-page "https://twig.symfony.com")
+ (license license:bsd-3)))
+
--
2.41.0
N
N
Nicolas Graves wrote on 19 Dec 2023 14:58
[PATCH 94/95] gnu: Add php-webmozart-assert.
(address . 67902@debbugs.gnu.org)(address . ngraves@ngraves.fr)
20231219140934.22783-94-ngraves@ngraves.fr
* gnu/packages/php-xyz.scm (php-webmozart-assert): New variable.

Change-Id: I4ab034d68ea7d13098292b7df1ae2405e9ea662b
---
gnu/packages/php-xyz.scm | 24 ++++++++++++++++++++++++
1 file changed, 24 insertions(+)

Toggle diff (34 lines)
diff --git a/gnu/packages/php-xyz.scm b/gnu/packages/php-xyz.scm
index fc36464698..9bd64cdf40 100644
--- a/gnu/packages/php-xyz.scm
+++ b/gnu/packages/php-xyz.scm
@@ -2562,3 +2562,27 @@ (define-public php-twig-twig
(home-page "https://twig.symfony.com")
(license license:bsd-3)))
+(define-public php-webmozart-assert
+ (package
+ (name "php-webmozart-assert")
+ (version "1.11.0")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/webmozarts/assert")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "1i2fcyz5xmfs7dz7gwds1fkqzzvw35six0bqmi0yvkxnc54q3wj1"))))
+ (build-system composer-build-system)
+ (native-inputs
+ (list php-phpunit-phpunit))
+ (inputs
+ (list php-symfony-polyfill-ctype))
+ (synopsis "Assertions to validate method I/O with nice error messages")
+ (description "This library contains efficient assertions to test the input
+and output of PHP methods.")
+ (home-page "https://github.com/webmozarts/assert")
+ (license license:expat)))
+
--
2.41.0
N
N
Nicolas Graves wrote on 19 Dec 2023 14:58
[PATCH 95/95] gnu: Add php-phpunit-phpunit.
(address . 67902@debbugs.gnu.org)(address . ngraves@ngraves.fr)
20231219140934.22783-95-ngraves@ngraves.fr
* gnu/packages/php-xyz.scm (php-phpunit-phpunit): New variable.

Change-Id: Ibc96cc5f2a0e06025beb8e16cc19012e99cf2908
---
gnu/packages/php-xyz.scm | 54 ++++++++++++++++++++++++++++++++++++++++
1 file changed, 54 insertions(+)

Toggle diff (64 lines)
diff --git a/gnu/packages/php-xyz.scm b/gnu/packages/php-xyz.scm
index 9bd64cdf40..6b5b780af5 100644
--- a/gnu/packages/php-xyz.scm
+++ b/gnu/packages/php-xyz.scm
@@ -2586,3 +2586,57 @@ (define-public php-webmozart-assert
(home-page "https://github.com/webmozarts/assert")
(license license:expat)))
+(define-public php-phpunit-phpunit
+ (package
+ (name "phpunit")
+ (version "9.6.10")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/sebastianbergmann/phpunit")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "15hpl8nr9vw1j7z7qp8l451vb6yz3pcshidhy7ca2dq1i7smhgr3"))))
+ (build-system composer-build-system)
+ (arguments
+ ;; Requires phpspec/prophecy-phpunit, which in turns requires phpunit.
+ `(#:tests? #f))
+ (inputs
+ (letrec* ((package-list
+ (list php-sebastian-version
+ php-sebastian-type
+ php-sebastian-cli-parser
+ php-sebastian-recursion-context
+ php-sebastian-resource-operations
+ php-sebastian-object-enumerator
+ php-sebastian-global-state
+ php-sebastian-exporter
+ php-sebastian-environment
+ php-sebastian-diff
+ php-sebastian-comparator
+ php-sebastian-code-unit
+ php-phpunit-php-timer
+ php-phpunit-php-text-template
+ php-phpunit-php-invoker
+ php-phpunit-php-file-iterator
+ php-phpunit-php-code-coverage
+ php-phpspec-prophecy
+ php-phar-io-version
+ php-phar-io-manifest
+ php-myclabs-deep-copy
+ php-doctrine-instantiator))
+ (rewrite
+ (lambda (p)
+ (package
+ (inherit p)
+ (arguments '(#:tests? #f))
+ (native-inputs '())
+ (inputs (map (compose rewrite cadr) (package-inputs p)))))))
+ (map rewrite package-list)))
+ (synopsis "PHP Unit Testing framework")
+ (description "PHPUnit is a testing framework for PHP. It is an instance of
+the xUnit architecture for unit testing frameworks.")
+ (home-page "https://phpunit.de/")
+ (license license:bsd-3)))
--
2.41.0
N
N
Nicolas Graves wrote on 19 Dec 2023 14:58
[PATCH 84/95] gnu: Add php-symfony-translation-contracts.
(address . 67902@debbugs.gnu.org)(address . ngraves@ngraves.fr)
20231219140934.22783-84-ngraves@ngraves.fr
* gnu/packages/php-xyz.scm (php-symfony-translation-contracts): New variable.

Change-Id: I36e2c9e50ce2af4d4db531a5a6522ffd6c62990f
---
gnu/packages/php-xyz.scm | 20 ++++++++++++++++++++
1 file changed, 20 insertions(+)

Toggle diff (30 lines)
diff --git a/gnu/packages/php-xyz.scm b/gnu/packages/php-xyz.scm
index 67c385d3d1..89ea42794f 100644
--- a/gnu/packages/php-xyz.scm
+++ b/gnu/packages/php-xyz.scm
@@ -2290,3 +2290,23 @@ (define-public php-symfony-string
(home-page "https://symfony.com")
(license license:expat)))
+(define-public php-symfony-translation-contracts
+ (package
+ (name "php-symfony-translation-contracts")
+ (version "3.3.0")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/symfony/translation-contracts")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "0jx7pj30qb94hb8qnav8dp3aif3j0mh66km76dpzj44hz77qnq7l"))))
+ (build-system composer-build-system)
+ (synopsis "PHP translation abstractions")
+ (description "This package provides generic abstractions related to
+translation.")
+ (home-page "https://symfony.com")
+ (license license:expat)))
+
--
2.41.0
N
N
Nicolas Graves wrote on 19 Dec 2023 21:15
[PATCH 02/95 v2] gnu: php-xyz: Add copyright and useful modules.
(address . 67902@debbugs.gnu.org)(address . ngraves@ngraves.fr)
20231219201558.11823-1-ngraves@ngraves.fr
* gnu/packages/php-xyz.scm: Add copyright and useful modules.

Change-Id: I80fd9d604128c6dc09e8af49039d46972f26f971
---
gnu/packages/php-xyz.scm | 16 +++++++++++++---
1 file changed, 13 insertions(+), 3 deletions(-)

Toggle diff (39 lines)
diff --git a/gnu/packages/php-xyz.scm b/gnu/packages/php-xyz.scm
index bef5a2dcb4..55d5b6bfdc 100644
--- a/gnu/packages/php-xyz.scm
+++ b/gnu/packages/php-xyz.scm
@@ -1,5 +1,6 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2019 Julien Lepiller <julien@lepiller.eu>
+;;; Copyright © 2023 Nicolas Graves <ngraves@ngraves.fr>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -17,13 +18,22 @@
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
(define-module (gnu packages php-xyz)
- #:use-module (gnu packages)
- #:use-module (gnu packages php)
#:use-module (guix packages)
+ #:use-module (guix gexp)
#:use-module (guix git-download)
+ #:use-module (guix build-system composer)
#:use-module (guix build-system copy)
#:use-module (guix utils)
- #:use-module ((guix licenses) #:prefix license:))
+ #:use-module (srfi srfi-1)
+ #:use-module (srfi srfi-26)
+ #:use-module (ice-9 match)
+ #:use-module ((guix licenses) #:prefix license:)
+ #:use-module (gnu packages)
+ #:use-module (gnu packages check)
+ #:use-module (gnu packages databases)
+ #:use-module (gnu packages linux)
+ #:use-module (gnu packages php)
+ #:use-module (gnu packages version-control))
(define-public composer-classloader
(package
--
2.41.0
W
W
Wilko Meyer wrote on 23 Mar 17:36 +0100
[PATCH 00/95] PHP package chain.
(address . 67902@debbugs.gnu.org)(address . ngraves@ngraves.fr)
878r28vpez.fsf@wmeyer.eu
Hi Nicolas,

I applied v1 of the patchset and the one patch of v2 locally, which
worked pretty well. Patch 01/95 introducing abfngen got rejected, so I
manually applied the changes:

#+begin_src
~/devel/guix [env]$ cat gnu/packages/check.scm.rej
diff a/gnu/packages/check.scm b/gnu/packages/check.scm (rejected hunks)
@@ -109,6 +109,30 @@ (define-module (gnu packages check)
#:use-module (guix deprecation)
#:use-module (srfi srfi-1))
+(define-public abnfgen
+ (package
+ (name "abnfgen")
+ (version "0.21")
+ (source
+ (origin
+ (method url-fetch)
+ (sha256
+ (base32 "0vjkbsgr193r0fz0f29sljkw28djwavk51m1izinfjqb07k89xsv"))))
+ (build-system gnu-build-system)
+ (synopsis "Generate random documents matching an ABNF grammar.")
+ (description
+ "Given an Augmented Backus-Naur form (ABNF) grammar (RFC 4234),
+this package provides a binary to quickly generate lots of random documents
+that match that grammar. That is useful for
+@itemize
+@item verifying an ABNF grammar's syntactical correctness
+@item illustrating a grammar with non-obvious examples
+@item testing software that is supposed to consume documents described by a grammar
+@end itemize")
+ (license license:expat)))
+
(define-public pict
(package
(name "pict")
#+end_src

However I cannot get phpunit to be build successfully as one dependency
php-doctrine-instantiator seems to be faulty. I'm not too familiar
with guixes composer/php build system, but as far as I can see it fails
while creating the autoload_conf.php:

#+begin_src
error: in phase 'install': uncaught exception:
wrong-type-arg "delete-duplicates" "Wrong type argument in position ~A: ~S" (2 ()) (())
Backtrace:
11 (primitive-load "/gnu/store/2rwq2xc8dcnacns2maqwlkcx85i…")
In guix/build/gnu-build-system.scm:
908:2 10 (gnu-build #:source _ #:outputs _ #:inputs _ #:phases . #)
In ice-9/boot-9.scm:
1752:10 9 (with-exception-handler _ _ #:unwind? _ # _)
In srfi/srfi-1.scm:
634:9 8 (for-each #<procedure 7ffff777eac0 at guix/build/gnu-b…> …)
In ice-9/boot-9.scm:
1752:10 7 (with-exception-handler _ _ #:unwind? _ # _)
In guix/build/gnu-build-system.scm:
929:23 6 (_)
In ice-9/ports.scm:
433:17 5 (call-with-output-file _ _ #:binary _ #:encoding _)
476:4 4 (_ _)
In guix/build/composer-build-system.scm:
194:9 3 (_)
In unknown file:
2 (delete-duplicates (("Doctrine\\Instantiator\\" . "s…")) …)
In ice-9/boot-9.scm:
1685:16 1 (raise-exception _ #:continuable? _)
1685:16 0 (raise-exception _ #:continuable? _)

ice-9/boot-9.scm:1685:16: In procedure raise-exception:
In procedure delete-duplicates: Wrong type argument in position 2: ()
builder for `/gnu/store/23dv5mprah2xiz2skzf806cybn96zyv1-php-doctrine-instantiator-2.0.0.drv' failed with exit code 1
build of /gnu/store/23dv5mprah2xiz2skzf806cybn96zyv1-php-doctrine-instantiator-2.0.0.drv failed
View build log at '/var/log/guix/drvs/23/dv5mprah2xiz2skzf806cybn96zyv1-php-doctrine-instantiator-2.0.0.drv.gz'.
cannot build derivation `/gnu/store/aflr3m81hpaj4y1m62gnz171z3wnbflj-phpunit-9.6.10.drv': 1 dependencies couldn't be built
guix build: error: build of `/gnu/store/aflr3m81hpaj4y1m62gnz171z3wnbflj-phpunit-9.6.10.drv' failed
#+end_src

Maybe I'll find some time to debug this further/figure out what the
compose-build-system is trying there and why exactly it fails so I can
fix it myself; but just in case this wasn't already known I wanted to
document the issue here.

Thanks for the extensive package set and as far as git log tells me for
the composer-build-system as well! :)

--
Kind regards,

Wilko Meyer
w@wmeyer.eu
L
L
Ludovic Courtès wrote on 5 Apr 22:12 +0200
(address . ngraves@ngraves.fr)
874jcfpo16.fsf@gnu.org
Hey Nicolas,

Wilko Meyer <w@wmeyer.eu> skribis:

Toggle quote (4 lines)
> I applied v1 of the patchset and the one patch of v2 locally, which
> worked pretty well. Patch 01/95 introducing abfngen got rejected, so I
> manually applied the changes:

[...]

Toggle quote (5 lines)
> However I cannot get phpunit to be build successfully as one dependency
> php-doctrine-instantiator seems to be faulty. I'm not too familiar
> with guixes composer/php build system, but as far as I can see it fails
> while creating the autoload_conf.php:

Could you look into these issues?

I know nothing about PHP but I’m happy to apply the patch series when
the two of you tell me it’s ready.

Thanks,
Ludo’.
N
N
Nicolas Graves wrote on 6 Apr 00:43 +0200
(name . Ludovic Courtès)(address . ludo@gnu.org)
87le5r4ehy.fsf@ngraves.fr
On 2024-04-05 22:12, Ludovic Courtès wrote:

Toggle quote (17 lines)
> Hey Nicolas,
>
> Wilko Meyer <w@wmeyer.eu> skribis:
>
>> I applied v1 of the patchset and the one patch of v2 locally, which
>> worked pretty well. Patch 01/95 introducing abfngen got rejected, so I
>> manually applied the changes:
>
> [...]
>
>> However I cannot get phpunit to be build successfully as one dependency
>> php-doctrine-instantiator seems to be faulty. I'm not too familiar
>> with guixes composer/php build system, but as far as I can see it fails
>> while creating the autoload_conf.php:
>
> Could you look into these issues?

Hi Ludo,

As far as I remember, it did work on my side after the patches I sent on
19th December.

Most likely these remaining errors come from those faulty parts, so I'll
suggest reviewing them and confirming that phpunit indeed builds rather
than further investigating from there.

These were the patches concerned :

- "first" here is 67895
- "second" here is 67898 v2
- the packages are in 67902, only with the 02/95 patch in a v2.

>>>> It would also be nice if the updater would fill in the ‘inputs’ fields
>>>> of <upstream-source>: that would allow ‘guix refresh -u’ to
>>>> automatically update inputs.
>
> I'll try to give it a look now.

This is now done in 67906.

I've seen the review in 67898 which I'll address in a v3.
IIRC, 67898 depends on 67895.

Toggle quote (7 lines)
>
> I know nothing about PHP but I’m happy to apply the patch series when
> the two of you tell me it’s ready.
>
> Thanks,
> Ludo’.

--
Best regards,
Nicolas Graves
?