[Neos] Composer option 'Provide'

Rens Admiraal rens.admiraal at typo3.org
Mon May 20 00:57:02 CEST 2013


Hey guys,

Composer supports an option named 'provide' which is described as:

List of other packages that are provided by this package. This is mostly 
useful for common interfaces. A package could depend on some virtual 
logger package, any library that implements this logger interface would 
simply list it in provide.

(see http://getcomposer.org/doc/04-schema.md#provide)

Check for example 
https://github.com/jackalope/jackalope-doctrine-dbal/blob/master/composer.json
This package provides an implementation for 
jackalope/jackalope-transport, but the package name is 
jackalope/jackalope-doctrine-dbal

Currently this is not supported in Flow, installing a package like this 
will result in an error like:
Fatal error: Uncaught exception 
'TYPO3\Flow\Package\Exception\InvalidPackageStateException' with message 
'Could not find package with composer name 
"jackalope/jackalope-transport" in PackageStates configuration.' in 
Packages/Framework/TYPO3.Flow/Classes/TYPO3/Flow/Package/PackageManager.php 
on line 304

Looking into this I was wondering ow we should implement this, we now 
just check if the exact pacakge is installed, but a check with this 
option would more be something like 'is there an implementation for this 
package installed'. So should we distinquish in errors for example?

Just some thoughts before calling it a day, wanted to write it down 
somewhere ;)

Greetz,
Rens


More information about the Neos mailing list