Download the PHP package navarr/dependency-annotation without Composer
On this page you can find all versions of the php package navarr/dependency-annotation. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download navarr/dependency-annotation
More information about navarr/dependency-annotation
Files in navarr/dependency-annotation
Package dependency-annotation
Short Description Adds extra functionality for interpreting the @dependency annotation
License MIT
Informations about the package dependency-annotation
The #[Dependency] Attribute
This project supplies a Composer plugin that adds a command (why-block
) that interprets a PHP #[Dependency]
attribute.
How to use the #[Dependency]
annotation
Simply include a #[Dependency]
attribute on any attributable target in the following format:
#[Navarr\Attribute\Dependency('package', 'versionConstraint', 'reason')]
This FQN may be imported, in which case you can simply use #[Dependency(...)]
All fields except the explanation are mandatory. Adding an explanation is highly recommended, however.
How to process reasons not to upgrade a composer dependency
If you are using the #[Dependency]
annotation thoroughly, and you are having issues updating a composer dependency, you
can use the command composer why-block composer-package version
This will output a list of files containing a #[Dependency]
annotation on composer-package with a version-constraint
that cannot be fulfilled by the specified version.
How to install
composer global require navarr/dependency-annotation
Compatibility with v1
For speed, version 2 automatically excludes the legacy @dependency
annotation in favor of the PHP8 #[Dependency]
attribute. While transitioning, you may specify the -l
or --include-legacy-annotations
flag to the why-block
command to force it to process v1 annotations as well.
All versions of dependency-annotation with dependencies
composer-plugin-api Version ^2
composer/composer Version ^2
composer/semver Version ^1|^2|^3
symfony/console Version ^5
nikic/php-parser Version ^4
navarr/attribute-dependency Version ^1.0.1
php-di/php-di Version ^6