# remirepo/fedora spec file for phinx # # Copyright (c) 2016-2017 Remi Collet # License: CC-BY-SA # http://creativecommons.org/licenses/by-sa/4.0/ # # Please, preserve the changelog entries # %global gh_commit e1698319ad55157c233b658c08f7a10617e797ca %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} %if 0%{?fedora} >= 27 %global symfony_max 5 %else %global symfony_max 4 %endif Name: %{gh_project} Version: 0.9.2 Release: 1%{?gh_date?%{gh_date}git%{gh_short}}%{?dist} Summary: Manage the database migrations for your PHP app Group: Development/Libraries License: MIT URL: https://phinx.org Source0: %{name}-%{version}-%{?gh_short}.tgz Source1: %{name}-autoload.php Source2: makesrc.sh # hardcode version instead of read it from composer.json Patch0: %{name}-version.patch # https://github.com/cakephp/phinx/pull/1278 Patch1: %{name}-tests.patch BuildArch: noarch %if %{with_tests} BuildRequires: php(language) >= 5.4 BuildRequires: php-composer(symfony/console) < %{symfony_max} BuildRequires: php-composer(symfony/config) < %{symfony_max} BuildRequires: php-composer(symfony/yaml) < %{symfony_max} BuildRequires: php-pdo BuildRequires: php-date BuildRequires: php-json BuildRequires: php-pcre BuildRequires: php-spl # For tests, from composer.json "require-dev": { # "phpunit/phpunit": "^4.8.35|^5.7|^6.5" # "cakephp/cakephp-codesniffer": "^3.0" %if 0%{?fedora} >= 26 %global phpunit %{_bindir}/phpunit6 BuildRequires: phpunit6 %else %global phpunit %{_bindir}/phpunit BuildRequires: php-phpunit-PHPUnit >= 4.8.35 %endif %endif # For autoloader BuildRequires: php-composer(fedora/autoloader) # From composer.json, "require": { # "php": ">=5.4", # "symfony/console": "~2.8|~3.0|^4.0", # "symfony/config": "~2.8|~3.0|^4.0", # "symfony/yaml": "~2.8|~3.0|^4.0" Requires: php(language) >= 5.4 Requires: php-composer(symfony/console) < %{symfony_max} Requires: php-composer(symfony/config) < %{symfony_max} Requires: php-composer(symfony/yaml) < %{symfony_max} # 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 %patch1 -p0 -b .old cp %{SOURCE1} src/%{psr0}/autoload.php sed -e 's:../data/Phinx: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 file install -Dpm 644 phinx.yml %{buildroot}%{_datadir}/php/%{psr0}/data/phinx.yml : The command install -Dpm 755 phinx %{buildroot}%{_bindir}/phinx %check %if %{with_tests} mkdir vendor cat << 'EOF' | tee vendor/autoload.php phpunit.xml : Run upstream test suite ret=0 for cmd in "php %{phpunit}" php70 php71 php72; do if which $cmd; then set $cmd $1 ${2:-%{_bindir}/phpunit6} --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 * 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