1
0
Fork 0
Commit Graph

2684 Commits (c4d8061ebf3865b83c5f7916134d15c2cc965216)

Author SHA1 Message Date
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
Jordi Boggiano 13b7527fca
Fix unlocking of replacers when a replaced package is unlocked in partial updates 2021-11-23 13:00:28 +01:00
Jordi Boggiano f509c41280
Upgrade PHPStan to 1.0 (#10253)
Co-authored-by: Martin Herndl <martin@herndl.org>
2021-11-14 20:42:24 +01:00
Jordi Boggiano 65765a148a
Explicitly deprecate misuse of the link setters to enforce the fact they expect maps (#10281) 2021-11-12 21:38:08 +01:00
Jordi Boggiano ce2a40b259
List identical/compatible removed versions in problem output as if they had not been removed 2021-11-11 16:13:25 +01:00
Yanick Witschi 34183f49f9
Implemented PoolOptimizer 2021-11-11 16:13:24 +01:00
Martin Herndl 7eca450d9b
Add wildcard support to ignore-platform-req, fixes #10045 (#10083) 2021-11-11 15:56:38 +01:00
Stephan 44c5b6cde6
Config: add source option for command to show where a config value is loaded from (#10129) 2021-11-11 15:17:58 +01:00
Martin Herndl 3013674c92
Refactor ignore platform reqs checks (#10079)
Introduces a `PlatformRequirementFilter` with methods that help to decide if a requirement is ignored or not as discussed in #10045 but without changing behaviour.
2021-11-11 12:24:12 +01:00
Jordi Boggiano 6aa8a466b7
Fix tests 2021-11-10 22:10:36 +01:00
Raphael de Almeida 150acc5559
Removed HgBitbucketDriver support (#10248) 2021-11-10 21:58:03 +01:00
Jordi Boggiano b09a39f9c8
Error out on recursive links in validating loader and ignore them in regular loader 2021-11-10 11:10:52 +01:00
Jordi Boggiano bd4d624cc7
Read first from $_SERVER and $_ENV before using getenv (#10218) 2021-11-09 16:31:27 +01:00
Martin Herndl 5b47fa1896
Add back abandoned key in repository search results (#10259) 2021-11-08 10:27:45 +01:00
Jordi Boggiano cb0293cf30
Finalize phpstan level 6 for tests dir, closes #10159 2021-11-02 14:32:09 +01:00
Jordi Boggiano 90087b4fb3
Fix handling of php bin proxies combined with declare() on php <8, fixes #10246 (#10249) 2021-11-02 11:36:31 +01:00
Martin Herndl bcbd8fdb61
Add types to `Package` tests (#10245) 2021-11-01 21:44:12 +01:00
megubyte a155c076db
phpstan: update tests/Composer/Test/DependencyResolver/* to level 6 standard (#10242) 2021-10-30 10:30:36 +02:00
megubyte 8b7e2b600d
phpstan: update tests/Composer/Test/Downloader/* to level 6 standard (#10238) 2021-10-30 10:21:50 +02:00
Martin Herndl 96370657b8
Fix phpstan return type in `SvnTest::urlProvider` (#10233) 2021-10-28 10:00:25 +02:00
Martin Herndl a861d66469
Add types to `EventDispatcher` tests (#10235) 2021-10-27 20:35:16 +02:00
Martin Herndl 467fe3c1be
Add types to `Config` tests (#10234) 2021-10-27 20:34:48 +02:00
Jordi Boggiano e5fc8a9c72
Fix phpstan error 2021-10-27 16:51:16 +02:00
Jordi Boggiano f8ad0bb3d1
Add types to the base TestCase 2021-10-27 16:37:20 +02:00
Jordi Boggiano 44b69ba77f
Upgrade php-cs-fixer to 3.x and fix CS 2021-10-27 16:21:45 +02:00
Jordi Boggiano c65d09dff7
Fix @inheritDoc annotations 2021-10-27 16:18:53 +02:00
Martin Herndl 2992e8651a
Add types to `Util` tests (#10228) 2021-10-27 16:18:46 +02:00
Martin Herndl d51c7685da
Add types to `Repository` tests (#10227) 2021-10-27 15:29:52 +02:00
jakobvibe d06eb1ec3a
Fix types on mock tests (#10230)
* Fix types on mock tests

* Added $tty again

Co-authored-by: Jakob Vibe <jv@ipw.dk>
2021-10-27 14:56:39 +02:00
jakobvibe 1ba1463013
Added types to plugin test (#10231)
Co-authored-by: Jakob Vibe <jv@ipw.dk>
2021-10-27 14:52:34 +02:00
megubyte c2a2198089
phpstan: update tests/Composer/Test/Installer/* to level 6 standard (#10225) 2021-10-27 14:41:30 +02:00
jakobvibe f667c7b8de
Add types to tests/composer/test/json (#10222)
Co-authored-by: Jakob Vibe <jv@ipw.dk>
2021-10-27 11:37:51 +02:00
megubyte 135f806f6f
phpstan: update tests/Composer/Test/Autoload/* to level 6 standard (#10223) 2021-10-26 21:48:56 +02:00
Martin Herndl 3d5a100018
Add types to `Question` tests (#10219) 2021-10-26 21:17:28 +02:00
Martin Herndl 79da1c266e
Add types to `Script` tests (#10220) 2021-10-26 21:08:54 +02:00
Christian 4071125172
Added return type docs (#10221) 2021-10-26 21:05:03 +02:00
Cédric Anne a7686e82f0
Filter candidates requiring an unknown platform package; fixes #10167 (#10184) 2021-10-26 17:24:17 +02:00
Martin Herndl bd8b39fe01
Add types to `Package` (#10210) 2021-10-25 13:45:09 +02:00
Martin Herndl aa4c2ab63c
Add types to `Plugin` (#10194) 2021-10-25 11:02:54 +02:00
Paolo Rossi a921d9b233
Reaching phpstan level 6 in EventDispatcher Exception and Installer folders (#10192) 2021-10-25 10:44:29 +02:00
immeëmosol 50d738eeee
Reaching phpstan level 6 in Composer/DependencyResolver (refs #10159) (#10178) 2021-10-18 22:33:37 +02:00
Jordi Boggiano a6f1e803b1
Use more BasePackage instead of PackageInterface 2021-10-17 14:43:34 +02:00
Jordi Boggiano 9599eb613b
Type annotations 2021-10-16 11:14:10 +02:00
Jordi Boggiano c3c6969cf5
Type annotations 2021-10-16 10:25:12 +02:00
Jordi Boggiano 97fe881af4
Add some docblocks 2021-10-15 16:36:28 +02:00
Jordi Boggiano 260ac0011c
Add constants to describe error codes from Installer::run 2021-10-14 15:12:06 +02:00