Skip to content
This repository has been archived by the owner on Jan 30, 2020. It is now read-only.

Complete v2-v3 servicemanager compatibility #21

Merged
merged 8 commits into from
Feb 4, 2016

Conversation

weierophinney
Copy link
Member

This patch builds on #19, and completes the compatibility checks.

First, it updates and reduces dependencies in order to simplify usage, and allow us to pin to stable versions:

  • Updated PHP to ^5.5 || ^7.0
  • Updated zend-stdlib to ^2.7 || ^3.0
  • Updated zend-crypt to ^2.6
  • Updated zend-uri to ^2.5
  • Added pear/archive_tar (used by the Compress\Tar filter; previously we relied on a PEAR installation, but PEAR packages are now published to packagist)
  • Removed zend-config, zend-i18n, and zend-loader dependencies.
    • Replaced references to Zend\Config\Config with ArrayObject, as it's equivalent for purposes of what's being tested (Traversable configuration).
  • Replaced i18n assets used in testing with local test asset classes.
  • zend-loader is no longer necessary with the addition of
    pear/archive_tar.

zend-stdlib is installed at 2.7.4, due to the fact that zend-uri uses zend-validator, which is still pinned to v2 of the service manager and v2 of zend-stdlib.

Next, it adds FilterPluginManagerCompatibilityTest, as described on the maintainers wiki. This test uncovered a few issues, which I have resolved:

  • I updated the File\Rename, File\RenameUpload, and Callback filters to make all arguments optional so that they can be listed as invokable filters.

  • A number of plugins were listed in the FilterPluginManager that were not actually filters, which the compatibility test caught. These included:

    • All classes under Zend\Filter\Encrypt
    • All classes under Zend\Filter\Compress

    In each case, the classes were used as adapters consumed by other filters, and were not filters themselves.

Assuming tests pass, this should be ready for an immediate 2.6.0 release.

kynx and others added 6 commits January 27, 2016 18:34
[WIP] v2-v3 servicemanager compatibility
- Updated PHP to `^5.5 || ^7.0`
- Updated zend-stdlib to `^2.7 || ^3.0`
- Updated zend-crypt to `^2.6`
- Updated zend-uri to `^2.5`
- Added pear/archive_tar (used by the Compress\Tar filter; previously we relied
  on a PEAR installation, but PEAR packages are now published to packagist)
- Removed zend-config, zend-i18n, and zend-loader dependencies.
  - Replaced references to `Zend\Config\Config` with `ArrayObject`, as it's
    equivalent for purposes of what's being tested (`Traversable`
    configuration).
  - Replaced i18n assets used in testing with local test asset classes.
  - zend-loader is no longer necessary with the addition of pear/archive_tar.

zend-stdlib is installed at 2.7.4, due to the fact that zend-uri uses
zend-validator, which is still pinned to v2 of the service manager and v2 of
zend-stdlib.

All tests continue to pass.
Per https://github.com/zendframework/maintainers/wiki/ZF3-ServiceManager-component-refactors,-phase-2

Adds FilterPluginManagerCompatibilityTest, which tests that the plugin manager
works against both v2 and v3 of zend-servicemanager. This implementation needed
to exclude:

- all plugins from zend-i18n, as that package is no longer required.
- the DataUnitFormatter, as it has required options.

Additionally, I updated the `File\Rename`, `File\RenameUpload`, and `Callback`
filters to make all arguments optional so that they can be listed as invokable
filters.

Finally, a number of plugins were listed in the FilterPluginManager that were
not actually filters, which the compatibility test caught. These included:

- All classes under `Zend\Filter\Encrypt`
- All classes under `Zend\Filter\Compress`

In each case, the classes were used as adapters consumed by other filters, and
were not filters themselves.
@gianarb
Copy link

gianarb commented Feb 4, 2016

👍

@weierophinney weierophinney merged commit 330a256 into zendframework:develop Feb 4, 2016
weierophinney added a commit that referenced this pull request Feb 4, 2016
weierophinney added a commit that referenced this pull request Feb 4, 2016
@weierophinney weierophinney deleted the feature/19 branch February 4, 2016 15:48
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants