summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRemi Collet <remi@remirepo.net>2020-01-16 08:38:28 +0100
committerRemi Collet <remi@remirepo.net>2020-01-16 08:38:28 +0100
commit7b08abb000f07809b102c03245bb4a6152efd87c (patch)
treecd900e6f86715833c2e812e09bc9b9a3484d0fc8
parent7e933ca6c0a2506ae9a227218a3b9311ba132171 (diff)
switch to Laminas
add patch for PHP 7.4 from https://github.com/laminas/laminas-form/pull/55
-rw-r--r--55.patch45
-rw-r--r--composer.json102
-rw-r--r--php-laminas-form.spec295
3 files changed, 259 insertions, 183 deletions
diff --git a/55.patch b/55.patch
new file mode 100644
index 0000000..3c57ead
--- /dev/null
+++ b/55.patch
@@ -0,0 +1,45 @@
+From 4dce426be17e4bbc7a7a7695707db2266949473f Mon Sep 17 00:00:00 2001
+From: Remi Collet <remi@remirepo.net>
+Date: Thu, 16 Jan 2020 08:33:25 +0100
+Subject: [PATCH 1/2] Allow phpunit7
+
+---
+ composer.json | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/composer.json b/composer.json
+index a74efb71..0cd76f37 100644
+--- a/composer.json
++++ b/composer.json
+@@ -51,7 +51,7 @@
+ "laminas/laminas-text": "^2.6",
+ "laminas/laminas-validator": "^2.6",
+ "laminas/laminas-view": "^2.6.2",
+- "phpunit/phpunit": "^5.7.23 || ^6.5.3"
++ "phpunit/phpunit": "^5.7.23 || ^6.5.3 || ^7.5"
+ },
+ "suggest": {
+ "laminas/laminas-captcha": "^2.7.1, required for using CAPTCHA form elements",
+
+From 0a5e011d6aeb98f45533e428ebb5a0e07d8db3bc Mon Sep 17 00:00:00 2001
+From: Remi Collet <remi@remirepo.net>
+Date: Thu, 16 Jan 2020 08:34:01 +0100
+Subject: [PATCH 2/2] fix Using array_key_exists() on objects is deprecated
+
+---
+ src/Fieldset.php | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/Fieldset.php b/src/Fieldset.php
+index f26a56dc..74ad2cbb 100644
+--- a/src/Fieldset.php
++++ b/src/Fieldset.php
+@@ -391,7 +391,7 @@ public function populateValues($data)
+ }
+
+ foreach ($this->iterator as $name => $elementOrFieldset) {
+- $valueExists = array_key_exists($name, $data);
++ $valueExists = isset($data[$name]);
+
+ if ($elementOrFieldset instanceof FieldsetInterface) {
+ if ($valueExists && (is_array($data[$name]) || $data[$name] instanceof Traversable)) {
diff --git a/composer.json b/composer.json
index ec29a50..a74efb7 100644
--- a/composer.json
+++ b/composer.json
@@ -1,56 +1,70 @@
{
- "name": "zendframework/zend-form",
+ "name": "laminas/laminas-form",
"description": "Validate and display simple and complex forms, casting forms to business objects and vice versa",
"license": "BSD-3-Clause",
"keywords": [
- "zf",
- "zendframework",
+ "laminas",
"form"
],
+ "homepage": "https://laminas.dev",
"support": {
- "docs": "https://docs.zendframework.com/zend-form/",
- "issues": "https://github.com/zendframework/zend-form/issues",
- "source": "https://github.com/zendframework/zend-form",
- "rss": "https://github.com/zendframework/zend-form/releases.atom",
- "chat": "https://zendframework-slack.herokuapp.com",
- "forum": "https://discourse.zendframework.com/c/questions/components"
+ "docs": "https://docs.laminas.dev/laminas-form/",
+ "issues": "https://github.com/laminas/laminas-form/issues",
+ "source": "https://github.com/laminas/laminas-form",
+ "rss": "https://github.com/laminas/laminas-form/releases.atom",
+ "chat": "https://laminas.dev/chat",
+ "forum": "https://discourse.laminas.dev"
+ },
+ "config": {
+ "sort-packages": true
+ },
+ "extra": {
+ "branch-alias": {
+ "dev-master": "2.14.x-dev",
+ "dev-develop": "2.15.x-dev"
+ },
+ "laminas": {
+ "component": "Laminas\\Form",
+ "config-provider": "Laminas\\Form\\ConfigProvider"
+ }
},
"require": {
"php": "^5.6 || ^7.0",
- "zendframework/zend-inputfilter": "^2.8",
- "zendframework/zend-hydrator": "^1.1 || ^2.1 || ^3.0",
- "zendframework/zend-stdlib": "^3.2.1"
+ "laminas/laminas-hydrator": "^1.1 || ^2.1 || ^3.0",
+ "laminas/laminas-inputfilter": "^2.8",
+ "laminas/laminas-stdlib": "^3.2.1",
+ "laminas/laminas-zendframework-bridge": "^1.0"
},
"require-dev": {
"doctrine/annotations": "~1.0",
- "zendframework/zend-cache": "^2.6.1",
- "zendframework/zend-captcha": "^2.7.1",
- "zendframework/zend-code": "^2.6 || ^3.0",
- "zendframework/zend-escaper": "^2.5",
- "zendframework/zend-eventmanager": "^2.6.2 || ^3.0",
- "zendframework/zend-filter": "^2.6",
- "zendframework/zend-i18n": "^2.6",
- "zendframework/zend-servicemanager": "^2.7.5 || ^3.0.3",
- "zendframework/zend-session": "^2.8.1",
- "zendframework/zend-text": "^2.6",
- "zendframework/zend-validator": "^2.6",
- "zendframework/zend-view": "^2.6.2",
- "zendframework/zendservice-recaptcha": "^3.0.0",
- "phpunit/phpunit": "^5.7.23 || ^6.5.3",
- "zendframework/zend-coding-standard": "~1.0.0"
+ "laminas/laminas-cache": "^2.6.1",
+ "laminas/laminas-captcha": "^2.7.1",
+ "laminas/laminas-code": "^2.6 || ^3.0",
+ "laminas/laminas-coding-standard": "~1.0.0",
+ "laminas/laminas-escaper": "^2.5",
+ "laminas/laminas-eventmanager": "^2.6.2 || ^3.0",
+ "laminas/laminas-filter": "^2.6",
+ "laminas/laminas-i18n": "^2.6",
+ "laminas/laminas-recaptcha": "^3.0.0",
+ "laminas/laminas-servicemanager": "^2.7.5 || ^3.0.3",
+ "laminas/laminas-session": "^2.8.1",
+ "laminas/laminas-text": "^2.6",
+ "laminas/laminas-validator": "^2.6",
+ "laminas/laminas-view": "^2.6.2",
+ "phpunit/phpunit": "^5.7.23 || ^6.5.3"
},
"suggest": {
- "zendframework/zend-captcha": "^2.7.1, required for using CAPTCHA form elements",
- "zendframework/zend-code": "^2.6 || ^3.0, required to use zend-form annotations support",
- "zendframework/zend-eventmanager": "^2.6.2 || ^3.0, reuired for zend-form annotations support",
- "zendframework/zend-i18n": "^2.6, required when using zend-form view helpers",
- "zendframework/zend-servicemanager": "^2.7.5 || ^3.0.3, required to use the form factories or provide services",
- "zendframework/zend-view": "^2.6.2, required for using the zend-form view helpers",
- "zendframework/zendservice-recaptcha": "in order to use the ReCaptcha form element"
+ "laminas/laminas-captcha": "^2.7.1, required for using CAPTCHA form elements",
+ "laminas/laminas-code": "^2.6 || ^3.0, required to use laminas-form annotations support",
+ "laminas/laminas-eventmanager": "^2.6.2 || ^3.0, reuired for laminas-form annotations support",
+ "laminas/laminas-i18n": "^2.6, required when using laminas-form view helpers",
+ "laminas/laminas-recaptcha": "in order to use the ReCaptcha form element",
+ "laminas/laminas-servicemanager": "^2.7.5 || ^3.0.3, required to use the form factories or provide services",
+ "laminas/laminas-view": "^2.6.2, required for using the laminas-form view helpers"
},
"autoload": {
"psr-4": {
- "Zend\\Form\\": "src/"
+ "Laminas\\Form\\": "src/"
},
"files": [
"autoload/formElementManagerPolyfill.php"
@@ -61,20 +75,7 @@
"test/_autoload.php"
],
"psr-4": {
- "ZendTest\\Form\\": "test/"
- }
- },
- "config": {
- "sort-packages": true
- },
- "extra": {
- "branch-alias": {
- "dev-master": "2.14.x-dev",
- "dev-develop": "2.15.x-dev"
- },
- "zf": {
- "component": "Zend\\Form",
- "config-provider": "Zend\\Form\\ConfigProvider"
+ "LaminasTest\\Form\\": "test/"
}
},
"scripts": {
@@ -86,5 +87,8 @@
"cs-fix": "phpcbf",
"test": "phpunit --colors=always",
"test-coverage": "phpunit --colors=always --coverage-clover clover.xml"
+ },
+ "replace": {
+ "zendframework/zend-form": "self.version"
}
}
diff --git a/php-laminas-form.spec b/php-laminas-form.spec
index 1d51feb..dea41b1 100644
--- a/php-laminas-form.spec
+++ b/php-laminas-form.spec
@@ -1,4 +1,4 @@
-# remirepo/Fedora spec file for php-zendframework-zend-form
+# remirepo/Fedora spec file for php-laminas-form
#
# Copyright (c) 2015-2020 Remi Collet
# License: CC-BY-SA
@@ -7,11 +7,13 @@
# Please, preserve the changelog entries
#
%global bootstrap 0
-%global gh_commit 284f51cf26af2d3d88936fd8b74d46853550b718*
+%global gh_commit 012aae01366cb8c8fb64e39a887363ef82f388dd
%global gh_short %(c=%{gh_commit}; echo ${c:0:7})
-%global gh_owner zendframework
-%global gh_project zend-form
+%global gh_owner laminas
+%global gh_project laminas-form
+%global zf_name zend-form
%global php_home %{_datadir}/php
+%global namespace Laminas
%global library Form
%if %{bootstrap}
%global with_tests 0%{?_with_tests:1}
@@ -19,223 +21,242 @@
%global with_tests 0%{!?_without_tests:1}
%endif
-Name: php-%{gh_owner}-%{gh_project}
+Name: php-%{gh_project}
Version: 2.14.3
Release: 1%{?dist}
-Summary: Zend Framework %{library} component
+Summary: %{namespace} Framework %{library} component
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
+Patch0: https://patch-diff.githubusercontent.com/raw/laminas/laminas-form/pull/55.patch
+
BuildArch: noarch
# Tests
%if %{with_tests}
BuildRequires: php(language) >= 5.6
BuildRequires: php-date
BuildRequires: php-intl
+BuildRequires: php-mbstring
BuildRequires: php-pcre
BuildRequires: php-spl
-# Temporary, see https://github.com/zendframework/zend-math/issues/23
-BuildRequires: php-mcrypt
# remirepo:1
%if 0%{?fedora} >= 27 || 0%{?rhel} >= 8
-BuildRequires: (php-autoloader(%{gh_owner}/zend-inputfilter) >= 2.8 with php-autoloader(%{gh_owner}/zend-inputfilter) < 3)
-BuildRequires: (php-autoloader(%{gh_owner}/zend-hydrator) >= 1.1 with php-autoloader(%{gh_owner}/zend-hydrator) < 4)
-BuildRequires: (php-autoloader(%{gh_owner}/zend-stdlib) >= 3.2.1 with php-autoloader(%{gh_owner}/zend-stdlib) < 4)
-# remirepo:5
-%else
-BuildRequires: php-autoloader(%{gh_owner}/zend-inputfilter) >= 2.8
-BuildRequires: php-autoloader(%{gh_owner}/zend-hydrator) >= 1.0
-BuildRequires: php-autoloader(%{gh_owner}/zend-stdlib) >= 3.2.1
-%endif
+BuildRequires: (php-autoloader(%{gh_owner}/laminas-inputfilter) >= 2.8 with php-autoloader(%{gh_owner}/laminas-inputfilter) < 3)
+BuildRequires: (php-autoloader(%{gh_owner}/laminas-hydrator) >= 1.1 with php-autoloader(%{gh_owner}/laminas-hydrator) < 4)
+BuildRequires: (php-autoloader(%{gh_owner}/laminas-stdlib) >= 3.2.1 with php-autoloader(%{gh_owner}/laminas-stdlib) < 4)
+BuildRequires: (php-autoloader(%{gh_owner}/laminas-zendframework-bridge) >= 1.0 with php-autoloader(%{gh_owner}/laminas-zendframework-bridge) < 2)
# From composer, "require-dev": {
# "doctrine/annotations": "~1.0",
-# "zendframework/zend-cache": "^2.6.1",
-# "zendframework/zend-captcha": "^2.7.1",
-# "zendframework/zend-code": "^2.6 || ^3.0",
-# "zendframework/zend-escaper": "^2.5",
-# "zendframework/zend-eventmanager": "^2.6.2 || ^3.0",
-# "zendframework/zend-filter": "^2.6",
-# "zendframework/zend-i18n": "^2.6",
-# "zendframework/zend-servicemanager": "^2.7.5 || ^3.0.3",
-# "zendframework/zend-session": "^2.8.1",
-# "zendframework/zend-text": "^2.6",
-# "zendframework/zend-validator": "^2.6",
-# "zendframework/zend-view": "^2.6.2",
-# "zendframework/zendservice-recaptcha": "^3.0.0",
-# "phpunit/phpunit": "^5.7.23 || ^6.5.3",
-# "zendframework/zend-coding-standard": "~1.0.0"
-# remirepo:1
-%if 0%{?fedora} >= 27 || 0%{?rhel} >= 8
-BuildRequires: (php-composer(doctrine/annotations) >= 1.0 with php-composer(doctrine/annotations) < 2)
-BuildRequires: (php-autoloader(%{gh_owner}/zend-cache) >= 2.6.1 with php-autoloader(%{gh_owner}/zend-cache) < 3)
-BuildRequires: (php-autoloader(%{gh_owner}/zend-captcha) >= 2.7.1 with php-autoloader(%{gh_owner}/zend-captcha) < 3)
-BuildRequires: (php-autoloader(%{gh_owner}/zend-code) >= 2.6 with php-autoloader(%{gh_owner}/zend-code) < 4)
-BuildRequires: (php-autoloader(%{gh_owner}/zend-escaper) >= 2.5 with php-autoloader(%{gh_owner}/zend-escaper) < 3)
-BuildRequires: (php-autoloader(%{gh_owner}/zend-eventmanager) >= 2.6.2 with php-autoloader(%{gh_owner}/zend-eventmanager) < 4)
-BuildRequires: (php-autoloader(%{gh_owner}/zend-filter) >= 2.6 with php-autoloader(%{gh_owner}/zend-filter) < 3)
-BuildRequires: (php-autoloader(%{gh_owner}/zend-i18n) >= 2.6 with php-autoloader(%{gh_owner}/zend-i18n) < 3)
-BuildRequires: (php-autoloader(%{gh_owner}/zend-servicemanager) >= 2.7.5 with php-autoloader(%{gh_owner}/zend-servicemanager) < 4)
-BuildRequires: (php-autoloader(%{gh_owner}/zend-session) >= 2.8.1 with php-autoloader(%{gh_owner}/zend-session) < 3)
-BuildRequires: (php-autoloader(%{gh_owner}/zend-text) >= 2.6 with php-autoloader(%{gh_owner}/zend-text) < 3)
-BuildRequires: (php-autoloader(%{gh_owner}/zend-validator) >= 2.6 with php-autoloader(%{gh_owner}/zend-validator) < 3)
-BuildRequires: (php-autoloader(%{gh_owner}/zend-view) >= 2.6.2 with php-autoloader(%{gh_owner}/zend-view) < 3)
-%global phpunit %{_bindir}/phpunit6
-BuildRequires: phpunit6 >= 6.5.3
-# remirepo:17
+# "laminas/laminas-cache": "^2.6.1",
+# "laminas/laminas-captcha": "^2.7.1",
+# "laminas/laminas-code": "^2.6 || ^3.0",
+# "laminas/laminas-coding-standard": "~1.0.0",
+# "laminas/laminas-escaper": "^2.5",
+# "laminas/laminas-eventmanager": "^2.6.2 || ^3.0",
+# "laminas/laminas-filter": "^2.6",
+# "laminas/laminas-i18n": "^2.6",
+# "laminas/laminas-recaptcha": "^3.0.0",
+# "laminas/laminas-servicemanager": "^2.7.5 || ^3.0.3",
+# "laminas/laminas-session": "^2.8.1",
+# "laminas/laminas-text": "^2.6",
+# "laminas/laminas-validator": "^2.6",
+# "laminas/laminas-view": "^2.6.2",
+# "phpunit/phpunit": "^5.7.23 || ^6.5.3"
+BuildRequires: (php-composer(doctrine/annotations) >= 1.0 with php-composer(doctrine/annotations) < 2)
+BuildRequires: (php-autoloader(%{gh_owner}/laminas-cache) >= 2.6.1 with php-autoloader(%{gh_owner}/laminas-cache) < 3)
+BuildRequires: (php-autoloader(%{gh_owner}/laminas-captcha) >= 2.7.1 with php-autoloader(%{gh_owner}/laminas-captcha) < 3)
+BuildRequires: (php-autoloader(%{gh_owner}/laminas-code) >= 2.6 with php-autoloader(%{gh_owner}/laminas-code) < 4)
+BuildRequires: (php-autoloader(%{gh_owner}/laminas-escaper) >= 2.5 with php-autoloader(%{gh_owner}/laminas-escaper) < 3)
+BuildRequires: (php-autoloader(%{gh_owner}/laminas-eventmanager) >= 2.6.2 with php-autoloader(%{gh_owner}/laminas-eventmanager) < 4)
+BuildRequires: (php-autoloader(%{gh_owner}/laminas-filter) >= 2.6 with php-autoloader(%{gh_owner}/laminas-filter) < 3)
+BuildRequires: (php-autoloader(%{gh_owner}/laminas-i18n) >= 2.6 with php-autoloader(%{gh_owner}/laminas-i18n) < 3)
+BuildRequires: (php-autoloader(%{gh_owner}/laminas-servicemanager) >= 2.7.5 with php-autoloader(%{gh_owner}/laminas-servicemanager) < 4)
+BuildRequires: (php-autoloader(%{gh_owner}/laminas-session) >= 2.8.1 with php-autoloader(%{gh_owner}/laminas-session) < 3)
+BuildRequires: (php-autoloader(%{gh_owner}/laminas-text) >= 2.6 with php-autoloader(%{gh_owner}/laminas-text) < 3)
+BuildRequires: (php-autoloader(%{gh_owner}/laminas-validator) >= 2.6 with php-autoloader(%{gh_owner}/laminas-validator) < 3)
+BuildRequires: (php-autoloader(%{gh_owner}/laminas-view) >= 2.6.2 with php-autoloader(%{gh_owner}/laminas-view) < 3)
+# remirepo:19
%else
-BuildRequires: php-composer(doctrine/annotations) >= 1.0
-BuildRequires: php-autoloader(%{gh_owner}/zend-cache) >= 2.6.1
-BuildRequires: php-autoloader(%{gh_owner}/zend-captcha) >= 2.7.1
-BuildRequires: php-autoloader(%{gh_owner}/zend-code) >= 2.6
-BuildRequires: php-autoloader(%{gh_owner}/zend-escaper) >= 2.5
-BuildRequires: php-autoloader(%{gh_owner}/zend-eventmanager) >= 2.6.2
-BuildRequires: php-autoloader(%{gh_owner}/zend-filter) >= 2.6
-BuildRequires: php-autoloader(%{gh_owner}/zend-i18n) >= 2.6
-BuildRequires: php-autoloader(%{gh_owner}/zend-servicemanager) >= 2.7.5
-BuildRequires: php-autoloader(%{gh_owner}/zend-session) >= 2.8.1
-BuildRequires: php-autoloader(%{gh_owner}/zend-text) >= 2.6
-BuildRequires: php-autoloader(%{gh_owner}/zend-validator) >= 2.6
-BuildRequires: php-autoloader(%{gh_owner}/zend-view) >= 2.6.2
-%global phpunit %{_bindir}/phpunit
-BuildRequires: php-phpunit-PHPUnit >= 5.7.23
+BuildRequires: php-laminas-inputfilter
+BuildRequires: php-laminas-hydrator
+BuildRequires: php-laminas-stdlib
+BuildRequires: php-laminas-zendframework-bridge
+BuildRequires: php-doctrine-annotations
+BuildRequires: php-laminas-cache
+BuildRequires: php-laminas-captcha
+BuildRequires: php-laminas-code
+BuildRequires: php-laminas-escaper
+BuildRequires: php-laminas-eventmanager
+BuildRequires: php-laminas-filter
+BuildRequires: php-laminas-i18n
+BuildRequires: php-laminas-servicemanager
+BuildRequires: php-laminas-session
+BuildRequires: php-laminas-text
+BuildRequires: php-laminas-validator
+BuildRequires: php-laminas-view
%endif
-# Missing
-BuildRequires: php-composer(ircmaxell/random-lib)
+%global phpunit %{_bindir}/phpunit7
+BuildRequires: phpunit7 >= 7.5
%endif
# Autoloader
BuildRequires: php-fedora-autoloader-devel
# From composer, "require": {
# "php": "^5.6 || ^7.0",
-# "zendframework/zend-inputfilter": "^2.8",
-# "zendframework/zend-hydrator": "^1.1 || ^2.1 || ^3.0",
-# "zendframework/zend-stdlib": "^3.2.1"
+# "laminas/laminas-hydrator": "^1.1 || ^2.1 || ^3.0",
+# "laminas/laminas-inputfilter": "^2.8",
+# "laminas/laminas-stdlib": "^3.2.1",
+# "laminas/laminas-zendframework-bridge": "^1.0"
Requires: php(language) >= 5.6
%if ! %{bootstrap}
# remirepo:1
%if 0%{?fedora} >= 27 || 0%{?rhel} >= 8
-Requires: (php-autoloader(%{gh_owner}/zend-inputfilter) >= 2.8 with php-autoloader(%{gh_owner}/zend-inputfilter) < 3)
-Requires: (php-autoloader(%{gh_owner}/zend-hydrator) >= 1.1 with php-autoloader(%{gh_owner}/zend-hydrator) < 4)
-Requires: (php-autoloader(%{gh_owner}/zend-stdlib) >= 3.2.1 with php-autoloader(%{gh_owner}/zend-stdlib) < 4)
-# Mandory because of Polyfill
-Requires: (php-autoloader(%{gh_owner}/zend-servicemanager) >= 2.7.5 with php-autoloader(%{gh_owner}/zend-servicemanager) < 4)
-# remirepo:11
-%else
-Requires: php-autoloader(%{gh_owner}/zend-inputfilter) >= 2.8
-Requires: php-autoloader(%{gh_owner}/zend-inputfilter) < 3
-Requires: php-autoloader(%{gh_owner}/zend-hydrator) >= 1.1
-Requires: php-autoloader(%{gh_owner}/zend-hydrator) < 3
-Requires: php-autoloader(%{gh_owner}/zend-stdlib) >= 3.2.1
-Requires: php-autoloader(%{gh_owner}/zend-stdlib) < 4
+Requires: (php-autoloader(%{gh_owner}/laminas-inputfilter) >= 2.8 with php-autoloader(%{gh_owner}/laminas-inputfilter) < 3)
+Requires: (php-autoloader(%{gh_owner}/laminas-hydrator) >= 1.1 with php-autoloader(%{gh_owner}/laminas-hydrator) < 4)
+Requires: (php-autoloader(%{gh_owner}/laminas-stdlib) >= 3.2.1 with php-autoloader(%{gh_owner}/laminas-stdlib) < 4)
+Requires: (php-autoloader(%{gh_owner}/laminas-zendframework-bridge) >= 1.0 with php-autoloader(%{gh_owner}/laminas-zendframework-bridge) < 2)
# Mandory because of Polyfill
-Requires: php-autoloader(%{gh_owner}/zend-servicemanager) >= 2.7.5
-Requires: php-autoloader(%{gh_owner}/zend-servicemanager) < 4
-%endif
+Requires: (php-autoloader(%{gh_owner}/laminas-servicemanager) >= 2.7.5 with php-autoloader(%{gh_owner}/laminas-servicemanager) < 4)
# From composer, "suggest": {
-# "zendframework/zend-captcha": "^2.7.1, required for using CAPTCHA form elements",
-# "zendframework/zend-code": "^2.6 || ^3.0, required to use zend-form annotations support",
-# "zendframework/zend-eventmanager": "^2.6.2 || ^3.0, reuired for zend-form annotations support",
-# "zendframework/zend-i18n": "^2.6, required when using zend-form view helpers",
-# "zendframework/zend-servicemanager": "^2.7.5 || ^3.0.3, required to use the form factories or provide services",
-# "zendframework/zend-view": "^2.6.2, required for using the zend-form view helpers",
-# "zendframework/zendservice-recaptcha": "in order to use the ReCaptcha form element"
+# "laminas/laminas-captcha": "^2.7.1, required for using CAPTCHA form elements",
+# "laminas/laminas-code": "^2.6 || ^3.0, required to use laminas-form annotations support",
+# "laminas/laminas-eventmanager": "^2.6.2 || ^3.0, reuired for laminas-form annotations support",
+# "laminas/laminas-i18n": "^2.6, required when using laminas-form view helpers",
+# "laminas/laminas-recaptcha": "in order to use the ReCaptcha form element",
+# "laminas/laminas-servicemanager": "^2.7.5 || ^3.0.3, required to use the form factories or provide services",
+# "laminas/laminas-view": "^2.6.2, required for using the laminas-form view helpers"
%if 0%{?fedora} >= 21 || 0%{?rhel} >= 8
-Suggests: php-autoloader(%{gh_owner}/zend-captcha)
-Suggests: php-autoloader(%{gh_owner}/zend-code)
-Suggests: php-autoloader(%{gh_owner}/zend-eventmanager)
-Suggests: php-autoloader(%{gh_owner}/zend-i18n)
-Suggests: php-autoloader(%{gh_owner}/zend-view)
-Suggests: php-autoloader(%{gh_owner}/zendservice-recaptcha)
+Suggests: php-autoloader(%{gh_owner}/laminas-captcha)
+Suggests: php-autoloader(%{gh_owner}/laminas-code)
+Suggests: php-autoloader(%{gh_owner}/laminas-eventmanager)
+Suggests: php-autoloader(%{gh_owner}/laminas-i18n)
+Suggests: php-autoloader(%{gh_owner}/laminas-view)
+Suggests: php-autoloader(%{gh_owner}/laminas-recaptcha)
+%endif
+# remirepo:8
+%else
+Requires: php-laminas-inputfilter
+Requires: php-laminas-hydrator
+Requires: php-laminas-stdlib
+Requires: php-laminas-zendframework-bridge
+# Mandory because of Polyfill
+Requires: php-laminas-servicemanager
%endif
%endif
# Autoloader
Requires: php-composer(fedora/autoloader)
-# From phpcompatinfo report for version 2.6.0
+# From phpcompatinfo report for version 2.14.3
Requires: php-date
Requires: php-intl
+Requires: php-mbstring
Requires: php-pcre
Requires: php-spl
-Obsoletes: php-ZendFramework2-%{library} < 2.5
-Provides: php-ZendFramework2-%{library} = %{version}
-Provides: php-composer(%{gh_owner}/%{gh_project}) = %{version}
+Obsoletes: php-ZendFramework2-%{library} < 2.5
+Provides: php-ZendFramework2-%{library} = %{version}
+# Compatibily ensure by the bridge
+Obsoletes: php-zendframework-%{zf_name} < 2.14.3-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\Form is intended primarily as a bridge between your domain models
+The %{namespace}\Form is intended primarily as a bridge between your domain models
and the View Layer. It composes a thin layer of objects representing form
elements, an InputFilter, and a small number of methods for binding data to
and from the form and attached objects.
-Documentation: https://zendframework.github.io/%{gh_project}/
+Documentation: https://docs.laminas.dev/%{gh_project}/
%prep
%setup -q -n %{gh_project}-%{gh_commit}
+%patch0 -p1
mv LICENSE.md LICENSE
+mv autoload/formElementManagerPolyfill.php src
+
%build
: Create autoloader
phpab --template fedora --output src/autoload.php src
cat << 'EOF' | tee -a src/autoload.php
\Fedora\Autoloader\Dependencies::optional([
- '%{php_home}/Zend/Captcha/autoload.php',
- '%{php_home}/Zend/Code/autoload.php',
- '%{php_home}/Zend/EventManager/autoload.php',
- '%{php_home}/Zend/I18n/autoload.php',
- '%{php_home}/Zend/ServiceManager/autoload.php',
- '%{php_home}/Zend/View/autoload.php',
- '%{php_home}/ZendService/ReCaptcha/autoload.php',
+ '%{php_home}/%{namespace}/Captcha/autoload.php',
+ '%{php_home}/%{namespace}/Code/autoload.php',
+ '%{php_home}/%{namespace}/EventManager/autoload.php',
+ '%{php_home}/%{namespace}/I18n/autoload.php',
+ '%{php_home}/%{namespace}/View/autoload.php',
+ '%{php_home}/%{namespace}/ReCaptcha/autoload.php',
]);
# Polyfill must be loaded after ServiceManager
\Fedora\Autoloader\Dependencies::required([
- '%{php_home}/Zend/InputFilter/autoload.php',
- '%{php_home}/Zend/Hydrator/autoload.php',
- '%{php_home}/Zend/Stdlib/autoload.php',
+ '%{php_home}/%{namespace}/InputFilter/autoload.php',
+ '%{php_home}/%{namespace}/Hydrator/autoload.php',
+ '%{php_home}/%{namespace}/Stdlib/autoload.php',
+ '%{php_home}/%{namespace}/ServiceManager/autoload.php',
__DIR__ . '/formElementManagerPolyfill.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}
-cp -p autoload/formElementManagerPolyfill.php \
- %{buildroot}%{php_home}/Zend/%{library}
-ln -s %{library}/formElementManagerPolyfill.php \
- %{buildroot}%{php_home}/Zend/%{library}-autoload.php
+%install
+: 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
%if %{with_tests}
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');
\Fedora\Autoloader\Dependencies::required([
dirname(__DIR__) . '/test/_autoload.php',
- '%{php_home}/Zend/Cache/autoload.php',
- '%{php_home}/Zend/Escaper/autoload.php',
- '%{php_home}/Zend/Filter/autoload.php',
- '%{php_home}/Zend/Session/autoload.php',
- '%{php_home}/Zend/Text/autoload.php',
- '%{php_home}/Zend/Validator/autoload.php',
+ '%{php_home}/%{namespace}/Cache/autoload.php',
+ '%{php_home}/%{namespace}/Escaper/autoload.php',
+ '%{php_home}/%{namespace}/Filter/autoload.php',
+ '%{php_home}/%{namespace}/Session/autoload.php',
+ '%{php_home}/%{namespace}/Text/autoload.php',
+ '%{php_home}/%{namespace}/Validator/autoload.php',
]);
EOF
+
+: check compat autoloader
+php -r '
+require "%{buildroot}%{php_home}/Zend/%{library}/autoload.php";
+exit (class_exists("\\Zend\\%{library}\\Factory") ? 0 : 1);
+'
+
+: upstream test suite
ret=0
-for cmdarg in "php %{phpunit}" php71 php72 php73 php74; do
+for cmdarg in "php %{phpunit}" php72 php73 php74; do
if which $cmdarg; then
set $cmdarg
- $1 ${2:-%{_bindir}/phpunit6} -d memory_limit=1G || ret=1
+ $1 ${2:-%{_bindir}/phpunit7} -d memory_limit=1G || ret=1
fi
done
exit $ret
@@ -245,15 +266,21 @@ exit $ret
%files
+# remirepo:1
%{!?_licensedir:%global license %%doc}
%license LICENSE
%doc *.md
%doc composer.json
%{php_home}/Zend/%{library}
-%{php_home}/Zend/%{library}-autoload.php
+%{php_home}/%{namespace}/%{library}
%changelog
+* Wed Jan 15 2020 Remi Collet <remi@remirepo.net> - 2.12.0-1
+- switch to Laminas
+- add patch for PHP 7.4 from
+ https://github.com/laminas/laminas-form/pull/55
+
* Fri Oct 4 2019 Remi Collet <remi@remirepo.net> - 2.14.3-1
- update to 2.14.3
- drop patch merged upstream