zend-form
zend-form copied to clipboard
Missing dependency to zend-servicemanager ?
Hi,
I'm using zend-form as a standalone library (in a Symfony2 project), and I realize that since this commit (introduced in v2.8.2) there is a new autoload file which creates an alias FormElementManager
for either FormElementManagerV3Polyfill
or FormElementManagerV2Polyfill
(the latter in my case).
So here's my problem : when I run a composer update
the Sensio\Bundle\DistributionBundle\Composer\ScriptHandler::buildBootstrap
post-update command fails with this error :
PHP Fatal error: Class 'Zend\ServiceManager\AbstractPluginManager' not found in /sites/sfwebfstore/vendor/zendframework/zend-form/src/FormElementManager/FormElementManagerV2Polyfill.php on line 28
Actually the command doesn't matter, the problem appears very soon during the autoload phase.
I suspect this error to be a consequence of the absence of zend-servicemanager as a non-dev dependency in the composer.json of this project.
Indeed, considering I'm using zend-form in standalone and that zend-servicemanager isn't a dependency of any of the others packages, Zend\ServiceManager\AbstractPluginManager
doesn't exists and an error appears.
I don't know if it makes sense to set zend-servicemanager as a non-dev requirement in this project, but I think it would resolve this problem (I'm not sure). If you think it's not a good idea, please help me to find a solution because I'm pretty stucked there :-)
I have had the same issue while installing zend-form with zend-expressive (fastroute+pimple+plates).
Even just requiring zend-form (composer require zendframework/zend-form
) and including the generated vendor/autoload.php
will cause the issue. The zend-form composer.json require a file:
autload/formElementManagerPolyfill.php
which defines a class alias for FormElementManager based on the service manager version. Confirming the version as well: zend-form v 2.8.1 is not affected.
zend-form 2.10 is affected. This is bad, because my app crashes directly after autoloading.
confirm the problem :(
@pine3ree is right, the polyfill and autoloading is the problem.
Will this be fixed, as far as I can see this problem still persists?
@ikdekker send a patch: nothing fixes itself in OSS :-)
This repository has been closed and moved to laminas/laminas-form; a new issue has been opened at https://github.com/laminas/laminas-form/issues/46.