# remirepo/fedora spec file for phinx # # Copyright (c) 2016-2020 Remi Collet # License: CC-BY-SA # http://creativecommons.org/licenses/by-sa/4.0/ # # Please, preserve the changelog entries # # For compatibility with SCL %undefine __brp_mangle_shebangs %global gh_commit e8ac453951797408275b46a7fa4489dd63a93a67 %global gh_short %(c=%{gh_commit}; echo ${c:0:7}) %global gh_owner robmorgan #global gh_date 20150820 %global gh_project phinx %global psr0 Phinx %global with_tests 0%{!?_without_tests:1} Name: %{gh_project} Version: 0.12.2 Release: 1%{?gh_date?%{gh_date}git%{gh_short}}%{?dist} Summary: Manage the database migrations for your PHP app License: MIT URL: https://phinx.org Source0: %{name}-%{version}-%{?gh_short}.tgz Source1: %{name}-autoload.php Source2: makesrc.sh # Add version in application Patch0: %{name}-version.patch BuildArch: noarch %if %{with_tests} BuildRequires: php(language) >= 7.2 %if 0%{?fedora} >= 27 || 0%{?rhel} >= 8 BuildRequires: (php-composer(cakephp/collection) >= 4.0 with php-composer(cakephp/collection) < 5) BuildRequires: (php-composer(cakephp/database) >= 4.0 with php-composer(cakephp/database) < 5) BuildRequires: (php-composer(psr/container) >= 1.0 with php-composer(psr/container) < 2) BuildRequires: (php-composer(symfony/console) >= 3.4 with php-composer(symfony/console) < 6) BuildRequires: (php-composer(symfony/config) >= 3.4 with php-composer(symfony/config) < 6) BuildRequires: (php-composer(symfony/yaml) >= 3.4 with php-composer(symfony/yaml) < 6) %else BuildRequires: php-cakephp4-collection BuildRequires: php-cakephp4-database BuildRequires: php-psr-container BuildRequires: php-symfony3-console >= 3.4 BuildRequires: php-symfony3-config >= 3.4 BuildRequires: php-symfony3-yaml >= 3.4 %endif BuildRequires: php-pdo BuildRequires: php-date BuildRequires: php-json BuildRequires: php-pcre BuildRequires: php-spl # For tests, from composer.json "require-dev": { # "ext-json": "*", # "ext-pdo": "*", # "phpunit/phpunit": ^8.5", # "sebastian/comparator": ">=1.2.3", # "cakephp/cakephp-codesniffer": "^3.0", # "symfony/yaml": "^3.4|^4.0|^5.0" %global phpunit %{_bindir}/phpunit8 BuildRequires: phpunit8 %endif # For autoloader BuildRequires: php-composer(fedora/autoloader) # From composer.json, "require": { # "php": ">=7.2", # "cakephp/collection": "^4.0", # "cakephp/database": "^4.0", # "psr/container": "^1.0", # "symfony/console": "^3.4|^4.0|^5.0", # "symfony/config": "^3.4|^4.0|^5.0" # From composer.json, "suggest": { # "ext-json": "Install if using JSON configuration format", # "ext-pdo": "PDO extension is needed", # "symfony/yaml": "Install if using YAML configuration format" Requires: php(language) >= 7.2 %if 0%{?fedora} >= 27 || 0%{?rhel} >= 8 Requires: (php-composer(cakephp/collection) >= 4.0 with php-composer(cakephp/collection) < 5) Requires: (php-composer(cakephp/database) >= 4.0 with php-composer(cakephp/database) < 5) Requires: (php-composer(psr/container) >= 1.0 with php-composer(psr/container) < 2) Requires: (php-composer(symfony/console) >= 3.4 with php-composer(symfony/console) < 6) Requires: (php-composer(symfony/config) >= 3.4 with php-composer(symfony/config) < 6) Requires: (php-composer(symfony/yaml) >= 3.4 with php-composer(symfony/yaml) < 6) %else Requires: php-cakephp4-collection Requires: php-cakephp4-database Requires: php-psr-container Requires: php-symfony3-console >= 3.4 Requires: php-symfony3-config >= 3.4 Requires: php-symfony3-yaml >= 3.4 %endif # From phpcompatinfo report for 0.6.4 Requires: php-pdo Requires: php-date Requires: php-json Requires: php-pcre Requires: php-spl # For autoloader Requires: php-composer(fedora/autoloader) # Composer Provides: php-composer(%{gh_owner}/%{gh_project}) = %{version} %description Phinx makes it ridiculously easy to manage the database migrations for your PHP app. In less than 5 minutes you can install Phinx and create your first database migration. Phinx is just about migrations without all the bloat of a database ORM system or framework. Documentation: http://docs.phinx.org %prep %setup -q -n %{gh_project}-%{gh_commit} %patch0 -p0 sed -e 's/@VERSION@/%{version}/' \ -i src/Phinx/Console/PhinxApplication.php cp %{SOURCE1} src/%{psr0}/autoload.php sed -e 's:../../data:data:' -i src/Phinx/Console/Command/Init.php : Create the launcher cat << 'EOF' | tee phinx #!/usr/bin/env php run(); EOF %build : Nothing to build %install : Library mkdir -p %{buildroot}%{_datadir}/php cp -pr src/%{psr0} %{buildroot}%{_datadir}/php/%{psr0} : Default config files cp -pr data %{buildroot}%{_datadir}/php/%{psr0}/data : The command install -Dpm 755 phinx %{buildroot}%{_bindir}/phinx %check %if %{with_tests} mkdir vendor cat << 'EOF' | tee vendor/autoload.php phpunit.xml %else sed -e '/_ENABLED/s/true/false/;/SQLITE_ENABLED/s/false/true/' \ phpunit.xml.dist >phpunit.xml %endif : Run upstream test suite ret=0 for cmd in "php %{phpunit}" php72 php73 php74; do if which $cmd; then set $cmd $1 ${2:-%{_bindir}/phpunit8} \ --no-coverage || ret=1 fi done exit $ret %else : Test suite disabled %endif %files %{!?_licensedir:%global license %%doc} %license LICENSE %doc composer.json %doc *.md %doc app/web.php %{_datadir}/php/%{psr0} %{_bindir}/phinx %changelog * Wed Jun 24 2020 Remi Collet - 0.12.2-1 - update to 0.12.2 - add dependency on psr/container * Mon Apr 13 2020 Remi Collet - 0.12.1-1 - update to 0.12.1 * Fri Apr 10 2020 Remi Collet - 0.12.0-1 - update to 0.12.0 - raise dependency on PHP 7.2 - switch to cakephp v4 - switch to phpunit v8 * Tue Apr 7 2020 Remi Collet - 0.11.6-1 - update to 0.11.6 * Mon Apr 6 2020 Remi Collet - 0.11.5-1 - update to 0.11.5 * Thu Jan 2 2020 Remi Collet - 0.11.4-1 - update to 0.11.4 - raise dependency on cake 3.7 * Fri Dec 13 2019 Remi Collet - 0.11.3-1 - update to 0.11.3 - allow Symfony 5 * Thu Aug 29 2019 Remi Collet - 0.11.1-2 - add patch for PHP 7.4 from https://github.com/cakephp/phinx/pull/1603 * Wed Aug 28 2019 Remi Collet - 0.11.1-1 - update to 0.11.1 - raise dependency on symfony 3.4 - use phpunit 7 * Tue Jul 9 2019 Remi Collet - 0.10.8-1 - update to 0.10.8 * Thu Apr 25 2019 Remi Collet - 0.10.7-1 - update to 0.10.7 * Thu Dec 13 2018 Remi Collet - 0.10.6-2 - cleanup for EL-8 * Tue Aug 14 2018 Remi Collet - 0.10.6-1 - update to 0.10.6 * Thu Jul 12 2018 Remi Collet - 0.10.5-1 - update to 0.10.5 * Fri Jun 22 2018 Remi Collet - 0.10.3-1 - update to 0.10.3 * Tue Jun 19 2018 Remi Collet - 0.10.2-1 - update to 0.10.2 * Tue Jun 19 2018 Remi Collet - 0.10.1-1 - update to 0.10.1 * Mon Jun 11 2018 Remi Collet - 0.10.0-1 - update to 0.10.0 - drop patch merged upstream - raise dependency on PHP 5.6 - add dependency on cakephp/collection - add dependency on cakephp/database - use range dependencies on F27+ * Sat Dec 23 2017 Remi Collet - 0.9.2-1 - Update to 0.9.2 - open https://github.com/cakephp/phinx/pull/1278 fix tests - use phpunit6 on Fedora - allow Symfony 4 * Sun Sep 10 2017 Remi Collet - 0.9.1-1 - Update to 0.9.1 * Mon Sep 4 2017 Remi Collet - 0.9.0-1 - Update to 0.9.0 * Tue Jun 6 2017 Remi Collet - 0.8.1-1 - Update to 0.8.1 - allow Symfony 3 * Wed Mar 1 2017 Remi Collet - 0.8.0-1 - update to 0.8.0 * Tue Feb 28 2017 Remi Collet - 0.7.2-1 - update to 0.7.2 * Sun Feb 19 2017 Remi Collet - 0.7.1-1 - update to 0.7.1 * Fri Feb 10 2017 Remi Collet - 0.7.0-1 - update to 0.7.0 * Mon Jan 23 2017 Remi Collet - 0.6.6-1 - update to 0.6.6 - use a git snashop to retrieve test suite * Thu Oct 27 2016 Remi Collet - 0.6.5-1 - update to 0.6.5 - switch from symfony/class-loader to fedora/autoloader * Tue Sep 27 2016 Remi Collet - 0.6.4-1 - initial package