diff vendor/zendframework/zend-stdlib/doc/book/migration.md @ 0:4c8ae668cc8c

Initial import (non-working)
author Chris Cannam
date Wed, 29 Nov 2017 16:09:58 +0000
parents
children
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/vendor/zendframework/zend-stdlib/doc/book/migration.md	Wed Nov 29 16:09:58 2017 +0000
@@ -0,0 +1,60 @@
+# Migration Guide
+
+## From v2 to v3
+
+The changes made going from v2 to v3 were:
+
+- Removal of the Hydrator subcomponent.
+- Removal of the `CallbackHandler` class.
+- Removal of `Zend\Stdlib\Guard\GuardUtils`.
+
+### Hydrators
+
+The biggest single change from version 2 to version 3 is that the hydrator
+subcomponent, which was deprecated in v2.7.0, is now removed. This means that if
+you were using zend-stdlib principally for the hydrators, you need to convert
+your code to use [zend-hydrator](https://github.com/zendframework/zend-hydrator).
+
+This will also mean a multi-step migration. zend-stdlib v3 pre-dates
+zend-hydrator v2.1, which will be the first version that supports zend-stdlib v3
+and zend-servicemanager v3. If you are using Composer, the migration should be
+seamless:
+
+- Remove your zend-stdlib dependency:
+
+  ```bash
+  $ composer remove zendframework/zend-stdlib
+  ```
+
+- Update to use zend-hydrator:
+
+  ```bash
+  $ composer require zendframework/zend-hydrator
+  ```
+
+When zend-hydrator updates to newer versions of zend-stdlib and
+zend-servicemanager, you will either automatically get those versions, or you
+can tell composer to use those specific versions:
+
+```bash
+$ composer require "zendframework/zend-stdlib:^3.0"
+```
+
+### CallbackHandler
+
+`Zend\Stdlib\CallbackHandler` primarily existed for legacy purposes; it was
+created before the `callable` typehint existed, so that we could typehint PHP
+callables. It also provided some minimal features around lazy-loading callables
+from instantiable classes, but these features were rarely used, and better
+approaches already exist for handling such functinality in zend-servicemanager
+and zend-expressive.
+
+As such, the class was marked deprecated in v2.7.0, and removed for v3.0.0.
+
+### GuardUtils
+
+Version 3 removes `Zend\Stdlib\Guard\GuardUtils`. This abstract class existed to
+provide the functionality of the various traits also present in that
+subcomponent, for consumers on versions of PHP earlier than 5.4. Since the
+minimum required version is now PHP 5.5, the class is unnecessary. If you were
+using it previously, compose the related traits instead.