1119 Commits (a5e35f911bfc58607f1d2762182b3bea01a263b0)

Author SHA1 Message Date
Jordi Boggiano 6c1f0cdf24
Handle edge cases too in removeDirectoryPhp to avoid trying to delete symlinks and such, fixes #9955 3 years ago
Jordi Boggiano f61f2c6872
Also free $file just in case 3 years ago
Jordi Boggiano c4f675fe84
Fix virtualbox filesystem issue when installing packages, fixes #9945 3 years ago
Jordi Boggiano c1f0eee154
Revert "Attempt fixing virtualbox issues, refs #9945"
This reverts commit 7a7e0cc031.
3 years ago
Jordi Boggiano 7a7e0cc031
Attempt fixing virtualbox issues, refs #9945 3 years ago
Jordi Boggiano 288e19153d
Alternative fix for #9941 to avoid code duplication 3 years ago
Jordi Boggiano d77ff0f729
Workaround for PCRE regression 3 years ago
Jordi Boggiano 1b34495daa
Some phpstan level 4 fixes 3 years ago
Jordi Boggiano 4c9e75c6e5
Fix CS 3 years ago
Jordi Boggiano 10e634890e
Good morning 😴 3 years ago
Jordi Boggiano 91dd175f74
Fix env var handling when variables_order includes E and symfony/console 3.3.15+ is used, fixes #9930 3 years ago
Jordi Boggiano 93a5b27631
Add prettyVersion to URL placeholders 3 years ago
Guilliam Xavier 41c66b1a2d Revert "Update docs and add more helpful output to validate command, refs #9782"
This reverts commit 458bd41d8f.
3 years ago
Jordi Boggiano 458bd41d8f
Update docs and add more helpful output to validate command, refs #9782 3 years ago
Jordi Boggiano 991985792d
Merge branch '2.0' 3 years ago
Jordi Boggiano 251b852fd2
Make sure async processes fail the promise if they fail to start, fixes #9808 3 years ago
Jordi Boggiano 9ba042ded8
Add Platform-PHP version to user-agent header to improve targetted-php stats (#9873) 3 years ago
Jordi Boggiano 5bf614a762
Merge branch '2.0' 3 years ago
Jordi Boggiano dd54f295fe
Fix progress output, and remove progress bar on CI env, fixes #9621, closes #9880 3 years ago
Jordi Boggiano 3380178798
Introduce a cross-platform safe version of is_readable to support UNC / wsl$ paths on Windows (#9861) 3 years ago
Markus Staab bfea0f7d1e
BinaryInstaller: install full binaries on WSL when bin-compat=auto (#9855) 3 years ago
Jordi Boggiano 40c7a725e1
Merge branch '2.0' 3 years ago
Jordi Boggiano 332c46af8b
Merge pull request from GHSA-h5h8-pc6h-jvvx
* Fix external process calls to avoid user input being able to pass extra parameters

* Tweak some fixes
3 years ago
Jordi Boggiano 083b73515d
Merge pull request from GHSA-h5h8-pc6h-jvvx
* Fix external process calls to avoid user input being able to pass extra parameters

* Tweak some fixes
3 years ago
Markus Staab 7c602d8807
Added link to composer.org docs on ProcessTimedOutException (#9796) 3 years ago
Jordi Boggiano a4eb2d4096
Merge branch '2.0' 4 years ago
Jordi Boggiano ddc3693725
Switch to composer/metadata-minifier, fixes #9727 4 years ago
Jordi Boggiano dca8bd7197
Merge branch '2.0' 4 years ago
Jordi Boggiano dc84dbbbf7
Fixed detection of hg version when localized, fixes #9753 4 years ago
Jordi Boggiano 53a974f9c9
Tweak virtualbox detection and improve it by detecting vbox additions, refs #9627 4 years ago
Jordi Boggiano 836ca051d3
Merge branch '1.10' into 2.0 4 years ago
Jordi Boggiano 96acad1e45
Update github token pattern to match their latest updates 4 years ago
Jordi Boggiano bf73a20bc0
Merge branch '2.0' 4 years ago
Stephan 2f4b99eacd
MaxFileSizeException should reject download job (#9778) 4 years ago
Jordi Boggiano 346356a4dd
Fix phpdoc 4 years ago
Jordi Boggiano 5d6f9b2528
Prefer @phpstan- annotations as that is what we run against 4 years ago
Jordi Boggiano b40b93bc7d
Merge branch '2.0' 4 years ago
Jordi Boggiano 414586ba05
Attempt working around Vagrant filesystem issues, added COMPOSER_RUNTIME_ENV env var (set to vagrant), fixes #9627 4 years ago
Jordi Boggiano 059b5b197d
Merge branch '2.0' 4 years ago
Jordi Boggiano c81562b343
Merge branch '1.10' into 2.0 4 years ago
Jordi Boggiano 54889ca109
Document GH token usage and also make sure we redact them in Process debug output, refs #9757 4 years ago
Jordi Boggiano 4940009f83
Bump phpstan to level 3 (#9734)
Clean up PackageInterface/CompletePackageInterface, add missing methods, type things in solver as BasePackage, added CompleteAliasPackage, ..
4 years ago
Jordi Boggiano d0b399b788
Merge branch '2.0' 4 years ago
John Stevenson 4f47a4c667
Proxy handling docs and tweaks (#9735) 4 years ago
Jordi Boggiano 40800df6bd
Fix CS 4 years ago
Markus Staab a5fecc4720
Filesystem: added removeDirectoryAsync() and use it in ArchiveDownloader (#9618)
This turns half of the `rm -rf ...` executions during package installs async and therefore improves performance
4 years ago
Jordi Boggiano bbd87934e9
Make sure we always pass a string to strtoupper 4 years ago
Jordi Boggiano 31d9f51572
Auto-detect mingw and assume it is interactive, fixes #9690 4 years ago
Jordi Boggiano e7f6dd287c
Merge branch '1.10' 4 years ago
Jordi Boggiano abcf9e993b
Fix processes silently ignoring the CWD when it does not exist, refs #9694 4 years ago
Jordi Boggiano f37f3dab04
Fix abort of downloads and zip extraction to happen immediately, fixes #9390 4 years ago
Jordi Boggiano 40095b20dc
Allow tweaking the max parallel http requests via env var, fixes #9671 4 years ago
Jordi Boggiano 8d94e25c2f
Minor fixes 4 years ago
Jordi Boggiano 6a869ede77
Fail early if git/hg/svn can not be found on the system, so that download can be retried from dist, fixes #9681 4 years ago
Jordi Boggiano 4ade9bd960
Avoid accessing undefined indices, fixes #9654 4 years ago
Jordi Boggiano 1a0e578b14
Remove ungreedy modifier and make a few domain matches case insensitive, fixes #9656 4 years ago
Jordi Boggiano 125f8a3319
Merge branch '1.10' 4 years ago
Jordi Boggiano 2cb9630320
Fix $_SERVER var not being updated when using putenv, refs b80038804f and fixes #9372 4 years ago
Jordi Boggiano 5c35f37f92
Properly handle installed repos as additionalFixedRepository, fixes #9574 4 years ago
Jordi Boggiano c800db04d3
Merge pull request #9616 from clxmstaab/fast-first
Filesystem: use fast operation first in emptyDirectory()
4 years ago
Jordi Boggiano 09bf5ec85c
Merge pull request #9615 from clxmstaab/is-dir
Filesystem: use is_dir() instead of file_exists() which is faster
4 years ago
Jordi Boggiano c33f2615b5
Include json response bodies in transport exceptions, fixes #9606 4 years ago
Jordi Boggiano 7ea17d7db9
Merge remote-tracking branch 'naderman/curl-download-performance-select-not-sleep' 4 years ago
Markus Staab 62817a4cb2 fast operation first 4 years ago
Markus Staab 6774e7ee29 Filesystem: use fast operation first in emptyDirectory() 4 years ago
Markus Staab 6552b85100 Filesystem: use is_dir() instead of file_exists() which is faster
this reproducible saves 1-2 seconds while running `COMPOSER_DISABLE_NETWORK=1 php
 composer/bin/composer install -vvv --profile` on the rector/rector project
4 years ago
Nils Adermann 8a85a79b50 Remove debug output 4 years ago
Nils Adermann f72ad485ef Revert lastInfoUpdate change to keep full comaptibility to current behavior 4 years ago
Jordi Boggiano 147d884996
Also avoid matching .git suffix in bitbucket URLs, refs #9590 4 years ago
Nils Adermann d665301368 Rewrite while if return as do while 4 years ago
Nils Adermann c043fe841b Remove sleeps from curl handling, select it is responsible for waiting
The current sleeps mean that large files download slowly as select would
return quickly when data has arrived and needs to be processed, but the
sleep waits while the buffers are full.

On the flipside we need to ensure that some code that would keep the CPU
busy if run too often does not get run every time select returns.
4 years ago
Jordi Boggiano a20ee1a448
Avoid matching .git suffix if present in private github URLs, fixes #9590 4 years ago
Wissem Riahi f7bf635440 Add response info for 3xx/4xx/5xx http responses 4 years ago
Wissem Riahi bdecb4711d Add all curl_getinfo into the response and exception for curl requests 4 years ago
Wissem Riahi a5d79db0a7 Make sure total_time_us from curl progress is set 4 years ago
Wissem Riahi 370e082b4a Add saving time duration for curl HTTP requests 4 years ago
Michael Voříšek b4cb2f7321 test before chdir 4 years ago
Michael Voříšek e712130062
Fix for php8 when symlink function is disabled 4 years ago
Jordi Boggiano 08f0af4623
Add docblocks to HttpDownloader, refs #9209 4 years ago
Jordi Boggiano e8a3a33023
Also output headers 4 years ago
Jordi Boggiano 8030fbc4ae
Add debug info for http status code 0 4 years ago
Jordi Boggiano b7d770659b
CS fixes 4 years ago
Andrés De la Cruz 480a6439fd
Fix phpstan phpdocs issues (#9478) 4 years ago
Jordi Boggiano 5248d6c9f1
Improve curl error reporting some more 4 years ago
Jordi Boggiano 852990d06c
Make sure git gc runs if needed when syncing git mirrors in cache dir to avoid them getting very stale 4 years ago
Jordi Boggiano 6937fedaa9
Update user-agent to use cURL instead of curl, fixes #9492 4 years ago
Jordi Boggiano 8ed2aa8d6d
Make sure curl errors without message are shown as code, and add URL linked to the failure 4 years ago
Jordi Boggiano 595c4c6f75
Make sure we handle cases where STDIN/STDOUT may not be defined 4 years ago
Jordi Boggiano cc536c7f45
Fix/normalize tty handling 4 years ago
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 4 years ago
Tom Klingenberg 258f6dc1a2 Reference co-relating code sequence for tty test, refs #9454 4 years ago
Jordi Boggiano 4468248c46
Merge remote-tracking branch 'Serializator/reject-promise-on-exception-9424' 4 years ago
Jordi Boggiano 1496277697
Disable TTY mode if STDOUT is not a TTY, fixes #9454 4 years ago
Markus Staab bfafead42e
Fixed phpdocs 4 years ago
Julian van den Berkmortel 23a1d783db Reject job within "HttpDownloader" when an exception is thrown, refs #9424 4 years ago
Jordi Boggiano 3f6899946b
Avoid using curl when it has been disabled, fixes #9423 4 years ago
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 4 years ago
johnstevenson cda49323eb Remove CURLOPT_SSL_FALSESTART option. Fixes #9405 4 years ago
Stephan Vock 0747b072be RemoteFileSystem: don't throw zlib error on empty response 4 years ago
Jordi Boggiano 36a9c47830
Fix typo from a637072058 4 years ago
Jordi Boggiano a637072058
Fix canUseCurl logic to allow local_cert/local_pk to reach curl, refs #9384 4 years ago
Jordi Boggiano ce7cc3b444
Merge remote-tracking branch 'rtm-ctrlz/master' 4 years ago
Jordi Boggiano 0a356b8a39
Merge branch '1.10' 4 years ago
Jordi Boggiano 78797df5f8
Fix bitbucket handling, fixes #9369 4 years ago
Jordi Boggiano d25e66ad53
Display auth again for an origin if the auth type changes 4 years ago
Jordi Boggiano 1d7ed333c9
Make sure curl is only used when safe to do so, fixes #9381 4 years ago
Jordi Boggiano 8f9486b20e
redirects are handled in userland now so no need for this hack anymore 4 years ago
Ilia Urvachev 4faaf79b58
CurlDownloader enable support for SSL-client certificates 4 years ago
Jordi Boggiano 41daf69c87
Merge pull request #9379 from glaubinix/f/zip-util
Zip: ignore mac osx specific folder when searching for composer.json
4 years ago
Jordi Boggiano 34bdc6cbf2
Detect and hint for solutions for common curl errors, fixes #9376 4 years ago
Stephan Vock d97c37f103 Zip: ignore mac osx specific folder when searching for composer.json 4 years ago
Jordi Boggiano 472f78bff1
Auto-disable misbehaving curl downloader on php 5, refs #9002 4 years ago
Jordi Boggiano 881ec8c751
Use httpdownloader/curl to process install notifications 4 years ago
johnstevenson c99e19db64 Fix logic (again) 4 years ago
johnstevenson 2a913c7a68 Improve proxy error messages for streams 4 years ago
Jordi Boggiano 62eff8e979
Tweaks to new proxying code, refs #9324 4 years ago
johnstevenson d47261eb93 Refactor proxy handling for Composer2 4 years ago
Nils Adermann e868996bdd Validate: Warn about providing or replacing packages you require 4 years ago
Jordi Boggiano 8564dd8dac
Allow Url::sanitize to escape URLs without scheme 4 years ago
johnstevenson 8feb83b22b
Remove duplicate StreamContextFactory ssl options
Added in Dec 2014 (commit 8dad846), superseded in Jan 2016 (pr #4759)
4 years ago
Nils Adermann 6409ed0fc2 Validate: Warn about providing or replacing packages you require 4 years ago
Jordi Boggiano c5d8a13bc4
Bump curl timeout to 300 4 years ago
Jordi Boggiano aac1a25ee3
Merge pull request #9278 from Seldaek/plugin-helpers
Plugin helpers for v2
4 years ago
Jordi Boggiano f87b1642bc
Expand docs 4 years ago
Jordi Boggiano 431dc0d526
Add sync helper to give plugins utilities to work with async stuff more easily when one does not care about async 4 years ago
Jordi Boggiano 7917a7e757
Allow fetching the http downloader and process executor from the loop 4 years ago
Simon Berger 2223b93efd Several small code improvements 4 years ago
Simon Berger 80d71ccb3f Merged isset, unset and str_replace calls 4 years ago
Simon Berger 974e7ba296 Removed unneccesary elseifs 4 years ago
Simon Berger 80a75e9959 Minor code improvements 4 years ago
Simon Berger 7053b6f761 Fixed function case declaration <> call 4 years ago
Simon Berger 33d7a64df9 Removed unused private functions 4 years ago
Simon Berger a6475a7118 Removed unused variables, properties and parameters of private functions 4 years ago
Simon Berger 002fd39bc6 Removed passing of parameters with default value 4 years ago
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
4 years ago
Simon Berger 7ef87626ac Fixed self usage in closure fails on PHP 5.3 4 years ago
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
4 years ago
Jordi Boggiano 45653c55d8
Handle authentication for api domains of GitHub/Bitbucket, fixes #9173 4 years ago
Stephan 32a0563443 RemoteFileSystem: catch decode errors for content length mismatch 4 years ago
Stephan 3b2d91975e RemoteFileSystem: response decode for TransportException 4 years ago
Jordi Boggiano 9e77514764
Merge pull request #9156 from Ayesh/gitlab-repos
AuthHelper: Allow fall-through GitLab-specific HTTP headers for auth
4 years ago
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.
4 years ago
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.
4 years ago
Stephan d140a842fa RemoteFilesystem: avoid warning when setting max file size 4 years ago
Stephan a16f32484b Downloader: add a max_file_size to prevent too big files to be downloaded 4 years ago
Jordi Boggiano 4d20e6f5d6
Move Version util to Platform namespace, fix CS nitpicks, make regexes case insensitive for robustness, refs #9093 4 years ago
Jordi Boggiano 7e1ef19a5a
Expand library version checking capabilities (closes #9093) 4 years ago
Wissem Riahi 657ae5519e
Add support for TAR in Artifact packages (#9105) 4 years ago
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
4 years ago
Wissem Riahi c353ac835c
Add exception for multiple composer.json files (#3) 4 years ago