From 215a89e661cbaf2114d1cd31a94b6f5ecb0544fe Mon Sep 17 00:00:00 2001 From: Remi Collet Date: Wed, 29 Jun 2016 18:34:19 +0200 Subject: php-ocramius-proxy-manager: 2.0.0 --- composer.json | 54 +++++++++++++++++++++ php-ocramius-proxy-manager.spec | 104 ++++++++++++++++++++-------------------- 2 files changed, 105 insertions(+), 53 deletions(-) create mode 100644 composer.json diff --git a/composer.json b/composer.json new file mode 100644 index 0000000..5e9328f --- /dev/null +++ b/composer.json @@ -0,0 +1,54 @@ +{ + "name": "ocramius/proxy-manager", + "description": "A library providing utilities to generate, instantiate and generally operate with Object Proxies", + "type": "library", + "license": "MIT", + "homepage": "https://github.com/Ocramius/ProxyManager", + "keywords": [ + "proxy", + "proxy pattern", + "service proxies", + "lazy loading", + "aop" + ], + "authors": [ + { + "name": "Marco Pivetta", + "email": "ocramius@gmail.com", + "homepage": "http://ocramius.github.io/" + } + ], + "require": { + "php": "7.0.0 - 7.0.5 || ^7.0.7", + "zendframework/zend-code": "~3.0", + "ocramius/package-versions": "^1.0" + }, + "require-dev": { + "ext-phar": "*", + "phpunit/phpunit": "^5.1.3", + "squizlabs/php_codesniffer": "^2.5.1", + "couscous/couscous": "^1.4.0" + }, + "suggest": { + "ocramius/generated-hydrator": "To have very fast object to array to object conversion for ghost objects", + "zendframework/zend-xmlrpc": "To have the XmlRpc adapter (Remote Object feature)", + "zendframework/zend-json": "To have the JsonRpc adapter (Remote Object feature)", + "zendframework/zend-soap": "To have the Soap adapter (Remote Object feature)" + }, + "autoload": { + "psr-0": { + "ProxyManager\\": "src" + } + }, + "autoload-dev": { + "psr-0": { + "ProxyManagerTest\\": "tests", + "ProxyManagerTestAsset\\": "tests" + } + }, + "extra": { + "branch-alias": { + "dev-master": "3.0.x-dev" + } + } +} diff --git a/php-ocramius-proxy-manager.spec b/php-ocramius-proxy-manager.spec index f9ed347..61975b7 100644 --- a/php-ocramius-proxy-manager.spec +++ b/php-ocramius-proxy-manager.spec @@ -12,26 +12,21 @@ %global github_owner Ocramius %global github_name ProxyManager -%global github_version 1.0.2 -%global github_commit 57e9272ec0e8deccf09421596e0e2252df440e11 +%global github_version 2.0.0 +%global github_commit 001e730968f17cb36816ad68914994341d16e029 +%global github_short %(c=%{github_commit}; echo ${c:0:7}) %global composer_vendor ocramius %global composer_project proxy-manager -# "php": ">=5.3.3" -%global php_min_ver 5.3.3 -# "zendframework/zend-code": ">2.2.5,<3.0" -%global zf_min_ver 2.2.5 -%global zf_max_ver 3.0 +# "php": "7.0.0 - 7.0.5 || ^7.0.7" +%global php_min_ver 7.0.7 +# "zendframework/zend-code": "~3.0" +%global zf_min_ver 3.0 +%global zf_max_ver 4 -# Skip tests for EPEL 6 b/c PHPUnit < 4 -# TODO: Get tests running on EPEL 6! -%if 0%{?el6} -%global with_tests 0 -%else # Build using "--without tests" to disable tests %global with_tests %{?_without_tests:0}%{!?_without_tests:1} -%endif %{!?phpdir: %global phpdir %{_datadir}/php} @@ -43,7 +38,12 @@ Summary: OOP proxy wrappers utilities Group: Development/Libraries License: MIT URL: http://ocramius.github.io/ProxyManager/ -Source0: https://github.com/%{github_owner}/%{github_name}/archive/%{github_commit}/%{name}-%{github_version}-%{github_commit}.tar.gz +Source0: %{name}-%{github_version}-%{github_short}.tgz +# git snapshot to retrieve test suite +Source1: makesrc.sh +# Hardcode library version +# drop dependency on ocramius/package-versions +Patch0: %{name}-rpm.patch BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root BuildArch: noarch @@ -53,61 +53,59 @@ BuildRequires: %{_bindir}/phpab # Tests ## composer.json BuildRequires: %{_bindir}/phpunit -BuildRequires: php(language) >= %{php_min_ver} BuildRequires: php-composer(zendframework/zend-code) >= %{zf_min_ver} -BuildRequires: php-composer(zendframework/zend-code) < %{zf_max_ver} -## phpcompatinfo (computed from version 1.0.0) +BuildRequires: php-composer(zendframework/zend-loader) +## phpcompatinfo (computed from version 2.0.0) BuildRequires: php-pcre BuildRequires: php-reflection BuildRequires: php-spl +# Autoloader +BuildRequires: php-composer(phpunit/phpunit) >= 5.1.3 %endif # composer.json Requires: php(language) >= %{php_min_ver} Requires: php-composer(zendframework/zend-code) >= %{zf_min_ver} Requires: php-composer(zendframework/zend-code) < %{zf_max_ver} -# phpcompatinfo (computed from version 1.0.0) +# phpcompatinfo (computed from version 2.0.0) Requires: php-pcre Requires: php-reflection Requires: php-spl +# Autoloader +Requires: php-composer(zendframework/zend-loader) +%if 0%{?fedora} >= 21 +Suggests: php-composer(zendframework/zend-xmlrpc) +Suggests: php-composer(zendframework/zend-json) +Suggests: php-composer(zendframework/zend-soap) +%endif # Composer Provides: php-composer(%{composer_vendor}/%{composer_project}) = %{version} %description -A library providing utilities to generate, instantiate and generally operate -with Object Proxies. - -Optional: -* php-ZendFramework2-Json - To have the JsonRpc adapter (Remote Object feature) -* php-ZendFramework2-Soap - To have the Soap adapter (Remote Object feature) -* php-ZendFramework2-Stdlib - To use the hydrator proxy -* php-ZendFramework2-XmlRpc - To have the XmlRpc adapter (Remote Object feature) -* php-ocramius-generated-hydrator - To have very fast object to array to object conversion for ghost objects +This library aims at providing abstraction for generating various kinds +of proxy classes. + +Autoloader: %{phpdir}/ProxyManager/autoload.php %prep %setup -qn %{github_name}-%{github_commit} +%patch0 -p0 +sed -e 's/@VERSION@/%{version}/' \ + -e 's/@COMMIT@/%{github_commit}/' \ + -i src/ProxyManager/Version.php +grep ' return' src/ProxyManager/Version.php + %build : Generate autoloader -%{_bindir}/phpab --nolower --output src/ProxyManager/autoload.php src/ProxyManager - -(cat <<'AUTOLOAD' - -// TODO: Add Zend/ZendXml/Ocramius autoloaders from their packages when they are available -spl_autoload_register(function ($class) { - $src = str_replace('\\', '/', $class) . '.php'; - @include_once $src; -}); -AUTOLOAD -) | tee -a src/ProxyManager/autoload.php +%{_bindir}/phpab --output src/ProxyManager/autoload.php src/ProxyManager +cat << 'EOF' | tee -a src/ProxyManager/autoload.php +// For dependencies +require_once '%{phpdir}/Zend/autoload.php'; +EOF %install @@ -119,19 +117,14 @@ cp -rp src/* %{buildroot}%{phpdir}/ %check %if %{with_tests} : Create tests autoload -%{_bindir}/phpab --nolower --output tests/autoload.php tests %{phpdir}/PHPUnit - -: Create mock Composer "vendor/autoload.php" mkdir vendor -(cat <<'AUTOLOAD' - - 2.0.0-1 +- update to 2.0.0 +- raise dependency on php 7.0.7 +- raise dependency on zendframework/zend-code 3.0 + * Mon Aug 10 2015 Remi Collet - 1.0.2-1 - update to 1.0.2 -- cgit