Jordi Boggiano
0d236858ec
Merge branch '1.10'
2020-10-24 09:59:46 +02:00
Jordi Boggiano
25496c199d
Update link to composer 2 release notes
2020-10-24 09:43:02 +02:00
Jordi Boggiano
28c7e38411
Merge remote-tracking branch 'stof/fix_why_not' into 1.10
2020-10-24 09:39:09 +02:00
johnstevenson
d47261eb93
Refactor proxy handling for Composer2
2020-10-23 21:38:29 +01:00
Nils Adermann
e868996bdd
Validate: Warn about providing or replacing packages you require
2020-10-23 22:02:13 +02:00
Jordi Boggiano
8564dd8dac
Allow Url::sanitize to escape URLs without scheme
2020-10-23 13:27:46 +02:00
johnstevenson
8feb83b22b
Remove duplicate StreamContextFactory ssl options
...
Added in Dec 2014 (commit 8dad846
), superseded in Jan 2016 (pr #4759 )
2020-10-23 13:25:17 +02:00
Jordi Boggiano
49a28f606c
Merge branch '1.10'
2020-10-23 10:38:03 +02:00
Christophe Coevoet
3dd7e829b9
Fix support of provided packages in the why-not command
...
The version provided by such a rule is defined by the constraint of the
rule, not by the package version.
2020-10-22 19:54:03 +02:00
Nils Adermann
dacc21e54f
Merge pull request #9158 from infabo/patch-1
...
Fix symlink check
2020-10-22 16:04:27 +02:00
terry.kern
0466add822
Also use channel string for update message
...
https://github.com/composer/composer/pull/9305#issuecomment-714381153
2020-10-22 14:41:16 +02:00
TerryKern
e68b52697b
Improve readability of version info message
...
Instead of:
> You are already using composer version 1.10.15 (1 channel).
it shows:
> You are already using composer version 1.10.15 (1.x channel).
2020-10-22 11:54:59 +02:00
Nils Adermann
6409ed0fc2
Validate: Warn about providing or replacing packages you require
2020-10-22 11:28:19 +02:00
Jordi Boggiano
b74afd772b
Merge pull request #9309 from naderman/fix-solver-9290
...
MultiConflictRule conflict analysis handling on level 1 decisions
2020-10-21 18:40:03 +02:00
Nils Adermann
9338401be7
CS: Typehint array, remove unnecessary docblock, call spl_object_hash once
2020-10-21 18:11:24 +02:00
Nils Adermann
7b4cb9c370
Solver: Prevent infinite recursion in analyzeUnsolvableRule
...
In complex scenarios reasons for learned rules can themselves be learned
rules caused by other learned rules which had the some of the same
reasons. In this situation iterating over all problem rules requires
keeping track of which rules have previously been analyzed to avoid and
endless loop.
Side effect is that the sorting of problems including learned rules
changes slightly.
2020-10-21 17:11:13 +02:00
Nils Adermann
9641ad6025
SolverProblemException: Hide learnt rules on output
...
Results in too much error output which is not helpful. Very repetitive
and hard to understand. In issue 8903 even leads to endless recursion
bug.
2020-10-21 14:08:12 +02:00
Nils Adermann
7f41698157
Solver: on analyze, when reaching last decision > l1 skip other multi rule literals
2020-10-21 13:36:31 +02:00
Jordi Boggiano
14ec957e96
Fix composer show -a usage, fixes #9304
2020-10-20 17:34:07 +02:00
Jordi Boggiano
99a5469b5e
More hints
2020-10-18 13:13:44 +02:00
Chauncey McAskill
1bb87babe6
Fix availability of $urls in FileDownloader
...
Fixed:
- Ensure manipulations to the first element of $urls in the $download callback are available in $accept and $reject
2020-10-15 16:11:16 -04:00
Jordi Boggiano
c46b75de81
Allow any non-numeric version to be used for flex as we can not establish if they are compatible
2020-10-15 16:16:00 +02:00
Jordi Boggiano
59acf9d4aa
Remove dev hint for 2.0, fixes #8738
2020-10-15 14:40:27 +02:00
Ingo Fabbri
750172dc4c
Fix symlink check
...
Given you have a symlink in one of your path repositories and mirroring-strategy enabled.
```bash
lrwxrwxrwx 1 inf inf 8 27. Aug 17:41 Create.html -> New.html
-rw-r--r-- 1 inf inf 750 27. Aug 17:24 Edit.html
-rw-r--r-- 1 inf inf 0 27. Aug 17:24 List.html
-rw-r--r-- 1 inf inf 5064 27. Aug 17:24 New.html
-rw-r--r-- 1 inf inf 716 27. Aug 17:24 Show.html
```
`$file->getLinkTarget()` just returns a relative path in this example. It does not return an absolute normalized path.
`$sources` is always a normalized path.
`strpos` can never be `0`.
Use `$file->getRealPath()` to fix the strpos-check.
2020-10-15 14:17:53 +02:00
Jordi Boggiano
2ca2ec3d0a
Allow loading flex main branch
2020-10-15 09:53:12 +02:00
Jordi Boggiano
743d551399
Fix using show command to show platform packages, and allow using it to show replacers too by using the replaced name, fixes #7628
2020-10-14 17:58:35 +02:00
Jordi Boggiano
8d0596163c
Rename abstract class back to the previously present SolverOperation, mark it internal, reintroduce some duplication
2020-10-14 17:53:57 +02:00
Bezpiatov
140de5480d
Fixed variable usage
2020-10-14 17:58:39 +03:00
Bezpiatov
9a5121ed27
Refactor Operation classes to use constants instead of strings for comparison
2020-10-14 17:56:42 +03:00
Jordi Boggiano
e7d99c37b3
Fix show --locked to avoid listing all the things
2020-10-14 15:41:53 +02:00
Jordi Boggiano
da1357c663
Avoid showing alias versions in show command, show the original version
2020-10-14 15:41:36 +02:00
Jordi Boggiano
9492dc7f7c
Make sure symfony/flex does not get loaded in a buggy version to avoid bogus issue reports
2020-10-14 13:48:55 +02:00
Jordi Boggiano
c5d8a13bc4
Bump curl timeout to 300
2020-10-14 13:30:12 +02:00
Jordi Boggiano
34dd9e19e1
Add curl/zip ext info to diagnose command
2020-10-14 13:29:41 +02:00
Nils Adermann
8a2bae82ab
Improve docblocks on fixed/locked/fixedLocked packages in request
...
Also fixes two small code review issues
2020-10-14 11:46:13 +02:00
Nils Adermann
fdde9e5933
On composer install we fix locked packages, but consider them locked for error reporting
2020-10-14 11:46:13 +02:00
Nils Adermann
74fb313c39
Separate locked packages from fixed packages in request
...
Locked packages are basically like removable fixed packages, so we still
only load one version, but we do not require their installation unless
something the user needs requires their use. So they automatically get
removed if they are no longer needed on any update.
2020-10-14 11:46:13 +02:00
Nils Adermann
73e24ea9fb
Partial updates should remove all unused dependencies
...
Instead of marking locked packages as fixed, we change the pool builder
to load only the locked version and treat it like a fixed package, but
removing the actual request fix, makes the solver treat it as a regular
optional dependency. As a consequence locked packages may be removed on
a partial update of another package, but they cannot be updated.
2020-10-14 11:46:13 +02:00
Nils Adermann
85eb007f4f
Transaction: Define a total order on packages to keep behavior on PHP8
...
So far the ordering of alias packages with the same name was undefined
so the actual order was determined by implementation of the sorting
algorithm in PHP. As of PHP8 sort is stable by default which changes the
outcome in some of our test cases.
With the fully defined total order the order can longer change depending
on sorting algorithm used and remains the same across PHP versions.
2020-10-14 11:13:51 +02:00
Jordi Boggiano
9ca7457698
Check whether remove command successfully removed the target packages, fixes #6998
2020-10-13 16:18:28 +02:00
Jordi Boggiano
7ea6d5d2e7
Merge branch '1.10'
2020-10-13 16:00:04 +02:00
Jordi Boggiano
aac1a25ee3
Merge pull request #9278 from Seldaek/plugin-helpers
...
Plugin helpers for v2
2020-10-13 15:49:23 +02:00
Nicolas Grekas
4feed8b85c
Fix parsing "branch-version"
2020-10-13 15:43:12 +02:00
Jordi Boggiano
bafdf9f705
Merge branch '1.10'
2020-10-13 14:47:23 +02:00
Jordi Boggiano
d2d606ced2
Merge pull request #9273 from nicolas-grekas/dev-version
...
Add support for "extra.branch-version"
2020-10-13 14:02:41 +02:00
Nicolas Grekas
893fbfcb89
Add support for "extra.branch-version"
2020-10-13 13:56:18 +02:00
Jordi Boggiano
8ad33298ff
Fix regression, refs #9204
2020-10-13 12:50:58 +02:00
Jordi Boggiano
badd1f2146
Remove silly default values of false on Installer class, refs #9204
2020-10-13 12:33:43 +02:00
Jordi Boggiano
24abd233ec
Merge branch 'master' into code-improvements
2020-10-13 12:23:13 +02:00
Jordi Boggiano
3c25d180e6
Add detailed notes about events in upgrade guide, add COMPOSER_DEBUG_EVENTS env var for debugging events
2020-10-13 12:08:42 +02:00
Jordi Boggiano
f87b1642bc
Expand docs
2020-10-13 11:09:13 +02:00
Jordi Boggiano
431dc0d526
Add sync helper to give plugins utilities to work with async stuff more easily when one does not care about async
2020-10-13 11:04:16 +02:00
Jordi Boggiano
7917a7e757
Allow fetching the http downloader and process executor from the loop
2020-10-13 10:28:36 +02:00
Jordi Boggiano
0775e261c5
Merge remote-tracking branch 'lstrojny/apcu-prefix'
2020-10-13 10:19:30 +02:00
Jordi Boggiano
a1b781a302
Merge pull request #9220 from ffraenz/pr
...
Composer 2: Adapt file download cache keys to changed processed URLs
2020-10-12 16:55:35 +02:00
Jordi Boggiano
adeabdbd56
Merge branch '1.10'
2020-10-12 15:22:30 +02:00
Jordi Boggiano
bc1cb1636d
Remove dead code, fixes #9277
2020-10-12 15:22:21 +02:00
Jordi Boggiano
09ef026d43
Remove OperationInterface::getReason, closes #9230 , closes #9263
2020-10-12 12:31:54 +02:00
Jordi Boggiano
d204eb4814
Merge branch '1.10'
2020-10-12 10:54:43 +02:00
Jordi Boggiano
6bf136489f
Ignore the COMPOSER env var when executing global scope commands, fixes #9259
2020-10-12 10:53:35 +02:00
Jordi Boggiano
9c4b00be67
Add -w/-W to docs, refs #9257
2020-10-12 10:36:12 +02:00
Jordi Boggiano
de3de0697e
Merge pull request #9257 from flavioheleno/improv/short-with-deps
...
With-dependencies alias
2020-10-12 10:29:07 +02:00
Jordi Boggiano
6f77c5f5ea
Avoid adding aliased locked packages twice in the LockArrayRepository, fixes #9240
2020-10-12 10:17:06 +02:00
Jordi Boggiano
9528ce7057
Fix invalid usage of Link class, fixes #9252
2020-10-12 09:22:23 +02:00
Jordi Boggiano
f966de94a9
Merge branch '1.10'
2020-10-12 08:33:39 +02:00
Jordi Boggiano
159bb84fa6
Allow running the config command to disable tls even if openssl is not present, fixes #9198
2020-10-12 08:16:36 +02:00
Jordi Boggiano
28fe3baf9c
Disable secure-http automatically when disable-tls is enabled, fixes #9235
2020-10-12 07:57:14 +02:00
Jordi Boggiano
03b8c3db3f
Merge branch '1.10'
2020-10-08 14:38:41 +02:00
Jordi Boggiano
791bbc80a4
Backport some fixes from 2.0, and fix sorting to sort remote branches after local ones, refs #9270
2020-10-08 14:26:04 +02:00
Jordi Boggiano
6698e0bafa
Merge remote-tracking branch 'naderman/version-guess-remotes' into 1.10
2020-10-08 14:01:25 +02:00
Nils Adermann
b3c465d55a
VersionGuesser: local branches still need to be considered
2020-10-07 15:10:20 +02:00
Nils Adermann
ad643d9957
VersionGuesser: Analyze remote origin and upstream branches too
2020-10-07 14:21:22 +02:00
Fränz Friederes
369c2ff552
Implement PR code style feedback
2020-10-05 20:52:27 +02:00
Grégoire Pineau
bfb4abfb56
Fixed description of StatusCommand: It do list all changes in vendor, not only for "source" ones
...
I tested it, and even with "dist" packages, the status command is able to find modified vendor
(And that's amazing, thanks)
2020-10-02 10:11:47 +02:00
Flavio Heleno
9d544d98b3
Added short flags for 'with-dependencies' and 'with-all-dependencies'
2020-10-01 18:35:35 -03:00
Graham Campbell
0eb31bd027
Fixed incorrect private annotation
2020-10-01 20:24:19 +01:00
Simon Berger
2223b93efd
Several small code improvements
2020-09-26 00:55:19 +02:00
Simon Berger
80d71ccb3f
Merged isset, unset and str_replace calls
2020-09-26 00:55:19 +02:00
Jordi Boggiano
d6b39b4c55
Fix syntax error & improve handling
2020-09-24 11:35:38 +02:00
Christophe Coevoet
bcd8a73e8c
Fix support for running diagnose without openssl
...
The diagnose command already warns when openssl is not available. But the command was failing later when displaying the Openssl version.
2020-09-22 18:49:53 +02:00
Michael Telgmann
a4509d28e7
Introduce constants for Composer\Package\Link types
2020-09-21 14:22:06 +02:00
Michael Telgmann
4f4c299015
Add pretty constraint to links in PlatformRepository
...
fixes #9210
2020-09-21 14:18:34 +02:00
Jordi Boggiano
2a36c3a70a
Minor tweaks
2020-09-21 13:26:53 +02:00
Simon Berger
4e8a36556c
Removed deprecated code from 1.x
2020-09-20 17:59:45 +02:00
Simon Berger
974e7ba296
Removed unneccesary elseifs
2020-09-20 02:16:28 +02:00
Simon Berger
80a75e9959
Minor code improvements
2020-09-20 02:16:28 +02:00
Simon Berger
7053b6f761
Fixed function case declaration <> call
2020-09-20 02:16:28 +02:00
Simon Berger
33d7a64df9
Removed unused private functions
2020-09-20 02:16:28 +02:00
Simon Berger
a6475a7118
Removed unused variables, properties and parameters of private functions
2020-09-20 02:16:28 +02:00
Simon Berger
002fd39bc6
Removed passing of parameters with default value
2020-09-20 02:16:28 +02:00
Simon Berger
cda6e8bea6
Removed unnecessary property initialization or declaration
2020-09-20 02:16:28 +02:00
Simon Berger
6b3b51e299
Fixed $this usage on static functions
2020-09-20 02:16:28 +02:00
Fränz Friederes
7a49cda9f6
Fix PHPDoc types on new PreFileDownloadEvent property
2020-09-16 20:13:20 +02:00
Lars Strojny
696f27ca83
Enable APCu if prefix is set
2020-09-16 13:44:51 +02:00
Fränz Friederes
a1a3e29f52
Fix using inside anonymous function
2020-09-16 11:39:34 +02:00
Lars Strojny
6899060f6e
Remove superfluous use
2020-09-16 10:54:52 +02:00
Fränz Friederes
57e1ce6cdb
Change the file download cache key with the processed URL, implement custom cache key
2020-09-16 10:54:14 +02:00
Lars Strojny
7db8b33a9e
Restore
2020-09-16 10:53:55 +02:00
Lars Strojny
0b6abf3b96
APCu prefix as a separate option
2020-09-16 10:49:00 +02:00
Lars Strojny
de0085767c
Sanitize prefix
2020-09-15 12:39:22 +02:00
Lars Strojny
dafd225a35
Allow to pass a string for apcu-autoloader to set the APCu prefix
2020-09-14 22:36:53 +02:00
Jordi Boggiano
99300f6dc0
Merge pull request #9206 from staabm/patch-3
...
Improve error message further
2020-09-14 21:25:21 +02:00
Markus Staab
cf9786f112
Improve error message further
2020-09-12 11:13:37 +02:00
Simon Berger
74e02193a8
Do not hard fail on lazy repository when network is disabled and no package cache exists
2020-09-11 21:35:20 +02:00
Jordi Boggiano
6cf4ba051c
Update messaging about plugin errors
2020-09-11 13:43:32 +02:00
Jordi Boggiano
bb96b04f4a
Remove dead code
2020-09-10 16:05:31 +02:00
Jordi Boggiano
2a82371adf
Rename available-package-regexes to available-package-patterns and switch negated function around, refs #9197
2020-09-10 14:58:05 +02:00
Mike Baynton
66a767c065
specify covered names with regexes in 2.x repos
...
This supplements the available-packages list so that repositories may
rule themselves out of a given name (and thus not be probed with lazy
load requests) by regex, as well as by exact name match.
The use case is sizeable and varying supplemental Composer repositories
such as packages.drupal.org, which otherwise must either maintain a list
of over 10k package names in their root packages.json or accept lots of
lazy-load requests for unrelated packages that will 404.
2020-09-09 21:43:46 -05:00
Jordi Boggiano
0408207e35
Merge branch '1.10'
2020-09-09 11:49:04 +02:00
Jordi Boggiano
4a02768591
Fail hard if an invalid root alias is detected
2020-09-09 11:44:05 +02:00
Jordi Boggiano
6f91e038ea
Merge branch '1.10'
2020-09-08 17:04:03 +02:00
Jordi Boggiano
c6d0309d48
Merge pull request #9188 from simonberger/fix-php53-closure-self-usage
...
Fix self usage in closures results in fatal error on PHP 5.3
2020-09-08 12:12:59 +02:00
Simon Berger
7ef87626ac
Fixed self usage in closure fails on PHP 5.3
2020-09-08 12:01:51 +02:00
Jordi Boggiano
57b4016f8a
Show default value instead of optional, refs #9181
2020-09-08 12:01:10 +02:00
Jordi Boggiano
5555b04cea
Merge pull request #9181 from shrink/feature/create-project-package-prompt
...
✨ Ask for target directory when using `create-project`
2020-09-08 11:56:22 +02:00
Jordi Boggiano
7859fe72e8
Fix line wrapping
2020-09-08 11:15:24 +02:00
Jordi Boggiano
9dc125f79c
Fix cleanup of useless feature_versions
2020-09-08 11:14:13 +02:00
Simon Berger
bae227ec2d
Changed all substr calls used to compare fragments of text to strpos
...
Some additional code cleanups in those classes
Reverted change causing issues
2020-09-07 21:08:34 +02:00
Jordi Boggiano
8694077564
Merge pull request #9177 from simonberger/reduce-requests
...
Re-Fetch cached packages only once in a run
2020-09-07 17:01:46 +02:00
Jordi Boggiano
cb3c71a18a
Always assume the cache file is fresh when loading a package again which was already loaded, even if it lacks a last-modified header.
2020-09-07 17:00:02 +02:00
Jordi Boggiano
943c7a6433
Merge pull request #9165 from bpesch/master
...
Performance improvements
2020-09-07 16:25:14 +02:00
Jordi Boggiano
b8ebc7be5f
Revert a few changes to ConfigCommand
2020-09-07 16:24:15 +02:00
Jordi Boggiano
b1cbc08ec0
Allow false as well as repository value, refs #9165
2020-09-07 16:22:28 +02:00
Jordi Boggiano
cc1874e21b
Merge pull request #9179 from simonberger/fix-duplicated-code
...
Moved duplicated table render code to a new method in BaseCommand
2020-09-07 15:52:17 +02:00
Jordi Boggiano
45653c55d8
Handle authentication for api domains of GitHub/Bitbucket, fixes #9173
2020-09-07 15:29:41 +02:00
Jordi Boggiano
e6b45e853a
Fix status command handling of symlinks, and especially broken ones, fixes #9169
2020-09-07 13:54:14 +02:00
Jordi Boggiano
199696d120
Fix undefined method call
2020-09-07 11:42:24 +02:00
Jordi Boggiano
070530534d
Merge pull request #9176 from glaubinix/t/remote-file-system-response-decode
...
Composer2 RemoteFileSystem: response decode for TransportException
2020-09-04 13:13:51 +02:00
Stephan
32a0563443
RemoteFileSystem: catch decode errors for content length mismatch
2020-09-04 11:33:36 +01:00
Jordi Boggiano
fc462ab978
Merge branch '1.10'
2020-09-04 12:18:24 +02:00
Jordi Boggiano
b159e4da7e
Merge pull request #9172 from Toflar/platform-repo-cleanup
...
Consistently reuse new PlatformRepository::isPlatformPackage()
2020-09-04 12:16:55 +02:00
Alexander M. Turek
fc961dce70
Call call_user_func_array() with a numeric arguments array.
2020-09-03 23:26:09 +02:00
Samuel Ryan
a66db48673
✨ Ask for target directory when using `create-project`
2020-09-03 17:40:09 +01:00
Simon Berger
687f886d56
Moved duplicated table render code to a new method in BaseCommand
2020-09-03 15:56:04 +02:00
Simon Berger
9516d0dc98
Re-Fetch cached packages only once in a run
2020-09-03 08:18:07 +02:00
Stephan
3b2d91975e
RemoteFileSystem: response decode for TransportException
2020-09-02 16:55:37 +01:00
Yanick Witschi
bd6f62c535
Consistently reuse the new PlatformRepository::isPlatformPackage() method
2020-09-01 17:19:19 +02:00
Nils Adermann
4ac9f44571
Clear up PoolBuilder comment after code move
2020-09-01 16:57:24 +02:00
Stephan
773635e355
ComposerRepository: avoid notice if includes do not provide a sha1
2020-09-01 12:21:36 +01:00
Nils Adermann
7b990f3767
PoolBuilder: Move merging of constaints to be loaded into relevant section
2020-09-01 12:28:22 +02:00
Nils Adermann
b2670945bd
PoolBuilder: clear up comment, matching and identity are different for constraints
2020-09-01 12:23:51 +02:00
username
fc87caf639
Provide correct parameter data type
2020-08-29 21:21:15 +02:00
username
113adbcd87
Sort conditions by cost
2020-08-29 21:20:30 +02:00
username
98462292c0
Sort conditions by cost
2020-08-29 21:19:52 +02:00
username
abedc0dc42
Sort conditions by cost
2020-08-29 21:19:20 +02:00
username
17ae93bc9c
Remove unnecessary method call
2020-08-29 21:18:31 +02:00
username
18009af023
Inline variable
2020-08-29 21:16:58 +02:00
username
e719be501e
Remove unnecessary method call
2020-08-29 21:15:52 +02:00
username
459e2473c8
Remove unused variable
2020-08-29 21:15:15 +02:00
username
3f09ae0737
Simplify duplicate case
2020-08-29 21:13:54 +02:00