Jordi Boggiano
a20ee1a448
Avoid matching .git suffix if present in private github URLs, fixes #9590
2021-01-12 16:31:48 +01:00
Jordi Boggiano
4a740e3e61
Add warnings when running updates without curl enabled, fixes #9558
2021-01-12 14:56:17 +01:00
Jordi Boggiano
57117384df
Merge pull request #9601 from Seldaek/json-fix
...
Fix JSON manipulation issue with large files and jit enabled
2021-01-12 14:45:13 +01:00
Jordi Boggiano
492f8cb350
Add more possessive quantifiers
2021-01-12 14:05:55 +01:00
Jordi Boggiano
d94e638461
Fix tests and edge case
2021-01-12 14:00:02 +01:00
Jordi Boggiano
94076c0bb9
Make sure if plugins depend on the root package that the root package is also autoloaded correctly, refs #9530
2021-01-12 13:47:45 +01:00
Jordi Boggiano
598beb240a
CS fixes
2021-01-12 13:04:32 +01:00
Jordi Boggiano
92b3725765
Workaround issues when the additional fixed repo is in used and is an installed repo, closes #9574
2021-01-12 11:53:41 +01:00
Jordi Boggiano
b021647e6f
Fix JSON manipulation issue with large files and jit enabled, fixes #9595
2021-01-12 11:02:43 +01:00
Wissem Riahi
f7bf635440
Add response info for 3xx/4xx/5xx http responses
2021-01-08 11:28:35 +01:00
Jordi Boggiano
296bab1292
Merge pull request #9592 from wissem/add-response-duration-http-requests
...
Add response info for HTTP requests in CurlDownloader
2021-01-07 23:28:44 +01:00
Jordi Boggiano
7f85367113
Make sure an array is always returned
2021-01-07 23:26:29 +01:00
Wissem Riahi
bdecb4711d
Add all curl_getinfo into the response and exception for curl requests
2021-01-07 12:01:19 +01:00
Wissem Riahi
a5d79db0a7
Make sure total_time_us from curl progress is set
2021-01-06 18:01:06 +01:00
Wissem Riahi
370e082b4a
Add saving time duration for curl HTTP requests
2021-01-06 16:05:00 +01:00
Ilya Urvachev
cee8e3e3b7
fix `dirname` usage
2021-01-06 15:21:45 +03:00
Ilya Urvachev
ab6e0fa961
use `.tmp` extension for temporary files
...
also updated `catch` block to use temporary filename
2021-01-06 02:17:34 +03:00
Ilya Urvachev
e829ff80bc
feat(Cache): make cache writes more atomic
...
Fixes #9568
2020-12-29 23:57:29 +03:00
Jordi Boggiano
bad4e4edbc
Fix some more wording
2020-12-27 20:51:22 +01:00
Ali Shaikh
6f5c4fcf3e
Improving Composer self-update (version upto date) info message
2020-12-27 12:20:55 +05:00
Jordi Boggiano
bc31351b5b
Only show getting started warning for non-global composer load
2020-12-15 20:39:50 +01:00
Jordi Boggiano
eb9616a82b
Debug info improvements
2020-12-15 14:55:44 +01:00
Jordi Boggiano
378a5b72b9
More open_basedir fixes, refs #9541
2020-12-04 10:50:19 +01:00
Jordi Boggiano
f25271ee22
Add missing file to v1 phar
2020-12-04 09:05:58 +01:00
Jordi Boggiano
3eb419d2d0
Fix is_dir check to not fail on open_basedir restrictions, fixes #9541
2020-12-03 21:35:23 +01:00
Jordi Boggiano
29f4c0b92a
Merge branch '1.10'
2020-12-03 17:17:25 +01:00
Jordi Boggiano
7f3a56f39b
Merge pull request #9360 from naderman/pool-builder-unlock-consider-all-constraints
...
PoolBuilder: Ensure versions matching locked constraints get loaded
2020-12-03 16:59:39 +01:00
Fabien Villepinte
4e8ca92b6f
Fix error with binaries in PHP8
2020-12-02 13:15:16 +00:00
Michael Voříšek
b4cb2f7321
test before chdir
2020-11-30 01:34:16 +01:00
Michael Voříšek
e712130062
Fix for php8 when symlink function is disabled
2020-11-30 00:59:42 +01:00
Jordi Boggiano
1fb6b03e03
Fix a few edge cases in unpushed change handling
2020-11-26 16:03:38 +01:00
Jordi Boggiano
f86b3ad0fe
Make sure all remotes are checked for unpushed changes, fixes #9486
2020-11-26 15:42:39 +01:00
Jordi Boggiano
00aaffb8f9
Make cache writes atomic
2020-11-26 14:28:58 +01:00
Jordi Boggiano
62bd81bf7a
Make sure the default branch alias is never used as a constraint by the VersionSelector
2020-11-26 14:24:22 +01:00
Jordi Boggiano
d00edab884
Merge pull request #9477 from naderman/fix-alias-conflicts
...
Explicit conflicts should conflict with aliases of packages too
2020-11-26 13:59:57 +01:00
Jordi Boggiano
be3a520331
Fix feedback
2020-11-26 13:07:33 +01:00
Nils Adermann
7197278fe9
Always install aliases together with their original package
...
Restores some Composer 1.x behavior like unbound constraints conflicting
with default branches unless they are branch aliased.
Simplifies conflicts with aliases because packages cannot be installed
without their aliases, so we do not need to know which aliases are
uninstalled in lock file or installed.json.
2020-11-26 12:10:07 +01:00
Jordi Boggiano
e857a8216c
Make sure mirror update fails if no lock file is present
2020-11-26 11:28:17 +01:00
Jordi Boggiano
2d025dce05
Make sure mirror updates do not fail if there are dev requirements and new requires are present, fixes #9514
2020-11-26 11:27:44 +01:00
Jordi Boggiano
08f0af4623
Add docblocks to HttpDownloader, refs #9209
2020-11-25 15:44:59 +01:00
Jordi Boggiano
e8a3a33023
Also output headers
2020-11-25 12:40:05 +01:00
Jordi Boggiano
8030fbc4ae
Add debug info for http status code 0
2020-11-25 12:37:28 +01:00
Jordi Boggiano
b7d770659b
CS fixes
2020-11-22 14:52:39 +01:00
Jordi Boggiano
c7da7e55c9
Fix various issues with regard to schema conformity when modifying json, fixes #9515
2020-11-22 14:26:18 +01:00
Andrés De la Cruz
480a6439fd
Fix phpstan phpdocs issues ( #9478 )
2020-11-20 09:28:09 +01:00
Jordi Boggiano
9e279740cd
Go go phpstan 🤞
2020-11-19 11:28:12 +01:00
Jordi Boggiano
742c2a9e93
Avoid swallowing exceptions
2020-11-19 10:32:09 +01:00
Jordi Boggiano
35b403b266
Make sure a version not found issue is reported as such for clarity, fixes #9500
2020-11-19 09:39:03 +01:00
Jordi Boggiano
351b14e32b
Installed repo contains only the required versions but the aliases are not always present at the right time so avoid looking up plugin dependencies using a constraint as it may not find dev-* packages even though they are there, fixes #9499
2020-11-18 22:33:34 +01:00
Jordi Boggiano
f567fd69eb
List both unzip and zip ext presence in diagnose
2020-11-18 22:33:33 +01:00
Jordi Boggiano
5248d6c9f1
Improve curl error reporting some more
2020-11-18 21:36:33 +01:00
Jordi Boggiano
852990d06c
Make sure git gc runs if needed when syncing git mirrors in cache dir to avoid them getting very stale
2020-11-18 21:36:14 +01:00
Jordi Boggiano
6937fedaa9
Update user-agent to use cURL instead of curl, fixes #9492
2020-11-18 21:26:32 +01:00
Jordi Boggiano
4ac6f57d18
Add debug output when SIGINT is received
2020-11-16 22:42:21 +01:00
Jordi Boggiano
8ed2aa8d6d
Make sure curl errors without message are shown as code, and add URL linked to the failure
2020-11-16 22:41:19 +01:00
Nils Adermann
d19b858e20
Improve decisions debug output
2020-11-13 16:58:43 +01:00
Nils Adermann
780e6fc027
Avoid creating unnecessary conflict rules for provide/replace of aliases
2020-11-13 16:26:36 +01:00
Nils Adermann
3764b3007d
Explicit conflict rule generation needs to use pool->whatProvides
...
If relying on packages added by name in the generator aliases will be
skipped.
2020-11-13 16:01:54 +01:00
Jordi Boggiano
d6794217d9
Merge pull request #9475 from naderman/fix-alias-alt
...
Make sure the root aliases always get installed when a package is updated
2020-11-13 15:15:32 +01:00
Nils Adermann
27f200caf1
Create ROOT_ALIAS rules inside package rule generation
2020-11-13 15:08:09 +01:00
Nils Adermann
4215344c93
Rule generator cleanup: no need for 2 added package arrays, more specific root alias rule
2020-11-13 14:53:23 +01:00
Jordi Boggiano
595c4c6f75
Make sure we handle cases where STDIN/STDOUT may not be defined
2020-11-13 14:50:24 +01:00
Jordi Boggiano
b7e1383083
Make sure the alias package gets added to conflict rules etc, and only add it if aliased package is actually added
2020-11-13 14:16:37 +01:00
Jordi Boggiano
7b183956d8
Make sure the root aliases always get installed when a package is updated, fixes #9448
2020-11-13 13:52:21 +01:00
Jordi Boggiano
6ace5bb651
Make sure root aliases are marked as such also when loaded from lock file
2020-11-13 10:58:03 +01:00
Jordi Boggiano
cc536c7f45
Fix/normalize tty handling
2020-11-13 08:58:18 +01:00
Jordi Boggiano
4b4a3937ea
Make sure Loop abortJobs does not lose track of promises in case wait() is called within the scope of a wait(), refs #9463
2020-11-12 15:14:39 +01:00
Jordi Boggiano
b0d308319e
Extract POST_PACKAGE_* events to be executed all at once and not in parallel with async code to avoid edge cases, fixes #9463
2020-11-12 15:14:02 +01:00
Jordi Boggiano
45f7036745
Make sure the SOURCE_VERSION works with version_compare against 2.0.0
2020-11-12 15:12:46 +01:00
Sergii Bondarenko
abbc0e8a4e
#9464 : Remove wrapping slashes from the gitignore rules
2020-11-12 14:56:14 +02:00
Jordi Boggiano
e5a009ed80
Make sure empty objects are not left behind when removing requires/.. fixes #9462
2020-11-12 11:09:15 +01:00
Jordi Boggiano
dfca939f3b
Use proper type hint for local repo
2020-11-12 10:41:07 +01:00
Jordi Boggiano
b78b2df5bb
Reuse devPackageNames if available instead of filtering the dev packages out by looping through all requirements
2020-11-12 10:41:07 +01:00
Jordi Boggiano
b574f10d9d
Rename mainPackage to rootPackage in AutoloadGenerator and ensure we use RootPackageInterface
2020-11-12 10:41:06 +01:00
Jordi Boggiano
6a2f9870a7
Warn when init is being used non-interactively without any args passed in, instead of silently overwriting the file
2020-11-12 10:41:05 +01:00
Tom Klingenberg
258f6dc1a2
Reference co-relating code sequence for tty test, refs #9454
2020-11-11 20:27:38 +01:00
Jordi Boggiano
380dce9a6b
Make sure the IO is not interactive when not run in a tty, refs #9454
2020-11-11 16:30:50 +01:00
Jordi Boggiano
87006774b1
Avoid requiring a lock file to run composer remove, fixes #9439
2020-11-11 14:46:10 +01:00
Jordi Boggiano
4468248c46
Merge remote-tracking branch 'Serializator/reject-promise-on-exception-9424'
2020-11-11 14:35:08 +01:00
Jordi Boggiano
1496277697
Disable TTY mode if STDOUT is not a TTY, fixes #9454
2020-11-11 14:27:17 +01:00
Jordi Boggiano
00dfd2c8e1
Fix lock file being parsed when not strictly needed, fixes #9452
2020-11-11 11:57:08 +01:00
Jordi Boggiano
30b98915e9
Move Updating dependencies to the correct point, which is once we have the pool ready
2020-11-11 11:30:37 +01:00
Jordi Boggiano
fec44f883c
Always load the current InstalledVersions when writing to disk, fixes #9457
2020-11-11 10:47:54 +01:00
Jordi Boggiano
14d20776a2
Merge pull request #9449 from staabm/patch-3
...
Remove unnecessary overridden method
2020-11-10 17:05:05 +01:00
Markus Staab
bfafead42e
Fixed phpdocs
2020-11-09 21:22:23 +01:00
Markus Staab
e8ce5a3db6
Remove unnecessary overridden method
...
The method just called its parent without further logic
2020-11-09 20:45:40 +01:00
Jordi Boggiano
a825581ae2
Remove set_time_limit, fixes #9438
2020-11-09 14:23:24 +01:00
Julian van den Berkmortel
23a1d783db
Reject job within "HttpDownloader" when an exception is thrown, refs #9424
2020-11-08 21:53:07 +01:00
Jordi Boggiano
c362d001f1
Fix regression handling installs with custom installers not passing a fully qualified path to downloaders, fixes #9431 , fixes #9434
2020-11-07 11:17:22 +01:00
Jordi Boggiano
f31564ef5b
Fix check-platform-reqs --no-dev to not require lock anymore
2020-11-06 20:39:33 +01:00
Michaël Jacobs
611a9f5dab
Drop unused imports
2020-11-06 13:31:02 +01:00
Michaël Jacobs
c35a8e77c7
Fix missing directory separator in FileDownloader
2020-11-06 13:31:02 +01:00
Jordi Boggiano
3f6899946b
Avoid using curl when it has been disabled, fixes #9423
2020-11-06 12:55:54 +01:00
Jordi Boggiano
bc9336946e
Trim trailing slash in path downloader to avoid symlink issues, and in FileDownloader::getLocalChanges as we append a string without slash, refs #9422
2020-11-05 16:54:06 +01:00
Jordi Boggiano
c04c42b7b4
Merge branch '1.10'
2020-11-05 16:37:59 +01:00
Jordi Boggiano
444b91a3ce
Add docs, refs #9422
2020-11-05 16:37:51 +01:00
Jordi Boggiano
3ffdd67e81
Fix running compiler in CI env
2020-11-05 15:00:54 +01:00
Jordi Boggiano
22fef8c51a
Make sure no files are missing from the phar, fixes #9421
2020-11-05 14:55:18 +01:00
Jakub Bouček
8dc5effee7
AutoloadGenerator: Send error HTTP status on error
2020-11-05 09:57:48 +01:00
Jordi Boggiano
56c65a58e2
Make platform-check only check non-dev requires, refs #9412
2020-11-04 23:41:58 +01:00
Jordi Boggiano
8c1355f448
Improve output of platform check further in case errors are hidden
2020-11-04 22:28:17 +01:00
Jordi Boggiano
ec960d12b0
Merge remote-tracking branch 'jakubboucek/feature/jb-platform-check-tigger-error'
2020-11-04 21:54:12 +01:00
Jordi Boggiano
6c31744c04
Disable full platform-check for extensions by default, now set to php-only, refs #9412
2020-11-04 21:50:06 +01:00
Jordi Boggiano
fc0d724938
Allow configuring gitlab deploy tokens via config command, refs #9373
2020-11-04 21:36:03 +01:00
Jordi Boggiano
04aad524ec
Fix gitlab-domains/github-domains to avoid overwriting the default when another domain is configured, refs #9373
2020-11-04 21:32:32 +01:00
Jordi Boggiano
abd61369e4
Revert "Support git@bitbucket.org URLs for git-bitbucket driver", fixes #9400
...
This reverts commit 985cef790f
.
2020-11-04 21:18:40 +01:00
Jordi Boggiano
52faa3cdfb
Merge pull request #9388 from JasonStephensTAMU/remove-windows-junction
...
Remove Windows junctions first in PathDownloader
2020-11-04 21:05:57 +01:00
Jakub Bouček
3f63bc9205
AutoloadGenerator: Trigger native PHP error on platform checks fails
2020-11-04 12:28:14 +01:00
johnstevenson
cda49323eb
Remove CURLOPT_SSL_FALSESTART option. Fixes #9405
2020-11-04 11:05:50 +00:00
Jakub Bouček
b83b186ac0
AutoloadGenerator: Send error HTTP status on error
2020-11-04 11:18:21 +01:00
Stephan Vock
0747b072be
RemoteFileSystem: don't throw zlib error on empty response
2020-11-03 16:01:40 +00:00
Tanel Pipar
8f454c6708
Remove CWD from only the beginning of a path in ZipArchiver
...
Fixes https://github.com/composer/composer/issues/9403
2020-11-03 12:01:48 +02:00
Jason Stephens
f486da4578
Remove junctions first in PathDownloader
...
When removing a package from a Path repository, ensure Windows junctions
are handled first. This avoids a potential problem using realpath() when
comparing dist and install paths.
See https://bugs.php.net/bug.php?id=77639
2020-11-02 08:30:15 -06:00
Ondřej Mirtes
48b23b1607
Simplify code in FileDownloader.php
2020-11-02 15:10:57 +01:00
Jordi Boggiano
1bf2df19dd
Avoid cleaning up $path in downloaders if it is the CWD (create-project use case), refs #9396
2020-11-02 13:53:44 +01:00
Jordi Boggiano
6cb0aff417
Fix issue preventing cleanup of vendor dir when it is nested in the install path on Windows, fixes #9396
2020-11-02 13:53:43 +01:00
zorn
5aa90baab1
Add new lines to platform reqs issues
2020-11-01 23:39:06 +10:00
Jordi Boggiano
52f98fd228
Merge branch '1.10'
2020-10-30 17:56:22 +01:00
Marco Sirabella
7f936d7dbc
Ignore failures on preg_match for user supplied regex
...
Fixes #7440
See: https://stackoverflow.com/a/12941133/6381767
2020-10-30 17:56:18 +01:00
Jordi Boggiano
36a9c47830
Fix typo from a637072058
2020-10-30 17:52:29 +01:00
Jordi Boggiano
a637072058
Fix canUseCurl logic to allow local_cert/local_pk to reach curl, refs #9384
2020-10-30 17:48:54 +01:00
Jordi Boggiano
ce7cc3b444
Merge remote-tracking branch 'rtm-ctrlz/master'
2020-10-30 17:48:07 +01:00
Jordi Boggiano
0a356b8a39
Merge branch '1.10'
2020-10-30 17:30:33 +01:00
Jordi Boggiano
78797df5f8
Fix bitbucket handling, fixes #9369
2020-10-30 17:28:30 +01:00
Jordi Boggiano
d25e66ad53
Display auth again for an origin if the auth type changes
2020-10-30 17:15:40 +01:00
Jordi Boggiano
985cef790f
Support git@bitbucket.org URLs for git-bitbucket driver
2020-10-30 17:15:25 +01:00
Jordi Boggiano
1d7ed333c9
Make sure curl is only used when safe to do so, fixes #9381
2020-10-30 16:20:50 +01:00
Jordi Boggiano
8f9486b20e
redirects are handled in userland now so no need for this hack anymore
2020-10-30 15:30:19 +01:00
Jordi Boggiano
e0e4d60166
Fix check-platform-reqs to be more clear about what is going on, and add a --lock flag to allow explicitly checking from lock
2020-10-30 15:05:29 +01:00
Ilia Urvachev
4faaf79b58
CurlDownloader enable support for SSL-client certificates
2020-10-30 17:03:21 +03:00
Jordi Boggiano
3f8f549352
Add new flag to ConfigSourceInterface as most likely there are no implementors anyway
2020-10-30 14:22:57 +01:00
Jordi Boggiano
f2f3b03fec
Fix config/create-project handling of repositories to prepend them by default as this is most likely the goal, fixes #9371
2020-10-30 14:16:40 +01:00
Jordi Boggiano
ffc0f86fc0
Fix warnings in composer require to show when repo prio is at fault, refs #9371
2020-10-30 14:16:40 +01:00
Jordi Boggiano
41daf69c87
Merge pull request #9379 from glaubinix/f/zip-util
...
Zip: ignore mac osx specific folder when searching for composer.json
2020-10-30 10:48:31 +01:00
Jordi Boggiano
34bdc6cbf2
Detect and hint for solutions for common curl errors, fixes #9376
2020-10-30 09:56:58 +01:00
Stephan Vock
d97c37f103
Zip: ignore mac osx specific folder when searching for composer.json
2020-10-29 22:30:12 +00:00
Jordi Boggiano
472f78bff1
Auto-disable misbehaving curl downloader on php 5, refs #9002
2020-10-29 22:39:26 +01:00
johnstevenson
095d133d6b
Remove fulluri checks and tidy diagnose output
2020-10-29 10:28:51 +00:00
Nils Adermann
2d91fbc65a
PoolBuilder: never mark skipped packages for loading
...
Reorder code in loadPackage to avoid duplicate calls
2020-10-28 14:07:04 +01:00
Nils Adermann
7ddd1c64af
PoolBuilder: On unlock ensure consider all locked requirements for unlocked package
2020-10-27 22:10:15 +01:00
Jordi Boggiano
90a6aa7ec0
Make sure we compare packages to their latest without aliases, fixes #9357
2020-10-27 21:04:00 +01:00
Jordi Boggiano
04e5d725f4
Add docs
2020-10-27 20:53:54 +01:00
Jordi Boggiano
ff74d0e686
Fix lock file generation with dev-master aliases to be compatible with Composer 1, fixes #9337
2020-10-27 20:50:26 +01:00
Nils Adermann
7dc67fbbad
Problem: Update fallback error message for requires without matches
2020-10-27 17:11:24 +01:00
Jordi Boggiano
881ec8c751
Use httpdownloader/curl to process install notifications
2020-10-27 13:50:03 +01:00
Jordi Boggiano
d699e6b36c
Make sure global plugins are described as such in loading output, fixes composer/package-versions-deprecated#15
2020-10-27 09:36:59 +01:00
Jordi Boggiano
5d4bcde454
Allow using --locked with the outdated command directly, fixes #8025
2020-10-26 14:47:52 +01:00
Nils Adermann
289972a177
Remove useless null check, follow up to #9345
2020-10-26 13:29:23 +01:00
Jordi Boggiano
3772696ad6
Use IO for output
2020-10-26 12:34:27 +01:00
Nils Adermann
cbcc3a3080
Remove trailing commas for function calls
2020-10-26 11:42:41 +01:00
Fabien Potencier
d5245387f3
Fix error message
2020-10-26 10:04:10 +01:00
Nils Adermann
b72dc7bb78
Clarify --lock option on update further
...
Specifically state packages do not get updated to new versions, only metadata is updated.
2020-10-25 22:42:50 +01:00
Jordi Boggiano
860a67b776
Update --lock docs, fixes #9315
2020-10-25 22:25:59 +01:00
Jordi Boggiano
4b8c2aa121
Fix default version to be semver parseable, fixes #9342
2020-10-25 22:22:19 +01:00
Jordi Boggiano
5bdb0cfff5
Merge pull request #9339 from Seldaek/fix-plugin-order
...
Fix plugin install order for plugins modifying downloads
2020-10-25 21:28:38 +01:00
Jordi Boggiano
769ce48289
Fix typo
2020-10-25 21:25:56 +01:00
Jordi Boggiano
0543b59e06
Merge pull request #9334 from johnstevenson/proxy-streams
...
Improve proxy error messages for streams
2020-10-25 14:13:40 +01:00
Jordi Boggiano
e770cb4dcf
Fix var name
2020-10-25 14:11:02 +01:00
Jordi Boggiano
2d4e1e0dce
Make sure Transaction sorts operations correctly to begin with
2020-10-25 14:06:45 +01:00
johnstevenson
c99e19db64
Fix logic (again)
2020-10-25 12:59:01 +00:00
Jordi Boggiano
dc88236c07
Make sure operations are executed in batches, including downloads, when a plugin is present which modifies downloads, fixes #9333
2020-10-25 13:49:31 +01:00
Jordi Boggiano
8925b4f596
Attempt fixing handling of root aliases when composer 1 reads composer 2 lock files, fixes #9337
2020-10-25 12:45:33 +01:00
Helmut Hummel
d1dfd394c1
Correctly avoid partial updates in require commands
...
The installer does not support partial updates, when
no lock file is present. The check in require command
to prevent a partial update however does not check whether
a lock file is present, but whether a lock file should be written,
which most likely always is true.
This check is now changed to check if a lock file is actually present.
2020-10-24 21:34:34 +02:00
Jordi Boggiano
9bfddadf3d
Make sure no unknown files get excluded from the phar, fixes #9331
2020-10-24 20:49:07 +02:00
johnstevenson
2a913c7a68
Improve proxy error messages for streams
2020-10-24 18:20:31 +01:00
Jordi Boggiano
b4f0f4ddd2
Fix php8 file being missing from phar, refs #9331
2020-10-24 14:58:05 +02:00
Jordi Boggiano
191196de48
Detect broken packagist.org mirrors and fix them on the fly, refs #9297
2020-10-24 11:10:08 +02:00
Jordi Boggiano
62eff8e979
Tweaks to new proxying code, refs #9324
2020-10-24 10:36:39 +02:00
Jordi Boggiano
62fd612e63
Merge remote-tracking branch 'johnstevenson/curl-proxy'
2020-10-24 10:22:52 +02:00
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
username
46cc387598
Split workflows
2020-08-29 21:12:07 +02:00
Nils Adermann
1385412748
Merge branch 'master' into filter-packages
...
* master:
Add tests for edge cases of packages providing names which exist as real packages
Add another test verifying that a package may provide an incompatible version of sth that actually exists
Fix provider coexistence test, needs another requirement to install both
Fix test filename to end with .test extension so it gets run
Update config section to note required scope for GitLab tokens
Fix pre/post-package-install/update/uninstall events receiving a partial list of operations, fixes #9079
Also remove credentials from cache dirs in git/svn drivers, fixes #7439 , refs #9155
AuthHelper: Allow fall-through GitLab-specific HTTP headers for auth
Sanitize repo URLs to mask HTTP auth passwords from cache directory
Util/Zip: fix strpos args order
2020-08-28 14:52:58 +02:00
Yanick Witschi
a1e1cd8fa4
Do not trigger Intervals::isSubsetOf() over and over again for platform packages
2020-08-28 14:34:50 +02:00
Jordi Boggiano
f18d91bd58
Fix pre/post-package-install/update/uninstall events receiving a partial list of operations, fixes #9079
2020-08-27 11:25:43 +02:00
Jordi Boggiano
c3db4614c9
Also remove credentials from cache dirs in git/svn drivers, fixes #7439 , refs #9155
2020-08-27 10:19:23 +02:00
Jordi Boggiano
98862f5408
Merge pull request #9155 from Ayesh/hide-passwords-cache
...
Sanitize repo URLs to mask HTTP auth passwords from cache directory
2020-08-27 10:12:56 +02:00
Jordi Boggiano
9e77514764
Merge pull request #9156 from Ayesh/gitlab-repos
...
AuthHelper: Allow fall-through GitLab-specific HTTP headers for auth
2020-08-27 10:06:28 +02:00
Ayesh Karunaratne
931a1ff1f8
AuthHelper: Allow fall-through GitLab-specific HTTP headers for auth
...
Previously, `AuthHelper` consumed the authentication credentials for GitLab domains and added access tokens as GitLab-specific headers.
[Composer repositories now supported in GitLab](https://php.watch/articles/composer-gitlab-repositories ) require standard Authorization headers with a personal access to function, which failed to work due to out GitLab-specific headers.
With this commit, AuthHelper checks if the password is an access token, and falls through to HTTP basic authentication even if the domain name is a GitLab domain name.
2020-08-27 12:13:28 +07:00
Ayesh Karunaratne
87573aab27
Sanitize repo URLs to mask HTTP auth passwords from cache directory
...
When a Composer repository is cached, a directory name is generated created stored package meta information fetched from that repository.
The cache directory can contain HTTP basic auth tokens, or access_token query parameters that end up in the directory name of the cache directory.
Discovered when trying out [GitLab composer repository feature](https://php.watch/articles/composer-gitlab-repositories ), and the HTTP password was visible in a `composer update -vvv` command.
Using passwords/tokens in the URL is fundamentally a bad idea, but Composer already has `\Composer\Util\Url::sanitize()` that tries to mitigate such cases, and this same function is applied to the repo URL before deciding the name of the repo cache directory.
2020-08-26 23:01:00 +07:00
Iskander (Alex) Sharipov
dc1fd92b9b
Util/Zip: fix strpos args order
...
`strpos()` first argument is a haystack, not a needle.
`strpos('x', $s)` is identical to `$s === 'x'` which is probably not what we want here.
2020-08-26 17:23:10 +03:00
Jordi Boggiano
9a04ecefbf
Merge branch 'master' into filter-packages
2020-08-25 16:51:28 +02:00
Jordi Boggiano
f516d36f6f
Make sure Request::requireName can not be called twice for the same name
2020-08-25 15:37:28 +02:00
Jordi Boggiano
90332f1dbd
Add a readonly mode to the cache, fixes #9150
2020-08-25 13:55:32 +02:00
Jordi Boggiano
875a4784ed
Reorg config class a little
2020-08-25 13:54:29 +02:00
Jordi Boggiano
6186c7f36f
Fix handling of root aliases in partial updates, fixes #9110
2020-08-25 11:05:28 +02:00
Jordi Boggiano
05e9fe936f
Merge branch '1.10'
2020-08-25 08:59:07 +02:00
Jordi Boggiano
b847c4dc3a
Validate licenses correctly even when proprietary is combined with some other license, fixes #9144
2020-08-25 08:58:43 +02:00
Stephan
d140a842fa
RemoteFilesystem: avoid warning when setting max file size
2020-08-24 13:53:07 +01:00
Jordi Boggiano
2bd1bd4194
Merge pull request #9142 from oleg-andreyev/fixing-error-message-for-higher-priority-repo
...
fixing error message for higher repository priority when it provides only a dev-branch
2020-08-23 16:52:55 +02:00
Jordi Boggiano
448daea696
Add support for detecting packages not matching only due to minimum stability
2020-08-23 16:48:07 +02:00
Jordi Boggiano
e5ba99cf67
Merge branch '1.10'
2020-08-23 15:18:48 +02:00
Jordi Boggiano
9ea9d20b21
Merge pull request #9130 from glaubinix/t/max-file-size
...
Downloader: add a max_file_size option to prevent too big files to be downloaded
2020-08-23 13:37:12 +02:00
Stephan
a16f32484b
Downloader: add a max_file_size to prevent too big files to be downloaded
2020-08-22 19:37:42 +01:00
Oleg Andreyev
f262feebec
fixing error message for higher repository priority, when higher repo has only a dev-branch
2020-08-22 20:07:13 +03:00
Lars Strojny
a83588f568
The proper fix
2020-08-18 16:30:47 +02:00
Lars Strojny
4e06aa051a
Check if inet_pton() exists
2020-08-18 16:00:44 +02:00
johnstevenson
3be62a9fda
Fix openssl_free_key deprecation notice in PHP 8
2020-08-14 17:45:41 +01:00
Jordi Boggiano
00e268cdbf
Clear Intervals cache when we are done with it
2020-08-13 16:45:43 +02:00
Markus Staab
fdff3aeaba
emit github action formatted error messages ( #9120 )
2020-08-13 16:37:32 +02:00
Jordi Boggiano
c845d66818
Lowercase ext- package names, refs #9093
2020-08-13 15:48:41 +02:00
Jordi Boggiano
4d20e6f5d6
Move Version util to Platform namespace, fix CS nitpicks, make regexes case insensitive for robustness, refs #9093
2020-08-13 15:48:41 +02:00
Jordi Boggiano
7e1ef19a5a
Expand library version checking capabilities ( closes #9093 )
2020-08-13 15:48:41 +02:00
Wissem Riahi
657ae5519e
Add support for TAR in Artifact packages ( #9105 )
2020-08-12 20:30:58 +02:00
Jordi Boggiano
ff757e649c
Use pool to match packages to avoid getting packages without ids, fixes #9094
2020-08-12 12:41:19 +02:00
Jordi Boggiano
826db3db5e
Used locked repo only if it is present
2020-08-12 11:11:37 +02:00
Jordi Boggiano
c0eb9834fe
Merge pull request #9116 from ryanaslett/patch-1
...
Update PathDownloader.php
2020-08-11 09:54:09 +02:00
Jordi Boggiano
51b1a752e3
Merge pull request #9098 from GrahamCampbell/patch-1
...
Use consistent phpdoc nullable syntax
2020-08-11 09:52:09 +02:00
Jordi Boggiano
7649c8438d
Fix exception when using create-project in current directory, fixes #9073
2020-08-11 09:42:42 +02:00
Ryan Aslett
c0309f22d7
Update PathDownloader.php
...
If a path repository points at a directory that is managed by composer installers, the path that gets set ends up being relative, and this check fails to see that the source is already present, and therefore removes it.
Since ->install is already using realpath around the $path argument, remove should as well.
For an example repository that demonstrates this bug See: https://github.com/ryanaslett/pathrepotestcase
2020-08-10 12:51:48 -07:00
Graham Campbell
019febb5fa
Use consistent phpdoc nullable syntax
2020-08-02 15:10:54 +01:00
Jordi Boggiano
2d3905157d
Merge branch '1.10'
2020-07-30 21:06:51 +02:00
Jordi Boggiano
00f712a7c4
Revert "Allow specifying a version requirement for CLDR"
2020-07-30 21:00:43 +02:00
Jordi Boggiano
387e828993
Promote next major version when running stable self-update, and prevent self-update from automatically upgrading to the next major release
2020-07-30 16:32:29 +02:00
Jordi Boggiano
5bd61ac55c
Cache versions data to avoid redownloading it twice during self-update
2020-07-30 16:32:29 +02:00
Jordi Boggiano
7028d0ce27
Merge pull request #9077 from glaubinix/f/api-data-detection
...
Driver: only cache composer.json file without API data to disk
2020-07-30 15:32:10 +02:00
Jordi Boggiano
daae46e1e0
Merge pull request #9085 from lstrojny/lib-cldr
...
Allow specifying a version requirement for CLDR
2020-07-30 14:53:46 +02:00
Jordi Boggiano
12d6759888
Fail hard instead of skipping branches/tags quietly when parsing VCS repos if 401/403 are returned, fixes #9087
2020-07-30 14:38:49 +02:00
Jordi Boggiano
7bcde1481d
Fix git downloader syntax for windows cmd when updating packages, fixes #9089
2020-07-30 14:38:48 +02:00
Jordi Boggiano
79813b2f77
Fix detection of git refs to be more strict
2020-07-30 14:38:48 +02:00
Lars Strojny
5a02ea6a96
Check that class exists
2020-07-30 14:29:48 +02:00
Lars Strojny
404dea61c2
Allow specifying a version requirement for the relevant CLDR
2020-07-29 19:32:53 +02:00
Stephan
b25296ef74
Driver: only cache composer.json file without API data to disk
2020-07-27 13:26:57 +01:00
Tyson Andre
e5c7835d57
Properly support PHP 8.0 Named Arguments
...
See https://wiki.php.net/rfc/named_params#internal_functions
(implemented but not yet merged)
An ArgumentCountError will be thrown when passing variadic arguments to
a function with call_user_func_array() if extra unknown named arguments
are encountered.
Fatal error: Uncaught ArgumentCountError: array_merge() does not accept unknown named parameters in phar:///path/to/composer.phar/src/Composer/DependencyResolver/DefaultPolicy.php:84
(e.g. for `['phpunit/phpunit' => [72]]`)
2020-07-26 15:28:47 -04:00
Andreas Möller
ac055e5718
Fix: Reference
2020-07-21 23:25:05 +02:00
Jordi Boggiano
d8fa746433
Merge pull request #9058 from Seldaek/zip-cleanup
...
Clean up Zip Util to be more strict about what is a valid package archive
2020-07-21 17:17:12 +02:00
Wissem Riahi
c353ac835c
Add exception for multiple composer.json files ( #3 )
2020-07-21 17:10:26 +02:00
Markus Staab
4e1dd4bfdf
added phpdocs in StreamContextFactory
2020-07-20 20:49:00 +02:00
Jordi Boggiano
750a92b4b7
Fix headers array format
2020-07-17 17:29:00 +02:00
Jordi Boggiano
8cec8bd546
Allow verify_peer/verify_peer_name http options to be handled by curl downloader
2020-07-17 17:22:41 +02:00
Jordi Boggiano
c3d40ae79a
Fix passing of repo http options in async requests
2020-07-17 17:16:19 +02:00
Jordi Boggiano
071350286f
Compact constraints to avoid ending up with very long multi constraints
2020-07-17 16:16:58 +02:00
Jordi Boggiano
22367a68f9
Avoid loading same packages multiple times
2020-07-17 16:16:58 +02:00
Jordi Boggiano
3577070efa
Fix docblocks
2020-07-17 16:15:19 +02:00
Yanick Witschi
6ba0f3adf9
Merge branch 'master' into filter-packages
...
* master: (59 commits)
Update deps
Reuse repository manager and others directly from the Composer instance, refs #9057
Fix usage of create-project with local filesystem repos
Fix return value
Add support for multiple --repository additions in create-project, and make --add-repository delete the lock file, fixes #8853
Remove cygwin php handling in UAC elevation
Clean up a little to make impl less invasive and to handle replacers/providers
Supply event dispatcher in Create Project Command
Avoid attempting to use /etc/xdg as base config home, fixes #9053 , refs #9045
Create an issue @ Docker repository on tag
Mark transaction classes internal, refs #8827
Prepare 1.10.9 release
Remove highest/lowest builds for 1.10 maintenance branch
Fix bitbucket detection of redirects to login page, fixes #9041
Fix doc comment
Fixed spelling mistake
Add Windows UAC elevation to self-update command
GitLab: clarify interactive auth prompt
Improve support for XDG and default to XDG config dir if both that and ~/.composer are available, fixes #9045
Fix #9033 - inconsistent behavior with minor-only flag
...
2020-07-17 14:30:12 +02:00
Jordi Boggiano
c3028c02d9
Merge branch '1.10'
2020-07-17 13:18:02 +02:00
Jordi Boggiano
a474dee236
Merge remote-tracking branch 'johnstevenson/elevate2' into 1.10
2020-07-17 13:01:24 +02:00
Jordi Boggiano
eac03e16e7
Reuse repository manager and others directly from the Composer instance, refs #9057
2020-07-17 12:05:07 +02:00
Jordi Boggiano
433968de17
Fix usage of create-project with local filesystem repos
2020-07-17 11:30:03 +02:00
Jordi Boggiano
201533e16f
Fix return value
2020-07-17 11:05:57 +02:00
Jordi Boggiano
a2ab6f2b54
Add support for multiple --repository additions in create-project, and make --add-repository delete the lock file, fixes #8853
2020-07-17 10:38:46 +02:00
johnstevenson
8ddbae358d
Remove cygwin php handling in UAC elevation
...
When called from a native shell and using cygwin PHP, cygpath translates
`/tmp` to `User\AppData\Local\Temp`, rather than `/cygdrive/.../tmp`.
This change does not affect using windows PHP from a Cygwin shell.
2020-07-16 17:20:12 +01:00
Jordi Boggiano
942562c382
Clean up Zip Util to be more strict about what is a valid package archive, fixes #8931
2020-07-16 17:36:46 +02:00
Jordi Boggiano
37b1e0fffd
Merge pull request #8955 from tlamy/OutdatedNoDevOption
...
Outdated/Show: no dev option
2020-07-16 15:40:09 +02:00
Jordi Boggiano
6869a1a5cb
Clean up a little to make impl less invasive and to handle replacers/providers
2020-07-16 15:37:12 +02:00
Shaun Johnston
b4ecca5d0b
Supply event dispatcher in Create Project Command
...
This update allows composer plugins to intercept the
create-project command to inject additional functionality such as
providing additional remote filesystem handling.
2020-07-16 23:34:30 +10:00
Jordi Boggiano
7cecc6ad3f
Avoid attempting to use /etc/xdg as base config home, fixes #9053 , refs #9045
2020-07-16 14:59:49 +02:00
Jordi Boggiano
89d35af83d
Mark transaction classes internal, refs #8827
2020-07-16 13:59:49 +02:00
Jordi Boggiano
8b934a415f
Merge branch '1.10'
2020-07-16 12:27:00 +02:00
Jordi Boggiano
6cb4dc41b8
Fix bitbucket detection of redirects to login page, fixes #9041
2020-07-16 12:26:48 +02:00
johnstevenson
57f91d01c7
Fix doc comment
2020-07-16 11:53:55 +02:00
johnstevenson
272654d6e2
Fixed spelling mistake
2020-07-16 11:53:55 +02:00
johnstevenson
cae913c434
Add Windows UAC elevation to self-update command
...
If self-update fails on Windows due to file permission issues, a .vbs
script is used to elevate a call to the cmd.exe `move` command.
Unfortunately it is not possible to know if the user cancelled the UAC
prompt using this method - it is possible using a Powershell script, but
flashing hidden windows make this a less desirable option.
The only downside is that a UAC invoked process is asynchronous, so a
300 millisecond timeout is used to allow cmd.exe to do its stuff.
Therefore if the OS is busy the script may finish first and incorrectly
report that the file has not been written.
2020-07-16 11:53:55 +02:00
Stephan
fb0ad7c900
GitLab: clarify interactive auth prompt
2020-07-15 16:18:21 +01:00
Jordi Boggiano
870fdc59df
Merge remote-tracking branch 'tomekpryjma/fix-issue-9033'
2020-07-15 17:02:16 +02:00
Jordi Boggiano
10590dc519
Improve support for XDG and default to XDG config dir if both that and ~/.composer are available, fixes #9045
2020-07-15 10:56:13 +02:00
Tomek
23c32ed6d3
Fix #9033 - inconsistent behavior with minor-only flag
2020-07-14 23:06:20 +01:00
Jordi Boggiano
92ef439666
Merge branch '1.10'
2020-07-07 21:12:27 +02:00
Jordi Boggiano
d2d3aa8494
Fix parsing of # in funding links, fixes composer/packagist#1097, closes #9035
2020-07-07 21:12:04 +02:00
Jordi Boggiano
d7b1248508
Create pool before reading package ids as the pool creation reassigns package ids, fixes #9034
2020-07-04 12:00:37 +02:00
Jordi Boggiano
1fa6f4c83c
Add a default signal handler to avoid having the SIGINTs ignored, fixes #9027
2020-07-01 11:37:38 +02:00
Jordi Boggiano
ee4afa29e7
Include dev packages in locked package listings for show command
2020-07-01 11:17:52 +02:00
Jordi Boggiano
70f211923b
Add support for list URL in composer repos, fixes #9009
2020-07-01 11:16:38 +02:00
Jordi Boggiano
1824637dab
Merge pull request #8999 from naderman/fix-solver-bug-exception-7051
...
Fix solver bug exception 7051
2020-06-27 23:50:55 +02:00
Nils Adermann
3f5dde9873
Solver: Ensure multi conflict rules still get added to learned pool
2020-06-26 22:04:17 +02:00
Nils Adermann
edef748169
Solver: Clarify when/why undecided literals can get skipped in analyze
2020-06-26 21:55:03 +02:00
Nils Adermann
851050e85c
Solver: multiconflict analyze handles positive decision same as regular literal
2020-06-26 21:51:02 +02:00
Nils Adermann
6e05345be7
Solver: Move analyze handling of multiconflict rule to clearer location
...
This way we're not looking at the previous decision at the top of the
loop but working with the current decision at the bottom
2020-06-26 21:51:02 +02:00
Nils Adermann
b34f916470
Solver: No need to check previous decision if we reached the first one
2020-06-26 21:51:02 +02:00
Nils Adermann
2631210493
Solver: analyze multi conflict rules in conflict resolution correctly
2020-06-26 21:51:02 +02:00
Jordi Boggiano
5ef398ebb9
Fix 5.3 support
2020-06-26 16:58:02 +02:00
Jordi Boggiano
bee91155a1
Fix guessing of default branch when HEAD is a non-feature-branch
2020-06-26 16:16:16 +02:00
Jordi Boggiano
4a2ea3c67a
Fix var name
2020-06-25 09:16:23 +02:00
Jordi Boggiano
86af5e5c6e
Remove conflict between trunk and master, as they do not normalize anymore
2020-06-25 08:58:08 +02:00
Jordi Boggiano
e2f1e8aed6
Allow optimizing fetching of dev versions only if no other stability is needed
2020-06-25 08:57:42 +02:00
Jordi Boggiano
a133e694d0
Speed up fund command fetching of latest data and make sure it uses default branch info
2020-06-25 08:57:18 +02:00
Jordi Boggiano
6f9b39180c
Add phpdocs
2020-06-25 08:56:46 +02:00
Jordi Boggiano
05dacbdabb
Rename DEV_MASTER_ALIAS to DEFAULT_BRANCH_ALIAS
2020-06-25 08:56:14 +02:00
Jordi Boggiano
821e575658
Merge branch '1.10'
2020-06-24 21:35:38 +02:00
Jordi Boggiano
74d89d7110
Get rid of default branch handling in version guesser as it is way too time intensive at every initialization
2020-06-24 21:16:16 +02:00
Jordi Boggiano
a5e608fb73
Merge pull request #9008 from Ayesh/strtr-improvements
...
Replace cascading str_replace() calls with strtr()
2020-06-24 15:06:52 +02:00
Jonas Drieghe
eea7564c9e
Revert accidental rename of $dependencies variable in unrelated code branch
2020-06-24 07:28:22 +02:00
Jonas Drieghe
d5d956df4d
Use correct variable name
2020-06-23 19:50:27 +02:00
Jonas Drieghe
73a721c7e5
Add the missing summary format to command-line help text
2020-06-23 19:45:26 +02:00
Jonas Drieghe
ec6e05d55f
Sort licenses so that the most used license will appear first
2020-06-23 19:44:12 +02:00
Jonas Drieghe
668655c21a
Rename variable for clarity
2020-06-23 19:43:27 +02:00
Stephan Vock
52332d994e
GitDriver: use authentication for supports check
2020-06-23 13:06:30 +01:00
Ayesh Karunaratne
e3c75b3e87
Replace cascading str_replace() calls with strtr()
...
Replaces cascading str_replace() calls with a single strtr() call that makes it mode readable and provides a micro performance improvement.
Some instances of cascading str_replace() calls were not refactored due to the potential recurring replacement patterns.
2020-06-23 04:10:26 +07:00
Yanick Witschi
ea0ce9dd7d
Merge branch 'master' into filter-packages
2020-06-22 18:38:16 +02:00
Jordi Boggiano
e76fc2dc39
Avoid blocking when guessing default branch name, fixes #9001
2020-06-22 10:48:15 +02:00
Nils Adermann
edd2aa27db
Add missing isVerbose argument to problem formatting call
2020-06-19 23:31:11 +02:00
Jordi Boggiano
7a37e78a30
Speed up installer tests by avoiding lots of bootstrapping and git processes
2020-06-19 17:56:13 +02:00
Jordi Boggiano
6349764c2d
Fix root package handling of default-branch
2020-06-19 15:34:28 +02:00
Jordi Boggiano
923f198a1f
Fix default-branch attribute on package files, and add it to schema
2020-06-19 15:33:25 +02:00
Jordi Boggiano
6f0e5996de
Treat default branch name as a non-feature-branch no matter what it is called
2020-06-19 14:12:44 +02:00
Jordi Boggiano
4682efcf77
Support also default_branch flag in cached versions
2020-06-19 09:45:39 +02:00
Jordi Boggiano
52afa5ef16
Fix handling of default branches
2020-06-17 17:54:06 +02:00
Jordi Boggiano
f70d527f4f
Fix git tests
2020-06-17 17:53:00 +02:00
Jordi Boggiano
ce368f8269
Store default branch info inside metadata
2020-06-17 17:41:38 +02:00
Jordi Boggiano
04381c70fe
Merge branch '1.10'
2020-06-17 17:37:39 +02:00
Jordi Boggiano
cb1f3899bb
Revert "Store default branch info inside metadata"
...
This reverts commit 472a62152d
.
2020-06-17 17:32:26 +02:00
Michael Stucki
0278e7453d
Clean Git repos during discard
2020-06-17 17:00:35 +02:00
Jordi Boggiano
8c0ecf7337
Clarify why a dev tag was ignored, fixes #8951
2020-06-17 16:41:33 +02:00
Jordi Boggiano
93d4cf6f91
Add --no-show-signature where git supports it, fixes #8966
2020-06-17 16:37:06 +02:00
Jordi Boggiano
472a62152d
Store default branch info inside metadata
2020-06-17 16:09:38 +02:00
Thomas Lamy
722bbce72f
Merge remote-tracking branch 'upstream/master' into OutdatedNoDevOption
2020-06-17 13:03:15 +02:00
Jordi Boggiano
83c64a9d19
Reuse operation formatting logic in downloaders
2020-06-17 12:33:02 +02:00
Jordi Boggiano
aaef3ff5ff
Improve error reporting when unzip fails due to race condition in unhandled Promise, refs #8988
2020-06-17 10:44:50 +02:00
Jordi Boggiano
d1fedc3bd6
Restore old behavior of wiping dir contents before installing, fixes #8988
2020-06-17 10:42:05 +02:00
Jordi Boggiano
80d1b1a34c
Merge pull request #8987 from GrahamCampbell/patch-2
...
Marked getRootAliasesPerPackage as static
2020-06-17 09:22:18 +02:00
Jordi Boggiano
5ec6b81157
Merge pull request #8986 from GrahamCampbell/patch-1
...
Phpdoc tweaks
2020-06-17 09:22:04 +02:00
Jordi Boggiano
c8731598cc
Merge branch '1.10'
2020-06-16 17:16:42 +02:00
Jordi Boggiano
da572f1fdc
Merge remote-tracking branch 'GrahamCampbell/allow-list' into 1.10
2020-06-16 16:52:54 +02:00
Jordi Boggiano
09fc263d37
Fix status command bug
2020-06-16 16:27:36 +02:00
Graham Campbell
643852a2b0
Marked getRootAliasesPerPackage as static
2020-06-16 13:48:59 +01:00
Graham Campbell
a4f4101346
Phpdoc tweaks
2020-06-16 13:46:20 +01:00
Jordi Boggiano
0d369c87bc
Merge pull request #8975 from ffraenz/pr
...
Composer 2: Allow plugins to override the URL before triggering the download
2020-06-16 14:44:03 +02:00
Jordi Boggiano
5aae7f4f20
Merge remote-tracking branch 'jderusse/optimize-compile'
2020-06-16 14:18:03 +02:00
Jordi Boggiano
aea074308c
Update batching to install plugin deps before the plugin (alone an own batch)
2020-06-16 14:07:30 +02:00
Jordi Boggiano
085fe4e7e5
Add --no-progress support and a few more fixes
2020-06-16 14:00:24 +02:00
Jordi Boggiano
9c78eda7db
Fix FileDownloader::update impl to handle promises
2020-06-16 14:00:23 +02:00
Jordi Boggiano
87a0fc5506
Execute operations in batches to make sure plugins install in the expected order
2020-06-16 14:00:22 +02:00
Jordi Boggiano
9f380d606c
Add basic progress bar capability while waiting for jobs to complete
2020-06-16 14:00:22 +02:00
Jordi Boggiano
b1e15c7725
Fix a couple async bugs
2020-06-16 14:00:21 +02:00
Jordi Boggiano
3af617efe8
Parallelize zip extraction using async unzip processes
2020-06-16 14:00:20 +02:00
Jordi Boggiano
8f6e82f562
Add support for aborting running promises cleanly
2020-06-16 14:00:20 +02:00
Jordi Boggiano
0dad963cd8
Add executeAsync to ProcessExecutor and allow Loop class to wait on it in addition to HttpDownloader
2020-06-16 14:00:19 +02:00
Jordi Boggiano
d5286d0cb8
Add a way for FileDownloader subclasses to add paths to the cleanup stage
2020-06-16 14:00:18 +02:00
Jordi Boggiano
a797ee1322
Fix inline aliases not being loaded when extracting dev requirements, fixes #8954
2020-06-16 13:50:29 +02:00
Jordi Boggiano
da6c0635d2
Merge pull request #8980 from stucki/discard-using-git-clean
...
Discard changes is incomplete if Git project has additional folders
2020-06-16 11:08:44 +02:00
Jonas Drieghe
8da2811dc3
Add new summary format for licenses ( #8973 )
...
* Add new summary format to render the number of dependencies for each used license
* Array dereferencing wasn't available on php 5.3
* Add summary format to documentation
2020-06-16 10:07:53 +02:00
Michael Chekin
6d9bf42655
Additional Util\RemoteFileSystem tests ( #8960 )
...
* RemoteFilesystemTest: simplifying some mock expectations calls
- will($this->returnValue()) to willReturn()
- will($this->returnCallBack()) to willReturnCallback()
* RemoteFilesystemTest: extracting identical mocks for IOInterface into a separate getIOInterfaceMock() method
* RemoteFilesystemTest: converting protected helper methods to private.
* RemoteFilesystemTest: moving getConfigMock() private method after the public methods (with other private methods)
* adding RemoteFileSystemTest::testCopyWithRetryAuthFailureFalse() unit test.
* Allow optional injecting of AuthHelper into RemoteFilesystem constructor.
* adding RemoteFileSystemTest::testCopyWithSuccessOnRetry() unit test.
* using backward compatible @expectedException in RemoteFilesystemTest.php
* RemoteFilesystemTest: extracting RemoteFilesystem with mocked method creation into a separate method.
* RemoteFilesystemTest: extracting AuthHelper with mocked method creation into a separate method.
2020-06-16 09:35:33 +02:00
Fränz Friederes
5c13c97428
Implement type and context properties in PreFileDownloadEvent
2020-06-15 21:43:41 +02:00
Michael Stucki
ae59047166
Clean Git repos during discard
2020-06-15 21:42:41 +02:00
Fränz Friederes
907367ff43
Fix PHPDoc issue
2020-06-15 21:28:27 +02:00
johnstevenson
54debe8210
Respect disable-tls in Versions::getLatest
...
Use http to get the latest version when disable-tls is true and error-
trap DiagnoseCommand::checkVersion so that all checks can complete.
Fixes #8657 .
2020-06-15 13:08:38 +02:00
Jordi Boggiano
a17bbec842
Avoid double warnings about composer.json when running outdated, fixes #8958
2020-06-15 13:04:02 +02:00
Fränz Friederes
13bdf8553a
Add setProcessedUrl method to PreFileDownloadEvent
2020-06-11 21:53:31 +02:00
Graham Campbell
a97d13fc6d
Fixed typo
...
Co-authored-by: ZhangWei <zhwei.yes@gmail.com>
2020-06-08 09:33:40 +01:00
Graham Campbell
fa799970ad
Replace whitelist with allow list
2020-06-07 22:15:09 +01:00
Jordi Boggiano
2fa58ccf96
Reduce amount of packages loaded by avoiding extensions of the constraint beyond the root constraint
2020-06-06 17:18:42 +02:00
Jordi Boggiano
4b9b499ce5
Fix issue loading aliases and fix markPackageNameForLoading when called twice in a row for same package it would overwrite the constraint the second time
2020-06-06 17:16:54 +02:00
Jordi Boggiano
f2befc46c9
Avoid storing duplicate packages when loading the same package twice
2020-06-05 17:13:39 +02:00
Jordi Boggiano
67a88880ec
Get rid of EmptyConstraint
2020-06-05 16:52:24 +02:00
Jordi Boggiano
cb19347031
Update to latest master
2020-06-05 16:52:24 +02:00
Yanick Witschi
b6c436598b
Updated to latest semver intervals
2020-06-05 16:52:24 +02:00
Yanick Witschi
6ef47baca1
Added a todo for package dupes
2020-06-05 16:52:24 +02:00
Yanick Witschi
014e9d5dd1
Fixed last remaining pool builder test
2020-06-05 16:52:24 +02:00
Yanick Witschi
5097ed6480
Fixed another test
2020-06-05 16:52:24 +02:00
Yanick Witschi
5a835db24d
Fixed another partial update test
2020-06-05 16:52:24 +02:00
Yanick Witschi
7be24dccd9
Fixed some of the partial update tests
2020-06-05 16:52:24 +02:00
Yanick Witschi
225a6a0a82
Improved variable naming
2020-06-05 16:52:24 +02:00
Yanick Witschi
0955d38374
Simplify package loading
2020-06-05 16:52:24 +02:00
Yanick Witschi
779b56ab2b
Fixed psalm annotations
2020-06-05 16:52:24 +02:00
Yanick Witschi
b00291cf21
CS
2020-06-05 16:52:24 +02:00
Yanick Witschi
00500f83c0
Using the current subset branch of @Seldaek to fix subset tests
2020-06-05 16:52:24 +02:00
Yanick Witschi
26877285ad
Filter duplicate packages
2020-06-05 16:52:24 +02:00
Yanick Witschi
bde9502473
Made the constraint argument in Link mandatory
2020-06-05 16:52:24 +02:00
Yanick Witschi
2427bef238
Typo
2020-06-05 16:52:24 +02:00
Yanick Witschi
bca88bdd4b
Fixed PoolBuilder running endlessly when packages do not exist
2020-06-05 16:52:24 +02:00
Yanick Witschi
b87fc5bbfd
Added more poolbuilder test
2020-06-05 16:52:24 +02:00
Yanick Witschi
d78c37edd2
Cleanup and added some more improvements, tests still failing
2020-06-05 16:52:24 +02:00
Nils Adermann
5dd4b456b9
PoolBuilder: Do not load any alternatives to pkgs replaced by fixed pkg
2020-06-05 16:52:24 +02:00
Nils Adermann
bb4cabc0b9
PoolBuilder: Avoid loading any alternatives to fixed packages
2020-06-05 16:52:24 +02:00
Yanick Witschi
1c8865a5d1
Comment
2020-06-05 16:52:24 +02:00
Yanick Witschi
10555ecff3
Make sure there's always a constraint
2020-06-05 16:52:24 +02:00
Yanick Witschi
912aecb666
Removed name constraints
2020-06-05 16:52:24 +02:00
Yanick Witschi
af7feade8f
POC
2020-06-05 16:52:24 +02:00
Thomas Lamy
caa5545478
#8945 Add "--no-dev" to outdated/show commands
2020-06-05 16:48:10 +02:00
Jordi Boggiano
9d5051faac
Merge branch '1.10'
2020-06-05 16:02:02 +02:00
Jordi Boggiano
6630519882
Fix #8298 for COMPOSER_DEV_MODE
2020-06-05 16:01:39 +02:00
Jordi Boggiano
29ec10d95c
Fix output formatting
2020-06-05 13:43:42 +02:00
Nils Adermann
f15b9c258e
Merge pull request #8949 from Seldaek/cleanups
...
Cleanups / docblocks
2020-06-05 10:48:29 +02:00
Ayesh Karunaratne
71ddc487fe
Platform Check: Add a special case for `zend-opcache`.
...
Ref #8946
The platform-check feature maps `ext-X` to `extension_loaded('X')` calls.
While most of the extensions can be tested this way, the `zend-opcache`
extension requires `zend opcache` to be probed instead of the `zend-opcache`
name.
This commit adds a special case for `zend-opcache` to use the correct name
in `extension_loaded()` calls in generated `platform_check.php` file.
2020-06-05 02:09:31 +07:00
Jordi Boggiano
c9571f90b4
Run phpstan with regular output and then run again to cs2pr if there was an error, to keep usable output in CI logs
2020-06-04 16:11:02 +02:00
Jordi Boggiano
a4a617abb4
Reduce amount of Filesystem/ProcessExecutor instantiations, add lots of docblocks
2020-06-04 16:08:23 +02:00
Jordi Boggiano
5761228068
Make installer classes forward promises from downloaders to InstallationManager
2020-06-04 10:34:16 +02:00
Jordi Boggiano
816d8e9d1b
Fix phpstan error
2020-06-03 15:41:47 +02:00
Jordi Boggiano
90bd351b8b
Allow downgrades to go through even though the target dir for archive extraction exists
2020-06-03 15:37:36 +02:00
Jordi Boggiano
63041fbf50
Add missing class
2020-06-03 15:28:10 +02:00
Jordi Boggiano
02059d96e7
Fail early if an archive extraction is going to fail at install/update stage to avoid leaving the vendor dir in a half up to date state
2020-06-03 15:19:02 +02:00
Jordi Boggiano
396ad87fd0
Add handling of ctrl-C on windows for php 7.4+
2020-06-03 15:18:27 +02:00
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
5ef7765cbd
Merge pull request #8923 from staabm/glob-classmap
...
Autoload-Generator: support glob patterns in classmaps
2020-06-03 13:12:44 +02:00
Jordi Boggiano
ccea1b95a8
Fix pretty constraint for --with overrides
2020-06-03 10:43:18 +02:00
Jordi Boggiano
7507b87fb3
Remove stray var_dump
2020-06-03 10:40:44 +02:00
Jordi Boggiano
8d3ec0f718
Do not reverse sorted packages, fixes #8320
2020-06-03 09:42:21 +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
Jordi Boggiano
4d75d524f1
Fix class name case, refs #8939
2020-06-02 16:20:31 +02:00
Graham Campbell
462dc5a933
Fix for HHVM 3
2020-06-02 14:52:38 +01: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
1e08097a17
Fix phpstan warning
2020-06-01 16:05:13 +02:00
Jordi Boggiano
a9affa8413
Add missing use statement
2020-06-01 15:58:34 +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
21e708f2c4
Remove upper bound PHP version checks from platform-check as there is not enough value added and it risks causing issues
2020-06-01 09:39:44 +02:00
Jérémy Derussé
95e6e16b78
Use Semver compiled constraints
2020-05-26 21:35:30 +02:00
Markus Staab
6a0e02db1b
Autoload-Generator: support glob patterns in classmaps
2020-05-23 21:22:07 +02:00
Jordi Boggiano
a07f9ffba9
Catch SIGINT/Ctrl+C during installs and run cleanups on all packages before exiting
2020-05-22 13:24:30 +02:00
Jordi Boggiano
385655f02a
Mark temp files as such for clarity in case any gets left over
2020-05-22 13:23:14 +02:00
Jordi Boggiano
acf2b15982
Merge branch '1.10'
2020-05-22 10:30:51 +02:00
azjezz
30f994e424
fix deprecations in PHP 8
2020-05-21 18:16:19 +01:00
Jordi Boggiano
c7fb15faf4
Update to MatchAllConstraint
2020-05-21 16:12:41 +02:00
Jordi Boggiano
45d3e133a4
Avoid checking for unbounded constraints in platform checks
2020-05-19 17:15:08 +02:00
Jordi Boggiano
62d0443e07
Avoid checking for readline in non-CLI contexts, fixes #8909
2020-05-19 16:46:33 +02:00
Jordi Boggiano
d42e12c514
Make config non optional, fixes #8896
2020-05-19 16:34:51 +02:00
Jordi Boggiano
b27c4b2472
Merge branch '1.10'
2020-05-19 15:48:19 +02:00
Timo Webler
541692bbfe
Use "getInitialWorkingDirectory" instead of "getWorkingDirectory"
...
Follow-up 8d24b61bef
2020-05-19 15:47:51 +02:00
Jordi Boggiano
1d2df5ef55
Add output to remove/require command to highlight the fact it is running an update command, refs #8910
2020-05-19 14:48:58 +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
Jordi Boggiano
beded906ba
Merge branch '1.10'
2020-05-08 21:05:07 +02:00
Jean-Michel DELEHAYE
42fc372e52
Add function_exists() for 'pcntl_signal'
2020-05-08 20:53:43 +02:00
Matěj Kmínek
a074819a51
Add support for gitlab deploy token ( #8867 )
...
* feat: Added ability to work with GitLab deploy tokens: https://docs.gitlab.com/ee/user/project/deploy_tokens/
Deploy tokens can be specified two ways:
1) GIT CONFIG:
git config --add gitlab.deploytoken.user USERNAME && git config --add gitlab.deploytoken.token TOKEN
2) Auth.json:
"gitlab-token": {
"gitlab.com": {"username": "USERNAME", "token": "TOKEN"}
}
2020-05-08 17:43:07 +02:00
Jordi Boggiano
1ef352751c
Fix display issue in create-project when installing dev-master
2020-05-06 13:45:31 +02:00
Jordi Boggiano
ba3df8faea
Merge pull request #8843 from FIDATA/feature/archive-name
...
Add (default) base name of archive into composer.json
2020-05-06 11:06:28 +02:00
Jordi Boggiano
dd0c8b4278
Merge pull request #8723 from helhum/fix-package-sorting
...
Fix package sorting
2020-05-06 10:47:01 +02:00
Jordi Boggiano
3134466b42
Merge branch '1.10'
2020-05-06 10:30:53 +02:00
Jordi Boggiano
4ce492d01d
Fix detection of gitlab URLs, fixes #8402 , closes #8868
2020-05-06 10:18:53 +02:00
Nils Adermann
5d5515348a
Merge pull request #8860 from Seldaek/update-with
...
Add --with to update command to allow downgrading to a specific version / applying custom temporary constraints
2020-05-05 17:03:49 +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
Nils Adermann
678abdbc9f
Merge pull request #8873 from Seldaek/version_selector_platform
...
Use all PlatformRepo packages in VersionSelector checks
2020-05-04 22:20:11 +02:00
Jordi Boggiano
1d68e85433
Fix usage
2020-05-04 22:04:57 +02:00
Jordi Boggiano
ef3797cdd6
Cache successful requests to make sure subsequent loadPackages calls do not do the same requests for nothing
2020-05-04 21:58:33 +02:00
Jordi Boggiano
8a2dd1baef
Adjust all usages of VersionSelector to the new API
2020-05-04 21:48:48 +02:00
Jordi Boggiano
419567ba6d
Update VersionSelector to take all platform requirements into account when selecting packages
2020-05-04 21:16:41 +02:00
Jordi Boggiano
b11f43f59e
Merge remote-tracking branch 'origin/1.10'
2020-05-04 20:27:34 +02:00
Jordi Boggiano
92aed041e4
Make the VersionSelector take Composer API/Runtime versions into account, refs getsentry/sentry-php#1008
2020-05-04 13:51:34 +02:00
Markus Staab
11930001fb
Added phpdoc types for PoolBuilder ( #8862 )
2020-05-04 13:34:05 +02:00
Ayesh Karunaratne
aa20413990
Improve regex in \Composer\Downloader\SvnDownloader::getCommitLogs() by removing unnecessary greedy operator
2020-05-04 01:03:15 +07:00
Ayesh Karunaratne
d4c8478df5
Improve regex in \Composer\Repository\ComposerRepository::fetchFile() by removing unnecessary greedy operator
2020-05-04 00:38:53 +07:00
Helmut Hummel
7c891701e6
Fix package sorting
...
PackageSorter weighs the importance of a package
by counting how many times it is required by other packages.
This works by calculating the weight for each package name.
However currently the package index of the package array
is currently passed the weigh function, which basically
disables package sorting.
The reason for that is, that a package repository previously
returned the package list as associative array with package name as keys,
but currently just as an array with integer keys.
Therefore we must extract the package name from the package
before passing it to the weigh function.
2020-05-03 16:31:47 +02:00
Jordi Boggiano
1d077ede70
Merge branch '1.10'
2020-05-01 18:08:22 +02:00
Jordi Boggiano
bfe71fb952
Fix support for --self --name-only, fixes #8844
2020-05-01 18:03:22 +02:00
Jordi Boggiano
4ce3836f51
Fix creation of a php: dir when running create-project, fixes #8849
2020-05-01 17:23:32 +02:00
Jordi Boggiano
7f308d986e
Add --with to update command to allow downgrading to a specific version/applying custom temporary constraints, fixes #8756
2020-05-01 16:56:17 +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
56811b4c8f
Exclude platform require/provides from InstalledVersions as concrete ones are also not listed
2020-05-01 13:10:50 +02:00
Jordi Boggiano
557fb873ee
Add a way to retrieve the Loop instance from Composer to be able to wait on promises to integrate things
2020-05-01 09:54:41 +02:00
Jordi Boggiano
3c593b0d12
Remove duplicate use statement
2020-04-30 21:36:17 +02:00
Jordi Boggiano
74a63b4d6b
Merge branch '1.10'
2020-04-30 21:31:29 +02:00
Jordi Boggiano
81bf47ffa2
Use fully qualified calls in hot classes
2020-04-30 21:28:05 +02:00
Alessandro Lai
ff05150c4e
Add composer-runtime-api version constant
2020-04-29 09:02:51 +02:00
Basil Peace
6140897d08
feat: add archive.name config option
2020-04-29 01:01:48 +03:00
Alessandro Lai
270c7c3262
Backport validation support for composer-runtime-api ( #8842 )
...
Fixes #8841
2020-04-28 16:04:00 +02:00
Nils Adermann
56edd53046
Remove unnecessary implementation of interface method in abstract class
2020-04-28 11:57:03 +02:00
Jordi Boggiano
a63913c245
Merge pull request #8836 from kbacia7/master
...
close #8784 , Added --locked option to composer show command. Displaying locked packages with --all option
2020-04-28 08:54:16 +02:00
Kamil Bacia
0779308076
close #8784 , Added --locked option to composer show command. Displaying locked packages with --all option
2020-04-27 21:53:12 +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
d173af2d7a
Fix check-platform-reqs command to take into account provide/replace from the root package
2020-04-24 13:46:18 +02:00
Jordi Boggiano
6a6ea6057f
Handle provider/replacer packages and avoid checking extensions which are provided by packages, refs #8546
2020-04-24 13:38:50 +02:00
Jordi Boggiano
d494df61ff
Make sure platform-check returns a non-0 exit code if it fails
2020-04-24 13:25:13 +02:00
Jordi Boggiano
755a73baa9
Only check for pcntl on cli SAPI, fixes #8828
2020-04-23 20:44:14 +02:00
PirxDanford
3a7ea25289
Introduce --no-install option for the update, require and remove commands
...
Closes #8669 , fixes #8551
Co-authored-by: Jordi Boggiano <j.boggiano@seld.be>
2020-04-23 14:55:07 +02:00
effulgentsia
46efcefefa
Added --json and --merge options to ConfigCommand ( #8779 )
2020-04-23 14:27:14 +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
cdc6a87e8d
Fix docblock
2020-04-23 11:01:44 +02:00
Jordi Boggiano
9b8694bc0b
Show suggestions from root package in suggest, and lists them in count only on first install of a project, fixes #8805
2020-04-23 10:53:24 +02:00
Jordi Boggiano
6529fabb24
Add isFresh to InstalledRepositoryInterface and make sure local repo is always an InstalledRepositoryInterface
2020-04-23 10:52:33 +02:00
Jordi Boggiano
fa14cd1353
Show number of additional suggestions when not using --all, fixes #8788
2020-04-23 10:23:56 +02:00
Jordi Boggiano
d6a9d78309
Merge pull request #8810 from heddn/8809_expand_context_post_file_download
...
#8809 : expand context for post file download event
2020-04-22 17:14:45 +02:00
Jordi Boggiano
7049bbb714
Switch require_once to require for autoload_static as the once variant seems unnecessary
2020-04-22 17:05:37 +02:00
Jordi Boggiano
c2f77d80bd
Remove usage of 5.6+ constant
2020-04-22 16:40:42 +02:00
Jordi Boggiano
1000d49145
Fix error reporting when the root version changed since the last update, and does not match circular deps in lock file anymore
2020-04-22 14:02:09 +02:00
Jordi Boggiano
0ab48a1773
Add composer-runtime-api platform package
2020-04-22 12:10:09 +02:00
Jordi Boggiano
0d1922dc27
Add a Composer\Versions class which is available in all projects at runtime to query installed packages/versions
2020-04-22 12:10:09 +02:00
Jordi Boggiano
4ba958f08e
Merge pull request #8816 from staabm/patch-2
...
fixed typo in phpdocs
2020-04-22 07:38:54 +02:00
Pierre Grimaud
a42c6ceff3
Fix typos
2020-04-22 00:43:34 +02:00
Jordi Boggiano
2c8a4a1b93
Add platform-check config option to disable platform_check.php generation, and disable it for Composer
2020-04-21 15:25:35 +02:00
Markus Staab
3c09e4021e
fixed typo
2020-04-21 15:04:47 +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
c9846d4d3c
Merge pull request #8812 from nicolas-grekas/ext-check
...
Optimize extension checks
2020-04-21 11:45:26 +02:00
Nils Adermann
75f4116417
Merge pull request #8811 from Seldaek/fix-transaction-order
...
Fix transaction order
2020-04-21 11:38:59 +02:00
Jordi Boggiano
c41bb909ff
Add platform check file in phars, fixes #8813
2020-04-21 11:18:02 +02:00
Nicolas Grekas
6463ab9e49
Optimize extension checks
2020-04-21 09:35:34 +02:00
Yanick Witschi
e23710f92d
Implemented php version check in autoload.php ( #8546 )
2020-04-21 08:59:36 +02:00
Lucas D Hedding
2bf2e9fc60
fix failing tests
2020-04-20 14:40:25 -06:00
Jordi Boggiano
ba9d4793bc
Fix transaction order
2020-04-20 22:24:00 +02:00
Lucas D Hedding
3e2163de5c
#8809 : expand context for post file download event
2020-04-20 13:50:42 -06: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
424c08d6b2
Fix bug loading ~dev in some circumstances
2020-04-19 15:51:29 +02:00
Jordi Boggiano
b3f46979b0
Merge pull request #8802 from kubawerlos/command-validate-no-check-version
...
Add "no-check-version" option to ValidateCommand
2020-04-18 14:41:38 +02:00
Jordi Boggiano
c12a1a6d64
Update flag description
2020-04-18 14:41:04 +02:00
Kuba Werłos
a54bf0e2d4
Use flags instead of boolean in ConfigValidator for checking version field
2020-04-18 09:24:54 +02:00
Kuba Werłos
4ec73874cb
Add "no-check-version" option to ValidateCommand
2020-04-17 22:38:14 +02:00
Jérôme Tamarelle
bd34ff1328
Remove unused property $httpDownloader
2020-04-16 01:14:56 +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
5b54a93751
Fix phpstan build
2020-04-15 00:33:52 +02:00
Jordi Boggiano
44a4429978
Remove PEAR installer/downloader/repos/..., fixes #8778
2020-04-15 00:24:13 +02:00
Nils Adermann
5e9bf532c1
Merge pull request #8786 from Seldaek/unused-flag
...
Add --unused flag to remove command
2020-04-14 23:51:19 +02:00
Lucas Hedding
1883832ddc
Provides a post download event ( #8655 )
2020-04-14 23:48:18 +02:00
Jordi Boggiano
11765ddfea
Add --unused flag to remove command, fixes #8283
2020-04-14 23:42:49 +02:00
Jordi Boggiano
6bed9d8f13
Implement count and search correctly in FilterRepository
2020-04-14 22:55:53 +02:00
Jordi Boggiano
a0c5d519e9
Restore --no-suggest but mark it deprecated, remove --no-custom-installers and mark --dev also deprecated with stronger wording
2020-04-14 22:35:13 +02:00
Markus Staab
3819b02fea
added phpstan types to `CompletePackageInterface` ( #8782 )
2020-04-14 22:05:58 +02:00
Alexandre D'Eschambeault
e0e2bb11a5
Fix typo: directory instead of directoy
2020-04-13 19:45:35 -04:00
Jordi Boggiano
be1ddcf293
Fix handling of svn trunk in version guesser, fixes #8765
2020-04-13 12:48:43 +02:00
Jordi Boggiano
876136022b
Merge remote-tracking branch 'origin/1.10'
2020-04-13 12:41:30 +02:00
Jordi Boggiano
19902ba6a9
Merge pull request #8772 from villfa/fix/8771
...
Dispatch POST_STATUS_CMD even when there is no changes
2020-04-13 12:41:02 +02:00
Jordi Boggiano
2e7ace238a
Merge pull request #8767 from cebe/package-name-double-dash
...
Allow duplicate dashes in package names (1.10)
2020-04-13 12:37:41 +02:00
Jordi Boggiano
7d3f45cf04
Avoid errors in cleanup, fixes #8766 , fixes #8764
2020-04-13 12:15:17 +02:00
Jordi Boggiano
62fda2ed85
Reorg ComposerRepository to fix tests
2020-04-13 12:10:31 +02:00
Jordi Boggiano
048781c268
Fix whatProvides function declaration
2020-04-13 12:02:59 +02:00
Jordi Boggiano
3dd6dbe14a
Merge pull request #8774 from Ayesh/https
...
Update HTTP URLs to their HTTPS if they already redirect automatically
2020-04-13 11:52:21 +02:00
Jordi Boggiano
4ea6b1ef55
Make all params non-optional
2020-04-13 11:49:51 +02:00
Ayesh Karunaratne
fdb35a6a06
Fix \Composer\Installer\PackageEvent::__construct() and \Composer\Repository\ComposerRepository::isVersionAcceptable() required arguments used after optional, which is deprecated in PHP 8.0
...
1. `Deprecated: Required parameter $name follows optional parameter $constraint in src\Composer\Repository\ComposerRepository.php on line 745`
2. `Deprecated: Required parameter $operation follows optional parameter $operations in src\Composer\Installer\PackageEvent.php on line 73`
Optional parameters with a type declared, and a default value of `null` is excepted from this deprecation. See https://php.watch/versions/8.0/deprecate-required-param-after-optional . This is the case in `ComposerRepository::isVersionAcceptable`, which still has two optional parameters as first two parameters, but this will not raise a deprecation notice.
2020-04-13 07:12:35 +07:00
Ayesh Karunaratne
280f02b4bc
Update HTTP URLs to their HTTPS if they already redirect automatically
2020-04-13 06:22:02 +07:00
Fabien Villepinte
c718579623
Dispatch POST_STATUS_CMD even when there is no changes
2020-04-12 14:35:23 +02:00
Carsten Brandt
960fa4b205
Allow duplicate dashes in package names
...
fixes #8749
1.10 implementation of #8750
2020-04-10 19:01:06 +02:00
Jordi Boggiano
40a35abb94
Resolve options when creating requests to fix 5.3 build
2020-04-10 12:24:43 +02:00
Jordi Boggiano
4cb74d33e6
Forward default HttpDownloader options to RemoteFilesystem/CurlDownloader, fixes #8757
2020-04-10 12:10:30 +02:00
Jordi Boggiano
86cfbdc541
Merge branch '1.10'
2020-04-10 11:45:48 +02:00
Jordi Boggiano
2f7e901940
Fix #8748 in an alternative way to avoid messing with PATH for other binaries, fixes #8758
2020-04-10 11:42:52 +02:00
Jordi Boggiano
b3dbd95332
Fix PHP <5.6 syntax, fixes #8759 , closes #8760
2020-04-10 11:34:00 +02:00
Jordi Boggiano
a7ad186c89
Return early in case a call to the wrapped repo is unnecessary
2020-04-09 17:12:35 +02:00
Jordi Boggiano
096b507050
Merge branch '1.10'
2020-04-09 17:07:58 +02:00
Jordi Boggiano
e121de35a3
Fix variable used for symlinking absolute paths, refs #8700
2020-04-09 17:01:48 +02:00
Jordi Boggiano
f70b3b0152
Avoid warning about --2 usage when no channel is requested
2020-04-09 16:25:10 +02:00
Jordi Boggiano
8e664a37f5
Merge branch '1.10'
2020-04-09 16:13:15 +02:00
Jordi Boggiano
b79f2b5e0f
Make sure scripts calling composer call the correct composer binary even if the project requires composer/composer, fixes #8748
2020-04-09 15:43:47 +02:00
Jordi Boggiano
ccc8829ed9
Allow forcing self-update to stick to 1.x or 2.x using --1 and --2 flags, fixes #8753
2020-04-09 15:17:30 +02:00
Jordi Boggiano
28d26bd3a4
Merge pull request #8755 from Seldaek/repo-filtering
...
Add options to configure repository priorities
2020-04-09 14:02:33 +02:00
Markus Staab
6f6974df70
added phpdocs ( #8754 )
2020-04-09 13:44:30 +02:00
Jordi Boggiano
b6bad4eef6
Add options to configure repository priorities
2020-04-09 13:39:06 +02:00
Jordi Boggiano
59c831c2f8
Add docs to loadPackages
2020-04-09 11:50:37 +02:00
Jordi Boggiano
e34a2a9f45
Remove unused used vars
2020-04-09 11:23:25 +02:00
Jordi Boggiano
8b0da77a1d
Make sure cleanup is called for every package in case any operation fails to execute
2020-04-09 10:48:48 +02:00
Jordi Boggiano
55f122008b
Make sure we avoid cleanup running more than once per package on VcsDownloader
2020-04-09 10:32:59 +02:00
Matthias Van Woensel
067101dbf5
Only send GitHub API token to api.github.com domain ( #8747 )
2020-04-09 09:58:34 +02:00
Jordi Boggiano
0aaa815268
Merge branch '1.10'
2020-04-09 09:51:35 +02:00
Bingqing Wang
46db638678
fix typo
2020-04-09 09:50:38 +02:00
Bingqing Wang
63eb178297
compatible with symfony/console 5.0.0 getVerticalBorderChars() method
2020-04-09 09:50:19 +02:00
Jordi Boggiano
aa6be02c64
Allow COMPOSER_DISABLE_NETWORK to work with GitHubDriver by doing a cache priming pass first
2020-04-08 17:53:15 +02:00
Jordi Boggiano
9575c7623f
Update changelog, add upgrade guide
2020-04-08 16:44:32 +02:00
Jordi Boggiano
ee09b75be3
Clean ups
2020-04-08 15:55:51 +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
593d5abf27
use more precise phpstan/psam return-types ( #8744 )
2020-04-08 10:01:09 +02:00
Jordi Boggiano
736af4cb58
Add with-all-dependencies and update-with-all-dependencies args to remove command
2020-04-07 16:13:56 +02:00
Jordi Boggiano
52d1b52eb6
Merge branch '1.10'
2020-04-07 16:07:05 +02:00
Jordi Boggiano
11999118a5
Avoid failing on malformed funding info, fixes #8731
2020-04-07 16:04:58 +02:00
Jordi Boggiano
a8eec36931
Merge branch '1.10'
2020-04-07 16:00:11 +02:00
Jordi Boggiano
96c1ba279a
Add infos about plugin install failure
2020-04-07 15:55:59 +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
bbc4854452
Merge pull request #8740 from renanbr/patch-1
...
Remove duplicated `dry-run` option
2020-04-07 14:43:41 +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
Nils Adermann
cb68fc3134
Merge pull request #8690 from Seldaek/solver-problems
...
Error reporting improvements
2020-04-07 13:27:46 +02:00
Jordi Boggiano
d34ea60c48
canonicalize providers api url
2020-04-07 13:09:22 +02:00
Jordi Boggiano
3e19e3b0f1
Show alias of version in package lists in problems
2020-04-07 13:06:05 +02:00
Jordi Boggiano
7cca451312
Fix more issues with dev-master normalization in aliases
2020-04-07 13:06:04 +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
Renan
c4a3e912a1
Remove duplicated `dry-run` option
2020-04-07 12:28:17 +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
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
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
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
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
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
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
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
86677ad172
Avoid scanning files twice when generating optimized autoloaders, fixes #8683
2020-03-13 18:28:27 +01:00
Jáchym Toušek
3bf46a77f9
Update RequireCommand.php
2020-03-13 18:18:13 +01:00
Jáchym Toušek
bbb781b1ed
Add --dry-run to composer require
2020-03-13 14:40:25 +01:00
Jordi Boggiano
cbdf74eb34
Merge remote-tracking branch 'naderman/optimize-fixed-pkg-loading' into 2.0
2020-03-13 11:57:56 +01:00
Jordi Boggiano
cf5513f28d
Fix syntax error
2020-03-13 11:50:35 +01:00
Jordi Boggiano
0d2c2c044a
Avoid skipping feature branch detection if no branch-alias is defined at all
2020-03-13 11:39:19 +01:00
Jordi Boggiano
c2d0fed06b
Tweak lock repo name
2020-03-13 11:20:58 +01:00
Jordi Boggiano
3a9b786400
Bring suggest output in line with the rest of update/install output
2020-03-13 11:18:41 +01:00
Jordi Boggiano
e15f7d6bb7
Merge branch 'master' into 2.0
2020-03-13 11:18:23 +01:00
Aaron Johnson
b41e768e1f
Put backticks around command for readability.
...
Helps to promote the command to discern it from the sentence. :)
2020-03-12 23:17:14 -04:00
Nils Adermann
8a6382d78d
Remove unnecessary TODOs and skip EmptyConstraint like null
2020-03-12 18:12:05 +01:00
Nils Adermann
bbdbb3517b
PoolBuilder: Drop name constraints loop, already set earlier in same code
2020-03-12 16:45:09 +01:00
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
2020-03-12 16:43:08 +01:00
Jordi Boggiano
d58653627a
Optimize loading of deps from fixed packages
2020-03-12 16:40:30 +01:00
Jordi Boggiano
82e2a679bf
Add TODO note
2020-03-12 16:40:30 +01:00
Jordi Boggiano
08cee4c3e9
Implement getProviders equally on all repos
2020-03-12 15:39:26 +01:00
Jordi Boggiano
8a83d5cc35
Fix create-project command
2020-03-12 13:50:40 +01:00
Jordi Boggiano
d09daa8d5a
Merge pull request #8684 from naderman/dev-require-errors
...
Handle dev extraction exit codes instead of completing broken lock with errors
2020-03-12 13:20:55 +01:00
Nils Adermann
ee8df484c4
Separate createPool and createPoolWithAllPackages, fix test description
2020-03-12 13:17:04 +01:00
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
2020-03-12 12:19:46 +01:00
Jordi Boggiano
3d0d71367d
Doc updates
2020-03-12 08:37:01 +01:00
Jordi Boggiano
73a5cc63cc
Always use Removing for consistency between dry-run and actual install
2020-03-12 08:12:12 +01:00
Mathias Berchtold
1ebeb143ae
Fix PHP 8 warnings
...
The PR fixes this PHP 8 warning:
PHP Deprecated: Required parameter $ambiguousClasses follows optional parameter $blacklist in phar://.../composer.phar/src/Composer/Autoload/AutoloadGenerator.php on line 339
2020-03-11 23:00:04 -05:00
Nils Adermann
06f460c557
Remove trailing spaces from output
2020-03-11 21:32:55 +01:00
Nils Adermann
1f467046d7
Implement getProviders on reposet for all repo types and add replacers
...
This way errors during require dev extraction make more sense
2020-03-11 17:38:16 +01:00
Nils Adermann
ddb1e79bef
Handle dev extraction exit codes instead of completing broken lock with errors
2020-03-11 17:31:49 +01:00
Jordi Boggiano
9c84f4d79f
Make sure InstalledRepository itself can be added too but requires allowing installed repos in reposet
2020-03-11 17:02:25 +01:00
Jordi Boggiano
589aa351a8
Change Uninstalling to Removing in lock operations
2020-03-11 16:44:08 +01:00
Jordi Boggiano
ba04a46cae
Fix 5.3 issue
2020-03-11 16:20:35 +01:00
Jordi Boggiano
d13ce20b6e
Fix handling of composer repos with v1 version_normalized format
2020-03-11 16:11:12 +01:00
Jordi Boggiano
a453792d6b
Merge pull request #8682 from glaubinix/f/gitlab-guest-token-access
...
GitLab: properly handle token which has Guest only access
2020-03-11 15:34:25 +01:00
Jordi Boggiano
d559bf5387
Allow configuring a path repo to an empty path as long as using wildcards and the wildcard root exists, fixes #8679
2020-03-11 15:33:14 +01:00
Stephan
402c64c271
Update src/Composer/Repository/Vcs/GitLabDriver.php
...
Co-Authored-By: Jordi Boggiano <j.boggiano@seld.be>
2020-03-11 15:17:12 +01:00
Jordi Boggiano
a7a975ec1c
Alias dev-master/trunk/default to 9999999-dev instead of normalizing the version to that, fixes #8323
2020-03-11 15:04:18 +01:00
Stephan Vock
55d252b9c3
GitLab: properly handle token which has Guest only access
2020-03-11 13:35:28 +01:00
Jordi Boggiano
97e2a249e8
Merge branch 'master' into 2.0
2020-03-11 09:34:55 +01:00
Jordi Boggiano
d271004b30
Also check for package requiring itself in require, not only require-dev
2020-03-10 17:00:28 +01:00
Jordi Boggiano
5c4ef1eb96
Make package name validation a hard failure, fixes #7875
2020-03-10 16:57:34 +01:00
Jordi Boggiano
c033644f8b
Present lock changes alphabetically, with uninstalls first, then all install/updates mixed
2020-03-10 16:08:40 +01:00
Jordi Boggiano
24a5a0dacb
Skip invalid PSR-0/4 classes from optimized autoloader, fixes #8403
2020-03-10 15:40:45 +01:00
Jordi Boggiano
94e6cfc521
Only show direct dependencies suggestions by default, add --all flag to see all in suggest command, fixes #8660
2020-03-10 15:09:28 +01:00
Jordi Boggiano
2445ef5e1f
Refactor check-platform-reqs to use InstalledRepository and look for providers as well as platform packages, fixes #8645 , closes #8676
...
Co-authored-by: Ellis <eantaya@nuglif.com>
Co-authored-by: Jordi Boggiano <j.boggiano@seld.be>
2020-03-10 14:53:42 +01:00
Jordi Boggiano
d63eb8179e
Merge branch 'master' into 2.0
2020-03-10 14:05:33 +01:00
Jordi Boggiano
f964b83018
Add bearer support in config command and add to docs/schema, refs #8671
2020-03-10 13:39:26 +01:00
Jordi Boggiano
0b993ba4b9
Merge pull request #8671 from ethanclevenger91/ethanclevenger91/explicit-bearer-support
...
Bearer support.
2020-03-10 13:33:02 +01:00
Jordi Boggiano
479414d8bd
Move bearer auth to be first to make sure it does not get shadowed by github/gitlab/.. configs
2020-03-10 13:26:53 +01:00
Jordi Boggiano
9d72c92f07
Avoid looping endlessly for invalid GitLab tokens in git config, fixes #8667
2020-03-10 11:25:45 +01:00
Jordi Boggiano
34fb609aad
Merge pull request #8652 from clxmstaab/more-ambiguous
...
report ambiguous classes across all classmaps
2020-03-10 10:47:37 +01:00
Jordi Boggiano
beb64914a3
Retrieve latest funding info for all packages in fund command
2020-03-06 17:01:59 +01:00
Ethan Clevenger
cbec8ceb53
Bearer support.
2020-03-04 15:01:35 -08:00
Markus Staab
cc5c5dbee1
merge fix from https://github.com/composer/composer/pull/8651
2020-03-02 13:28:10 +01:00
Markus Staab
04a18c72ba
fix CS
2020-03-02 13:25:54 +01:00
Markus Staab
883a179dec
removed superflous code
2020-03-02 13:24:06 +01:00
Markus Staab
61e0bf1cb5
fix typo
2020-03-02 13:23:33 +01:00
Jordi Boggiano
6d3d7c39ac
Merge pull request #8621 from remorhaz/master
...
Fix incorrect --no-dev handling of replaced packages
2020-02-28 23:49:09 +01:00
Jordi Boggiano
6cf54170cc
Avoid mixing write/writeError which causes issues on some terminals, fixes #8656
2020-02-28 22:42:52 +01:00
Jordi Boggiano
2285a79c63
Merge pull request #8641 from souweb22/delete_return
...
delete 'return' and 'spaces' in Filesystem.php
2020-02-28 22:28:14 +01:00
Jordi Boggiano
c5ce4de89e
Consistently return void
2020-02-28 22:27:53 +01:00
Jordi Boggiano
eb56c8dcd4
Merge pull request #8640 from souweb22/fix_doc
...
add 'array' to document in ConfigSourceInterface.php
2020-02-28 22:04:28 +01:00
Jordi Boggiano
5d970022e8
Normalize output of create-project target path, refs #8609 , refs #8412
2020-02-28 17:02:15 +01:00
Jordi Boggiano
919fa60579
Merge pull request #8611 from ol0lll/fix/create-project-with-absolute-path
...
Create project with absolute path(fixes #8609 )
2020-02-28 16:59:29 +01:00
Jordi Boggiano
c6969756e8
Make sure $_SERVER is updated when putenv updates environment variables, fixes #8298
2020-02-28 16:27:06 +01:00
Jordi Boggiano
7a270955f5
Fix issues handling branch names with pipes in them
2020-02-28 16:00:45 +01:00
Jordi Boggiano
80875e896d
Merge branch 'master' into 2.0
2020-02-28 14:54:09 +01:00
Jordi Boggiano
05737a46fb
Improve funding info parsing
2020-02-28 14:52:29 +01:00
Jordi Boggiano
9cab8c10cc
Merge branch 'master' into 2.0
2020-02-28 13:31:56 +01:00
Jordi Boggiano
0b9c658bef
Add plugin-api-version used to generate a lock file in itself
2020-02-28 10:21:24 +01:00
Jordi Boggiano
c4f19e51d8
Rework the funding info parsing to avoid requiring graphql permissions
2020-02-28 09:09:23 +01:00
remorhaz
339ee953e5
Fix incorrect --no-dev handling of replaced packages
2020-02-26 17:39:26 +02:00
Markus Staab
30b1dfb8a9
report ambiguous classes across all classmaps
2020-02-25 16:09:36 +01:00
arai
e61b559eb2
delete 'return' in Filesystem.php
2020-02-23 21:38:14 +09:00
arai
766c8d448c
add 'array' to document in ConfigSourceInterface.php
2020-02-23 21:31:28 +09:00
Jordi Boggiano
a2eb0bab12
Abort loop correctly when package is a match
2020-02-18 08:28:35 +01:00
Jordi Boggiano
5b41b78809
Optimize findPackagesWithReplacersAndProviders to avoid multiple loops over replace/provide links
2020-02-18 08:10:54 +01:00
Jordi Boggiano
20e4cc3b6f
Fix finding replacers/providers to check constraints correctly
2020-02-17 11:23:15 +01:00
arai
1f08138379
Delete variable
2020-02-16 13:34:08 +09:00
Volker Killesreiter
e532e70b22
Revert "Chore: Use consistent directory path"
...
This reverts commit 43e0321ee7
.
2020-02-14 19:54:18 +01:00
Jordi Boggiano
2e82e34fe0
Merge branch 'master' into 2.0
2020-02-14 17:03:29 +01:00
Jordi Boggiano
4f59162827
Fix class name of caught exception
2020-02-14 17:03:22 +01:00
Jordi Boggiano
0ad322e51f
Fix tests
2020-02-14 16:55:21 +01:00
Jordi Boggiano
ee2252c6ac
Add lint check after phar is built
...
The initial 1.10.0-RC build (593b8dfb29
)
had what looks like a bit flip of one > into a :, causing a parse error as $foo->bar became $foo-:bar in some class.
This is quite unpleasant and easy to miss as it requires including the file in question before the error is spotted.
It was quite lucky I ran a composer install with the new phar right after to do something else and spotted the error.
Linting all files covers this problem mostly, at least for the PHP files.
2020-02-14 16:36:14 +01:00
Jordi Boggiano
bc002ae1fb
Merge branch 'master' into 2.0
2020-02-14 15:42:17 +01:00
Jordi Boggiano
055a179cc5
Merge pull request #8453 from naderman/funding
...
Add funding field to composer.json and composer fund command
2020-02-14 14:27:12 +01:00
Jordi Boggiano
8dc055bec7
Fix 5.3 syntax
2020-02-14 14:18:26 +01:00
Jordi Boggiano
653e62f201
Merge pull request #8605 from guilliamxavier/fix-validate-strict-warnings
...
Fix validate strict warnings
2020-02-14 14:14:21 +01:00
Jordi Boggiano
4ebc318510
Fix 5.3/5.4 builds
2020-02-14 14:10:42 +01:00
Jordi Boggiano
77a477fb57
Add FundCommand
2020-02-14 14:08:38 +01:00
Jordi Boggiano
f171d1fd89
Avoid requiring auth for the funding API access
2020-02-14 11:50:56 +01:00
Guilliam Xavier
a17e7e9bd3
ValidateCommand: fix array syntax for PHP 5.3
2020-02-14 10:57:19 +01:00
Jordi Boggiano
b033a2ae81
Retrieve funding info from github into composer.json if not declared there
2020-02-14 10:55:22 +01:00
Jordi Boggiano
ff8bf0ab82
Clarify code
...
Co-Authored-By: Guilliam Xavier <guilliamxavier@users.noreply.github.com>
2020-02-14 10:45:35 +01:00
Guilliam Xavier
a222ec5b36
ValidateCommand: remove actually unused code
2020-02-14 10:19:27 +01:00
Nils Adermann
d665ea7ea9
After update and install commands display how many packages want funding
2020-02-14 10:08:36 +01:00
Nils Adermann
5c4f524d6a
Add funding field to composer.json
...
You can specify a list of funding options each with a type and URL. The
type is used to specify the kind of funding or the platform through
which funding is possible.
2020-02-14 10:08:35 +01:00
Jordi Boggiano
8fd70d2dc4
Target ClassMapGenerator ignoring of invalid PSR classes for 2.0
2020-02-14 10:07:51 +01:00
Jordi Boggiano
fe5b4fa4cc
Merge pull request #8597 from glaubinix/t/log-git-sync-mirror-error
...
Git: log error for sync mirror with existing local copy
2020-02-14 09:58:28 +01:00
Jordi Boggiano
850bfcddfa
Fix json manipulation fallback handling of empty objects, fixes #8600
2020-02-14 09:33:53 +01:00
Jordi Boggiano
71005091f0
Fix invalid access to private prop
2020-02-13 22:19:32 +01:00
Jordi Boggiano
2d8a8ed7e3
Add InstalledRepository to clean up some concepts and usages, remove BaseRepository
2020-02-13 21:44:24 +01:00
Jordi Boggiano
78885c556a
Add missing use statement
2020-02-13 18:05:04 +01:00
Jordi Boggiano
c5c6d44a0b
Refactor away some unnecessary RepositorySet usages
2020-02-13 17:51:22 +01:00
Jordi Boggiano
f35cd8948a
Minor refactoring of RootPackageRepo
2020-02-13 16:29:57 +01:00
Jordi Boggiano
44d1e15294
Simplify suggester output when updating, refactor suggest command to reuse SuggestedPackagesReporter and make smarter defaults, fixes #6267
2020-02-13 16:13:29 +01:00
Guilliam Xavier
35562dcd49
ValidateCommand: add a comment that we didn't forget $lockErrors
2020-02-13 15:48:36 +01:00
Guilliam Xavier
2f4bd85219
ValidateCommand: de-invert if-elseif-else to reduce code duplication
2020-02-13 14:57:38 +01:00
Guilliam Xavier
901d177179
ValidateCommand: factorize $printSchemaUrl code
2020-02-13 14:46:50 +01:00
Guilliam Xavier
b5e41d6792
ValidateCommand: always display all warnings, independently of --strict
2020-02-13 14:43:26 +01:00
Guilliam Xavier
7e2679ffc1
ValidateCommand: pass $isStrict to outputResult() of with-dependencies too
2020-02-13 14:37:08 +01:00
Jordi Boggiano
d52ce3c37f
Replace pre/post-dependencies-solving by a pre-operations-exec event happening only on install from lock
2020-02-12 14:35:31 +01:00
Stephan Vock
243ee9b1e4
Git: log error for sync mirror with existing local copy
2020-02-12 10:17:21 +00:00
Jordi Boggiano
835a91532d
Add PRE_POOL_CREATE event, fixes #8348
2020-02-12 10:41:04 +01:00
Jordi Boggiano
71855e6430
Restore PRE/POST_DEPENDENCY_SOLVING events
2020-02-12 10:41:03 +01:00
Jordi Boggiano
4d74f5ba95
Fix exclude-from-classmap handling to avoid foo matching foo* directories, fixes #8563 , refs #8575
2020-02-12 10:23:03 +01:00
Jordi Boggiano
7e142b5d6b
Use Upgrading for package installs too
2020-02-11 17:51:02 +01:00
Jordi Boggiano
02433c3659
Merge pull request #8565 from glaubinix/t/create-project-add-repository
...
Create project: add option to add the repository to the composer.json
2020-02-11 13:47:34 +01:00
Jordi Boggiano
9609729de7
Change update to upgrade for package update operations which are upgrades, refs #8594
2020-02-11 13:43:38 +01:00
Jordi Boggiano
be8dd528b8
Merge remote-tracking branch 'origin/master' into 2.0
2020-02-11 11:33:52 +01:00
Jordi Boggiano
ef249ef6b6
Add support for lib-zip platform package
2020-02-11 11:01:20 +01:00
Ion Bazan
a180f48921
Distinguish between updates and downgrades in dry-run
2020-02-11 16:35:35 +08:00
Stephan Vock
2a564a9f36
Create project: add option to add the repository to the composer.json
2020-02-10 16:46:28 +00:00
Jordi Boggiano
5843a282bc
Merge pull request #8562 from adrianosferreira/fix-archive-format-cli
...
Uses config data from Composer object whenever possible on ArchiveCommand
2020-02-10 17:26:26 +01:00
Adriano Ferreira
97d077c43b
Uses config data from Composer object whenever possible on ArchiveCommand
...
It was previously blindly getting a new instance from the factory thus ignoring what is on Composer object config data.
2020-02-10 13:15:58 -02:00
Jordi Boggiano
589abb06a3
PHPStan fixes
2020-02-07 23:10:10 +01:00
Jordi Boggiano
c56886ac36
Avoid checking for .dockerenv if open_basedir is set, fixes #8585
2020-02-07 22:33:39 +01:00
Jordi Boggiano
45ecbae8f5
Merge branch 'master' into 2.0
2020-02-07 22:20:51 +01:00
Ion Bazan
2ff73a8797
respect `notify-on-install` option
2020-02-05 15:52:14 +08:00
Jordi Boggiano
4e4304ae7d
Fix
2020-02-04 13:22:46 +01:00
Jordi Boggiano
0b4763e6c7
Make it clear which package the error is for when detecting uncommitted changes
2020-02-04 13:06:20 +01:00
Jordi Boggiano
006c3de542
Fix tests and make TTY usage on ProcessExecutor cleaner
2020-01-31 16:33:34 +01:00
Jordi Boggiano
f572636628
Add support for TTY mode on Linux/OSX in script handlers when running in interactive mode, fixes #5856 , fixes #3299 , closes #4036
2020-01-31 15:45:33 +01:00
Jérôme Billiras
58e2956b95
Allow referencing scripts to extends @composer
2020-01-31 14:56:22 +01:00
Jordi Boggiano
d14d411fa4
Add --dry-run to require and remove commands, fixes #7793
2020-01-31 14:34:10 +01:00
Nils Adermann
fdfdee03c1
Remove unused argument to pool->match
2020-01-30 22:54:59 +01:00
Nils Adermann
4f44b7b221
Remove unused policy function findUpdatePackages
2020-01-30 22:49:15 +01:00
Jordi Boggiano
a1fe64152d
Minor Installer cleanups
2020-01-30 21:03:35 +01:00
Jordi Boggiano
2f4ea3a463
Fix show command, refactor RepositorySet constructor
2020-01-30 20:21:17 +01:00
Jordi Boggiano
38f6ae2c4e
Fix react/promise usage for v2
2020-01-30 17:30:38 +01:00
Jordi Boggiano
189d5adab0
Fix reporting of replace conflicts to not mention provides
2020-01-30 17:13:12 +01:00
Jordi Boggiano
ec90c17e3b
Fix conflict order to be more accurate
2020-01-30 15:55:37 +01:00
Jordi Boggiano
1e68555e0a
Sanitize URLs in getRepoName and centralize the Url sanitization process
2020-01-30 15:50:46 +01:00
Jordi Boggiano
c41df325d8
Remove RepositorySet from Solver and remove getPool from RepositorySet
2020-01-30 15:23:22 +01:00
Jordi Boggiano
1d4cdb60d0
Improve error reporting for conflicts/replaces of various kinds, fixes #7254
2020-01-30 14:43:56 +01:00
Jordi Boggiano
6c9d9e775c
Clean up and deduplicate the output of RULE_LEARNED
2020-01-30 14:43:56 +01:00
Jordi Boggiano
29efc473a1
Suggest which providers could be required to fulfill a virtual package requirement, fixes #2811
2020-01-30 14:43:55 +01:00
Jordi Boggiano
3fc7e10c5c
Improve error reporting of solver issues, refs #7779
...
Fixes #8525
Fixes #6513
2020-01-30 14:43:54 +01:00
Jordi Boggiano
f611c641db
Merge pull request #8561 from Seldaek/allow-providers-even-on-match
...
Allow providers which are selected to be installed in place of existing packages which do not satisfy requirements
2020-01-30 14:22:42 +01:00
Jordi Boggiano
46e35bc8d7
Fix 5.3/undef var issues
2020-01-30 14:17:49 +01:00
Jordi Boggiano
8a41f1a5ca
Allow providers which are selected to be installed in place of existing packages which do not satisfy requirements, fixes #6753
2020-01-30 14:09:55 +01:00
Jordi Boggiano
2901995fc8
Fix issue excluding unstable packages when stabilityFlags are empty
2020-01-30 10:17:42 +01:00
Jordi Boggiano
8f09f3764b
Avoid fetching non-existing files multiple times
2020-01-30 08:40:35 +01:00