48 Commits (6a466a120a404d1c5d492e5ca715841c491517fc)

Author SHA1 Message Date
Jordi Boggiano 6a466a120a
Enable strict types on all files 2 years ago
Jordi Boggiano 0db443ba5f
Add visibility to all consts, fixes #10550 2 years ago
Jordi Boggiano 6da38f83a0
Add parameter types to all the things 2 years ago
Jordi Boggiano eda9014bef
Add return types to all code which is not being extended by open source packages 2 years ago
Jordi Boggiano a16ed3d0ed
Add return types to private/internal methods 2 years ago
Jordi Boggiano 64d39a9655
Fix phpstan error 2 years ago
Jordi Boggiano 508ac051ec
Revert "Remove getCode usage as it is not type safe apparently, see https://github.com/phpstan/phpstan-src/pull/795"
This reverts commit 84f8fda0c6.

And other issues fixed by PHPStan 1.3.2
2 years ago
Jordi Boggiano 84f8fda0c6
Remove getCode usage as it is not type safe apparently, see https://github.com/phpstan/phpstan-src/pull/795 2 years ago
Shalvah 7a3d2b8157
Better hint for missing extensions (#10283) 3 years ago
Nils Adermann 645e5245dd
Error message grammar fix 3 years ago
immeëmosol 50d738eeee
Reaching phpstan level 6 in Composer/DependencyResolver (refs #10159) (#10178) 3 years ago
Jordi Boggiano b209816056
Type annotations 3 years ago
Jordi Boggiano 260ac0011c
Add constants to describe error codes from Installer::run 3 years ago
Jordi Boggiano 4bcd860b65
Add more type annotations 3 years ago
Jordi Boggiano cfe718fa43
Fix usage of getRequiredPackage, closes #10052 3 years ago
Arnaud Vanwambeke 7402ef33fc Dont recommend to use with all dependencies option when it is already used 3 years ago
Jordi Boggiano 99a5469b5e
More hints 4 years ago
Jordi Boggiano 59acf9d4aa
Remove dev hint for 2.0, fixes #8738 4 years ago
Markus Staab cf9786f112
Improve error message further 4 years ago
Jordi Boggiano 6cf4ba051c
Update messaging about plugin errors 4 years ago
Jordi Boggiano c8efb50d39
Change the single requirement ignore from --ignore-platform-reqs=xx to --ignore-platform-req=xx to avoid BC issues 4 years ago
Jordi Boggiano e85da00dff
Add a way to ignore only some packages in --ignore-platform-reqs, and make the platform check ignore those packages which were ignored as requirements, fixes #8861 4 years ago
Jordi Boggiano af6444353f
Refactor hint generation and whitespace handling in SolverProblemsException 4 years ago
Jordi Boggiano 98e5f81a5f
Fix detection of fixed package problems to include more cases, fixes #8910 4 years ago
Jordi Boggiano 1d4185b844
Recommend ocramius/package-versions fork if needed to solve dependencies 4 years ago
Jordi Boggiano 80a7c40c76
Shorten long lists of similar versions in problem output, fixes #8743 4 years ago
Jordi Boggiano 8945936dbd
Deduplicate solver problems which list problems for dev-master AND 9999999-dev 4 years ago
Jordi Boggiano 2b86df4003
Add a hint about being on v2 when things go wrong 4 years ago
Nils Adermann 9858718ef6 Give a clearer error message explaining how to update a conflicting locked dependency 4 years ago
Nils Adermann 1f467046d7 Implement getProviders on reposet for all repo types and add replacers
This way errors during require dev extraction make more sense
4 years ago
Jordi Boggiano c41df325d8
Remove RepositorySet from Solver and remove getPool from RepositorySet 4 years ago
Jordi Boggiano 3fc7e10c5c
Improve error reporting of solver issues, refs #7779
Fixes #8525
Fixes #6513
4 years ago
Nils Adermann 5bdc0fc9c5 Request jobs replaced by root require / fixed package
The only type of request job remaining was "install" which is really a
root requirement. The only other kind of input for the solver is now a
set of fixed packages.

Rules have been updated to account for only two kinds of former job
reason: FIXED or ROOT_REQUIRE. The job property has always been
redundant and has been removed, since reasonData suffices.

Problem reasons are always rules, so the unnecessary wrapping in an
array has been removed.

We now only ever generate a single rule per root require or fixed
package, so there is no need for the solver to special handle disabling
"jobs" anymore, the rule can just be disabled as usual.

For consistency special handling of rules for jobs in problems has been
integrated into the rule class like all other rule reasons. As part of
this change the error message for root requirements has been improved a
bit to make it clearer where the package installation request came from.

The word job has also been removed from operations, which are called
operations, not jobs.
4 years ago
Nils Adermann c0f19f6c57 Move construction of pool from repo set into a pool builder
Pool construction depends on the install request now, so only required
packages get loaded, add some structure for future asynchronously
loading composer repositories
6 years ago
Nils Adermann f40f95b269 Add a note that a user could have forgotten to add a custom repo if package not found 7 years ago
johnstevenson 379fb70ad9 Use random name for tmp ini and delete after use
Thanks to Patrick Rose for reporting this issue.
8 years ago
Jefferson Carpenter 8d57c3e743 Update SolverProblemsException.php 8 years ago
Jordi Boggiano 1818b95149 CS fixes 8 years ago
Jordi Boggiano e0ff9598c3 Tweak wording a bit, refs #3177 8 years ago
Radek Benkel 09417cae50 Composer gives .ini hints about missing extensions 8 years ago
Jordi Boggiano 6a64041055 CS fixes 9 years ago
Possum 2e99b9fdf5 Use https where possible 9 years ago
Robert Gruendler 5160dd2f5e Return different error code for SolverProblemsException
To make it easier for external tools to detect SolverProblems and react
to them accordingly,
this PR introduces a new exit code.
11 years ago
Tim Heil 6c1820d006 Add troubleshooting URL to error message 12 years ago
Jordi Boggiano 6573fd3f77 Add hint in solver exceptions as to what may be wrong 12 years ago
Nils Adermann cc7632489d Make problem report messages more readable
Added pretty strings to constraints
12 years ago
Nils Adermann 2c87fe5a22 Collect solver problems in Problem objects with human readable output. 12 years ago
Nils Adermann 52d876e11e Add SolverProblemsException and test basic solver failures 12 years ago