diff options
| -rw-r--r-- | composer.json | 25 | ||||
| -rw-r--r-- | php-kukulich-fshl-php71.patch | 72 | ||||
| -rw-r--r-- | php-kukulich-fshl.spec | 23 | 
3 files changed, 116 insertions, 4 deletions
diff --git a/composer.json b/composer.json new file mode 100644 index 0000000..99b56bc --- /dev/null +++ b/composer.json @@ -0,0 +1,25 @@ +{ +	"name": "kukulich/fshl", +	"type": "library", +	"description": "FSHL is a free, open source, universal, fast syntax highlighter written in PHP.", +	"keywords": ["library", "highlight", "syntax"], +	"homepage": "http://fshl.kukulich.cz/", +	"license": "GPL-2.0+", + +	"authors": [ +		{ +			"name": "Jaroslav HanslĂk", +			"homepage": "https://github.com/kukulich" +		} +	], + +	"require": { +		"php": ">=5.3" +	}, + +	"autoload": { +		"psr-0": { +			"FSHL": "./" +		} +	} +} diff --git a/php-kukulich-fshl-php71.patch b/php-kukulich-fshl-php71.patch new file mode 100644 index 0000000..63fb55e --- /dev/null +++ b/php-kukulich-fshl-php71.patch @@ -0,0 +1,72 @@ +From ae00651ce648c576ba37b79755a804801b592604 Mon Sep 17 00:00:00 2001 +From: Remi Collet <fedora@famillecollet.com> +Date: Thu, 16 Feb 2017 12:08:34 +0100 +Subject: [PATCH 1/2] workaround PHP 7.1 issue, fixed #12 + +--- + FSHL/Highlighter.php | 6 +++--- + 1 file changed, 3 insertions(+), 3 deletions(-) + +diff --git a/FSHL/Highlighter.php b/FSHL/Highlighter.php +index 04e7b42..d3c9e38 100644 +--- a/FSHL/Highlighter.php ++++ b/FSHL/Highlighter.php +@@ -250,7 +250,7 @@ public function highlight($text, Lexer $lexer = null) + 			} +  + 			// Switches between lexers (transition to embedded language) +-			if ($this->lexer->flags[$newState] & Generator::STATE_FLAG_NEWLEXER) { ++			if ((int)$this->lexer->flags[$newState] & Generator::STATE_FLAG_NEWLEXER) { + 				if ($newState === $this->lexer->quitState) { + 					// Returns to the previous lexer + 					if ($item = $this->popState()) { +@@ -275,7 +275,7 @@ public function highlight($text, Lexer $lexer = null) + 			} +  + 			// If newState is marked with recursion flag (alias call), push current state to the context stack +-			if (($this->lexer->flags[$newState] & Generator::STATE_FLAG_RECURSION) && $state !== $newState) { ++			if (((int)$this->lexer->flags[$newState] & Generator::STATE_FLAG_RECURSION) && $state !== $newState) { + 				$this->pushState($lexerName, $state); + 			} +  +@@ -434,7 +434,7 @@ private function generateCache(Lexer $lexer) + 	 */ + 	private function template($part, $state) + 	{ +-		if ($this->lexer->flags[$state] & Generator::STATE_FLAG_KEYWORD) { ++		if ((int)$this->lexer->flags[$state] & Generator::STATE_FLAG_KEYWORD) { + 			$normalized = Generator::CASE_SENSITIVE === $this->lexer->keywords[Generator::KEYWORD_INDEX_CASE_SENSITIVE] ? $part : strtolower($part); +  + 			if (isset($this->lexer->keywords[Generator::KEYWORD_INDEX_LIST][$normalized])) { + +From 213824a607741ef08cffd0d2b7dfa112f2e6ae9d Mon Sep 17 00:00:00 2001 +From: Remi Collet <fedora@famillecollet.com> +Date: Thu, 16 Feb 2017 12:09:59 +0100 +Subject: [PATCH 2/2] enable more versions in travis + +--- + .travis.yml | 6 +++++- + 1 file changed, 5 insertions(+), 1 deletion(-) + +diff --git a/.travis.yml b/.travis.yml +index 901bf6a..66db7f9 100644 +--- a/.travis.yml ++++ b/.travis.yml +@@ -3,6 +3,10 @@ language: php + php: +   - 5.3 +   - 5.4 ++  - 5.5 ++  - 5.6 ++  - 7.0 ++  - 7.1 +  + branches: +   only: +@@ -13,4 +17,4 @@ notifications: +   email: +     - kontakt@kukulich.cz +  +-script: phpunit tests/FSHL +\ No newline at end of file ++script: phpunit tests/FSHL diff --git a/php-kukulich-fshl.spec b/php-kukulich-fshl.spec index 8f544a1..4a6922a 100644 --- a/php-kukulich-fshl.spec +++ b/php-kukulich-fshl.spec @@ -1,4 +1,4 @@ -# remirepo spec/Fedora file for php-kukulich-fshl +# remirepo/fedora spec file for php-kukulich-fshl  #  # Copyright (c) 2015-2017 Remi Collet  # License: CC-BY-SA @@ -16,7 +16,7 @@  Name:           php-%{gh_owner}-%{gh_project}  Version:        2.1.0 -Release:        2%{?dist} +Release:        4%{?dist}  Summary:        FSHL: fast syntax highlighter  Group:          Development/Libraries @@ -26,6 +26,9 @@ URL:            http://fshl.kukulich.cz/  Source0:        %{name}-%{version}-%{gh_short}.tgz  Source1:        makesrc.sh +# https://github.com/kukulich/fshl/pull/13 +Patch0:         %{name}-php71.patch +  BuildRoot:      %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)  BuildArch:      noarch  BuildRequires:  php-composer(theseer/autoload) @@ -58,6 +61,7 @@ To use this library, you just have to add, in your project:  %prep  %setup -q -n %{gh_project}-%{gh_commit} +%patch0 -p1 -b .pr13  %build @@ -79,7 +83,13 @@ cp -pr %{ns_project} %{buildroot}%{php_home}/%{ns_project}  sed -e '/bootstrap/s:^.*$:require_once "%{buildroot}%{php_home}/%{ns_project}/autoload.php";:' \      -i tests/%{ns_project}/*Test.php -%{_bindir}/phpunit --verbose tests +ret=0 +for cmd in php56 php70 php71 php; do +  if which $cmd; then +    $cmd %{_bindir}/phpunit --verbose tests || ret=1 +  fi +done +exit $ret  %else  : Test suite disabled  %endif @@ -99,8 +109,13 @@ rm -rf %{buildroot}  %changelog +* Thu Feb 16 2017 Remi Collet <remi@fedoraproject.org> - 2.1.0-4 +- open https://github.com/kukulich/fshl/issues/12 failed tests +- add patch from https://github.com/kukulich/fshl/pull/13 +  workaround for failed test with PHP 7.1, fix FTBFS +  * Wed Nov  4 2015 Remi Collet <remi@fedoraproject.org> - 2.1.0-2  - License is GPLv2+, from review #1277487  * Tue Oct 20 2015 Remi Collet <remi@fedoraproject.org> - 2.1.0-1 -- initial package, version 2.1.0
\ No newline at end of file +- initial package, version 2.1.0  | 
