Dan Wallis
7f78decad7
Fix PHPStan after running autoloader tests ( #11558 )
2023-07-21 14:34:59 +02:00
David Zülke
3e9c148b63
Fix trailing whitespace in 'composer show -N' ( #11536 )
...
The name column was always padded to maximum width, even if no other columns were printed.
This makes it difficult to use the output e.g. in pipelines.
Fixed for all possible columns, and with tests for two cases (regular show and show outdated).
2023-07-21 11:29:38 +02:00
David Zülke
07f706e57d
Fix 'composer show --platform <package>' erroring if no composer.json is present ( #11533 )
...
Sort of related to #11046 (although this is not a regression, but didn't work before, either)
2023-07-21 11:28:36 +02:00
Stephan
cf8ea3c70e
GitHubDriver: better handle empty composer.json file ( #11552 )
2023-07-21 11:09:32 +02:00
David Zülke
8f49166ec6
Fix lib-curl-openssl parsing for SecureTransport ( #11534 )
...
On macOS, if libcurl is built against SecureTransport, the platform repository will contain an invalid package name:
% composer show --platform | grep curl
ext-curl 8.2.7 The curl PHP extension
lib-curl 8.1.2 The curl library
lib-curl-(securetransport) openssl 3.1.1 curl (securetransport) openss...
lib-curl-libssh2 1.11.0 curl libssh2 version
lib-curl-zlib 1.2.11 curl zlib version
This change fixes it:
% bin/composer show --platform | grep curl
lib-curl 8.1.2 The curl library
lib-curl-libssh2 1.11.0 curl libssh2 version
lib-curl-securetransport 3.1.1 curl (securetransport) openssl ...
lib-curl-zlib 1.2.11 curl zlib version
(second column width difference comes from the Composer dev version number)
2023-07-21 11:06:03 +02:00
Attia A. Ahmed
ce876e7a6f
Fix broken junctions leading to installation failure on Windows ( #11550 )
2023-07-21 10:59:59 +02:00
Athos Ribeiro
4b210d916e
Add support for phpunit 10 ( #11532 )
...
* Use static test data providers
Using non-static methods as a data providers was deprecated in phpunit
10.
* Rename abstract test class
Abstract test case classes with Test suffix are deprecated in PHPUnit
10. We also change the ArchiverTest file name to match the new class
name (ArchiverTestCase).
* https://github.com/sebastianbergmann/phpunit/issues/5132
2023-07-21 10:39:20 +02:00
Jordi Boggiano
e7016b00a9
Upgrade to react/promise 3.0.0 ( #10429 )
2023-07-20 12:52:28 +02:00
MaximAL
1c9fbeb978
Preserve indentation when writing JSON files ( #11390 )
...
Refs #11341
2023-07-19 14:13:06 +02:00
Jordi Boggiano
2b18799c44
Fix problem output of exact constraints to state more clearly that only those versions are matched ( #11521 )
...
Fixes #11479
2023-06-23 13:13:20 +02:00
Alex Theobold
bc28582723
Reinstall command test ( #11502 )
2023-06-23 09:47:36 +02:00
Jordi Boggiano
29134d5a1d
Fix null check
2023-06-07 16:34:58 +02:00
Jordi Boggiano
9f3e2105da
Add IOMock and get rid of all withConsecutive calls in tests ( #11497 )
2023-06-07 14:35:16 +02:00
Alex Theobold
7528c86e58
Test json format on failed platform reqs ( #11477 )
...
* test: Adds case for json format arg
* test: A failed platofrm requirement
* chore: style fix
* chore: removes redundant test case
2023-05-28 15:15:21 +02:00
David Zülke
c45b403967
tests for empty or absent repository filters ( #11476 )
...
The behavior in FilterRepository is currently correct, but not explicitly tested.
Also add a test that ensures both filters can't be there simultaneously.
2023-05-28 15:02:12 +02:00
Jordi Boggiano
52f6f74b7c
Merge branch '2.5'
2023-05-24 15:00:53 +02:00
Jordi Boggiano
33c293aec3
Fix autoload regression with metapackage dependencies ( #11481 )
...
fixes #11480
introduced by #11455
2023-05-24 14:58:11 +02:00
Jordi Boggiano
5a96e6ae13
Merge branch '2.5'
2023-05-23 23:49:53 +02:00
Jordi Boggiano
23654389da
Fix lock file verification to take into account root provider/replacers and output mismatches there more clearly, fixes #11458 ( #11475 )
2023-05-23 23:15:07 +02:00
Stefan Grootscholten
9d965b9c65
Fix authentication issues with private bitbucket repos ( #11464 )
2023-05-23 23:14:11 +02:00
Jordi Boggiano
24361ae654
Merge branch '2.5'
2023-05-23 16:25:24 +02:00
Jordi Boggiano
e51d755a08
Fix numeric default-branches with v prefix (e.g. v2.x-dev) being treated as non-numeric and receiving an alias like e.g. dev-main
2023-05-23 16:25:08 +02:00
Jordi Boggiano
0d68dabb5f
Add more tests for install command, refs #11277
2023-05-15 21:54:40 +02:00
Alex Theobold
fb2c17d696
Test install command ( #11277 )
...
* Adds test class boilerplate
* test: Tests warning returned with dev flag
* test: warning returned with no-suggest flag
* test: packages passed is invalid
* test: no-install flag passed
---------
Co-authored-by: alex.theobold <alex.theobold@sykescottages.co.uk>
2023-05-14 14:15:44 +02:00
Yanick Witschi
f9944867c3
Added integration test
2023-05-02 22:10:18 +02:00
Yanick Witschi
995b806dfe
Optimize PoolBuilder to not load replaced targets if not required
2023-05-02 22:10:18 +02:00
Jason Woods
010bad5428
fix: If a replacer is updated to a version that no longer replaces, the replaced package is not loaded
2023-05-02 22:07:57 +02:00
Stephan
11879ea737
ArrayLoader: handle invalid support value ( #11440 )
2023-04-26 15:26:45 +02:00
David Zülke
e0c1ad1448
PlatformRepository library support for libpq (from ext-pq) and librdkafka (from ext-rdkafka) ( #11418 )
...
* libpq library version info for ext-pq
* librdkafka library version info for ext-rdkafka
Computes from RD_KAFKA_VERSION, faster than output buffering
2023-04-25 13:59:36 +02:00
Jordi Boggiano
776ff2ea51
Merge branch '2.5'
2023-03-21 11:53:54 +01:00
Jordi Boggiano
8b0a185d5d
Fixed display of empty objects showing [] instead of {} in config command, fixes #11302
2023-03-21 11:17:55 +01:00
Jordi Boggiano
5f298ae294
Merge branch '2.5'
2023-03-21 10:45:40 +01:00
Jordi Boggiano
5c3d8f35db
Update deps, fix phpstan issues, update baseline (1711, 49)
2023-03-21 10:36:42 +01:00
Stephan
685a2e6be2
Composer support string ( #11386 )
...
* GitHubDriver: fix support is set to string
* GitLabDriver: fix support is set to string
* BitbucketDriver: fix support is set to string
* Fix PHPStan
2023-03-20 20:18:19 +01:00
Edgaras Janušauskas
f41abfca34
Add platform check for 64-bit PHP ( #11334 )
2023-03-20 16:08:12 +01:00
Ben Ramsey
cd137ee29b
Add security to support options ( #11271 )
...
This support option allows projects to specify a URL to the project's
vulnerability disclosure policy (VDP).
2023-03-10 22:28:10 +01:00
Markus Staab
d8221bd443
PHPStan: Fixed handling of union types in ConfigReturnTypeExtension ( #11312 )
...
Co-authored-by: Markus Staab <m.staab@complex-it.de>
2023-02-10 14:00:33 +01:00
Andor
50cded331c
Default exclude patterns for the "archive" command ( #11239 )
...
* Issue #11235 - Adds default exclude patterns for the "archive" command based on the target file name
2023-01-27 17:16:33 +01:00
Jordi Boggiano
ad7bc18028
Fix self.version requirements failing the lock file integrity check if on a different version, fixes #11274 ( #11283 )
2023-01-27 16:54:45 +01:00
Jordi Boggiano
0a2846cb24
Fix autoloading on PHP 5.6 ( #11285 )
...
* Add a CI check to ensure the autoloader can run on php5.6+
* Fix autoloading on PHP 5.6
2023-01-27 16:26:04 +01:00
Jordi Boggiano
5165792f9c
Fix security advisory parsing when filter repo is used, fixes #11281
2023-01-27 11:09:34 +01:00
Jordi Boggiano
f6f972a699
Fix require regression with --fixed, fixes #11247
2023-01-19 21:42:22 +01:00
Jordi Boggiano
0d96fd8149
Warn when require ends up auto-selecting a feature branch, fixes #11264 ( #11270 )
2023-01-19 21:42:09 +01:00
Alex Theobold
2431b12230
Test home command ( #11254 )
...
Co-authored-by: alex.theobold <alex.theobold@sykescottages.co.uk>
2023-01-13 09:34:03 +01:00
Dan Barrett
ca9fb64691
Added tests for the Suggests command
2023-01-06 12:38:47 +11:00
Dan Barrett
7560873740
Added tests for the Remove command
2023-01-06 12:38:47 +11:00
Dan Barrett
29ae7b632a
Add "missing lockfile" test for the Audit command
2023-01-06 12:38:40 +11:00
Dan Barrett
b2304d0b12
Exclude PHPStan extensions from PHPUnit coverage
2023-01-03 18:57:00 +11:00
Jordi Boggiano
d047f38f73
Make sure autoloader closures do not have a scope class set
2022-12-22 21:01:38 +01:00
Jordi Boggiano
cbb7c91223
Fix ClassLoader to be serializable ( #11237 )
...
* Fix ClassLoader to be serializable
* Fix CI to use the source bin/composer as process for "composer" runs incl within simple-phpunit
* Store the closure statically to avoid serialization issues in a cleaner way
2022-12-22 15:17:04 +01:00
Jeffrey Cafferata
da611e089a
Docs: fix documention deep links ( #11233 )
...
* Docs: Fixed the deep links to the documentation website.
Search scope: `src/Composer/Command`.
* Docs: Fixed the deep links to the documentation website.
2022-12-21 09:32:50 +01:00
Jordi Boggiano
3534499c6b
Add test covering edge case of composer repo format, closes #11206
2022-12-17 23:15:40 +01:00
Ondřej Mirtes
2aa33aaafa
Update PHPStan ( #11222 )
...
Co-authored-by: Jordi Boggiano <j.boggiano@seld.be>
2022-12-17 23:12:38 +01:00
Jordi Boggiano
957e7a9165
Merge pull request #11218 from localheinz/fix/patch
...
Fix preserving of major.minor.patch version when running `composer bump` and installed patch version is `0`, and add bumping of >=x to >=latest
2022-12-17 23:05:21 +01:00
Jordi Boggiano
ef7ba73a6a
Add support for bumping >=x to >=latest, fixes #11179
2022-12-17 23:02:52 +01:00
Jordi Boggiano
7f9638f65a
Fix implementation to fix tests, fixes #11220
2022-12-17 22:50:19 +01:00
PrinsFrank
6d1b36be3b
Check missing-from-lock-file required packages when running install and fail when there are any ( #11195 )
2022-12-16 16:48:24 +01:00
Andreas Möller
caebfe14ee
Fix: Add test case for not dropping patch version
2022-12-12 17:25:20 +01:00
Ion Bazan
8ff237afb6
[Tests] Use static data providers ( #11197 )
2022-11-24 14:39:08 +01:00
Jordi Boggiano
bd6a5019b3
Update to composer/pcre 2.1 ( #11189 )
2022-11-17 11:34:54 +01:00
Jordi Boggiano
5b28754602
Avoid normalizing to absolute paths if base dir is /toplevel to improve docker portability, fixes #11165 , fixes #4404 ( #11169 )
2022-11-10 16:32:18 +01:00
Jordi Boggiano
6c85b875f2
Update to PHPStan 1.9
2022-11-03 21:53:42 +01:00
Jordi Boggiano
36bc30ffab
Make the require command guess versions more accurately by delegating to the solver (except with --no-update) ( #11160 )
2022-11-01 15:48:52 +01:00
Jordi Boggiano
6e55cb36d8
Add support for adding Command classes as scripts, ( #11151 )
...
* Add support for adding Command classes as scripts, fixes #11134
* Allow all options to be forwarded and allow using references to other scripts with args
* Fix build
* Add more checks
* Ensure exceptions are not swallowed, and remove naming restriction by using a single-command app
* Update docs
* Add tests, fix issue merging params when combining nested scripts and CLI params
2022-10-28 14:24:55 +02:00
Jordi Boggiano
a63ce7cf96
Add message when doing composer outdated --direct and there is nothing to show, fixes #11152 ( #11156 )
2022-10-27 16:21:53 +02:00
Alex Theobold
97f4fbc4b0
Adds test coverage to the Fund Command ( #11150 )
...
Co-authored-by: Jordi Boggiano <j.boggiano@seld.be>
2022-10-26 13:40:01 +02:00
Alex Theobold
b5b4e15876
test: Create test for CheckPlatformReqsCommand ( #10932 )
2022-10-25 19:42:42 +02:00
Giulio
1b3a2ed6f6
test: Coverage for ValidateCommand ( #11133 )
...
Co-authored-by: giulio-Joshi <me@joshi.it>
Co-authored-by: Jordi Boggiano <j.boggiano@seld.be>
2022-10-25 16:38:01 +02:00
Stephan Jorek
d54f2f21c5
Feature: Add support for autocompleting setting-keys in config-command ( #11130 )
...
* Add support for autocompleting setting-keys in config-command
This PR implements the support for autocompletion of setting-keys in the
config-command and its related funtional tests. The implementation takes
existing command-line options like `--unset` or `--global` into account, as
well as existing exposable package-properties. The result is a context-
sensitive auto-completion of individual lists of setting-keys.
Additionally showing the value `suggest.` sub-keys has been allowed in
the config-command, as setting and unsetting them has alwas been possible,
and I did not want to distinguish between showing, setting and unsetting
those keys.
In the setting-key flattening-method I used the `array_is_list()` function,
which was added in PHP 8.1 recently. For backwards PHP-compatiblity the
package `symfony/polyfill-php81` has been added.
Signed-off-by: Stephan Jorek <stephan.jorek@brandung.de>
2022-10-25 16:24:02 +02:00
Jordi Boggiano
8ffd8bef08
Merge branch '2.4'
2022-10-25 15:27:14 +02:00
Ayesh Karunaratne
90673e4f66
Update URL masking patterns for new GitHub fine-grained PATs
...
Updates GitHub Personal Access Token regex pattern to detect new [fine-grained PATs](https://github.blog/changelog/2022-10-18-introducing-fine-grained-personal-access-tokens/ )
2022-10-25 15:07:24 +02:00
Kuba Werłos
e5b8f2d838
Add "--dry-run" to bump command ( #11047 )
2022-10-25 15:03:36 +02:00
Jordi Boggiano
ce082cd5b3
Merge branch '2.4'
2022-10-13 11:21:52 +02:00
Jordi Boggiano
205ba37825
Fix tests
2022-10-13 11:21:41 +02:00
Leo Viezens
13e673df76
#10796 Add test for ExecCommand ( #11094 )
2022-10-13 11:21:19 +02:00
Gaëtan Faugère
52f91b2dd9
Add test and documentation regarding audit command when no packages are required ( #11092 )
2022-10-13 10:53:26 +02:00
Jesper Skytte Marcussen
b52e6b4a74
Add tests for BumpCommand ( #11097 )
...
I've added tests for the BumpCommand to increase the test coverage.
See #10796
Signed-off-by: Jesper Skytte <jesper@skytte.it>
Signed-off-by: Jesper Skytte <jesper@skytte.it>
2022-10-13 10:42:03 +02:00
Jesper Skytte Marcussen
d1bf685ea8
Added lots of new tests for `InitCommand` ( #11106 )
...
This commit adds tests for all the different input options.
2022-10-13 10:39:51 +02:00
Jesper Skytte Marcussen
c728569d33
Added new `LicensesCommandTest` class ( #11105 )
2022-10-12 17:25:28 +02:00
Mauro Bonfietti
d8a0127c0c
Added tests for Clear Cache Command. ( #11066 )
...
* Added tests for Clear Cache Command.
* Fix side-effects breaking other tests
Co-authored-by: Jordi Boggiano <j.boggiano@seld.be>
2022-10-12 17:19:58 +02:00
Jordi Boggiano
06359da3a3
Merge branch '2.4'
2022-10-12 16:55:56 +02:00
JT Smith
08c04d2c9c
Typofixes ( #11096 )
...
* Fixing typo in private method name
* Various comment-related typofixes
2022-10-12 16:45:10 +02:00
Jordi Boggiano
8618f004f7
Fix parsing of aliases used within complex OR constraints, fixes #11086
2022-10-12 16:16:31 +02:00
Abdullahi Temidayo Jimoh
05aecfbe8b
Test for About command ( #11078 )
2022-10-12 14:22:28 +02:00
Jordi Boggiano
822fd640d0
Add warning when outdated command rejects an existing version due to platform requirements, fixes #11016 ( #11113 )
2022-10-12 13:57:14 +02:00
Jellyfrog
8ed7c46179
Add download-only mode ( #11041 )
...
composer install --download-only to prime the cache/download archives but not do any actual of the actual installing
Fixes #11035
Co-authored-by: Jordi Boggiano <j.boggiano@seld.be>
2022-10-12 13:56:35 +02:00
Jordi Boggiano
7df744531b
Merge branch '2.4'
2022-10-12 11:27:30 +02:00
Kuba Werłos
f8435b6d10
Unify command names in the docs ( #11071 )
2022-10-12 10:55:57 +02:00
Jordi Boggiano
8600894003
Update deps, constrain a few types to non-empty-strings
2022-10-12 09:19:36 +02:00
Kuba Werłos
e870206c4a
Add "--dry-run" to bump command ( #11047 )
2022-09-19 08:45:49 +02:00
Jordi Boggiano
ef018748eb
Merge branch '2.4'
2022-09-14 14:02:28 +02:00
Jordi Boggiano
ec8bbe9056
Fix package filter on bump command, fixes #11053
2022-09-14 14:00:27 +02:00
Jordi Boggiano
02082905a3
Merge branch '2.4'
2022-09-13 15:17:04 +02:00
Jordi Boggiano
ab29ed5f97
Fix handling of upper-bound platform req ignores to not act on conflicts ( #11037 )
...
* Fix handling of upper-bound platform req ignores to not act on conflicts, fixes #11020
* Optimization
2022-09-13 14:50:27 +02:00
Jordi Boggiano
4164b30236
Fix show --platform regression failing if no composer.json exists, fixes #11046
2022-09-13 14:49:25 +02:00
Ondřej Mirtes
d951c48ac0
Tests bootstrap - require InstalledVersions only if it's not declared yet ( #11014 )
2022-08-31 12:42:26 +02:00
Jordi Boggiano
c10854d3f3
Remove extra lines
2022-08-31 12:42:26 +02:00
Jordi Boggiano
d0ac10ca6a
Merge branch '2.4'
2022-08-31 12:41:52 +02:00
Ondřej Mirtes
554914923d
Tests bootstrap - require InstalledVersions only if it's not declared yet ( #11014 )
2022-08-31 12:39:43 +02:00
Jordi Boggiano
5b754c797e
Remove extra lines
2022-08-31 12:26:58 +02:00