Jordi Boggiano
a66a939b76
Merge pull request #8937 from Seldaek/optim-rules
...
Optimize rule creation for alias packages
2020-06-03 14:17:13 +02:00
Jordi Boggiano
1055be7936
Fix unfixing of packages when a replacer gets unfixed before a replacee, refs #8882
2020-06-02 17:03:41 +02:00
Nils Adermann
86e79fcce3
Merge pull request #8938 from Seldaek/drop-dead-code
...
Remove some dead code from RuleSetGenerator
2020-06-02 15:49:24 +02:00
Jordi Boggiano
718021724c
Deduplicate more content in complex problem output
2020-06-02 15:46:12 +02:00
Jordi Boggiano
9bd255d8f1
Remove some dead code from RuleSetGenerator
2020-06-02 14:41:18 +02:00
Jordi Boggiano
5a4709c3d6
Optimize rule creation for alias packages
...
This mainly benefits projects running updates with minimum-stability: dev
2020-06-02 13:44:56 +02:00
Jordi Boggiano
8a7f3a9a09
Avoid rendering problem output for dev-master aliases which is useless
2020-06-02 13:21:06 +02:00
Jordi Boggiano
5e5f9f8142
Remove unused RULE_INTERNAL_ALLOW_UPDATE
2020-06-02 11:22:35 +02:00
Jordi Boggiano
c8efb50d39
Change the single requirement ignore from --ignore-platform-reqs=xx to --ignore-platform-req=xx to avoid BC issues
2020-06-02 11:22:09 +02:00
Jordi Boggiano
2ddf4346ef
Improve error reporting for RULE_PACKAGE_ALIAS
2020-06-02 10:35:04 +02:00
Jordi Boggiano
0ea9eafcaf
Add rules for aliased packages when an alias is added, fixes #8902
2020-06-02 10:07:20 +02:00
Jordi Boggiano
c0f5c13516
RuleSetGenerator instance does not need to be kept around anymore
2020-06-02 09:45:19 +02:00
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
2020-06-01 15:43:24 +02:00
Jordi Boggiano
c7fb15faf4
Update to MatchAllConstraint
2020-05-21 16:12:41 +02:00
Jordi Boggiano
af6444353f
Refactor hint generation and whitespace handling in SolverProblemsException
2020-05-19 12:17:57 +02:00
Jordi Boggiano
98e5f81a5f
Fix detection of fixed package problems to include more cases, fixes #8910
2020-05-19 12:17:25 +02:00
Nils Adermann
ff0717ad66
Merge pull request #8859 from Seldaek/deduplicate-problems
...
Deduplicate require/conflict rules which are the same but for different versions of the same package
2020-05-05 16:19:07 +02:00
Markus Staab
11930001fb
Added phpdoc types for PoolBuilder ( #8862 )
2020-05-04 13:34:05 +02:00
Jordi Boggiano
3a64acb53e
Make sure versions are ordered also in the satisfied by package lists
2020-05-01 15:54:01 +02:00
Jordi Boggiano
56a11b9c2c
Deduplicate require/conflict rules which are the same but for different versions of the same package, fixes #8851
2020-05-01 15:41:54 +02:00
Jordi Boggiano
81bf47ffa2
Use fully qualified calls in hot classes
2020-04-30 21:28:05 +02:00
Nils Adermann
56edd53046
Remove unnecessary implementation of interface method in abstract class
2020-04-28 11:57:03 +02:00
Nils Adermann
994a5b41c2
Provide default impl for abstract method in interface for PHP < 5.3.9 ( #8837 )
2020-04-26 09:15:15 +02:00
Jordi Boggiano
1d4185b844
Recommend ocramius/package-versions fork if needed to solve dependencies
2020-04-23 13:51:57 +02:00
Jordi Boggiano
34801239f1
Tweak problem wording slightly
2020-04-23 13:17:34 +02:00
Jordi Boggiano
0ab48a1773
Add composer-runtime-api platform package
2020-04-22 12:10:09 +02:00
Jordi Boggiano
af18c2bd7d
Update semver, fix poolbuilder usage and optimize creation of filtering nameConstraints
2020-04-21 14:50:11 +02:00
Jordi Boggiano
ba9d4793bc
Fix transaction order
2020-04-20 22:24:00 +02:00
Jordi Boggiano
3f338ee8d9
Make sure versions are sorted before they get trimmed in error output
2020-04-19 15:51:30 +02:00
Jordi Boggiano
80a7c40c76
Shorten long lists of similar versions in problem output, fixes #8743
2020-04-15 16:47:44 +02:00
Jordi Boggiano
b6bad4eef6
Add options to configure repository priorities
2020-04-09 13:39:06 +02:00
Jordi Boggiano
8930f1b824
Add color to lock operations and dry run output
2020-04-08 15:18:28 +02:00
Jordi Boggiano
2e64e8dc2e
Avoid generating duplicate aliases in lock file if several aliased packages are installed
2020-04-08 14:18:38 +02:00
Jordi Boggiano
64f907f93f
Fix handling of aliases to use consistent format everywhere
2020-04-08 12:31:02 +02:00
Jordi Boggiano
a695f686c3
Add some docblocks and make sure RepositorySet/PoolBuilder accept regular rootAliases and not pre-normalized ones
2020-04-08 11:46:06 +02:00
Markus Staab
c30925e68d
extracted `VersionParser::DEV_MASTER_ALIAS` ( #8742 )
2020-04-07 15:49:07 +02:00
Jordi Boggiano
b166ef4b58
Fix more phpstan errors
2020-04-07 14:57:37 +02:00
Jordi Boggiano
80505e745e
Fix phpstan issues
2020-04-07 14:40:51 +02:00
Adam Žurek
25cd2382cb
Raise phpstan level to 1 ( #8027 )
2020-04-07 14:13:50 +02:00
Jordi Boggiano
3e19e3b0f1
Show alias of version in package lists in problems
2020-04-07 13:06:05 +02:00
Jordi Boggiano
e09dd9c10d
Detect packages which are only available in lock file and warn appropriately
2020-04-07 13:06:04 +02:00
Jordi Boggiano
8945936dbd
Deduplicate solver problems which list problems for dev-master AND 9999999-dev
2020-04-07 13:06:03 +02:00
Nils Adermann
415b36a1a1
Remove match types from Pool as these are no longer used
2020-04-07 11:11:18 +02:00
Nils Adermann
80a5fdf398
Remove obsolete rules and their generation
...
The only automatic conflict we have results from packages using the same name
either by literally having the same name and being different versions or they
replace the same name, so
- removed all types of obsolete rules
- simplified rule generation significantly
- got rid of provide filtering in the pool
- fixed some language in error handling
2020-04-07 11:11:18 +02:00
Nils Adermann
4e3d989978
A package providing a name should not conflict with a package replacing it
...
Simplified whatProvides, mustMatchName is unused, removed unused
function from policy
2020-04-07 11:08:47 +02:00
Jordi Boggiano
2b86df4003
Add a hint about being on v2 when things go wrong
2020-04-07 10:05:53 +02:00
Nils Adermann
4fab2c7759
Error wording use "thus cannot" instead of "can thus not"
2020-04-02 16:02:17 +02:00
Nils Adermann
9858718ef6
Give a clearer error message explaining how to update a conflicting locked dependency
2020-04-02 15:32:02 +02:00
Nils Adermann
f7b5cbd1fc
Lock file should not contain new aliases for packages which were not updated
2020-04-02 01:12:34 +02:00
Nils Adermann
5ad93959cf
PoolBuilder: On partial update of a new dep with mutual replace, unfix replacer
...
Test also verifies provider does not get uninstalled in partial update
for another package name
2020-04-02 00:54:49 +02:00