diff options
-rw-r--r-- | .gitignore | 8 | ||||
-rw-r--r-- | composer.json | 13 | ||||
-rw-r--r-- | php-swiftmailer6.spec (renamed from php-swiftmailer.spec) | 83 |
3 files changed, 60 insertions, 44 deletions
diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..fc9aa8c --- /dev/null +++ b/.gitignore @@ -0,0 +1,8 @@ +clog +package-*.xml +*.tgz +*.tar.gz +*.tar.xz +*.tar.xz.asc +*.src.rpm +*/*rpm diff --git a/composer.json b/composer.json index 8335f58..4043983 100644 --- a/composer.json +++ b/composer.json @@ -3,7 +3,7 @@ "type": "library", "description": "Swiftmailer, free feature-rich PHP mailer", "keywords": ["mail","mailer","email"], - "homepage": "http://swiftmailer.org", + "homepage": "http://swiftmailer.symfony.com", "license": "MIT", "authors": [ { @@ -15,23 +15,22 @@ } ], "require": { - "php": ">=5.3.3" + "php": ">=7.0.0", + "egulias/email-validator": "~2.0" }, "require-dev": { "mockery/mockery": "~0.9.1", - "symfony/phpunit-bridge": "~3.2" + "symfony/phpunit-bridge": "~3.3@dev" }, "autoload": { "files": ["lib/swift_required.php"] }, "autoload-dev": { - "psr-0": { - "Swift_": "tests/unit" - } + "psr-0": { "Swift_": "tests/unit" } }, "extra": { "branch-alias": { - "dev-master": "5.4-dev" + "dev-master": "6.0-dev" } } } diff --git a/php-swiftmailer.spec b/php-swiftmailer6.spec index 4dcc066..1b7ddb8 100644 --- a/php-swiftmailer.spec +++ b/php-swiftmailer6.spec @@ -1,4 +1,4 @@ -# remirepo/fedora spec file for php-swiftmailer +# remirepo/fedora spec file for php-swiftmailer6 # # Copyright (c) 2016-2017 Remi Collet # License: CC-BY-SA @@ -6,25 +6,30 @@ # # Please preserve changelog entries # -%global gh_commit 9a06dc570a0367850280eefd3f1dc2da45aef517 +%global gh_commit 412333372fb6c8ffb65496a2bbd7321af75733fc %global gh_short %(c=%{gh_commit}; echo ${c:0:7}) %global gh_owner swiftmailer %global gh_project swiftmailer +# don't change major version used in package name +%global major 6 %global with_tests 0%{!?_without_tests:1} %global php_home %{_datadir}/php -Name: php-%{gh_project} -Version: 5.4.8 -Release: 3%{?dist} +Name: php-%{gh_project}%{major} +Version: 6.0.2 +Release: 1%{?dist} Summary: Free Feature-rich PHP Mailer Group: Development/Libraries License: MIT -URL: http://www.swiftmailer.org/ +URL: https://swiftmailer.symfony.com/ Source0: https://github.com/%{gh_owner}/%{gh_project}/archive/%{gh_commit}/%{gh_project}-%{version}-%{gh_short}.tar.gz BuildArch: noarch %if %{with_tests} +BuildRequires: php(language) >= 7.0.0 +BuildRequires: php-composer(egulias/email-validator) >= 2.0 +BuildRequires: php-composer(egulias/email-validator) < 3 BuildRequires: php-reflection BuildRequires: php-simplexml BuildRequires: php-bcmath @@ -37,19 +42,22 @@ BuildRequires: php-mhash BuildRequires: php-openssl BuildRequires: php-pcre BuildRequires: php-spl -BuildRequires: php-composer(phpunit/phpunit) +BuildRequires: phpunit6 BuildRequires: php-fedora-autoloader-devel # From composer.json, "require-dev": { # "mockery/mockery": "~0.9.1", -# "symfony/phpunit-bridge": "~3.2" +# "symfony/phpunit-bridge": "~3.3@dev" BuildRequires: php-composer(mockery/mockery) >= 0.9.1 -# ignore minimal version as test suite passes with 2.8 -BuildRequires: php-composer(symfony/phpunit-bridge) +BuildRequires: php-composer(symfony/phpunit-bridge) < 4 +BuildRequires: php-composer(symfony/phpunit-bridge) >= 3.2 %endif # From composer.json, "require": { -# "php": ">=5.3.3" -Requires: php(language) >= 5.3.3 +# "php": ">=7.0.0", +# "egulias/email-validator": "~2.0" +Requires: php(language) >= 7.0.0 +Requires: php-composer(egulias/email-validator) >= 2.0 +Requires: php-composer(egulias/email-validator) < 3 # from phpcompatinfo report on version 5.4.8 Requires: php-reflection Requires: php-simplexml @@ -64,14 +72,6 @@ Requires: php-openssl Requires: php-pcre Requires: php-spl -# Removed from official repo in Fedora 25 -%if 1 -Obsoletes: php-swift-Swift <= 5.4.1 -# Single package in this channel -Obsoletes: php-channel-swift <= 1.3 -Provides: php-pear(pear.swiftmailer.org/Swift) = %{version} -%endif - Provides: php-composer(%{gh_owner}/%{gh_project}) = %{version} @@ -80,16 +80,19 @@ Swift Mailer integrates into any web app written in PHP, offering a flexible and elegant object-oriented approach to sending emails with a multitude of features. -Autoloader: %{php_home}/Swift/swift_required.php +Autoloader: %{php_home}/Swift%{major}/autoload.php %prep %setup -q -n %{gh_project}-%{gh_commit} -# Install using the same layout than the old PEAR package -mv lib/swift_required_pear.php lib/swift_required.php -rm lib/swiftmailer_generate_mimes_config.php +cat << 'EOF' | tee lib/autoload.php +<?php +/* Autoloader for %{name} and its' dependencies */ +require_once '%{php_home}/Egulias/EmailValidator2/autoload.php'; +require_once __DIR__ . '/swift_required.php'; +EOF %build @@ -97,10 +100,10 @@ rm lib/swiftmailer_generate_mimes_config.php %install -mkdir -p %{buildroot}/%{php_home}/Swift -cp -p lib/*.php %{buildroot}/%{php_home}/Swift/ -cp -pr lib/classes/* %{buildroot}/%{php_home}/Swift/ -cp -pr lib/dependency_maps %{buildroot}/%{php_home}/Swift/ +mkdir -p %{buildroot}/%{php_home}/Swift%{major} +cp -p lib/*.php %{buildroot}/%{php_home}/Swift%{major}/ +cp -pr lib/classes %{buildroot}/%{php_home}/Swift%{major}/ +cp -pr lib/dependency_maps %{buildroot}/%{php_home}/Swift%{major}/ %check @@ -109,15 +112,14 @@ cp -pr lib/dependency_maps %{buildroot}/%{php_home}/Swift/ mkdir vendor %{_bindir}/phpab --format fedora --output vendor/autoload.php tests cat << 'EOF' | tee -a vendor/autoload.php -require_once '%{buildroot}/%{php_home}/Swift/swift_required.php'; +require_once '%{buildroot}/%{php_home}/Swift%{major}/autoload.php'; require_once '%{php_home}/Mockery/autoload.php'; -if (file_exists('%{php_home}/Symfony3/Bridge/PhpUnit')) { - \Fedora\Autoloader\Autoload::addPsr4('Symfony\\Bridge\\PhpUnit\\', '%{php_home}/Symfony3/Bridge/PhpUnit'); -} else { - \Fedora\Autoloader\Autoload::addPsr4('Symfony\\Bridge\\PhpUnit\\', '%{php_home}/Symfony/Bridge/PhpUnit'); -} +\Fedora\Autoloader\Autoload::addPsr4('Symfony\\Bridge\\PhpUnit\\', '%{php_home}/Symfony3/Bridge/PhpUnit'); EOF +: Avoid duplicated classes +find tests -name \*.php -exec sed -e '/swift_required/d' -i {} \; + TMPDIR=$(mktemp -d $PWD/rpmtests-XXXXXXXX) cat << EOF | tee tests/acceptance.conf.php <?php @@ -126,9 +128,9 @@ EOF : Run upstream test suite ret=0 -for cmd in php php56 php70 php71 php72; do +for cmd in php php70 php71 php72; do if which $cmd; then - $cmd %{_bindir}/phpunit --exclude smoke --verbose || ret=1 + $cmd %{_bindir}/phpunit6 --exclude smoke --verbose || ret=1 fi done rm -r $TMPDIR @@ -142,10 +144,17 @@ exit $ret %doc CHANGES README %doc doc %doc composer.json -%{php_home}/Swift +%{php_home}/Swift%{major} %changelog +* Wed Oct 4 2017 Remi Collet <remi@remirepo.net> - 6.0.2-1 +- Update to 6.0.2 +- rename to php-swiftmailer6 +- raise dependency on PHP 7.0 +- add dependency on egulias/email-validator 2.0 +- use phpunit6 for test suite + * Wed Oct 4 2017 Remi Collet <remi@remirepo.net> - 5.4.8-3 - drop unneeded dependency on php-mcrypt |