BC Break: the minimum PHP version is now 7.2.5+, use the Composer 2.2 LTS if you are stuck with an older PHP (#10343)
BC Break: added native parameter & return types to many internal APIs, we explicitly left the most extended/implemented symbols untouched but if this causes problems nonetheless please report it ASAP (#10547, #10561)
BC Break: added visibility to all constants, a few internal ones have been made private/protected, if this causes problems please report it ASAP (#10550)
BC Break: the minimum supported Symfony components version is now 5.4, this only affects you if you are requiring composer/composer directly however, which is generally frowned upon
Bumped composer-plugin-api to 2.3.0
Bumped bundled Symfony components from 2.8 to 5.4 🥳
Added declare(strict_types=1) to all the classes, which for sure could cause regressions in edge cases, please report with stack traces (#10567)
Added --patch-only to the outdated command to only show updates to patch versions and ignore new major/minor versions (#10589)
Added clickable links to various commands for terminals which support it (#10430)
Added ProcessExecutor ability to receive commands as arrays by (internals/plugin change only) (#10435)
Added abandoned flag to show/outdated commands JSON-formatted output (#10485)
Added config.reference option to path repositories to configure the way the reference is generated, and possibly reduce composer.lock conflicts (#10488)
Added automatic removal of allow-plugins rules when removing a plugin via the remove command (#10615)
Added COMPOSER_IGNORE_PLATFOR_REQ & COMPOSER_IGNORE_PLATFOR_REQS env vars to configure the equivalent flags (#10616)
Added return types where possible. This will break code that extends ours and does not declare the same return types. For this reason, our most extended classes/interfaces have not been modified to retain BC: Composer\IO\*, Composer\Installer\*, Composer\Autoload\ClassLoader, Composer\InstalledVersions, Composer\Plugin\*, Composer\Repository\*, Composer\Util\{Filesystem,HttpDownloader,RemoteFilesystem} and a few select others. Hopefully this avoids most breakage, but we may still see some extensions break. If you can fix these breakages by adding return types and move on that would be the preferred way, but if they are breaking established plugins or others which cannot easily be updated everywhere they're used we will rollback those return type additions as needed.
Fixed invalid return value in ComposerRepository::findPackage (#10622)
Fixed many show command issues due to a flipped condition (#10623)
Fixed phpversion() handling when it returns false due to an extension defining no version (#10631)
Fixed remove command failing when no allow-plugin is defined in config (#10629)
Performance improvement in Composer bootstrapping (version guessing) when on a feature branch (#10632)
[2.3.0-RC1] 2022-03-16
BC Break: the minimum PHP version is now 7.2.5+, use the Composer 2.2 LTS if you are stuck with an older PHP (#10343)
BC Break: added native parameter & return types to many internal APIs, we explicitly left the most extended/implemented symbols untouched but if this causes problems nonetheless please report it ASAP (#10547, #10561)
BC Break: added visibility to all constants, a few internal ones have been made private/protected, if this causes problems please report it ASAP (#10550)
BC Break: the minimum supported Symfony components version is now 5.4, this only affects you if you are requiring composer/composer directly however, which is generally frowned upon
Bumped composer-plugin-api to 2.3.0
Bumped bundled Symfony components from 2.8 to 5.4 🥳
Added declare(strict_types=1) to all the classes, which for sure could cause regressions in edge cases, please report with stack traces (#10567)
Added --patch-only to the outdated command to only show updates to patch versions and ignore new major/minor versions (#10589)
Added clickable links to various commands for terminals which support it (#10430)
Added ProcessExecutor ability to receive commands as arrays by (internals/plugin change only) (#10435)
Added abandoned flag to show/outdated commands JSON-formatted output (#10485)
Added config.reference option to path repositories to configure the way the reference is generated, and possibly reduce composer.lock conflicts (#10488)
Added automatic removal of allow-plugins rules when removing a plugin via the remove command (#10615)
Added COMPOSER_IGNORE_PLATFOR_REQ & COMPOSER_IGNORE_PLATFOR_REQS env vars to configure the equivalent flags (#10616)
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
Bumps composer/composer from 2.2.9 to 2.3.2.
Release notes
Sourced from composer/composer's releases.
... (truncated)
Changelog
Sourced from composer/composer's changelog.
Commits
c3777ea
Release 2.3.23d04c56
Update changelogf1e3ba7
Allow passing null to $prettyVersion to handle gracefully cases where a versi...146e036
Fix parsing of openssl versions with odd suffixes, refs #10631bf01905
Update changelogf1ff455
Fix handling of true return value for loadRootServerFile, fixes #10675c3484ea
Avoid endless loop when input looks interactive but isnt, fixes #10648a71985c
Update baseline (2150, 103)b46dba2
Allow addListener to work with strings, fixes #10672dca5e45
Reverting release version changesDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting
@dependabot rebase
.Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)