-
Notifications
You must be signed in to change notification settings - Fork 89
Forwards compatibility with v3 releases #76
Forwards compatibility with v3 releases #76
Commits on Feb 25, 2016
-
Set new target version and update dependencies
- Sets new target version to be 2.7.0. - Updates dependencies to known-stable, forwards-compatible versions. - Updates test matrix: - Test against v2 and v3 versions. - Run each against each supported PHP version.
Configuration menu - View commit details
-
Copy full SHA for 27f184f - Browse repository at this point
Copy the full SHA 27f184fView commit details -
Re-added functionality removed in previous patches
This patch re-introduces the following classes from the `Zend\Mvc\Service` namespace, along with related tests: - `ConfigFactory` - `ControllerLoaderFactory` - `DiAbstractServiceFactoryFactory` - `DiFactory` - `DiServiceInitializerFactory` - `DiStrictAbstractServiceFactory` - `DiStrictAbstractServiceFactoryFactory` It also re-instates the `ServiceManagerAware` and `ServiceLocatorAware` initializers in the `ServiceManagerConfig` class (though they will now emit deprecation notices), and ensures that class properly defines services such that they'll be accessible identically between v2 and v3 of zend-servicemanager.
Configuration menu - View commit details
-
Copy full SHA for 751f5b4 - Browse repository at this point
Copy the full SHA 751f5b4View commit details -
Remove second, boolean "has" argument in Dispatch and Middleware list…
…eners Not necessary with shipped, stable versions of zend-servicemanager.
Configuration menu - View commit details
-
Copy full SHA for 5350b19 - Browse repository at this point
Copy the full SHA 5350b19View commit details -
Ensure ServiceListenerFactory works on both v2 and v3
- Re-introduced `createService()` method, proxying to `__invoke()`. - Re-defined invokables as aliases + invokable factories. - Re-enabled form abstract factory.
Configuration menu - View commit details
-
Copy full SHA for b2a17be - Browse repository at this point
Copy the full SHA b2a17beView commit details -
Make RouteInvokableFactory + RoutePluginManager v2/v3 compatible
- Ensured each extend the appropriate v2 interface/class, and implement the required methods for both v2 and v3. - Added `setInvokableClass()` implementation to `RoutePluginManager` to mimic work in `configure()` for v2.
Configuration menu - View commit details
-
Copy full SHA for dbda72d - Browse repository at this point
Copy the full SHA dbda72dView commit details -
Make all factories, plugin managers both BC and FC
Updated all factories to ensure they work with both v2 and v3 of zend-servicemanager. Primarily, this consisted of re-adding the `createService()` method as a proxy to `__invoke()`. Updated all abstract factories to ensure they implement both the v2 and v3 methods. Updated all plugin managers to ensure they implement both the v2 and v3 methods, define appropriate default services, and utilize the v2 properties for "auto add invokables" and "share by default".
Configuration menu - View commit details
-
Copy full SHA for ba23b41 - Browse repository at this point
Copy the full SHA ba23b41View commit details -
Configuration menu - View commit details
-
Copy full SHA for 0086ca6 - Browse repository at this point
Copy the full SHA 0086ca6View commit details
Commits on Feb 26, 2016
-
Defer injection of default service configuration
- Defer until after testing the instance, to allow injection in retrieved instances (vs lazy-instantiated ones).
Configuration menu - View commit details
-
Copy full SHA for 8b49e87 - Browse repository at this point
Copy the full SHA 8b49e87View commit details -
Make new Application constructor arguments optional
Restores behavior to be backwards compatible; if the event manager, request, and/or response are not passed to the constructor, they are pulled from the service manager.
Configuration menu - View commit details
-
Copy full SHA for db96746 - Browse repository at this point
Copy the full SHA db96746View commit details -
Restore v2 workflow, but updated for v2/v3 zend-servicemanager compat…
…ibility Removed previous workflow from v2 with regards to: - instantiation and initial configuration of the SM - Retrieving the SM from the ServiceListener post-module loading (no longer necessary)
Configuration menu - View commit details
-
Copy full SHA for 7a26cce - Browse repository at this point
Copy the full SHA 7a26cceView commit details -
Configuration menu - View commit details
-
Copy full SHA for c1677f9 - Browse repository at this point
Copy the full SHA c1677f9View commit details
Commits on Feb 28, 2016
-
Configuration menu - View commit details
-
Copy full SHA for c50ca92 - Browse repository at this point
Copy the full SHA c50ca92View commit details -
- Require zend-authentication 2.5.3 or up (first version to allow zend-stdlib 3.0 support)
Configuration menu - View commit details
-
Copy full SHA for 9ecc7a3 - Browse repository at this point
Copy the full SHA 9ecc7a3View commit details -
These changes provide basic v3 compability, allowing the tests to at least run (though not pass). In particular: - The `ConfigFactory` was only targeting v2 previously; it's now forwards-compatible with v3. - The `RoutePluginManager` had two issues: - `configure()` had the wrong visibility. - `setInvokableClass()` is a method that changes signature between v2 and v3. Since the logic in the `RoutePluginManager` duplicates that in v3, it was removed. - The EventManager factory, and any tests that were instantiating and injecting an EventManager with a shared event manager, received updates to allow varying instantiation based on version. v2 does not accept a shared manager to the constructor, and requires injection via `setSharedManager()`; v3 requires injection via the constructor, and removes the `setSharedManager()` method entirely.
Configuration menu - View commit details
-
Copy full SHA for 89f6ebf - Browse repository at this point
Copy the full SHA 89f6ebfView commit details -
Ensure tests pass with v3 components
- Updated `Forward` plugin to work with both v2 and v3 API of `SharedEventManagerInterface::getListeners()`. - `ViewHelperManagerFactory` updates: - Fixed typo when registering Doctype helper factory. - All override factories now pull the parent service locator when under zend-servicemanager v2. - Throw `InvalidServiceException`, not `InvalidServiceNameException`, from `DiStrictAbstractServiceFactory` (latter does not exist in v3) - Test fixes: - `config`, not `Config`, service - `Request`, not `request`, service - do not grab return value of mutators on SM instances - use Prophecy to get SM/plugin manager instances (ensuring that constructor arguments can be ignored)
Configuration menu - View commit details
-
Copy full SHA for 35a9d05 - Browse repository at this point
Copy the full SHA 35a9d05View commit details -
Configuration menu - View commit details
-
Copy full SHA for 9bab442 - Browse repository at this point
Copy the full SHA 9bab442View commit details