List view
Discussion to inform developer to update minimum stability to Stable from Dev or change to any of the other available options. This will remove the requirements to use developmental branches unless manually specified to use in the code examples below. Package links# All of the following take an object which maps package names to versions of the package via version constraints. Read more about versions here. Example: { "require": { "monolog/monolog": "1.0.*" } } All links are optional fields. require and require-dev additionally support stability flags (root-only). They take the form "constraint@stability flag". These allow you to further restrict or expand the stability of a package beyond the scope of the minimum-stability setting. You can apply them to a constraint, or apply them to an empty constraint if you want to allow unstable packages of a dependency for example. Example: { "require": { "monolog/monolog": "1.0.*@beta", "acme/foo": "@dev" } } If one of your dependencies has a dependency on an unstable package you need to explicitly require it as well, along with its sufficient stability flag. Example: Assuming doctrine/doctrine-fixtures-bundle requires "doctrine/data-fixtures": "dev-master" then inside the root composer.json you need to add the second line below to allow dev releases for the doctrine/data-fixtures package : { "require": { "doctrine/doctrine-fixtures-bundle": "dev-master", "doctrine/data-fixtures": "@dev" } } require and require-dev additionally support explicit references (i.e. commit) for dev versions to make sure they are locked to a given state, even when you run update. These only work if you explicitly require a dev version and append the reference with #<ref>. This is also a root-only feature and will be ignored in dependencies. Example: { "require": { "monolog/monolog": "dev-master#2eb0c0978d290a1c45346a1955188929cb4e5db7", "acme/foo": "1.0.x-dev#abc123" } } Note: This feature has severe technical limitations, as the composer.json metadata will still be read from the branch name you specify before the hash. You should therefore only use this as a temporary solution during development to remediate transient issues, until you can switch to tagged releases. The Composer team does not actively support this feature and will not accept bug reports related to it. It is also possible to inline-alias a package constraint so that it matches a constraint that it otherwise would not. For more information see the aliases article. require and require-dev also support references to specific PHP versions and PHP extensions your project needs to run successfully. Example: { "require" : { "php" : ">=7.4", "ext-mbstring": "*" } } Note: It is important to list PHP extensions your project requires. Not all PHP installations are created equal: some may miss extensions you may consider as standard (such as ext-mysqli which is not installed by default in Fedora/CentOS minimal installation systems). Failure to list required PHP extensions may lead to a bad user experience: Composer will install your package without any errors but it will then fail at run-time. The composer show --platform command lists all PHP extensions available on your system. You may use it to help you compile the list of extensions you use and require. Alternatively you may use third party tools to analyze your project for the list of extensions used. require# Map of packages required by this package. The package will not be installed unless those requirements can be met. require-dev (root-only)# Map of packages required for developing this package, or running tests, etc. The dev requirements of the root package are installed by default. Both install or update support the --no-dev option that prevents dev dependencies from being installed.
Overdue by 3 year(s)•Due by February 25, 2022•1/1 issues closedUpcoming beta release. Including many fixes and improvements not noted by an issue
Overdue by 3 year(s)•Due by August 20, 2021•18/19 issues closed