Nils Adermann
71c3c63b54
Remove unused variable assignment
4 years ago
Nils Adermann
9fb09049ff
Rename and document constants for partial update behavior
4 years ago
Nils Adermann
fc40fefa6f
Make sure nameConstraints is always set when loading a name
4 years ago
Nils Adermann
443553423b
Mark replaced packages for update when using --with-dependencies
...
This is necessary to allow the requiring of new packages which replace
packages currently locked without requiring explicitly listing them as
an argument, so simplifies the composer require command
4 years ago
Nils Adermann
392d0abd21
Rename test files and standardize on allow list rather than whitelist
4 years ago
Nils Adermann
01fe92905a
The update allow list is now generated while building the pool
...
This reduces code complexity while making partial updates more
predictable. This also allows composer require to successfully run a
partial update for a new package with transitive dependency updates.
4 years ago
Nils Adermann
da84763f03
Move partial update handling to pool builder
4 years ago
Jordi Boggiano
cf5513f28d
Fix syntax error
4 years ago
Nils Adermann
8a6382d78d
Remove unnecessary TODOs and skip EmptyConstraint like null
4 years ago
Nils Adermann
bbdbb3517b
PoolBuilder: Drop name constraints loop, already set earlier in same code
4 years ago
Nils Adermann
59bc957e76
Simplify loading of fixed and root require packages in pool builder
...
additionally mark all packages replaced by fixed packages as loaded as
there is no need to load those names at all, since the fixed package
will provide them
4 years ago
Jordi Boggiano
d58653627a
Optimize loading of deps from fixed packages
4 years ago
Jordi Boggiano
82e2a679bf
Add TODO note
4 years ago
Jordi Boggiano
d09daa8d5a
Merge pull request #8684 from naderman/dev-require-errors
...
Handle dev extraction exit codes instead of completing broken lock with errors
4 years ago
Nils Adermann
281d8930ff
For dev extraction skip pool building, we already have a working package set
...
Also reduce getProviders back to just providers, and add some todos
4 years ago
Jordi Boggiano
73a5cc63cc
Always use Removing for consistency between dry-run and actual install
4 years ago
Nils Adermann
06f460c557
Remove trailing spaces from output
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
589aa351a8
Change Uninstalling to Removing in lock operations
4 years ago
Jordi Boggiano
a7a975ec1c
Alias dev-master/trunk/default to 9999999-dev instead of normalizing the version to that, fixes #8323
4 years ago
Jordi Boggiano
9cab8c10cc
Merge branch 'master' into 2.0
4 years ago
arai
1f08138379
Delete variable
4 years ago
Jordi Boggiano
835a91532d
Add PRE_POOL_CREATE event, fixes #8348
4 years ago
Jordi Boggiano
9609729de7
Change update to upgrade for package update operations which are upgrades, refs #8594
4 years ago
Jordi Boggiano
be8dd528b8
Merge remote-tracking branch 'origin/master' into 2.0
4 years ago
Ion Bazan
a180f48921
Distinguish between updates and downgrades in dry-run
4 years ago
Nils Adermann
fdfdee03c1
Remove unused argument to pool->match
4 years ago
Nils Adermann
4f44b7b221
Remove unused policy function findUpdatePackages
4 years ago
Jordi Boggiano
189d5adab0
Fix reporting of replace conflicts to not mention provides
4 years ago
Jordi Boggiano
ec90c17e3b
Fix conflict order to be more accurate
4 years ago
Jordi Boggiano
c41df325d8
Remove RepositorySet from Solver and remove getPool from RepositorySet
4 years ago
Jordi Boggiano
1d4cdb60d0
Improve error reporting for conflicts/replaces of various kinds, fixes #7254
4 years ago
Jordi Boggiano
6c9d9e775c
Clean up and deduplicate the output of RULE_LEARNED
4 years ago
Jordi Boggiano
29efc473a1
Suggest which providers could be required to fulfill a virtual package requirement, fixes #2811
4 years ago
Jordi Boggiano
3fc7e10c5c
Improve error reporting of solver issues, refs #7779
...
Fixes #8525
Fixes #6513
4 years ago
Jordi Boggiano
8a41f1a5ca
Allow providers which are selected to be installed in place of existing packages which do not satisfy requirements, fixes #6753
4 years ago
Nils Adermann
8b877eb068
Remove superfluous check in Problem
5 years ago
Nils Adermann
0b4e8952f6
PHP5 disallows require as a function name, use requireName analog to fixPackage
5 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.
5 years ago
Jordi Boggiano
1d31190472
Keep track of unacceptable fixed packages for later to use in error reporting and make sure the pool state is consistent
5 years ago
Jordi Boggiano
c6a3f48eaf
Remove some more remove request handling
5 years ago
Jordi Boggiano
7cc8a4aed8
Avoid checking stability on platform packages too
5 years ago
Jordi Boggiano
6dc576738a
Avoid partial updates from applying changes to packages which are not locked with an acceptable stability
5 years ago
Jordi Boggiano
e162cc6f0a
Remove "remove" from request
5 years ago
Jordi Boggiano
304753ff69
Remove callback and pass stabilities all the way instead
...
This allows optimizing the loading of ~dev files, and cleans up a few things
5 years ago
Jordi Boggiano
8bb472a608
No need to alias platform packages before the repository set as the pool builder already does it
5 years ago
Jordi Boggiano
572ef1add1
Add comment for lockable
5 years ago
Jordi Boggiano
cc91e9164a
Stop unrolling the root aliases
5 years ago
Jordi Boggiano
73bc137c3c
Avoid nameConstraints from being collected for fixed packages
5 years ago
Jordi Boggiano
e50f78043a
Try to load packages from lock file only and avoid loading other versions for pinned packages
5 years ago