Move Zend\Form from "require" to "suggest"
@Danizord Config, Console, Di, Http, ModuleManager, Uri, Text, and View are all technically optional as well. Really, the only required dependencies are EventManager, ServiceManager, and Stdlib.
Merge branch 'master' of github.com:zendframework/zf2 into hotfix/mvc…
Move more dependencies from 'require' to 'suggest'
Merge branch 'hotfix/4474' into develop
Forward port #4474
Merge branch 'hotfix/4474'
With this change, out of the box:
a composer request with: require: zendframework/zend-mvc: 2.* solo will throw a fatal exception: "Fatal error: Class 'Zend\Serializer\AdapterPluginManager' not found in /var/www/deep-freeze.ca/www/c/vendor/zendframework/zend-mvc/Zend/Mvc/Service/AbstractPluginManagerFactory.php on line 33"
Due to Serializer never being ultimated required.
Definitely a poor initial experience, requiring a user to manually add zend-serializer even if their project never explicitly uses it, due to MVC internals using it.
@icywolfy The fact, though, is that the MVC does not actually require them. You can seed the service manager manually and use it with Zend\Mvc\Application, and not need them. This is why they are suggested (i.e., optional) dependencies. It makes sense to only require what absolutely must be present in order for it to work.
When building a full-stack application, you'll likely use the zendframework/zendframework package, which includes all of them; otherwise, you install what you need. For the default implementation, you'll likely want to install all the suggested dependencies.
@icywolfy And this "problem" you reported was already present before this commit, as you can see in #4460
@weierophinney Thanks for the clarification.