;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2019 Julien Lepiller ;;; ;;; This file is part of GNU Guix. ;;; ;;; GNU Guix is free software; you can redistribute it and/or modify it ;;; under the terms of the GNU General Public License as published by ;;; the Free Software Foundation; either version 3 of the License, or (at ;;; your option) any later version. ;;; ;;; GNU Guix is distributed in the hope that it will be useful, but ;;; WITHOUT ANY WARRANTY; without even the implied warranty of ;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ;;; GNU General Public License for more details. ;;; ;;; You should have received a copy of the GNU General Public License ;;; along with GNU Guix. If not, see . (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 git-download) #:use-module (guix build-system composer) #:use-module (guix build-system gnu) #:use-module (guix utils) #:use-module ((guix licenses) #:prefix license:)) (define-public composer-classloader (package (name "composer-classloader") (version "1.9.0") (source (origin (method git-fetch) (uri (git-reference (url "https://github.com/composer/composer.git") (commit version))) (file-name (git-file-name name version)) (sha256 (base32 "0127zmmg3yx84ljngfs86q7kjhyypybkf4d1ihfrfnzgynzxfxdf")))) (build-system gnu-build-system) (arguments `(#:phases (modify-phases %standard-phases (delete 'configure) (delete 'build) (delete 'check) (replace 'install (lambda* (#:key outputs #:allow-other-keys) (let* ((out (assoc-ref outputs "out")) (install (string-append out "/share/web/composer/ClassLoader.php"))) (mkdir-p (dirname install)) (copy-file "src/Composer/Autoload/ClassLoader.php" install))))))) (home-page "https://getcomposer.org") (synopsis "PHP class loader extracted from the composer package") (description "This package contains the class loader class used by Composer to 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-doctrine-instantiator (package (name "php-doctrine-instantiator") (version "1.3.1") (source (origin (method git-fetch) (uri (git-reference (url "https://github.com/doctrine/instantiator.git") (commit version))) (file-name (git-file-name name version)) (sha256 (base32 "17c72j29p77gdgh06b9qc0nivmav0k5yc22z4ryygj7dhr1h65nq")))) (build-system composer-build-system) (arguments ;; We do not have phpunit yet `(#:tests? #f)) (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.html") (license license:expat))) (define-public php-sebastian-recursion-context (package (name "php-sebastian-recursion-context") (version "4.0.2") (source (origin (method git-fetch) (uri (git-reference (url "https://github.com/sebastianbergmann/recursion-context.git") (commit version))) (file-name (git-file-name name version)) (sha256 (base32 "0glpydmvr95f9xbmh76vgid2nz7rf6lxwfz1j7ksvgmf4m1dniyz")))) (build-system composer-build-system) (arguments ;; We do not have phpunit yet `(#:tests? #f)) (synopsis "Process PHP variables recursively") (description "This package provides functionality to recursively process PHP variables") (home-page "http://www.github.com/sebastianbergmann/recursion-context") (license license:bsd-3))) (define-public php-sebastian-exporter (package (name "php-sebastian-exporter") (version "4.0.2") (source (origin (method git-fetch) (uri (git-reference (url "https://github.com/sebastianbergmann/exporter.git") (commit version))) (file-name (git-file-name name version)) (sha256 (base32 "03xj9gbi8ifnbj5n72gfpwyg65l71gg1r8yvzpbg6d3yxbqaa8f6")))) (build-system composer-build-system) (arguments ;; We do not have phpunit yet `(#:tests? #f)) (inputs `(("php-sebastian-recursion-context" ,php-sebastian-recursion-context))) (synopsis "Visualize PHP variables") (description "This package provides the functionality to export PHP variables for visualization") (home-page "http://www.github.com/sebastianbergmann/exporter") (license license:bsd-3))) (define-public php-myclabs-deep-copy (package (name "php-myclabs-deep-copy") (version "1.10.1") (source (origin (method git-fetch) (uri (git-reference (url "https://github.com/myclabs/DeepCopy.git") (commit version))) (file-name (git-file-name name version)) (sha256 (base32 "1ms4qhx5cf19ggdicnd7qjrigwam206py6mj6nw8bz71mafq9nbi")))) (build-system composer-build-system) (arguments ;; We do not have phpunit yet `(#:tests? #f)) (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.git") (license license:expat))) (define-public php-phar-io-version (package (name "php-phar-io-version") (version "3.0.2") (source (origin (method git-fetch) (uri (git-reference (url "https://github.com/phar-io/version.git") (commit version))) (file-name (git-file-name name version)) (sha256 (base32 "0r9470p0azw7l0x2wbn7kh0zhpswvjnm32vc8vml5v5nskmnqz4c")))) (build-system composer-build-system) (arguments ;; We do not have phpunit yet `(#:tests? #f)) (properties `((upstream-name . "phar-io/version"))) (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))) (define-public php-phar-io-manifest (package (name "php-phar-io-manifest") (version "2.0.1") (source (origin (method git-fetch) (uri (git-reference (url "https://github.com/phar-io/manifest.git") (commit version))) (file-name (git-file-name name version)) (sha256 (base32 "0r2s1qdkhn7782g1y6skxvp5w397vmwb496fymsnik2818w0q469")))) (build-system composer-build-system) (arguments ;; We do not have phpunit yet `(#:tests? #f)) (inputs `(("php-phar-io-version" ,php-phar-io-version))) (properties `((upstream-name . "phar-io/manifest"))) (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))) (define-public php-symfony-polyfill-ctype (package (name "php-symfony-polyfill-ctype") (version "1.17.1") (source (origin (method git-fetch) (uri (git-reference (url "https://github.com/symfony/polyfill-ctype.git") (commit (string-append "v" version)))) (file-name (git-file-name name version)) (sha256 (base32 "0bh22vwq2idy7fi8ajm6aggjdvds64s98y9854b5gl9s84dk9pz8")))) (build-system composer-build-system) (arguments ;; We do not have phpunit yet `(#:tests? #f)) (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))) (define-public php-webmozart-assert (package (name "php-webmozart-assert") (version "1.9.1") (source (origin (method git-fetch) (uri (git-reference (url "https://github.com/webmozart/assert.git") (commit version))) (file-name (git-file-name name version)) (sha256 (base32 "1q9bp4sp11r8ghdzr0qswdf1k5bf9b5s525im3kspar6y8019sh9")))) (build-system composer-build-system) (arguments ;; We do not have phpunit yet `(#:tests? #f)) (inputs `(("php-symfony-polyfill-ctype" ,php-symfony-polyfill-ctype))) (synopsis "Assertions to validate method input/output with nice error messages.") (description "This library contains efficient assertions to test the input and output of PHP methods.") (home-page "https://github.com/webmozart/assert") (license license:expat))) (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.git") (commit version))) (file-name (git-file-name name version)) (sha256 (base32 "1q685cpwbfxqy42iz61xxv6zbcc1qskn07nkipflj6c5s935l8jy")))) (build-system composer-build-system) (arguments ;; We do not have phpunit yet `(#:tests? #f)) (synopsis "Common reflection classes used by phpdocumentor to reflect the code structure") (description "This package contains common classes used by phpdocumentor to analyze the code structure.") (home-page "http://www.phpdoc.org") (license license:expat))) (define-public php-phpdocumentor-type-resolver (package (name "php-phpdocumentor-type-resolver") (version "1.3.0") (source (origin (method git-fetch) (uri (git-reference (url "https://github.com/phpDocumentor/TypeResolver.git") (commit version))) (file-name (git-file-name name version)) (sha256 (base32 "0wshv49z4hxraygg2vhzn0s9ih2y9ymzpcnyjfk14vcfq5yx53l9")))) (build-system composer-build-system) (arguments ;; We do not have phpunit yet `(#:tests? #f)) (inputs `(("php-phpdocumentor-reflection-common" ,php-phpdocumentor-reflection-common))) (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))) (define-public php-phpdocumentor-reflection-docblock (package (name "php-phpdocumentor-reflection-docblock") (version "5.1.0") (source (origin (method git-fetch) (uri (git-reference (url "https://github.com/phpDocumentor/ReflectionDocBlock.git") (commit version))) (file-name (git-file-name name version)) (sha256 (base32 "1bsqwcq5ix7f5p56kc92pl1nqpjdpfc92pjvwyshp1syrrspa3rr")))) (build-system composer-build-system) (arguments ;; We do not have phpunit yet `(#:tests? #f)) (inputs `(("php-webmozart-assert" ,php-webmozart-assert) ("php-phpdocumentor-reflection-common" ,php-phpdocumentor-reflection-common) ("php-phpdocumentor-type-resolver" ,php-phpdocumentor-type-resolver))) (synopsis "Library for retrieving documentation in code fro the code") (description "With this component, a library can provide 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))) (define-public php-theseer-tokenizer (package (name "php-theseer-tokenizer") (version "1.1.3") (source (origin (method git-fetch) (uri (git-reference (url "https://github.com/theseer/tokenizer.git") (commit "11336f6f84e16a720dae9d8e6ed5019efa85a0f9"))) (file-name (git-file-name name version)) (sha256 (base32 "0j436a3jpynnlqrvd7la7a7smj78aklkragwa9l8p91973xra18l")))) (build-system composer-build-system) (arguments ;; We do not have phpunit yet `(#:tests? #f)) (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))) (define-public php-sebastian-code-unit-reverse-lookup (package (name "php-sebastian-code-unit-reverse-lookup") (version "2.0.2") (source (origin (method git-fetch) (uri (git-reference (url "https://github.com/sebastianbergmann/code-unit-reverse-lookup.git") (commit version))) (file-name (git-file-name name version)) (sha256 (base32 "0lppni3qcd6gx50jf16y3n71ldj12xjd06kl9ml78zd5p2s6z4qc")))) (build-system composer-build-system) (arguments ;; We do not have phpunit yet `(#:tests? #f)) (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.") (home-page "https://github.com/sebastianbergmann/code-unit-reverse-lookup/") (license license:bsd-3))) (define-public php-phpunit-php-token-stream (package (name "php-phpunit-php-token-stream") (version "4.0.3") (source (origin (method git-fetch) (uri (git-reference (url "https://github.com/sebastianbergmann/php-token-stream.git") (commit version))) (file-name (git-file-name name version)) (sha256 (base32 "0iv8ssvyjhgxa1qpp5s8i0j409w49s2kc9qwv1c27qgdhv7yhf7h")))) (build-system composer-build-system) (arguments ;; We do not have phpunit yet `(#:tests? #f)) (synopsis "Wrapper around PHP's tokenizer extension") (description "This library provides a wrapper around PHP's tokenizer extension.") (home-page "https://github.com/sebastianbergmann/php-token-stream/") (license license:bsd-3))) (define-public php-sebastian-version (package (name "php-sebastian-version") (version "3.0.1") (source (origin (method git-fetch) (uri (git-reference (url "https://github.com/sebastianbergmann/version.git") (commit version))) (file-name (git-file-name name version)) (sha256 (base32 "1kr2i6s7y4k18bz09cqj4pc4bqzph9n6ncgpqq4p4fg790h5i5ym")))) (build-system composer-build-system) (arguments ;; We do not have phpunit yet `(#:tests? #f)) (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))) (define-public php-phpunit-php-file-iterator (package (name "php-phpunit-php-file-iterator") (version "3.0.4") (source (origin (method git-fetch) (uri (git-reference (url "https://github.com/sebastianbergmann/php-file-iterator.git") (commit version))) (file-name (git-file-name name version)) (sha256 (base32 "1pglbp8m4iv5w16gshlp49k4ngpsx28mhwip761kyvvd5w27ysr2")))) (build-system composer-build-system) (arguments ;; We do not have phpunit yet `(#:tests? #f)) (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))) (define-public php-phpunit-php-text-template (package (name "php-phpunit-php-text-template") (version "2.0.2") (source (origin (method git-fetch) (uri (git-reference (url "https://github.com/sebastianbergmann/php-text-template.git") (commit version))) (file-name (git-file-name name version)) (sha256 (base32 "0x38kj1xlnysg9xgad560k361l93vh32mvkyfn7rss3p2r319jhx")))) (build-system composer-build-system) (arguments ;; We do not have phpunit yet `(#:tests? #f)) (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))) (define-public php-sebastian-diff (package (name "php-sebastian-diff") (version "4.0.2") (source (origin (method git-fetch) (uri (git-reference (url "https://github.com/sebastianbergmann/diff.git") (commit version))) (file-name (git-file-name name version)) (sha256 (base32 "0fr5vrmz3d1wwpf59y16fin5lgi55sjd7dqfkx0zqmsqadbjrjxq")))) (build-system composer-build-system) (arguments ;; We do not have phpunit yet `(#:tests? #f)) (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))) (define-public php-sebastian-comparator (package (name "php-sebastian-comparator") (version "4.0.3") (source (origin (method git-fetch) (uri (git-reference (url "https://github.com/sebastianbergmann/comparator.git") (commit version))) (file-name (git-file-name name version)) (sha256 (base32 "1scw7vm26layqh5mzvdhjiil520fj6ipixkjnmwm036xr925iww0")))) (build-system composer-build-system) (arguments ;; We do not have phpunit yet `(#:tests? #f)) (inputs `(("php-sebastian-exporter" ,php-sebastian-exporter) ("php-sebastian-diff" ,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))) (define-public php-sebastian-environment (package (name "php-sebastian-environment") (version "5.1.2") (source (origin (method git-fetch) (uri (git-reference (url "https://github.com/sebastianbergmann/environment.git") (commit version))) (file-name (git-file-name name version)) (sha256 (base32 "0lhaiwk6dbwii9kmjaq3gjl2x5s1rikmxkvmy4mjvjcbi7imp38s")))) (build-system composer-build-system) (arguments ;; We do not have phpunit yet `(#:tests? #f)) (synopsis "Handle HHVM and PHP environments") (description "This package provides functionality to handle HHVM/PHP environments") (home-page "http://www.github.com/sebastianbergmann/environment") (license license:bsd-3))) (define-public php-phpspec-prophecy (package (name "php-phpspec-prophecy") (version "1.11.1") (source (origin (method git-fetch) (uri (git-reference (url "https://github.com/phpspec/prophecy.git") (commit version))) (file-name (git-file-name name version)) (sha256 (base32 "1pd6iz6pbfpaz5rqa36q01l569zgiqpjgqmzw3rra2qdh1jrwdy1")))) (build-system composer-build-system) (arguments ;; We do not have phpunit yet `(#:tests? #f)) (inputs `(("php-sebastian-recursion-context" ,php-sebastian-recursion-context) ("php-doctrine-instantiator" ,php-doctrine-instantiator) ("php-sebastian-comparator" ,php-sebastian-comparator) ("php-phpdocumentor-reflection-docblock" ,php-phpdocumentor-reflection-docblock))) (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))) (define-public php-sebastian-object-reflector (package (name "php-sebastian-object-reflector") (version "2.0.2") (source (origin (method git-fetch) (uri (git-reference (url "https://github.com/sebastianbergmann/object-reflector.git") (commit version))) (file-name (git-file-name name version)) (sha256 (base32 "1qkvp2s932h53f161l30qlnxicw4fklirmnds173wgmavms1b5yb")))) (build-system composer-build-system) (arguments ;; We do not have phpunit yet `(#:tests? #f)) (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))) (define-public php-sebastian-global-state (package (name "php-sebastian-global-state") (version "4.0.0") (source (origin (method git-fetch) (uri (git-reference (url "https://github.com/sebastianbergmann/global-state.git") (commit version))) (file-name (git-file-name name version)) (sha256 (base32 "0x6sfw353px5y7azipn2mb15w7w7zxbbpbv3dbhhkryrhad8w064")))) (build-system composer-build-system) (arguments ;; We do not have phpunit yet `(#:tests? #f)) (inputs `(("php-sebastian-recursion-context" ,php-sebastian-recursion-context) ("php-sebastian-object-reflector" ,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 "http://www.github.com/sebastianbergmann/global-state") (license license:bsd-3))) (define-public php-sebastian-object-enumerator (package (name "php-sebastian-object-enumerator") (version "4.0.2") (source (origin (method git-fetch) (uri (git-reference (url "https://github.com/sebastianbergmann/object-enumerator.git") (commit version))) (file-name (git-file-name name version)) (sha256 (base32 "1qx28r0ncbh0x9i0jplyg870paxxsy7g1ibgbdqq11176101aj6q")))) (build-system composer-build-system) (arguments ;; We do not have phpunit yet `(#:tests? #f)) (inputs `(("php-sebastian-recursion-context" ,php-sebastian-recursion-context) ("php-sebastian-object-reflector" ,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)))