PHPUnit 5.3
by Remi Collet
*** MockObjects 3.1.2 was released a few days ago
This new raise detect badly written test suites which try to mock things
which cannot be mock.
So during test suite it raise message like:
1) Monolog\Handler\MailHandlerTest::testHandleBatch
Trying to configure method "write" which cannot be configured because it
does not exist, has not been specified, is final, or is static
2)
Monolog\Handler\RavenHandlerTest::testHandleBatchDoNothingIfRecordsAreBelowLevel
Trying to configure method "handle" which cannot be configured because
it does not exist, has not been specified, is final, or is static
With PHPUnit 5.2, this is an error, and test suite fails. So I don't
plan to update this without PHPUnit 5.3.
With PHPUnit 5.3, this is only a warning (which need to be fixed
upstream, some projects have already be hit by this and start to fix it)
*** PHPUnit 5.3 is released
https://github.com/sebastianbergmann/phpunit/wiki/Release-Announcement-fo...
(not ready)
As often, new dependency:
1320532: php-sebastian-object-enumerator
Traverses array and object to enumerate all referenced objects
So I plan to import both when possible in Fedora 24+
In the meantime will be in my repository, and I will use those new
versions for my local build.
Regards,
Remi.
7 years, 7 months
About ZendFramework
by Remi Collet
Howdy,
If think the "Zend Framework" as a full package doesn't really make
sense anymore.
Last version is 2.5.3, but no more change happen, and upstream "seems"
to prefer a component only distribution (I will try to get more
information and confirmation when I will meet some Zend people).
zf 2.5.3 requires all components version ^2.5 (which exclude all new
components version 3.x)
The plan seems to me
- retire zend-version from rawhide (this package doesn't make sense
anymore, provides its version, not the framework one)
- retire php-zendframework (the meta package)
- update components in rawhide
- only update minor versions in stable (F24 only)
Any thoughts / ideas ?
Remi
P.S. recent zend-view 2.6.7 now BuildRequires zend-router 3.0.1.
So component versions are is not relevant of their compatibility.
7 years, 7 months
Fedora autoloader and multi-versions
by Remi Collet
Howdy,
The current PHP Packaging Guidelines recommend to install each library
(when possible) in a PSR-0 compliant tree.
This was a nice idea. But this doesn't work for multiple versions.
Some packages are coming soon which allow multiple versions to be installed.
- php-guzzlehttp-guzzle (v5.3)
php-guzzlehttp-guzzle6 (v6.2)
- php-aws-sdk (v2.8)
php-aws-sdk3 (v3, review #1264654)
- php-PHPParser (v1.6)
php-nikic-php-parser (v2.0, review #1327566)
- phpJsonSchema (v1.4)
php-justinrainbow-json-schema (v2.0, review #1327511)
and probably more soon...
For consumer, this is easy, as far as the provided autoloader is used.
In such case, we have to use a PSR-4 instead of the standard PSR-0 one.
@shawn: this is going to be a blocker if we need such versions in
EPEL-6, IIRC you have proposed to backport this class, seems a good idea
now ;)
About weak dependencies
Ex (from php-Silex, old version)
Suggests: php-composer(monolog/monolog)
Conflicts: php-composer(monolog/monolog) < %{monolog_min_ver}
Conflicts: php-composer(monolog/monolog) >= %{monolog_max_ver}
This of course doesn't work if we have 2 providers which can be
installed simultaneously.
So the first idea was to use the real package name
Suggests: php-composer(monolog/monolog)
Conflicts: php-Monolog < %{monolog_min_ver}
Conflicts: php-Monolog >= %{monolog_max_ver}
After some more thinking I think the conflicts are probably unneeded.
If Monolog breaks its API, according to semver, upstream will bump the
major version to 2, and so we are going to package it as php-monolog2,
and the autoloader will be elsewhere, so not used.
Again, great thanks to Shawn for his work and sharing his thoughts on
these changes.
Perhaps some other better ideas ?
Remi.
7 years, 7 months