summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRemi Collet <remi@remirepo.net>2020-01-07 11:19:09 +0100
committerRemi Collet <remi@remirepo.net>2020-01-07 11:19:09 +0100
commiteb46464bcedf13e2a2137d77e426322997092bc4 (patch)
tree680e7d7cf7aeb5c41accda95dcdf2269f706bf1b
parent1dd24b6de2c07e645e0142bd0a3c1a6130faa172 (diff)
switch to Laminas
-rw-r--r--composer.json59
-rw-r--r--php-laminas-eventmanager.spec118
2 files changed, 120 insertions, 57 deletions
diff --git a/composer.json b/composer.json
index daa0499..6b25731 100644
--- a/composer.json
+++ b/composer.json
@@ -1,50 +1,60 @@
{
- "name": "zendframework/zend-eventmanager",
+ "name": "laminas/laminas-eventmanager",
"description": "Trigger and listen to events within a PHP application",
"license": "BSD-3-Clause",
"keywords": [
- "zf2",
+ "laminas",
"event",
"events",
"eventmanager"
],
- "homepage": "https://github.com/zendframework/zend-eventmanager",
- "minimum-stability": "dev",
- "prefer-stable": true,
+ "homepage": "https://laminas.dev",
+ "support": {
+ "docs": "https://docs.laminas.dev/laminas-eventmanager/",
+ "issues": "https://github.com/laminas/laminas-eventmanager/issues",
+ "source": "https://github.com/laminas/laminas-eventmanager",
+ "rss": "https://github.com/laminas/laminas-eventmanager/releases.atom",
+ "chat": "https://laminas.dev/chat",
+ "forum": "https://discourse.laminas.dev"
+ },
+ "config": {
+ "sort-packages": true
+ },
"extra": {
"branch-alias": {
"dev-master": "3.2-dev",
"dev-develop": "3.3-dev"
}
},
+ "require": {
+ "php": "^5.6 || ^7.0",
+ "laminas/laminas-zendframework-bridge": "^1.0"
+ },
+ "require-dev": {
+ "athletic/athletic": "^0.1",
+ "container-interop/container-interop": "^1.1.0",
+ "laminas/laminas-coding-standard": "~1.0.0",
+ "laminas/laminas-stdlib": "^2.7.3 || ^3.0",
+ "phpunit/phpunit": "^5.7.27 || ^6.5.8 || ^7.1.2"
+ },
+ "suggest": {
+ "container-interop/container-interop": "^1.1.0, to use the lazy listeners feature",
+ "laminas/laminas-stdlib": "^2.7.3 || ^3.0, to use the FilterChain feature"
+ },
"autoload": {
"psr-4": {
- "Zend\\EventManager\\": "src/"
+ "Laminas\\EventManager\\": "src/"
}
},
"autoload-dev": {
"psr-4": {
- "ZendTest\\EventManager\\": "test/",
- "ZendBench\\EventManager\\": "benchmarks/"
+ "LaminasTest\\EventManager\\": "test/",
+ "LaminasBench\\EventManager\\": "benchmarks/"
},
"files": [
- "test/_autoload.php"
+ "test/_autoload.php"
]
},
- "require": {
- "php": "^5.6 || ^7.0"
- },
- "require-dev": {
- "phpunit/phpunit": "^5.7.27 || ^6.5.8 || ^7.1.2",
- "athletic/athletic": "^0.1",
- "zendframework/zend-stdlib": "^2.7.3 || ^3.0",
- "container-interop/container-interop": "^1.1.0",
- "zendframework/zend-coding-standard": "~1.0.0"
- },
- "suggest": {
- "container-interop/container-interop": "^1.1.0, to use the lazy listeners feature",
- "zendframework/zend-stdlib": "^2.7.3 || ^3.0, to use the FilterChain feature"
- },
"scripts": {
"check": [
"@cs-check",
@@ -54,5 +64,8 @@
"cs-fix": "phpcbf",
"test": "phpunit --colors=always",
"test-coverage": "phpunit --colors=always --coverage-clover clover.xml"
+ },
+ "replace": {
+ "zendframework/zend-eventmanager": "self.version"
}
}
diff --git a/php-laminas-eventmanager.spec b/php-laminas-eventmanager.spec
index 452ff50..435bc46 100644
--- a/php-laminas-eventmanager.spec
+++ b/php-laminas-eventmanager.spec
@@ -1,16 +1,19 @@
+# remirepo/Fedora spec file for php-laminas-eventmanager
#
-# Copyright (c) 2015-2018 Remi Collet
+# Copyright (c) 2015-2020 Remi Collet
# License: CC-BY-SA
# http://creativecommons.org/licenses/by-sa/4.0/
#
# Please, preserve the changelog entries
#
%global bootstrap 0
-%global gh_commit a5e2583a211f73604691586b8406ff7296a946dd
+%global gh_commit ce4dc0bdf3b14b7f9815775af9dfee80a63b4748
%global gh_short %(c=%{gh_commit}; echo ${c:0:7})
-%global gh_owner zendframework
-%global gh_project zend-eventmanager
+%global gh_owner laminas
+%global gh_project laminas-eventmanager
+%global zf_name zend-eventmanager
%global php_home %{_datadir}/php
+%global namespace Laminas
%global library EventManager
%if %{bootstrap}
%global with_tests 0%{?_with_tests:1}
@@ -18,13 +21,13 @@
%global with_tests 0%{!?_without_tests:1}
%endif
-Name: php-%{gh_owner}-%{gh_project}
+Name: php-%{gh_project}
Version: 3.2.1
Release: 1%{?dist}
Summary: Trigger and listen to events within a PHP application
License: BSD
-URL: https://zendframework.github.io/%{gh_project}/
+URL: https://github.com/%{gh_owner}/%{gh_project}
Source0: %{gh_commit}/%{name}-%{version}-%{gh_short}.tgz
Source1: makesrc.sh
@@ -32,63 +35,85 @@ BuildArch: noarch
# Tests
%if %{with_tests}
BuildRequires: php(language) >= 5.6
+# remirepo:1
+%if 0%{?fedora} >= 27 || 0%{?rhel} >= 8
+BuildRequires: (php-composer(%{gh_owner}/laminas-zendframework-bridge) >= 1.0 with php-composer(%{gh_owner}/laminas-zendframework-bridge) < 2)
+# remirepo:3
+%else
+BuildRequires: php-laminas-zendframework-bridge
+%endif
BuildRequires: php-reflection
BuildRequires: php-spl
# From composer, "require-dev": {
-# "phpunit/PHPUnit": "^5.7.27 || ^6.5.8 || ^7.1.2",
# "athletic/athletic": "^0.1",
-# "zendframework/zend-stdlib": "^2.7.3 || ^3.0",
# "container-interop/container-interop": "^1.1.0",
-# "zendframework/zend-coding-standard": "~1.0.0"
-BuildRequires: php-autoloader(%{gh_owner}/zend-stdlib) >= 2.7.3
-BuildRequires: php-composer(container-interop/container-interop) >= 1.1.0
+# "laminas/laminas-coding-standard": "~1.0.0",
+# "laminas/laminas-stdlib": "^2.7.3 || ^3.0",
+# "phpunit/phpunit": "^5.7.27 || ^6.5.8 || ^7.1.2"
# remirepo:1
-%if 0%{?fedora} >= 26 || 0%{?rhel} >= 8
-%global phpunit %{_bindir}/phpunit7
-BuildRequires: phpunit7 >= 7.1.2
+%if 0%{?fedora} >= 27 || 0%{?rhel} >= 8
+BuildRequires: (php-composer(container-interop/container-interop) >= 1.1.0 with php-composer(container-interop/container-interop) < 2)
+BuildRequires: (php-autoloader(%{gh_owner}/laminas-stdlib) >= 3.0 with php-autoloader(%{gh_owner}/laminas-stdlib) < 4)
# remirepo:4
%else
-%global phpunit %{_bindir}/phpunit6
-BuildRequires: phpunit6 >= 6.5.8
+BuildRequires: php-container-interop >= 1.1.0
+BuildRequires: php-laminas-stdlib >= 3.0
%endif
+%global phpunit %{_bindir}/phpunit7
+BuildRequires: phpunit7 >= 7.1.2
# Autoloader
BuildRequires: php-fedora-autoloader-devel
%endif
# From composer, "require": {
# "php": "^5.6 || ^7.0",
+# "laminas/laminas-zendframework-bridge": "^1.0"
Requires: php(language) >= 5.6
+# remirepo:1
+%if 0%{?fedora} >= 27 || 0%{?rhel} >= 8
+Requires: (php-composer(%{gh_owner}/laminas-zendframework-bridge) >= 1.0 with php-composer(%{gh_owner}/laminas-zendframework-bridge) < 2)
+# remirepo:3
+%else
+Requires: php-laminas-zendframework-bridge
+%endif
%if ! %{bootstrap}
+# remirepo:1
+%if 0%{?fedora} >= 21 || 0%{?rhel} >= 8
# From composer, "suggest": {
# "container-interop/container-interop": "^1.1.0, to use the lazy listeners feature",
-# "zendframework/zend-stdlib": "^2.7.3 || ^3.0, to use the FilterChain feature"
+# "laminas/laminas-stdlib": "^2.7.3 || ^3.0, to use the FilterChain feature"
Suggests: php-composer(container-interop/container-interop)
-Suggests: php-composer(%{gh_owner}/zend-stdlib)
+Suggests: php-composer(%{gh_owner}/laminas-stdlib)
+# remirepo:1
+%endif
%endif
-# From phpcompatinfo report for version 3.2.0
+# From phpcompatinfo report for version 3.2.1
Requires: php-reflection
Requires: php-spl
# Autoloader
Requires: php-composer(fedora/autoloader)
-Obsoletes: php-ZendFramework2-%{library} < 2.5
-Provides: php-ZendFramework2-%{library} = %{version}
-Provides: php-composer(%{gh_owner}/%{gh_project}) = %{version}
+# Compatibily ensure by the bridge
+Obsoletes: php-zendframework-%{zf_name} < 3.2.1-99
+Provides: php-zendframework-%{zf_name} = %{version}-99
+Provides: php-composer(%{gh_owner}/%{gh_project}) = %{version}
+Provides: php-composer(zendframework/%{zf_name}) = %{version}
Provides: php-autoloader(%{gh_owner}/%{gh_project}) = %{version}
+Provides: php-autoloader(zendframework/%{zf_name}) = %{version}
%description
-The Zend\EventManager is a component designed for the following use cases:
+The %{gh_project} is a component designed for the following use cases:
- Implementing simple subject/observer patterns.
- Implementing Aspect-Oriented designs.
- Implementing event-driven architectures.
+* Implementing simple subject/observer patterns.
+* Implementing Aspect-Oriented designs.
+* Implementing event-driven architectures.
The basic architecture allows you to attach and detach listeners to named
events, both on a per-instance basis as well as via shared collections;
trigger events; and interrupt execution of listeners.
-Documentation: https://zendframework.github.io/%{gh_project}/
+Documentation: https://docs.laminas.dev/%{gh_project}/
%prep
@@ -102,14 +127,28 @@ phpab --template fedora --output src/autoload.php src
cat << 'EOF' | tee -a src/autoload.php
\Fedora\Autoloader\Dependencies::optional([
'%{php_home}/Interop/Container/autoload.php',
- '%{php_home}/Zend/Stdlib/autoload.php',
+ '%{php_home}/%{namespace}/Stdlib/autoload.php',
+]);
+EOF
+
+cat << 'EOF' | tee zf.php
+<?php
+require_once '%{php_home}/Fedora/Autoloader/autoload.php';
+\Fedora\Autoloader\Dependencies::required([
+ '%{php_home}/%{namespace}/ZendFrameworkBridge/autoload.php',
+ dirname(dirname(__DIR__)) . '/%{namespace}/%{library}/autoload.php',
]);
EOF
%install
-mkdir -p %{buildroot}%{php_home}/Zend/
-cp -pr src %{buildroot}%{php_home}/Zend/%{library}
+: Laminas library
+mkdir -p %{buildroot}%{php_home}/%{namespace}/
+cp -pr src %{buildroot}%{php_home}/%{namespace}/%{library}
+
+: Zend equiv
+mkdir -p %{buildroot}%{php_home}/Zend/%{library}
+cp -pr zf.php %{buildroot}%{php_home}/Zend/%{library}/autoload.php
%check
@@ -117,18 +156,25 @@ cp -pr src %{buildroot}%{php_home}/Zend/%{library}
mkdir vendor
cat << 'EOF' | tee vendor/autoload.php
<?php
-require_once '%{buildroot}%{php_home}/Zend/%{library}/autoload.php';
-\Fedora\Autoloader\Autoload::addPsr4('ZendTest\\%{library}\\', dirname(__DIR__) . '/test');
+require_once '%{buildroot}%{php_home}/%{namespace}/%{library}/autoload.php';
+\Fedora\Autoloader\Autoload::addPsr4('%{namespace}Test\\%{library}\\', dirname(__DIR__) . '/test');
require_once __DIR__ . '/../test/_autoload.php';
EOF
ret=0
-for cmdarg in "php %{phpunit}" "php70 %{_bindir}/phpunit6" php71 php72; do
+for cmdarg in "php %{phpunit}" php72 php73 php74; do
if which $cmdarg; then
set $cmdarg
$1 ${2:-%{_bindir}/phpunit7} --verbose || ret=1
fi
done
+
+: check compat autoloader
+php -r '
+require "%{buildroot}%{php_home}/Zend/%{library}/autoload.php";
+return (class_exists("\\Zend\\%{library}\\%{library}") ? 0 : 1);
+'
+
exit $ret
%else
: Test suite disabled
@@ -136,15 +182,19 @@ exit $ret
%files
+# remirepo:1
%{!?_licensedir:%global license %%doc}
%license LICENSE
%doc *.md
%doc composer.json
-%dir %{php_home}/Zend
%{php_home}/Zend/%{library}
+%{php_home}/%{namespace}/%{library}
%changelog
+* Tue Jan 7 2020 Remi Collet <remi@remirepo.net> - 3.2.1-1
+- switch to Laminas
+
* Thu Apr 26 2018 Remi Collet <remi@remirepo.net> - 3.2.1-1
- update to 3.2.1 (no change)
- switch to phpunit6 or phpunit7