remi pushed to php-bartlett-PHP-Reflect (epel7). "- update to 3.1.0 (..more)"

notifications at fedoraproject.org notifications at fedoraproject.org
Fri May 22 16:30:15 UTC 2015


From 2b43d4a8e400f77562faaf9daf7ba5981c6ae167 Mon Sep 17 00:00:00 2001
From: Remi Collet <remi at fedoraproject.org>
Date: Fri, 22 May 2015 18:30:00 +0200
Subject: - update to 3.1.0 - raise dependency on nikic/php-parser >= 1.2.2 -
 drop dependency on phpunit/php-timer - add dependencies on php-pdo_sqlite,
 doctrine/collections, symfony/stopwatch, symfony/dependency-injection and
 phpdocumentor/reflection-docblock, bartlett/umlwriter - add dependency on
 justinrainbow/json-schema - add dependency on sebastian/version - add
 dependency on seld/jsonlint


diff --git a/.gitignore b/.gitignore
index 5faafb9..a0049ba 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,14 +1,9 @@
-*spec~
-package-*.xml
-/PHP_Reflect-1.0.2.tgz
-/PHP_Reflect-1.1.0.tgz
-/PHP_Reflect-1.2.0.tgz
-/PHP_Reflect-1.3.0.tgz
-/PHP_Reflect-1.4.2.tgz
-/PHP_Reflect-1.5.0.tgz
-/PHP_Reflect-1.6.0.tgz
-/PHP_Reflect-1.6.1.tgz
-/PHP_Reflect-1.6.2.tgz
-/PHP_Reflect-1.7.0.tgz
-/PHP_Reflect-1.8.1.tgz
-/PHP_Reflect-1.9.0.tgz
+clog
+/php-reflect-2.2.0.tar.gz
+/php-reflect-2.3.0.tar.gz
+/php-reflect-2.4.0.tar.gz
+/php-reflect-2.5.0.tar.gz
+/php-reflect-2.6.0.tar.gz
+/php-reflect-2.6.1.tar.gz
+/php-reflect-2.6.2.tar.gz
+/php-reflect-3.1.0-c5c6695.tar.gz
diff --git a/php-bartlett-PHP-Reflect-3.0.0-rpm.patch b/php-bartlett-PHP-Reflect-3.0.0-rpm.patch
new file mode 100644
index 0000000..ea2760a
--- /dev/null
+++ b/php-bartlett-PHP-Reflect-3.0.0-rpm.patch
@@ -0,0 +1,142 @@
+diff -up ./bin/phpreflect.json.dist.rpm ./bin/phpreflect.json.dist
+--- ./bin/phpreflect.json.dist.rpm	2015-05-11 12:55:49.000000000 +0200
++++ ./bin/phpreflect.json.dist	2015-05-11 13:22:14.660514268 +0200
+@@ -6,6 +6,19 @@
+         }
+     ],
+     "plugins": [
++        {
++            "name": "Cache",
++            "class": "Bartlett\\Reflect\\Plugin\\CachePlugin",
++            "options": {
++                "adapter": "DoctrineCacheAdapter",
++                "backend": {
++                    "class": "Doctrine\\Common\\Cache\\FilesystemCache",
++                    "args": [
++                        "%{HOME}/.cache/php-reflect"
++                    ]
++                }
++            }
++        }
+     ],
+     "analysers": [
+     ],
+diff -up ./bin/phpreflect.rpm ./bin/phpreflect
+--- ./bin/phpreflect.rpm	2015-05-11 12:55:49.000000000 +0200
++++ ./bin/phpreflect	2015-05-11 13:24:26.130135886 +0200
+@@ -5,19 +5,35 @@ $appName = 'phpReflect';
+ if (\Phar::running()) {
+     $vendorDir = 'phar://' . strtolower($appName) . '.phar/vendor';
+ } else {
+-    $baseDir   = dirname(__DIR__);
+-    $vendorDir = $baseDir . '/vendor';
++    putenv('BARTLETT_COMPATINFO_DB=/usr/share/php-bartlett-PHP-CompatInfo/compatinfo.sqlite');
+ 
+-    if (!file_exists($vendorDir . '/autoload.php')) {
+-        $vendorDir = dirname(dirname($baseDir));
+-    }
++    $vendorDir = '/usr/share/php';
+ 
+     if (!getenv("BARTLETTRC")) {
+         putenv("BARTLETTRC=" . strtolower($appName) . '.json');
+     }
+ }
+-$loader = require_once $vendorDir . '/autoload.php';
+-$loader->setUseIncludePath(true);
++require_once $vendorDir . '/PhpParser/Autoloader.php';
++PhpParser\Autoloader::register();
++
++require_once $vendorDir . '/Symfony/Component/ClassLoader/UniversalClassLoader.php';
++require_once $vendorDir . '/SebastianBergmann/Version/Version.php';
++
++use Symfony\Component\ClassLoader\UniversalClassLoader;
++
++$loader = new UniversalClassLoader();
++$loader->registerNamespaces(array(
++    'Symfony\\Component'                  => $vendorDir,
++    'Doctrine\\Common'                    => $vendorDir,
++    'phpDocumentor\\Reflection'           => $vendorDir,
++    'Seld\\JsonLint'                      => $vendorDir,
++    'JsonSchema'                          => $vendorDir,
++    'Psr\\Log'                            => $vendorDir,
++    'Monolog'                             => $vendorDir,
++    'Bartlett'                            => $vendorDir,
++));
++$loader->useIncludePath(true);
++$loader->register();
+ 
+ if (PHP_SAPI !== 'cli') {
+     return;
+@@ -28,5 +44,5 @@ use Bartlett\Reflect\Console\Application
+ 
+ Environment::setScanDir();
+ 
+-$application = new Application($appName, '3.1');
++$application = new Application($appName, '@package_version@');
+ $application->run();
+diff -up ./src/Bartlett/Reflect/Console/Application.php.rpm ./src/Bartlett/Reflect/Console/Application.php
+--- ./src/Bartlett/Reflect/Console/Application.php.rpm	2015-05-11 12:55:49.000000000 +0200
++++ ./src/Bartlett/Reflect/Console/Application.php	2015-05-11 13:22:14.661514273 +0200
+@@ -82,7 +82,7 @@ class Application extends BaseApplicatio
+             $jsonFile =  './' . getenv("BARTLETTRC");
+         }
+ 
+-        parent::__construct($appName, '@package_version@');
++        parent::__construct($appName, $appVersion);
+         $this->release = $appVersion;
+ 
+         $defaultAnalyser = (strcasecmp($appName, 'phpcompatinfo') === 0)
+diff -up ./tests/bootstrap.php.rpm ./tests/bootstrap.php
+--- ./tests/bootstrap.php.rpm	2015-05-11 12:55:49.000000000 +0200
++++ ./tests/bootstrap.php	2015-05-11 13:22:14.661514273 +0200
+@@ -1,11 +1,9 @@
+ <?php
+ 
+ $baseDir   = dirname(__DIR__);
+-$vendorDir = $baseDir . '/vendor';
++$vendorDir = '/usr/share/php';
+ 
+-$loader = require_once $vendorDir . '/autoload.php';
+-$loader->addClassMap(
+-    array(
++$tab = array(
+         'Bartlett\Tests\Reflect\Analyser\FooAnalyser'
+             => __DIR__ . '/Analyser/FooAnalyser.php',
+         'Bartlett\Tests\Reflect\Analyser\BarAnalyser'
+@@ -14,5 +12,24 @@ $loader->addClassMap(
+             => __DIR__ . '/Model/GenericModelTest.php',
+         'Bartlett\Tests\Reflect\Environment\YourLogger'
+             => __DIR__ . '/Environment/YourLogger.php',
+-    )
+ );
++require_once $vendorDir . '/PhpParser/Autoloader.php';
++PhpParser\Autoloader::register();
++
++require_once $vendorDir . '/Symfony/Component/ClassLoader/UniversalClassLoader.php';
++
++use Symfony\Component\ClassLoader\UniversalClassLoader;
++
++$loader = new UniversalClassLoader();
++$loader->registerNamespaces(array(
++    'Bartlett\\Tests\\Reflect'            => $baseDir . '/tests',
++    'Bartlett\\UmlWriter'                 => $vendorDir,
++    'Bartlett'                            => $baseDir . '/src',
++    'Monolog'                             => $vendorDir,
++));
++$loader->useIncludePath(true);
++$loader->register();
++
++foreach ($tab as $class => $file) {
++    require_once $file;
++}
+diff -up ./tests/Environment/YourLogger.php.rpm ./tests/Environment/YourLogger.php
+--- ./tests/Environment/YourLogger.php.rpm	2015-05-11 12:55:49.000000000 +0200
++++ ./tests/Environment/YourLogger.php	2015-05-11 13:22:14.661514273 +0200
+@@ -14,6 +14,7 @@ class YourLogger extends Logger
+         if (!file_exists($tempDir)) {
+             mkdir($tempDir, 0755, true);
+         }
++        date_default_timezone_set('UTC');
+         $filename = sprintf('phpreflect-%s.log', date('Ymd'));
+ 
+         $stream = new RotatingFileHandler("$tempDir/$filename", 30);
diff --git a/php-bartlett-PHP-Reflect.spec b/php-bartlett-PHP-Reflect.spec
index 1e0709a..e00f319 100644
--- a/php-bartlett-PHP-Reflect.spec
+++ b/php-bartlett-PHP-Reflect.spec
@@ -1,108 +1,204 @@
 # spec file for php-bartlett-PHP-Reflect
 #
-# Copyright (c) 2011-2013 Remi Collet
+# Copyright (c) 2011-2015 Remi Collet
 # License: CC-BY-SA
-# http://creativecommons.org/licenses/by-sa/3.0/
+# http://creativecommons.org/licenses/by-sa/4.0/
 #
 # Please, preserve the changelog entries
 #
-%{!?pear_metadir: %global pear_metadir %{pear_phpdir}}
-%{!?__pear: %{expand: %%global __pear %{_bindir}/pear}}
-%global channel   bartlett.laurent-laville.org
-%global pear_name PHP_Reflect
-
+%global bootstrap    0
+%global gh_commit    c5c669565030b1d051dfa75feb49783ac6b9dfa9
+%global gh_short     %(c=%{gh_commit}; echo ${c:0:7})
+%global gh_owner     llaville
+%global gh_project   php-reflect
+%if %{bootstrap}
+%global with_tests   %{?_with_tests:1}%{!?_with_tests:0}
+%else
+%global with_tests   %{?_without_tests:0}%{!?_without_tests:1}
+%endif
 
 Name:           php-bartlett-PHP-Reflect
-Version:        1.9.0
+Version:        3.1.0
 Release:        1%{?dist}
 Summary:        Adds the ability to reverse-engineer PHP
 
 Group:          Development/Libraries
 License:        BSD
-URL:            http://bartlett.laurent-laville.org/
-Source0:        http://%{channel}/get/%{pear_name}-%{version}%{?prever}.tgz
+URL:            http://php5.laurent-laville.org/reflect/
+Source0:        https://github.com/%{gh_owner}/%{gh_project}/archive/%{gh_commit}/%{gh_project}-%{version}%{?prever}-%{gh_short}.tar.gz
+
+# Autoloader for RPM - die composer !
+# Enable cache plugin
+Patch0:         %{name}-3.0.0-rpm.patch
 
 BuildArch:      noarch
-BuildRequires:  php(language) >= 5.3.0
-BuildRequires:  php-pear(PEAR) >= 1.9.0
-BuildRequires:  php-channel(%{channel})
+BuildRequires:  php(language) >= 5.3
+%if %{with_tests}
 # to run test suite
-BuildRequires:  php-pear(pear.phpunit.de/PHPUnit) >= 3.6.0
-
-Requires(post): %{__pear}
-Requires(postun): %{__pear}
-# From package.xml
-Requires:       php(language) >= 5.3.0
-Requires:       php-pear(PEAR) >= 1.9.0
-Requires:       php-channel(%{channel})
+BuildRequires:  %{_bindir}/phpunit
+BuildRequires:  php-composer(sebastian/version)                 >= 1.0
+BuildRequires:  php-composer(nikic/php-parser)                  >= 1.2.2
+BuildRequires:  php-composer(doctrine/collections)              >= 1.2
+BuildRequires:  php-composer(symfony/class-loader)              >= 2.5
+BuildRequires:  php-composer(symfony/event-dispatcher)          >= 2.5
+BuildRequires:  php-composer(symfony/finder)                    >= 2.5
+BuildRequires:  php-composer(symfony/console)                   >= 2.5
+BuildRequires:  php-composer(symfony/stopwatch)                 >= 2.5
+BuildRequires:  php-composer(symfony/dependency-injection)      >= 2.5
+BuildRequires:  php-composer(phpdocumentor/reflection-docblock) >= 2.0
+BuildRequires:  php-composer(seld/jsonlint)                     >= 1.1
+BuildRequires:  php-composer(justinrainbow/json-schema)         >= 1.3
+BuildRequires:  php-composer(monolog/monolog)                   >= 1.10
+BuildRequires:  php-composer(bartlett/umlwriter)                >= 1.0
+%endif
+
+# From composer.json, "require": {
+#        "php": ">=5.3.2",
+#        "ext-tokenizer": "*",
+#        "ext-pcre": "*",
+#        "ext-spl": "*",
+#        "ext-json": "*",
+#        "ext-date": "*",
+#        "ext-reflection": "*",
+#        "sebastian/version": "~1.0",
+#        "nikic/php-parser": "^1.2.2",
+#        "doctrine/collections": "~1.2",
+#        "symfony/event-dispatcher": "~2.5",
+#        "symfony/finder": "~2.5",
+#        "symfony/console": "~2.5"
+#        "symfony/stopwatch": "~2.5",
+#        "symfony/dependency-injection": "~2.5",
+#        "phpdocumentor/reflection-docblock": "~2.0",
+#        "justinrainbow/json-schema": "~1.3",
+#        "seld/jsonlint": "~1.1"
+Requires:       php(language) >= 5.3.2
+Requires:       php-date
+Requires:       php-json
 Requires:       php-pcre
+Requires:       php-pdo_sqlite
+Requires:       php-reflection
 Requires:       php-spl
 Requires:       php-tokenizer
-
-Provides:       php-pear(%{channel}/%{pear_name}) = %{version}%{?prever}
+Requires:       php-composer(sebastian/version)                 >= 1.0
+Requires:       php-composer(sebastian/version)                 <  2
+Requires:       php-composer(nikic/php-parser)                  >= 1.2.2
+Requires:       php-composer(nikic/php-parser)                  <  2
+Requires:       php-composer(doctrine/collections)              >= 1.2
+Requires:       php-composer(doctrine/collections)              <  2
+Requires:       php-composer(symfony/event-dispatcher)          >= 2.5
+Requires:       php-composer(symfony/event-dispatcher)          <  3
+Requires:       php-composer(symfony/finder)                    >= 2.5
+Requires:       php-composer(symfony/finder)                    <  3
+Requires:       php-composer(symfony/console)                   >= 2.5
+Requires:       php-composer(symfony/console)                   <  3
+Requires:       php-composer(symfony/stopwatch)                 >= 2.5
+Requires:       php-composer(symfony/stopwatch)                 <  3
+Requires:       php-composer(symfony/dependency-injection)      >= 2.5
+Requires:       php-composer(symfony/dependency-injection)      <  3
+Requires:       php-composer(phpdocumentor/reflection-docblock) >= 2.0
+Requires:       php-composer(phpdocumentor/reflection-docblock) <  3
+Requires:       php-composer(seld/jsonlint)                     >= 1.1
+Requires:       php-composer(seld/jsonlint)                     <  2
+Requires:       php-composer(justinrainbow/json-schema)         >= 1.3
+Requires:       php-composer(justinrainbow/json-schema)         <  2
+#    "require-dev": {
+#        "doctrine/cache": "~1.3",
+#        "psr/log": "~1.0",
+#        "monolog/monolog": "~1.10",
+#        "bartlett/phpunit-loggertestlistener": "~1.3",
+#        "bartlett/umlwriter": "~1.0"
+#    "suggest": {
+#        "doctrine/cache": "Allow caching results"
+#        "psr/log": "Allow logging events with the LogPlugin",
+#        "monolog/monolog": "Allow logging events with the LogPlugin",
+#        "bartlett/phpunit-loggertestlistener": "Allow logging unit tests to your favorite PSR-3 logger interface",
+#        "bartlett/umlwriter": "Allow writing UML class diagrams (Graphviz or PlantUML)"
+Requires:       php-composer(doctrine/cache)           >= 1.3
+Requires:       php-composer(psr/log)                  >= 1.0
+%if ! %{bootstrap}
+Requires:       php-composer(bartlett/umlwriter)       >= 1.0
+Requires:       php-composer(bartlett/umlwriter)       <  2
+%endif
+# For our patch
+Requires:       php-composer(symfony/class-loader)     >= 2.5
+Requires:       php-composer(symfony/class-loader)     <  3
+
+Obsoletes:      php-channel-bartlett <= 1.3
+
+Provides:       php-composer(bartlett/php-reflect) = %{version}
 
 
 %description
 PHP_Reflect adds the ability to reverse-engineer classes, interfaces,
 functions, constants and more, by connecting php callbacks to other tokens.
 
-HTML Documentation:  %{pear_docdir}/%{pear_name}/html/index.html
+Documentation: http://php5.laurent-laville.org/reflect/manual/current/en/
 
 
 %prep
-%setup -q -c
+%setup -q -n %{gh_project}-%{gh_commit}
+
+%patch0 -p1 -b .rpm
 
-# Package is V2
-cd %{pear_name}-%{version}%{?prever}
-mv -f ../package.xml %{name}.xml
+sed -e 's/@package_version@/%{version}%{?prever}/' \
+    -i $(find src -name \*.php) bin/phpreflect
 
 
 %build
-cd %{pear_name}-%{version}%{?prever}
+# Nothing
 
 
 %install
-cd %{pear_name}-%{version}%{?prever}
+mkdir -p %{buildroot}%{_datadir}/php
+cp -pr src/Bartlett %{buildroot}%{_datadir}/php/Bartlett
 
-%{__pear} install --nodeps --packagingroot %{buildroot} %{name}.xml
-
-# Clean up unnecessary files
-rm -rf %{buildroot}%{pear_metadir}/.??*
-
-# Install XML package description
-mkdir -p %{buildroot}%{pear_xmldir}
-install -pm 644 %{name}.xml %{buildroot}%{pear_xmldir}
+install -D -p -m 755 bin/phpreflect           %{buildroot}%{_bindir}/phpreflect
+install -D -p -m 644 bin/phpreflect.json.dist %{buildroot}%{_sysconfdir}/phpreflect.json
+install -D -p -m 644 bin/phpreflect.1         %{buildroot}%{_mandir}/man1/phpreflect.1
 
 
 %check
-cd %{pear_name}-%{version}%{?prever}
+%if %{with_tests}
+# Required when bartlett/php-compatinfo installed (local build)
+export BARTLETT_COMPATINFO_DB=%{_datadir}/php-bartlett-PHP-CompatInfo/compatinfo.sqlite
 
-# Version 1.9.0 : OK (Tests: 51, Assertions: 113, Skipped: 1)
-%{_bindir}/phpunit \
-  -d date.timezone=UTC \
-  --bootstrap %{buildroot}%{pear_phpdir}/Bartlett/PHP/Reflect/Autoload.php \
-  tests
+# Version 3.0.0 : OK, but incomplete, skipped, or risky tests!
+# Tests: 122, Assertions: 123, Incomplete: 3.
+%{_bindir}/phpunit -v
+%else
+: Test suite disabled
+%endif
 
 
 %post
-%{__pear} install --nodeps --soft --force --register-only \
-    %{pear_xmldir}/%{name}.xml >/dev/null || :
-
-%postun
-if [ $1 -eq 0 ] ; then
-    %{__pear} uninstall --nodeps --ignore-errors --register-only \
-        %{channel}/%{pear_name} >/dev/null || :
+if [ -x %{_bindir}/pear ]; then
+   %{_bindir}/pear uninstall --nodeps --ignore-errors --register-only \
+      bartlett.laurent-laville.org/PHP_Reflect >/dev/null || :
 fi
 
 
 %files
-%doc %{pear_docdir}/%{pear_name}
-%{pear_xmldir}/%{name}.xml
-%{pear_phpdir}/Bartlett
-%{pear_testdir}/PHP_Reflect
+%{!?_licensedir:%global license %%doc}
+%license LICENSE
+%doc composer.json README.*
+%config(noreplace) %{_sysconfdir}/phpreflect.json
+%{_bindir}/phpreflect
+%{_datadir}/php/Bartlett/Reflect*
+%{_mandir}/man1/phpreflect.1*
 
 
 %changelog
+* Mon May 11 2015 Remi Collet <remi at fedoraproject.org> - 3.1.0-1
+- update to 3.1.0
+- raise dependency on nikic/php-parser >= 1.2.2
+- drop dependency on phpunit/php-timer
+- add dependencies on php-pdo_sqlite, doctrine/collections,
+  symfony/stopwatch, symfony/dependency-injection
+  and phpdocumentor/reflection-docblock, bartlett/umlwriter
+- add dependency on justinrainbow/json-schema
+- add dependency on sebastian/version
+- add dependency on seld/jsonlint
+
 * Sat Oct 12 2013 Remi Collet <remi at fedoraproject.org> - 1.9.0-1
 - Update to 1.9.0
 - raise dependency on PHP >= 5.3
diff --git a/sources b/sources
index abf6ffe..10881b5 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-5f7fad4f94c49c54902d8c2e8659f8ae  PHP_Reflect-1.9.0.tgz
+25f3ebb6be5ca0880740b9bb5ce4ce93  php-reflect-3.1.0-c5c6695.tar.gz
-- 
cgit v0.10.2


	http://pkgs.fedoraproject.org/cgit/php-bartlett-PHP-Reflect.git/commit/?h=epel7&id=2b43d4a8e400f77562faaf9daf7ba5981c6ae167


More information about the scm-commits mailing list