summaryrefslogtreecommitdiffstats
path: root/phan.spec
diff options
context:
space:
mode:
Diffstat (limited to 'phan.spec')
-rw-r--r--phan.spec320
1 files changed, 251 insertions, 69 deletions
diff --git a/phan.spec b/phan.spec
index a4f58ff..5f03fb6 100644
--- a/phan.spec
+++ b/phan.spec
@@ -1,7 +1,7 @@
# remirepo/fedora spec file for phan
#
-# Copyright (c) 2016-2019 Remi Collet
-# License: CC-BY-SA
+# Copyright (c) 2016-2023 Remi Collet
+# License: CC-BY-SA-4.0
# http://creativecommons.org/licenses/by-sa/4.0/
#
# Please, preserve the changelog entries
@@ -10,15 +10,15 @@
# For compatibility with SCL
%undefine __brp_mangle_shebangs
-%global gh_commit 9236f30e5b6ccb582ebc77b1635eabe08bdecf9e
+%global gh_commit 4f2870ed6fea320f62f3c3c63f3274d357a7980e
%global gh_short %(c=%{gh_commit}; echo ${c:0:7})
%global gh_owner phan
#global gh_date 20150820
%global gh_project phan
%global psr0 Phan
-%global with_tests 0%{!?_without_tests:1}
-%global upstream_version 2.4.4
-#global upstream_prever RC2
+%bcond_without tests
+%global upstream_version 5.4.2
+#global upstream_prever a4
Name: %{gh_project}
Version: %{upstream_version}%{?upstream_prever:~%{upstream_prever}}
@@ -34,33 +34,33 @@ Source1: makesrc.sh
Patch0: %{name}-autoload.patch
BuildArch: noarch
-%if %{with_tests}
-BuildRequires: php(language) >= 7.1.0
-BuildRequires: php-ast >= 1.0.1
+%if %{with tests}
+BuildRequires: php(language) >= 7.2
+BuildRequires: php-ast >= 1.0.16
+BuildRequires: php-var_representation
# remirepo:1
%if 0%{?fedora} >= 27 || 0%{?rhel} >= 8
-BuildRequires: (php-composer(composer/semver) >= 1.4 with php-composer(composer/semver) < 2)
-BuildRequires: (php-composer(composer/xdebug-handler) >= 1.3.2 with php-composer(composer/xdebug-handler) < 2)
-BuildRequires: (php-composer(felixfbecker/advanced-json-rpc) >= 3.0.4 with php-composer(felixfbecker/advanced-json-rpc) < 4)
-BuildRequires: (php-composer(microsoft/tolerant-php-parser) >= 0.0.18 with php-composer(microsoft/tolerant-php-parser) < 0.1)
-BuildRequires: (php-composer(netresearch/jsonmapper) >= 1.6 with php-composer(netresearch/jsonmapper) < 2)
-BuildRequires: (php-composer(sabre/event) >= 5.0 with php-composer(sabre/event) < 6)
-BuildRequires: (php-composer(symfony/console) >= 2.8 with php-composer(symfony/console) < 5)
-# remirepo:15
+BuildRequires: (php-composer(composer/semver) >= 1.4 with php-composer(composer/semver) < 4)
+BuildRequires: (php-composer(composer/xdebug-handler) >= 2.0 with php-composer(composer/xdebug-handler) < 4)
+BuildRequires: (php-composer(felixfbecker/advanced-json-rpc) >= 3.0.4 with php-composer(felixfbecker/advanced-json-rpc) < 4)
+BuildRequires: (php-composer(microsoft/tolerant-php-parser) >= 0.1.2 with php-composer(microsoft/tolerant-php-parser) < 0.2)
+BuildRequires: (php-composer(netresearch/jsonmapper) >= 1.6 with php-composer(netresearch/jsonmapper) < 5)
+BuildRequires: (php-composer(sabre/event) >= 5.1.3 with php-composer(sabre/event) < 6)
+BuildRequires: (php-composer(symfony/console) >= 4.0 with php-composer(symfony/console) < 7)
+BuildRequires: (php-composer(symfony/polyfill-php80) >= 1.19 with php-composer(symfony/polyfill-php80) < 2)
+# remirepo:13
%else
-BuildRequires: php-composer(composer/semver) < 2
+BuildRequires: php-composer(composer/semver) < 4
BuildRequires: php-composer(composer/semver) >= 1.4
-BuildRequires: php-composer(composer/xdebug-handler) < 2
-BuildRequires: php-composer(composer/xdebug-handler) >= 1.3.2
-BuildRequires: php-composer(felixfbecker/advanced-json-rpc) < 4
+BuildRequires: php-composer-xdebug-handler2
+BuildRequires: php-composer(felixfbecker/advanced-json-rpc) < 5
BuildRequires: php-composer(felixfbecker/advanced-json-rpc) >= 3.0.4
-BuildRequires: php-composer(microsoft/tolerant-php-parser) < 0.1
-BuildRequires: php-composer(microsoft/tolerant-php-parser) >= 0.0.18
-BuildRequires: php-composer(netresearch/jsonmapper) < 2
-BuildRequires: php-composer(netresearch/jsonmapper) >= 1.6
-BuildRequires: php-composer(sabre/event) < 6
-BuildRequires: php-composer(sabre/event) >= 5.0
-BuildRequires: php-composer(symfony/console) < 4
+BuildRequires: php-composer(microsoft/tolerant-php-parser) < 0.2
+BuildRequires: php-composer(microsoft/tolerant-php-parser) >= 0.1.2
+BuildRequires: php-netresearch-jsonmapper >= 1.6
+BuildRequires: php-sabre-event5 >= 5.1.3
+BuildRequires: php-symfony4-console >= 4.0
+BuildRequires: php-symfony-polyfill >= 1.20
%endif
BuildRequires: php-reflection
BuildRequires: php-ctype
@@ -75,9 +75,8 @@ BuildRequires: php-spl
BuildRequires: php-sysvmsg
BuildRequires: php-sysvsem
# For tests, from composer.json "require-dev": {
-# "brianium/paratest": "^2.2.0",
-# "phpunit/phpunit": "^7.5.0"
-BuildRequires: phpunit7 >= 7.5
+# "phpunit/phpunit": "^8.5.0"
+BuildRequires: phpunit8 >= 8.5
BuildRequires: php-date
BuildRequires: php-intl
BuildRequires: php-soap
@@ -86,57 +85,61 @@ BuildRequires: php-soap
BuildRequires: php-composer(fedora/autoloader)
# From composer.json, "require": {
-# "php": "^7.1.0",
+# "php": "^7.2.0|^8.0.0",
# "ext-filter": "*",
# "ext-json": "*",
# "ext-tokenizer": "*",
-# "composer/semver": "^1.4",
-# "composer/xdebug-handler": "^1.3.2",
+# "composer/semver": "^1.4|^2.0|^3.0",
+# "composer/xdebug-handler": "^2.0|^3.0",
# "felixfbecker/advanced-json-rpc": "^3.0.4",
-# "microsoft/tolerant-php-parser": "0.0.18",
-# "netresearch/jsonmapper": "^1.6.0",
-# "sabre/event": "^5.0",
-# "symfony/console": "^2.3|^3.0|~4.0",
-# "symfony/polyfill-mbstring": "^1.11.0"
-Requires: php(language) >= 7.1.0
+# "microsoft/tolerant-php-parser": "^0.1.2",
+# "netresearch/jsonmapper": "^1.6.0|^2.0|^3.0|^4.0",
+# "sabre/event": "^5.1.3",
+# "symfony/console": "^3.2|^4.0|^5.0|^6.0",
+# "symfony/polyfill-mbstring": "^1.11.0",
+# "symfony/polyfill-php80": "^1.20.0",
+# ignore and use the ext instead
+# "tysonandre/var_representation_polyfill": "^0.0.2|^0.1.0"
+Requires: php(language) >= 7.2
Requires: php-filter
Requires: php-tokenizer
Requires: php-json
+Requires: php-var_representation
# remirepo:1
%if 0%{?fedora} >= 27 || 0%{?rhel} >= 8
# From composer.json, "suggest": {
-# "ext-ast": "Needed for parsing ASTs (unless --use-fallback-parser is used). 1.0.1+ is needed.",
+# "ext-ast": "Needed for parsing ASTs (unless --use-fallback-parser is used). 1.0.1+ is needed, 1.0.16+ is recommended.",
# "ext-iconv": "Either iconv or mbstring is needed to ensure issue messages are valid utf-8",
# "ext-igbinary": "Improves performance of polyfill when ext-ast is unavailable",
# "ext-mbstring": "Either iconv or mbstring is needed to ensure issue messages are valid utf-8",
# "ext-tokenizer": "Needed for non-AST support and file/line-based suppressions."
-Recommends: php-ast >= 1.0.1
+Recommends: php-ast >= 1.0.16
Suggests: php-igbinary
Suggests: php-iconv
-Requires: (php-composer(composer/semver) >= 1.4 with php-composer(composer/semver) < 2)
-Requires: (php-composer(composer/xdebug-handler) >= 1.3.2 with php-composer(composer/xdebug-handler) < 2)
-Requires: (php-composer(felixfbecker/advanced-json-rpc) >= 3.0.4 with php-composer(felixfbecker/advanced-json-rpc) < 4)
-Requires: (php-composer(nikic/php-parser) >= 3.1.1 with php-composer(nikic/php-parser) < 4)
-Requires: (php-composer(microsoft/tolerant-php-parser) >= 0.0.18 with php-composer(microsoft/tolerant-php-parser) < 0.1)
-Requires: (php-composer(netresearch/jsonmapper) >= 1.6 with php-composer(netresearch/jsonmapper) < 2)
-Requires: (php-composer(sabre/event) >= 5.0 with php-composer(sabre/event) < 6)
-Requires: (php-composer(symfony/console) >= 2.8 with php-composer(symfony/console) < 5)
-# remirepo:16
+Requires: (php-composer(composer/semver) >= 1.4 with php-composer(composer/semver) < 4)
+Requires: (php-composer(composer/xdebug-handler) >= 2.0 with php-composer(composer/xdebug-handler) < 4)
+Requires: (php-composer(felixfbecker/advanced-json-rpc) >= 3.0.4 with php-composer(felixfbecker/advanced-json-rpc) < 4)
+Requires: (php-composer(nikic/php-parser) >= 3.1.1 with php-composer(nikic/php-parser) < 4)
+Requires: (php-composer(microsoft/tolerant-php-parser) >= 0.1.2 with php-composer(microsoft/tolerant-php-parser) < 0.2)
+Requires: (php-composer(netresearch/jsonmapper) >= 1.6 with php-composer(netresearch/jsonmapper) < 5)
+Requires: (php-composer(sabre/event) >= 5.1.3 with php-composer(sabre/event) < 6)
+Requires: (php-composer(symfony/console) >= 4.0 with php-composer(symfony/console) < 7)
+Requires: (php-composer(symfony/polyfill-php80) >= 1.19 with php-composer(symfony/polyfill-php80) < 2)
+# remirepo:15
%else
-Requires: php-ast >= 0.1.5
-Requires: php-composer(composer/semver) < 2
+Requires: php-ast >= 1.0.16
+Requires: php-var_representation
+Requires: php-composer(composer/semver) < 4
Requires: php-composer(composer/semver) >= 1.4
-Requires: php-composer(composer/xdebug-handler) < 2
-Requires: php-composer(composer/xdebug-handler) >= 1.3.2
+Requires: php-composer-xdebug-handler2
Requires: php-composer(felixfbecker/advanced-json-rpc) < 4
Requires: php-composer(felixfbecker/advanced-json-rpc) >= 3.0.4
-Requires: php-composer(microsoft/tolerant-php-parser) < 0.1
-Requires: php-composer(microsoft/tolerant-php-parser) >= 0.0.18
-Requires: php-composer(netresearch/jsonmapper) < 2
-Requires: php-composer(netresearch/jsonmapper) >= 1.6
-Requires: php-composer(sabre/event) < 6
-Requires: php-composer(sabre/event) >= 5.0
-Requires: php-composer(symfony/console) < 4
+Requires: php-composer(microsoft/tolerant-php-parser) < 0.2
+Requires: php-composer(microsoft/tolerant-php-parser) >= 0.1.2
+Requires: php-netresearch-jsonmapper >= 1.6
+Requires: php-sabre-event5 >= 5.1.3
+Requires: php-symfony4-console >= 4.0
+Requires: php-symfony-polyfill >= 1.20
%endif
# From phpcompatinfo report for 2.3.0
Requires: php-cli
@@ -155,7 +158,6 @@ Requires: php-sysvsem
Requires: php-composer(fedora/autoloader)
# Composer
-Provides: php-composer(etsy/%{gh_project}) = %{version}
Provides: php-composer(%{gh_owner}/%{gh_project}) = %{version}
@@ -178,17 +180,24 @@ cat << 'EOF' | tee src/autoload.php
require_once '%{_datadir}/php/Fedora/Autoloader/autoload.php';
\Fedora\Autoloader\Autoload::addPsr4('Phan\\', __DIR__ . '/Phan');
\Fedora\Autoloader\Dependencies::required([
- '%{_datadir}/php/Composer/Semver/autoload.php',
- '%{_datadir}/php/Composer/XdebugHandler/autoload.php',
+ [
+ '%{_datadir}/php/Composer/Semver3/autoload.php',
+ '%{_datadir}/php/Composer/Semver2/autoload.php',
+ '%{_datadir}/php/Composer/Semver/autoload.php',
+ ], [
+ '%{_datadir}/php/Composer/XdebugHandler3/autoload.php',
+ '%{_datadir}/php/Composer/XdebugHandler2/autoload.php',
+ ],
'%{_datadir}/php/AdvancedJsonRpc3/autoload.php',
'%{_datadir}/php/Microsoft/PhpParser/autoload.php',
'%{_datadir}/php/netresearch/jsonmapper/autoload.php',
'%{_datadir}/php/Sabre/Event5/autoload.php',
[
+ '%{_datadir}/php/Symfony6/Component/Console/autoload.php',
+ '%{_datadir}/php/Symfony5/Component/Console/autoload.php',
'%{_datadir}/php/Symfony4/Component/Console/autoload.php',
- '%{_datadir}/php/Symfony3/Component/Console/autoload.php',
- '%{_datadir}/php/Symfony/Component/Console/autoload.php',
],
+ '%{_datadir}/php/Symfony/Polyfill/autoload.php',
]);
EOF
@@ -215,7 +224,7 @@ install -Dpm 755 phan_client %{buildroot}%{_bindir}/phan-client
%check
-%if %{with_tests}
+%if %{with tests}
cat << 'EOF' | tee tests/autoload.php
<?php
require '%{buildroot}%{_datadir}/php/%{psr0}/Phan/Bootstrap.php';
@@ -223,7 +232,11 @@ require '%{buildroot}%{_datadir}/php/%{psr0}/Phan/Bootstrap.php';
EOF
# NOTICE mosquitto, request and grpc must be disabled
-%{_bindir}/phpunit7 -d memory_limit=1G --bootstrap tests/autoload.php --verbose
+# testHash failing on bigendian
+# testConstantsDocumented was written for php-ast 1.0.6 and php <=7.4
+%{_bindir}/phpunit8 -d memory_limit=1G \
+ --filter '^((?!(testGetProjectRelativePathForPath|testHash|testConstantsDocumented)).)*$' \
+ --bootstrap tests/autoload.php --verbose
%else
@@ -242,6 +255,175 @@ EOF
%changelog
+* Mon Mar 6 2023 Remi Collet <remi@remirepo.net> - 5.4.2-1
+- update to 5.4.2
+- raise dependency on microsoft/tolerant-php-parser 0.1.2
+
+* Thu Sep 8 2022 Remi Collet <remi@remirepo.net> - 5.4.1-1
+- update to 5.4.1
+- raise dependency on microsoft/tolerant-php-parser 0.1.1
+
+* Tue Aug 9 2022 Remi Collet <remi@remirepo.net> - 5.4.0-1
+- update to 5.4.0
+
+* Wed Feb 2 2022 Remi Collet <remi@remirepo.net> - 5.3.2-1
+- update to 5.3.2
+- drop support for Symfony 3
+
+* Tue Dec 14 2021 Remi Collet <remi@remirepo.net> - 5.3.1-1
+- update to 5.3.1
+- raise dependency on ast 1.0.16
+- raise dependency on sabre/event 5.1.3
+
+* Mon Nov 15 2021 Remi Collet <remi@remirepo.net> - 5.3.0-1
+- update to 5.3.0
+
+* Mon Sep 20 2021 Remi Collet <remi@remirepo.net> - 5.2.1-1
+- update to 5.2.1
+
+* Thu Sep 2 2021 Remi Collet <remi@remirepo.net> - 5.2.0-1
+- update to 5.2.0
+
+* Mon Aug 9 2021 Remi Collet <remi@remirepo.net> - 5.1.0-1
+- update to 5.1.0
+
+* Mon Aug 2 2021 Remi Collet <remi@remirepo.net> - 5.0.0-1
+- update to 5.0.0
+
+* Mon Jul 26 2021 Remi Collet <remi@remirepo.net> - 5.0.0~a4-1
+- update to 5.0.0a4
+
+* Mon Jul 19 2021 Remi Collet <remi@remirepo.net> - 5.0.0~a3-1
+- update to 5.0.0a3
+
+* Mon Jun 28 2021 Remi Collet <remi@remirepo.net> - 5.0.0~a2-1
+- update to 5.0.0a2
+- raise dependency on microsoft/tolerant-php-parser 0.1
+- add dependency on var_representation extension
+
+* Mon May 31 2021 Remi Collet <remi@remirepo.net> - 5.0.0~a1-1
+- update to 5.0.0a1
+
+* Thu May 20 2021 Remi Collet <remi@remirepo.net> - 4.0.6-1
+- update to 4.0.6
+
+* Mon May 3 2021 Remi Collet <remi@remirepo.net> - 4.0.5-1
+- update to 4.0.5
+
+* Thu Apr 15 2021 Remi Collet <remi@remirepo.net> - 4.0.4-1
+- update to 4.0.4
+- raise dependency on composer/xdebug-handler 2.0.0
+
+* Wed Feb 3 2021 Remi Collet <remi@remirepo.net> - 4.0.3-1
+- update to 4.0.3
+
+* Mon Jan 11 2021 Remi Collet <remi@remirepo.net> - 4.0.2-1
+- update to 4.0.2
+
+* Tue Jan 5 2021 Remi Collet <remi@remirepo.net> - 4.0.1-1
+- update to 4.0.1
+- raise dependency on ast 1.0.10
+
+* Tue Jan 5 2021 Remi Collet <remi@remirepo.net> - 3.2.10-1
+- update to 3.2.10
+
+* Mon Dec 14 2020 Remi Collet <remi@remirepo.net> - 3.2.7-1
+- update to 3.2.7
+
+* Mon Nov 30 2020 Remi Collet <remi@remirepo.net> - 3.2.6-1
+- update to 3.2.6
+- add dependency on symfony/polyfill-php80
+
+* Fri Nov 13 2020 Remi Collet <remi@remirepo.net> - 3.2.4-1
+- update to 3.2.4
+
+* Tue Oct 13 2020 Remi Collet <remi@remirepo.net> - 3.2.3-1
+- update to 3.2.3
+- raise dependency on symfony/console 3.2
+
+* Mon Sep 21 2020 Remi Collet <remi@remirepo.net> - 3.2.2-1
+- update to 3.2.2
+
+* Mon Sep 14 2020 Remi Collet <remi@remirepo.net> - 3.2.1-1
+- update to 3.2.1
+- raise dependency on microsoft/tolerant-php-parser 0.0.23
+
+* Wed Aug 26 2020 Remi Collet <remi@remirepo.net> - 3.2.0-1
+- update to 3.2.0
+- raise dependency on microsoft/tolerant-php-parser 0.0.22
+
+* Tue Aug 11 2020 Remi Collet <remi@remirepo.net> - 3.1.1-1
+- update to 3.1.1
+- allow netresearch/jsonmapper 3.0
+
+* Fri Jul 17 2020 Remi Collet <remi@remirepo.net> - 3.1.0-1
+- update to 3.1.0
+
+* Mon Jul 6 2020 Remi Collet <remi@remirepo.net> - 3.0.5-1
+- update to 3.0.5
+- open https://github.com/phan/phan/issues/4004
+ 1 test failing on big endian
+
+* Thu Jul 2 2020 Remi Collet <remi@remirepo.net> - 3.0.4-1
+- update to 3.0.4
+
+* Mon Jun 22 2020 Remi Collet <remi@remirepo.net> - 3.0.3-1
+- update to 3.0.3
+
+* Mon Jun 8 2020 Remi Collet <remi@remirepo.net> - 3.0.2-1
+- update to 3.0.2
+
+* Fri Jun 5 2020 Remi Collet <remi@remirepo.net> - 3.0.1-1
+- update to 3.0.1
+- allow composer/semver version 3
+
+* Mon May 11 2020 Remi Collet <remi@remirepo.net> - 3.0.0-1
+- update to 3.0.0
+
+* Mon May 4 2020 Remi Collet <remi@remirepo.net> - 3.0.0~RC2-1
+- update to 3.0.0-RC2
+- raise dependency on PHP 7.2
+- switch to phpunit8
+
+* Mon May 4 2020 Remi Collet <remi@remirepo.net> - 2.7.2-1
+- update to 2.7.2
+- allow composer/semver version 2
+
+* Mon Apr 13 2020 Remi Collet <remi@remirepo.net> - 2.7.1-1
+- update to 2.7.1
+
+* Thu Apr 2 2020 Remi Collet <remi@remirepo.net> - 2.7.0-1
+- update to 2.7.0
+- raise dependency on PHP 7.2
+
+* Sat Mar 14 2020 Remi Collet <remi@remirepo.net> - 2.6.1-1
+- update to 2.6.1
+- allow netresearch/jsonmapper 2.0
+
+* Mon Mar 9 2020 Remi Collet <remi@remirepo.net> - 2.6.0-1
+- update to 2.6.0
+- raise dependency on microsoft/tolerant-php-parser 0.0.20
+- raise dependency on ast 1.0.6
+
+* Thu Feb 20 2020 Remi Collet <remi@remirepo.net> - 2.5.0-1
+- update to 2.5.0
+
+* Fri Feb 14 2020 Remi Collet <remi@remirepo.net> - 2.4.9-1
+- update to 2.4.9
+
+* Mon Jan 27 2020 Remi Collet <remi@remirepo.net> - 2.4.8-1
+- update to 2.4.8
+
+* Thu Jan 23 2020 Remi Collet <remi@remirepo.net> - 2.4.7-1
+- update to 2.4.7
+
+* Thu Jan 2 2020 Remi Collet <remi@remirepo.net> - 2.4.6-1
+- update to 2.4.6
+
+* Wed Dec 11 2019 Remi Collet <remi@remirepo.net> - 2.4.5-1
+- update to 2.4.5
+- allow Symfony 5
+
* Mon Nov 25 2019 Remi Collet <remi@remirepo.net> - 2.4.4-1
- update to 2.4.4