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
Jordi Boggiano
87757de6bc
Merge branch '2.0'
2020-04-07 09:39:00 +02:00
Jordi Boggiano
1c73f078f7
Remove repository field from getProviders result
2020-04-06 21:17:03 +02:00
Nils Adermann
8072ec9b7c
Number 2: Adjust forgotten error message in test to new language
2020-04-02 16:31:30 +02:00
Nils Adermann
ce0c2d44cd
Adjust forgotten error message in test to new language
2020-04-02 16:20:54 +02:00
Nils Adermann
4fab2c7759
Error wording use "thus cannot" instead of "can thus not"
2020-04-02 16:02:17 +02:00
Jordi Boggiano
51c48b1519
Merge pull request #8729 from naderman/t/partial-update-always-update-replace
...
Give a clearer error message explaining how to update a conflicting locked dependency
2020-04-02 15:54:45 +02:00
Nils Adermann
88e3f24b91
Fix description of test case
2020-04-02 15:42:42 +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
Jordi Boggiano
4e7ff690c6
Revert lock file as well when a require command operation failed to complete
2020-04-02 14:39:53 +02:00
Nils Adermann
1b55b466fb
require: Add with-dependencies and with-all-dependencies as alternative option names
2020-04-02 14:19:36 +02:00
Jordi Boggiano
379baa1560
Merge pull request #8717 from naderman/t/pool-builder-allow-list
...
Move processing of partial update argument list into the pool builder
2020-04-02 12:53: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
Nils Adermann
613450e58a
PoolBuilder: properly clean up alias packages when unfixing packages
...
Prevent aliases to be duplicated: no need to apply root aliases from
composer.json on packages currently locked, they should have their
aliases in the lock file, otherwise request an update.
2020-04-02 00:08:53 +02:00
Nils Adermann
2dfbf3692a
PoolBuilder: Remove null default for io
2020-04-01 16:42:12 +02:00
Nils Adermann
14000e7575
PoolBuilder: Ensure alias references get removed when unfixing a locked package
...
Use the last key + 1 for an index instead of count, since we unset elements somtimes
2020-04-01 16:40:45 +02:00
Nils Adermann
c270d3cfa6
PoolBuilder: make io non-nullable, NullIO can be used instead
2020-04-01 15:27:51 +02:00
Nils Adermann
71c3c63b54
Remove unused variable assignment
2020-03-30 16:37:31 +02:00
Nils Adermann
9fb09049ff
Rename and document constants for partial update behavior
2020-03-30 16:21:27 +02:00
Jordi Boggiano
a8c105da34
Merge pull request #8718 from localheinz/fix/early
...
Fix: Return early
2020-03-29 16:59:26 +02:00
Jordi Boggiano
22a52f5813
Apply suggestions from code review
...
Co-Authored-By: Andreas Möller <am@localheinz.com>
2020-03-29 16:59:07 +02:00
Andreas Möller
6e88683e35
Fix: Return early
2020-03-29 12:18:56 +02:00
Jordi Boggiano
800491175b
Avoid failing cleanup when a package gets uninstalled
2020-03-28 20:50:49 +01:00
Jordi Boggiano
6e45a53e76
Add support for relative paths in handling of install-path for the installed.json
2020-03-28 20:39:11 +01:00
Jordi Boggiano
1b1d59ee6c
Make FileDownloader always download file first in vendor-dir/composer/$tmp instead of next to install path to avoid issues with custom installers not being loaded when downloading on first install, and use cleanup method properly
2020-03-28 20:38:50 +01:00
Jordi Boggiano
918768fc54
Make sure we get a temporary dir which is unique
2020-03-28 20:37:09 +01:00
Jordi Boggiano
73251691a0
Avoid emptying the directory before extracting an archive into it, check that it is empty instead
2020-03-28 20:36:55 +01:00
Nils Adermann
fc40fefa6f
Make sure nameConstraints is always set when loading a name
2020-03-27 23:13:21 +01:00
Nils Adermann
ef42d323b1
Test: partial update adding a new dep on a locked package should mark it for update
2020-03-27 23:07:02 +01:00
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
2020-03-27 22:59:00 +01:00
Nils Adermann
17b50157e4
Test: composer update new/plg --with-dependencies updates locked transitive deps
2020-03-27 22:46:54 +01:00
Nils Adermann
392d0abd21
Rename test files and standardize on allow list rather than whitelist
2020-03-27 22:15:04 +01:00
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.
2020-03-27 21:41:49 +01:00
Jordi Boggiano
0663eb5ef7
Merge pull request #8709 from craue/patch-2
...
fix help URL for ClearCacheCommand
2020-03-26 15:27:31 +01:00
Nils Adermann
da84763f03
Move partial update handling to pool builder
2020-03-26 12:03:52 +01:00
Christian Raue
b644f63a93
fixed help URL for ClearCacheCommand
2020-03-24 22:47:11 +01:00
Jordi Boggiano
6679dde713
Merge pull request #8693 from enumag/patch-2
...
Add --dry-run to composer require
2020-03-24 14:01:47 +01:00
Jordi Boggiano
7e679656a4
Keep absolute path repos symlinks absolute, fixes #8700
2020-03-24 12:35:18 +01:00
Jordi Boggiano
dc608e2eac
Merge pull request #8702 from GrahamCampbell/patch-1
...
Fixed up tests
2020-03-24 09:16:24 +01:00
Jordi Boggiano
b11f1c3082
Merge pull request #8705 from carlosbuenosvinos/patch-2
...
[DOCUMENTATION] Improve folder structure figure in "Path" type
2020-03-20 21:55:10 +01:00
Jordi Boggiano
379383cd80
Merge pull request #8703 from carlosbuenosvinos/patch-1
...
Remove unnecessary space
2020-03-20 21:54:48 +01:00
Carlos Buenosvinos
dc774a9409
[DOCUMENTATION] Improve folder structure figure in "Path" type
2020-03-20 21:30:03 +01:00
Carlos Buenosvinos
8e5f80ed71
Remove unnecessary space
2020-03-20 11:50:12 +01:00
Graham Campbell
fd63588dce
Fixed up tests
2020-03-19 13:27:23 +00:00
Jordi Boggiano
3405781f15
Fix changelog
2020-03-13 20:40:26 +01:00
Jordi Boggiano
d6456f587f
Update changelog
2020-03-13 20:32:08 +01:00
Jordi Boggiano
86677ad172
Avoid scanning files twice when generating optimized autoloaders, fixes #8683
2020-03-13 18:28:27 +01:00