From 35239019abaacd79707ea84ed464a82fcceeed20 Mon Sep 17 00:00:00 2001 From: Remi Collet Date: Wed, 17 Mar 2021 16:03:16 +0100 Subject: [PATCH] update to 2.7.4 drop patch merged upstream switch to phpunit8 --- .gitignore | 1 + 170.patch | 23 ---------- php-masterminds-html5-get-source.sh | 71 +++++++++++++++++++++++++++++ php-masterminds-html5.spec | 40 +++++++++++----- sources | 2 +- 5 files changed, 102 insertions(+), 35 deletions(-) delete mode 100644 170.patch create mode 100755 php-masterminds-html5-get-source.sh diff --git a/.gitignore b/.gitignore index 945e349..43188e1 100644 --- a/.gitignore +++ b/.gitignore @@ -4,3 +4,4 @@ /php-masterminds-html5-2.3.0-2c37c6c520b995b761674de3be8455a381679067.tar.gz /php-masterminds-html5-2.6.0-c961ca6a0a81dc6b55b6859b3f9ea7f402edf9ad.tar.gz /php-masterminds-html5-2.7.0-104443ad663d15981225f99532ba73c2f1d6b6f2.tar.gz +/php-masterminds-html5-2.7.4-9227822783c75406cfe400984b2f095cdf03d417.tar.gz diff --git a/170.patch b/170.patch deleted file mode 100644 index 076b8d4..0000000 --- a/170.patch +++ /dev/null @@ -1,23 +0,0 @@ -From 70d36f21e9223cad511dbc149c299b1143d264e4 Mon Sep 17 00:00:00 2001 -From: Remi Collet -Date: Fri, 11 Oct 2019 10:30:57 +0200 -Subject: [PATCH] Fix Trying to access array offset on value of type null - ---- - test/HTML5/Parser/TokenizerTest.php | 3 ++- - 1 file changed, 2 insertions(+), 1 deletion(-) - -diff --git a/test/HTML5/Parser/TokenizerTest.php b/test/HTML5/Parser/TokenizerTest.php -index 153dd23..6c90686 100644 ---- a/test/HTML5/Parser/TokenizerTest.php -+++ b/test/HTML5/Parser/TokenizerTest.php -@@ -26,7 +26,8 @@ public function assertEventEquals($type, $expects, $event) - if (is_array($expects)) { - $this->assertEquals($expects, $event['data'], "Event $type should equal " . print_r($expects, true) . ': ' . print_r($event, true)); - } else { -- $this->assertEquals($expects, $event['data'][0], "Event $type should equal $expects: " . print_r($event, true)); -+ $d = (is_array($event['data']) ? $event['data'][0] : null); -+ $this->assertEquals($expects, $d, "Event $type should equal $expects: " . print_r($event, true)); - } - } - diff --git a/php-masterminds-html5-get-source.sh b/php-masterminds-html5-get-source.sh new file mode 100755 index 0000000..4ad1051 --- /dev/null +++ b/php-masterminds-html5-get-source.sh @@ -0,0 +1,71 @@ +#/bin/sh + +GIT=`which git` +RPM=`which rpm` + +if [ -z "$GIT" ] +then + echo "ERROR: 'git' command not found" 1>&2 + exit 1 +elif [ -z "$RPM" ] +then + echo "ERROR: 'rpm' command not found" 1>&2 + exit 1 +fi + +function print { + echo -e "\e[0;33m>>>>> ${1}\e[0m" +} + +if [ -x "$1" ] +then + SPEC=$1 +else + SPEC=`ls *.spec | head -1` +fi + +NAME=`echo $SPEC | sed 's#\.spec##'` +VERSION=`egrep '%global\s*github_version' $SPEC | awk '{print $3}'` + +print "SPEC = $SPEC" +print "NAME = $NAME" + +GIT_OWNER=`egrep '%global\s*github_owner' $SPEC | awk '{print $3}'` +GIT_NAME=`egrep '%global\s*github_name' $SPEC | awk '{print $3}'` +GIT_COMMIT=`egrep '%global\s*github_commit' $SPEC | awk '{print $3}'` +GIT_REPO=https://github.com/${GIT_OWNER}/${GIT_NAME} +GIT_DIR=`echo $GIT_REPO | sed 's#.*/##'` + +print "GIT_OWNER = $GIT_OWNER" +print "GIT_NAME = $GIT_NAME" +print "GIT_COMMIT = $GIT_COMMIT" +print "GIT_REPO = $GIT_REPO" +print "GIT_DIR = $GIT_DIR" + +TEMP_DIR=$(mktemp --dir) +TAR_FILE=$PWD/${NAME}-${VERSION}-${GIT_COMMIT}.tar.gz +CMP_FILE=$PWD/composer.json + +pushd $TEMP_DIR + print "Cloning git repo..." + $GIT clone $GIT_REPO + + pushd $GIT_DIR + print "Checking out commit..." + $GIT checkout $GIT_COMMIT + cp composer.json $CMP_FILE + popd + + TAR_DIR=${GIT_NAME}-${GIT_COMMIT} + print "TAR_DIR = $TAR_DIR" + + mv $GIT_DIR $TAR_DIR + + print "TAR_FILE = $TAR_FILE" + + [ -e $TAR_FILE ] && rm -f $TAR_FILE + tar --exclude-vcs -czf $TAR_FILE $TAR_DIR + chmod 0644 $TAR_FILE +popd + +rm -rf $TEMP_DIR diff --git a/php-masterminds-html5.spec b/php-masterminds-html5.spec index 1a1aef6..47c236b 100644 --- a/php-masterminds-html5.spec +++ b/php-masterminds-html5.spec @@ -1,7 +1,7 @@ # # Fedora spec file for php-masterminds-html5 # -# Copyright (c) 2015-2019 Shawn Iwinski +# Copyright (c) 2015-2021 Shawn Iwinski # # License: MIT # http://opensource.org/licenses/MIT @@ -11,8 +11,8 @@ %global github_owner Masterminds %global github_name html5-php -%global github_version 2.7.0 -%global github_commit 104443ad663d15981225f99532ba73c2f1d6b6f2 +%global github_version 2.7.4 +%global github_commit 9227822783c75406cfe400984b2f095cdf03d417 %global composer_vendor masterminds %global composer_project html5 @@ -27,14 +27,15 @@ Name: php-%{composer_vendor}-%{composer_project} Version: %{github_version} -Release: 4%{?dist} +Release: 1%{?dist} Summary: An HTML5 parser and serializer License: MIT URL: http://masterminds.github.io/html5-php -Source0: https://github.com/%{github_owner}/%{github_name}/archive/%{github_commit}/%{name}-%{github_version}-%{github_commit}.tar.gz - -Patch0: https://patch-diff.githubusercontent.com/raw/Masterminds/html5-php/pull/170.patch +# GitHub export does not include tests. +# Run php-league-container-get-source.sh to create full source. +Source0: %{name}-%{github_version}-%{github_commit}.tar.gz +Source1: %{name}-get-source.sh BuildArch: noarch # Autoload generation @@ -43,7 +44,7 @@ BuildRequires: %{_bindir}/phpab %if %{with_tests} ## composer.json BuildRequires: php(language) >= %{php_min_ver} -BuildRequires: php-composer(phpunit/phpunit) >= 4.8.35 +BuildRequires: phpunit8 BuildRequires: php-ctype BuildRequires: php-dom ## phpcompatinfo (computed from version 2.7.0) @@ -84,7 +85,6 @@ refactoring work, we began a new parser. %prep %setup -qn %{github_name}-%{github_commit} -%patch0 -p1 -b .pr170 : Docs mkdir -p docs/{Parser,Serializer} @@ -120,10 +120,23 @@ require '%{buildroot}%{phpdir}/Masterminds/HTML5/autoload.php'; require __DIR__ . '/../test/autoload.php'; AUTOLOAD +: fix for phpunit8 +find test \ + -name \*.php \ + -exec sed \ + -e 's/function setUp()/function setUp():void/' \ + -i {} \; + +sed -e 's/assertContains(/assertStringContainsString(/' \ + -i test/HTML5/Html5Test.php + +grep -v blacklist < phpunit.xml.dist | \ + grep -v ' phpunit.xml + : Upstream tests RETURN_CODE=0 -PHPUNIT=$(which phpunit) -for PHP_EXEC in "" %{?rhel:php54 php55 php56 php70} php71 php72 php73 php74; do +PHPUNIT=$(which phpunit8) +for PHP_EXEC in "" php72 php73 php74 php80; do if [ -z "$PHP_EXEC" ] || which $PHP_EXEC; then $PHP_EXEC $PHPUNIT --verbose || RETURN_CODE=1 fi @@ -142,6 +155,11 @@ exit $RETURN_CODE %changelog +* Wed Mar 17 2021 Remi Collet - 2.7.4-1 +- update to 2.7.4 +- drop patch merged upstream +- switch to phpunit8 + * Wed Jan 27 2021 Fedora Release Engineering - 2.7.0-4 - Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild diff --git a/sources b/sources index 891e5cc..6966c76 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (php-masterminds-html5-2.7.0-104443ad663d15981225f99532ba73c2f1d6b6f2.tar.gz) = 1d2cf668e67dcdbab54c2cdfba5f23214a0cdc2e4a47bd202da912c99a4aed2ff5db329c4a167dc9b2859e59ac3afcae7b64e3874050bdc5f2712eca88f01448 +SHA512 (php-masterminds-html5-2.7.4-9227822783c75406cfe400984b2f095cdf03d417.tar.gz) = 36018aeb641c8d5968dc919e0abf2504edb9ee6c60640255452381ad0b06ff9c7d86fed31a113ab591f08b976faa0f60028ed00306a1761bc0973e162221392c