1
0
Fork 0
Commit Graph

2729 Commits (0cf57255d4b8ebcf915fea9151d062498acb22c2)

Author SHA1 Message Date
Jordi Boggiano 88e1f0f9b5
Make sure repos are always initialized with a repo manager if possible, and make sure async is always enabled on the process executor, fixes #10783 (#10799) 2022-05-24 21:32:36 +02:00
Jordi Boggiano d70b580899
Merge branch '2.2' into 2.3 2022-05-24 14:41:41 +02:00
Jordi Boggiano 44a52e4157
Fix backtracking in name validation regex 2022-05-24 14:32:18 +02:00
Jordi Boggiano 779f3ab923
Add a couple missing --format completions 2022-05-13 14:10:59 +02:00
Jordi Boggiano b52053893c
Fix type errors and tests 2022-05-13 10:48:27 +02:00
John Stevenson 2837585e47
Fix cmd splitting paths on commas (#10775) 2022-05-12 21:13:55 +02:00
Jérôme Tamarelle 68fd80b630
PHPStan annotations 2022-05-12 15:00:39 +02:00
Jérôme TAMARELLE fe6be142b1
Add completion on commands 2022-05-12 15:00:37 +02:00
Jordi Boggiano df9721d21b
Skip broken test on windows 2022-05-11 16:52:58 +02:00
Jordi Boggiano 6ac4de19d7
Fix ApplicationTest interacting with other tests 2022-05-11 16:44:43 +02:00
Jordi Boggiano fdab6657c7
Add command testing utilities to TestCase, add tests for ConfigCommand 2022-05-11 16:08:39 +02:00
Jordi Boggiano f1f013edde
Downgrade naming errors to warnings again in package links to avoid BC issues with tags on packagist 2022-04-29 15:02:24 +02:00
Jordi Boggiano 928e19e637
Merge branch '2.2' into main 2022-04-29 12:15:20 +02:00
Jordi Boggiano 06ef742a66
Update phpstan, fix InstalledVersions key ordering to be more logical/consistent 2022-04-29 10:30:04 +02:00
Stephan Vock d40c3a89c0
GitLab: add warning in case GitLab authentication is misconfigured 2022-04-28 21:37:45 +01:00
Stephan Vock 3b4a3d63bf
GitLab: prevent invalid loop during composer install with invalid credentials 2022-04-28 21:16:16 +01:00
Jordi Boggiano bd6403a6be
Fix newly surfaced errors 2022-04-28 21:20:40 +02:00
Stephan 1f6f4a786e
BitbucketDriver: remove unnecessary HTTP call to fetch the root identifier (#10729) 2022-04-14 10:53:26 +02:00
Jordi Boggiano b0b364af19
E_TOO_MANY_BRANCHES 2022-04-13 17:24:39 +02:00
Jordi Boggiano d7ad2093f6
Merge branch '2.2' into main 2022-04-13 17:10:07 +02:00
Jordi Boggiano 9a62ef7ff2
Add missing return type 2022-04-13 17:07:33 +02:00
Jordi Boggiano a1f9baa118
Fix 5.3/5.4 builds 2022-04-13 16:42:12 +02:00
Jordi Boggiano 615530f0a1
Merge branch '2.2' into main, update baseline (2085, 104) 2022-04-13 16:18:25 +02:00
Stephan 2c40c53637
Merge pull request from GHSA-x7cr-6qr6-2hh6
* GitDriver: filter branch names starting with a - character

* GitDriver: getFileContent prevent identifiers starting with a -

* HgDriver: prevent invalid identifiers and prevent file from running commands

* HgDriver: filter branches starting with a - character
2022-04-13 15:54:58 +02:00
Stephan a5e35f911b
GitDriver: fix test for remote identifier on windows (#10727) 2022-04-13 14:08:24 +02:00
Stephan 6c3958ec86
Add warning if host is accessed via verify_peer or verify_peer_name disabled (#10722) 2022-04-13 12:21:08 +02:00
Stephan 866d2a49b2
GitDriver: try to fetch default branch form remote using auth (#10701) 2022-04-13 12:11:25 +02:00
Michael Babker 58e135181d
Restore the ability to list the scripts in the 'run-script' command without providing a script (#10710) 2022-04-07 13:17:28 +02:00
Jordi Boggiano e0cce2bfb0
Allow autoload to run on 5.6 still, add early exits when running composer or autoload.php with outdated PHP versions, fixes #10714, refs #10709 2022-04-06 22:07:16 +02:00
Jordi Boggiano b03e9e414e
Merge branch '2.2' into main 2022-04-02 13:04:37 +02:00
Jordi Boggiano 1cc23e1a8b
🤦‍♂️ 2022-04-02 13:04:03 +02:00
Jordi Boggiano 6b330b7456
Fix tests 2022-04-02 12:58:29 +02:00
Jordi Boggiano 34fa266114
Fix windows build 2022-04-02 12:48:02 +02:00
Jordi Boggiano 0985501602
Fix windows build 2022-04-02 12:38:23 +02:00
Jordi Boggiano dce63fdf4f
Merge branch '2.2' into main 2022-04-01 22:10:24 +02:00
Jordi Boggiano ecec0d00fc
Fix generation of autoload rules in a dir that is missing to ensure it does not break (#10688) 2022-04-01 21:20:21 +02:00
Stephan ef12e42bdb
GitDriver: try to fetch default branch from remote (#10687)
The initial clone determined what the default branch of the cache git repository was. Changing it on the remote didn't have any impact on the local data. However, cloning it on a different machine would then store a different default branch on that machine. This could lead to different results for the same command on different machines.
2022-04-01 17:13:22 +02:00
Jordi Boggiano 9a42f69a99
Make test more resilient on slow windows CI 2022-04-01 11:27:13 +02:00
Jordi Boggiano 8e93566c18
Validate config schema before loading it, fixes #10685 2022-04-01 11:23:59 +02:00
Stephan 147c6a2f7e
Bitbucket: when OAuth consumer authentication fails mention that the `This is a private consumer` needs to be enabled (#10678) 2022-03-31 13:29:19 +02:00
Jordi Boggiano 146e036b58
Fix parsing of openssl versions with odd suffixes, refs #10631 2022-03-30 18:09:40 +02:00
Markus Staab ccfbc16ac6
fix phpdoc type (#10669) 2022-03-30 11:58:30 +02:00
Jordi Boggiano cfb34416ec
Merge branch '2.2' into main 2022-03-29 22:00:45 +02:00
Jordi Boggiano 7eb8f92a93
Fix test 2022-03-29 21:37:41 +02:00
Jordi Boggiano 60616f9bd1
Fix tests 2022-03-29 21:27:43 +02:00
Jordi Boggiano 039701656f
Merge branch '2.2' into main 2022-03-29 18:58:23 +02:00
Jordi Boggiano 2dbe66ad20
Fix deletion of corrupt 0-bytes zip archives from the cache, fixes #10580 (#10666) 2022-03-29 18:57:30 +02:00
Jordi Boggiano 6bd75d5738
Update phpstan & baseline (2158, 104) 2022-03-29 14:03:05 +02:00
Stephan 854aab5f03
ArrayLoader: handle links where target is invalid numeric package name (#10663) 2022-03-29 12:46:51 +02:00
Stephan 9f8ee0e40a
ArrayLoader: fix integer index of branch alias (#10660) 2022-03-29 12:37:07 +02:00
Stephan 1daafb817d
ValidatingArrayLoader: only validate source/dist properties if they are set (#10658) 2022-03-26 14:40:20 +01:00
Stephan 61be158040
ArrayLoader: assert that source/dist reference are string values (#10647) 2022-03-22 09:48:51 +01:00
Jordi Boggiano e63e15aea8
Fix usage of react/promise resolve() to prepare for v3 2022-03-18 09:20:42 +01:00
Jordi Boggiano b0665981c2
Parallellize the branch comparisons to speed up bootstrapping/version guessing when on a feature branch (#10632)
* Parallellize the branch comparisons to speed up bootstrapping/version guessing when on a feature branch, fixes #10568

* Allow ProcessExecutorMock to function with async calls
2022-03-17 14:52:14 +01:00
Jordi Boggiano aad2f86edf
Merge branch '2.2' into main 2022-03-15 22:20:21 +01:00
Jordi Boggiano 6b97524b25
Load plugins which modify install path early, fixes #10618 (#10621) 2022-03-15 22:11:19 +01:00
Jordi Boggiano 5122bd42fb
Merge branch '2.2' into main 2022-03-15 13:11:59 +01:00
Jordi Boggiano dbcdb4a903
Add test for circular depths of equal weight 2022-03-15 12:02:03 +01:00
Jordi Boggiano f31700bf19
Sort packages with the same weight alphabetically to have a completely stable sort not dependent on input order, fixes #10614 2022-03-15 11:35:33 +01:00
Yanick Witschi ced24da7b0
Fix PoolOptimizer should consider disjunctive MultiConstraints (#10579) 2022-03-12 14:16:38 +01:00
Jordi Boggiano b3f99faff7
Fix tests 2022-03-09 21:39:18 +01:00
Jordi Boggiano beb575dd00
Fix more issues, update baseline (2203/106) 2022-02-24 13:24:35 +01:00
Jordi Boggiano 6a466a120a
Enable strict types on all files 2022-02-24 13:24:34 +01:00
Jordi Boggiano 3cdca37e85
Fix strict type issues 2022-02-24 13:24:25 +01:00
Jordi Boggiano 0db443ba5f
Add visibility to all consts, fixes #10550 2022-02-23 14:28:04 +01:00
Jordi Boggiano 89ce53250e
Final type additions 2022-02-23 12:54:07 +01:00
Jordi Boggiano 7abc8da7d3
Add more types 2022-02-23 11:37:32 +01:00
Jordi Boggiano 6da38f83a0
Add parameter types to all the things 2022-02-22 16:48:53 +01:00
Jordi Boggiano fb854df124
Update phpstan config 2022-02-21 13:49:26 +01:00
Alexander Schranz e9b60580f5
Add return types to tests (#10) 2022-02-21 13:42:28 +01:00
Jordi Boggiano 84f0f19112
Split Composer into PartialComposer & Composer classes to avoid nullable properties on Composer for non-fully-loaded instances, add types to Composer\Factory 2022-02-18 14:45:08 +01:00
Jordi Boggiano eda9014bef
Add return types to all code which is not being extended by open source packages 2022-02-18 14:32:38 +01:00
Jordi Boggiano 137ebddc25
Clean up useless mocks 2022-02-18 13:05:12 +01:00
Jordi Boggiano a16ed3d0ed
Add return types to private/internal methods 2022-02-18 11:22:01 +01:00
Jordi Boggiano abdc6893a6
Add void types where no return statement is present 2022-02-18 10:38:54 +01:00
Jordi Boggiano 32852304d0
Make use of some new PHP features 2022-02-18 10:20:20 +01:00
Jordi Boggiano 86fb8d4412
Fix CS 2022-02-18 08:50:11 +01:00
Jordi Boggiano 63b5f2737b
Merge branch '2.2' into main 2022-02-16 13:44:40 +01:00
Jordi Boggiano 5c98a2cf8e
Add phpstan-symfony to get type info about console InputInterface, fix many errors (#10476)
Extract common init/require commands functionality into PackageDiscoveryTrait
Extract some helper methods into BaseCommand for better types
2022-02-16 13:24:57 +01:00
Jordi Boggiano 28ec4fa7b0
Fix handling of invalid emails 2022-02-16 13:24:15 +01:00
Stephan 3eb12efae5
VcsRepositories: handle initialize with invalid repository URL (#10525) 2022-02-16 09:37:36 +01:00
Jordi Boggiano 45218092b4
Merge branch '2.2' into main 2022-02-15 16:52:03 +01:00
Jordi Boggiano 6698317342
Make tests more robust 2022-02-15 16:42:50 +01:00
Jordi Boggiano f808e4907c
Fix handling for non-lowercased enum keyword, fixes #10521 2022-02-15 16:41:06 +01:00
Jordi Boggiano ae68ada127
Merge branch '2.2' into main 2022-02-08 14:55:10 +01:00
Jordi Boggiano 3cb44bc4c0
Fix build with latest setup-php 2022-02-08 14:54:46 +01:00
Volodymyr Panivko a0b0ddcd73
Add config option for update reference in path repository (#10488) 2022-02-07 13:54:17 +01:00
Jordi Boggiano 4b67a97a25
Update baseline 2022-02-04 16:50:01 +01:00
Jordi Boggiano 3446091027
Merge branch '2.2' into main 2022-02-04 16:31:14 +01:00
Jordi Boggiano ee36c5e54a
Fix error reporting issues when partial updates cannot update due to a symlinked path repo package, fixes #10451 2022-02-04 15:58:50 +01:00
Florian Engelhardt 3d82719b70
Fix package search not urlencoding the input (#10500) 2022-02-04 10:23:10 +01:00
Jordi Boggiano 62d5f4f295
Fix phpstan errors 2022-02-02 22:18:00 +01:00
Markus Staab 6be6ce7d9f
update composer/pcre to 1.0.1 (#10496) 2022-02-02 21:35:37 +01:00
Jordi Boggiano db8ea45295
Fix enum parsing when the syntax is "enum foo:string {}" without space between name and type, fixes #10498 2022-02-02 17:48:45 +01:00
Jordi Boggiano 7591ef0084
Attempt fixing usage of InstalledVersions in tests 2022-02-02 16:08:40 +01:00
Jordi Boggiano 4ce11ab4ab
Support escaping on newer symfony/console versions, fixes #10499 2022-02-02 15:01:55 +01:00
Jordi Boggiano bf1ad4d240
Make sure test runs in isolated dir 2022-01-21 16:15:28 +01:00
Jordi Boggiano bab974575c
Merge branch '2.2' into main 2022-01-21 16:00:50 +01:00
Stephan 3b4afaa9e3
ArrayLoader/ValidatingArrayLoader: handle non-string values for version/version_normalized (#10470)
Co-authored-by: Jordi Boggiano <j.boggiano@seld.be>
2022-01-21 14:57:28 +01:00
Jordi Boggiano e3d99cac59
Fix phpstan issues, update baseline and pin PHPStan version in 2.2 branch (#10474) 2022-01-21 12:48:16 +01:00
Jordi Boggiano 5e4a8a882d
Allow ProcessExecutor to receive commands as arrays, refs #6552 (#10435) 2022-01-06 13:56:12 +01:00
Jordi Boggiano 06e445ce02
Drop PHP <7.2 and HHVM support from autoload_real, individual autoload files are kept as is for BC 2022-01-04 11:55:36 +01:00
Michael Voříšek 4fdc8b8ee1
dirname(__FILE__) no longer needed 2022-01-04 11:22:13 +01:00
Jordi Boggiano 7e50f37b87
Remove some dead code and deprecate JsonFormatter, JsonFile::JSON_* constants, and TlsHelper 2022-01-04 11:15:33 +01:00
Alexander M. Turek 36da81bec2
Remove obsolete Symfony feature detections (#10425) 2022-01-04 10:41:33 +01:00
Niels Vanpachtenbeke 1c928466a9
Remove code blocks for php <7.2 compatibility (#10417) 2022-01-03 17:35:32 +01:00
Jordi Boggiano 4e6d54b731
Fix all 5.3 $this-in-closure usages 2022-01-03 16:32:39 +01:00
Jordi Boggiano 5805a68645
Fix some todos dropping support for older Symfony releases 2022-01-03 14:51:41 +01:00
Jordi Boggiano 0b3adc84da
Fix a few phpstan errors and add a php8+ baseline for the rest 2022-01-01 14:54:24 +01:00
Jordi Boggiano a4a2b6da87
Make SvnDriverTest and XzDownloaderTest more portable on Windows 2022-01-01 14:54:23 +01:00
Jordi Boggiano ccd87c479c
Test fixes 2022-01-01 14:54:23 +01:00
Jordi Boggiano 22fed0d445
Get rid of prophecy usage 2022-01-01 14:54:22 +01:00
Jordi Boggiano 96486d81cb
Fix many PHPStan issues and update baseline 2022-01-01 14:54:21 +01:00
Jordi Boggiano 6ed3aeb343
Remove setExpectedException wrapper 2022-01-01 14:54:21 +01:00
Jordi Boggiano ffd62795bc
Get rid of all the ->at() mock invocations 2022-01-01 14:54:20 +01:00
Jordi Boggiano 095c36ecf8
Fix some PHPStan errors/.. 2022-01-01 14:54:20 +01:00
Jordi Boggiano bf72afec44
Fix Symfony6 compat 2022-01-01 14:54:19 +01:00
Jordi Boggiano 2a771dfb2d
Update PHPUnit to 8.5 2022-01-01 14:54:19 +01:00
Jason Woods efc7a3f75f
fix: Do not optimise away packages due to a requirement by a locked package that will be uninstalled (#10405)
Fixes #10394

Co-authored-by: Jordi Boggiano <j.boggiano@seld.be>
2021-12-31 11:49:42 +01:00
Jordi Boggiano e1bf45aa80
Fix issue parsing php files with unterminated comments found inside backticks, fixes #10385 2021-12-22 21:42:19 +01:00
Jordi Boggiano 226689b90c
Fix plugin autoloading including files autoload rules from the root package, fixes #10382 (#10386) 2021-12-22 16:04:34 +01:00
Jérôme Tamarelle f0060b7f56
Use web URLs for Gitlab support metadata (#10377) 2021-12-22 10:54:48 +01:00
Jordi Boggiano 188b692c4c
Add test verifying only plugin deps are autoloaded (#10374) 2021-12-20 14:58:55 +01:00
Jordi Boggiano 8f1b3d21db
Add --no-scripts to all commands and disable plugins/scripts when running self-update (#10371)
* Add --no-scripts as global parameter available to all commands, and handle it by default when creating a Composer instance from Command::getComposer

* Disable scripts/plugins for self-update command, fixes #10351
2021-12-20 14:23:35 +01:00
Jordi Boggiano 73a12bb21a
Delete old pear package fixtures 2021-12-10 13:50:46 +01:00
Jordi Boggiano 4e3d812212
Fix phpstan warnings 2021-12-08 14:10:42 +01:00
Jordi Boggiano 63c897eaf0
Fix test issues with new composer repo caching 2021-12-08 14:01:46 +01:00
Jordi Boggiano 4e8f3e85e2
Improve error reporting for repo priorities, refs #10339 2021-12-08 14:01:26 +01:00
Jason Woods 8c8d9efd87
Filter impossible packages from the pool (#9620)
Adds a new pass to the PoolOptimizer

Co-authored-by: Jordi Boggiano <j.boggiano@seld.be>
2021-12-08 11:42:36 +01:00
Jordi Boggiano a3e91b5be6
Add allow-plugins config value (#10314)
Fixes #5659

- Automatically switch off plugins by default in July 2022
- reword hash into object in schema

Co-authored-by: Nils Adermann <naderman@naderman.de>
2021-12-07 23:00:48 +01:00
Jordi Boggiano ca5d5b40ee
Fix platform package description for replacer/provider and packages which are not really loaded in general 2021-12-07 13:24:09 +01:00
Jordi Boggiano e30a6b0b9b
Add support for ignoring the upper bound of platform requirements using "name+" notation 2021-12-07 13:24:08 +01:00
Jordi Boggiano e496c3544c
Fix tests for new dep 2021-12-07 12:57:44 +01:00
Jordi Boggiano 24ce1eddbd
Add composer/pcre dependency and use it everywhere instead of preg_* 2021-12-07 12:37:19 +01:00
Helmut Hummel ace8a1776c
Add composer platform package with exact Composer version (#10313)
Co-authored-by: Lars Strojny <lars.strojny@internations.org>
Co-authored-by: Nils Adermann <naderman@naderman.de>
2021-11-27 14:26:57 +01:00
Shalvah 7a3d2b8157
Better hint for missing extensions (#10283) 2021-11-26 10:39:07 +01:00
Nils Adermann b9d7d27c82 Fix tests after grammar fix for php.ini error message 2021-11-26 10:13:49 +01:00
Helmut Hummel 0b9e1da4fc
Allow recursively call composerRequire (#10312)
Fixes: #10311
Related: #10065
2021-11-25 20:50:26 +01:00
Jordi Boggiano a6fc1ab663
Fix feedback 2021-11-25 15:18:24 +01:00
Jordi Boggiano 4352f23962
Fix implementation & tweak test 2021-11-25 15:06:00 +01:00
Nils Adermann b8caf4b214
Test path repo dependencies are updated in transitive partial updates (#7) 2021-11-25 15:05:59 +01:00
Jordi Boggiano d0c1e6cb05
Add InstallerTest for path repo symlink unfixing 2021-11-25 15:05:10 +01:00
Jordi Boggiano 0ae5a6ef59
Add test verifying unfixing behavior of path repo packages 2021-11-25 15:05:10 +01:00
Jordi Boggiano 91548d178b
Add support for setting platform packages to false to disable them (#10308)
Fixes #9664
2021-11-25 14:46:25 +01:00
Jordi Boggiano 032db5bc01
Fix tests 2021-11-25 12:33:59 +01:00
Jordi Boggiano 126f95a8d7
Get rid of gitignore/hgignore handling (fixes #7358), Add support for -export-ignore (fixes #9153) 2021-11-24 22:56:51 +01:00
Jordi Boggiano e96656d850
Fix tests on windows 2021-11-24 16:19:37 +01:00
Jordi Boggiano 7e3626362e
Add support for warnings/infos keys to report more complex information to diverse Composer versions 2021-11-24 16:00:57 +01:00
Jordi Boggiano bbc442b0ad
Undo changes to providers, only unlock replacers when unlocking a given name 2021-11-23 16:11:44 +01:00
Jordi Boggiano 3242de2438
Backport tests from #9538 and fix everything 2021-11-23 13:07:19 +01:00