810 Commits (3cdca37e8588d262efbb3b589f8a68eea73738a2)

Author SHA1 Message Date
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 d75d79b452
Merge pull request #9822 from phenaproxima/post-file-download
Fire POST_FILE_DOWNLOAD event for metadata fetched by ComposerRepository
3 years ago
Jordi Boggiano 7dd95a768b
Clean stuff up and deprecate old usages for PostFileDownloadEvent 3 years ago
Jordi Boggiano bf73a20bc0
Merge branch '2.0' 3 years ago
Stephan 2f4b99eacd
MaxFileSizeException should reject download job (#9778) 3 years ago
Jordi Boggiano 5d6f9b2528
Prefer @phpstan- annotations as that is what we run against 3 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, ..
3 years ago
Jordi Boggiano 8392508e23
Merge branch '2.0' 3 years ago
Jordi Boggiano 4a8e7daf56
Make sure that single files installed via file downloader get the executable bit set if they are a binary file, refs #9742 3 years ago
Jordi Boggiano b451bcb1ac
Fix issue extracting archives into paths that already exist, fixes composer/installers#479 3 years ago
Jordi Boggiano d0b399b788
Merge branch '2.0' 3 years ago
Jordi Boggiano 40800df6bd
Fix CS 3 years ago
Jordi Boggiano 52967c32cf
Remove unused var 3 years ago
Jordi Boggiano 48d02b479b
Fix output of PathDownloader during upgrades 3 years ago
Jordi Boggiano fd88b3d48d
Fix DownloaderInterface return types 3 years ago
Jordi Boggiano b3951b8804
Fix output of FileDownloader and related to avoid async issues 3 years ago
Jordi Boggiano 9809350753
Fix PathDownloader's remove implementation 3 years ago
Jordi Boggiano 67261e8d47
Make package removals async as well, refs #9618 3 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
3 years ago
Jordi Boggiano e3af4ee606
Include stdout as well as stderr if git stash/diff/.. fails, fixes #9720 3 years ago
Jordi Boggiano f37f3dab04
Fix abort of downloads and zip extraction to happen immediately, fixes #9390 3 years ago
Jordi Boggiano 8d94e25c2f
Minor fixes 3 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 3 years ago
Markus Staab 8dfe45a026 GitDownloader: combine checkout + reset commands into a single process
use a single process instead of 3 to improve performance
4 years ago
Jordi Boggiano 7f85367113
Make sure an array is always returned 4 years ago
Wissem Riahi bdecb4711d Add all curl_getinfo into the response and exception for curl requests 4 years ago
Wissem Riahi 370e082b4a Add saving time duration for curl HTTP requests 4 years ago
Jordi Boggiano 1fb6b03e03
Fix a few edge cases in unpushed change handling 4 years ago
Jordi Boggiano f86b3ad0fe
Make sure all remotes are checked for unpushed changes, fixes #9486 4 years ago
Jordi Boggiano b7d770659b
CS fixes 4 years ago
Markus Staab e8ce5a3db6
Remove unnecessary overridden method
The method just called its parent without further logic
4 years ago
Jordi Boggiano c362d001f1
Fix regression handling installs with custom installers not passing a fully qualified path to downloaders, fixes #9431, fixes #9434 4 years ago
Michaël Jacobs 611a9f5dab Drop unused imports 4 years ago
Michaël Jacobs c35a8e77c7 Fix missing directory separator in FileDownloader 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
Jordi Boggiano 52faa3cdfb
Merge pull request #9388 from JasonStephensTAMU/remove-windows-junction
Remove Windows junctions first in PathDownloader
4 years ago
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
4 years ago
Ondřej Mirtes 48b23b1607
Simplify code in FileDownloader.php 4 years ago
Jordi Boggiano 1bf2df19dd
Avoid cleaning up $path in downloaders if it is the CWD (create-project use case), refs #9396 4 years ago
Jordi Boggiano 6cb0aff417
Fix issue preventing cleanup of vendor dir when it is nested in the install path on Windows, fixes #9396 4 years ago
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
4 years ago
Jordi Boggiano 24abd233ec
Merge branch 'master' into code-improvements 4 years ago
Jordi Boggiano a1b781a302
Merge pull request #9220 from ffraenz/pr
Composer 2: Adapt file download cache keys to changed processed URLs
4 years ago
Fränz Friederes 369c2ff552
Implement PR code style feedback 4 years ago
Jordi Boggiano 2a36c3a70a
Minor tweaks 4 years ago
Simon Berger 80a75e9959 Minor code improvements 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
Simon Berger cda6e8bea6 Removed unnecessary property initialization or declaration 4 years ago
Fränz Friederes a1a3e29f52
Fix using inside anonymous function 4 years ago
Fränz Friederes 57e1ce6cdb
Change the file download cache key with the processed URL, implement custom cache key 4 years ago
Jordi Boggiano 90332f1dbd
Add a readonly mode to the cache, fixes #9150 4 years ago
Stephan a16f32484b Downloader: add a max_file_size to prevent too big files to be downloaded 4 years ago
Jordi Boggiano c0eb9834fe
Merge pull request #9116 from ryanaslett/patch-1
Update PathDownloader.php
4 years ago
Jordi Boggiano 7649c8438d
Fix exception when using create-project in current directory, fixes #9073 4 years ago
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
4 years ago
Jordi Boggiano 7bcde1481d
Fix git downloader syntax for windows cmd when updating packages, fixes #9089 4 years ago
Jordi Boggiano 04381c70fe
Merge branch '1.10' 4 years ago
Michael Stucki 0278e7453d
Clean Git repos during discard 4 years ago
Jordi Boggiano 93d4cf6f91
Add --no-show-signature where git supports it, fixes #8966 4 years ago
Jordi Boggiano 83c64a9d19
Reuse operation formatting logic in downloaders 4 years ago
Jordi Boggiano aaef3ff5ff
Improve error reporting when unzip fails due to race condition in unhandled Promise, refs #8988 4 years ago
Jordi Boggiano d1fedc3bd6
Restore old behavior of wiping dir contents before installing, fixes #8988 4 years ago
Jordi Boggiano 09fc263d37
Fix status command bug 4 years ago
Jordi Boggiano 0d369c87bc
Merge pull request #8975 from ffraenz/pr
Composer 2: Allow plugins to override the URL before triggering the download
4 years ago
Jordi Boggiano aea074308c
Update batching to install plugin deps before the plugin (alone an own batch) 4 years ago
Jordi Boggiano 9c78eda7db
Fix FileDownloader::update impl to handle promises 4 years ago
Jordi Boggiano 87a0fc5506
Execute operations in batches to make sure plugins install in the expected order 4 years ago
Jordi Boggiano 3af617efe8
Parallelize zip extraction using async unzip processes 4 years ago
Jordi Boggiano d5286d0cb8
Add a way for FileDownloader subclasses to add paths to the cleanup stage 4 years ago
Jordi Boggiano da6c0635d2
Merge pull request #8980 from stucki/discard-using-git-clean
Discard changes is incomplete if Git project has additional folders
4 years ago
Fränz Friederes 5c13c97428
Implement type and context properties in PreFileDownloadEvent 4 years ago
Michael Stucki ae59047166 Clean Git repos during discard 4 years ago
Fränz Friederes 13bdf8553a
Add setProcessedUrl method to PreFileDownloadEvent 4 years ago
Jordi Boggiano a4a617abb4
Reduce amount of Filesystem/ProcessExecutor instantiations, add lots of docblocks 4 years ago
Jordi Boggiano 90bd351b8b
Allow downgrades to go through even though the target dir for archive extraction exists 4 years ago
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 4 years ago
Jordi Boggiano 385655f02a
Mark temp files as such for clarity in case any gets left over 4 years ago
Ayesh Karunaratne aa20413990
Improve regex in \Composer\Downloader\SvnDownloader::getCommitLogs() by removing unnecessary greedy operator 4 years ago
Lucas D Hedding 2bf2e9fc60 fix failing tests 4 years ago
Lucas D Hedding 3e2163de5c #8809: expand context for post file download event 4 years ago
Jérôme Tamarelle bd34ff1328
Remove unused property $httpDownloader 4 years ago
Jordi Boggiano 44a4429978
Remove PEAR installer/downloader/repos/..., fixes #8778 4 years ago
Lucas Hedding 1883832ddc
Provides a post download event (#8655) 4 years ago
Jordi Boggiano 7d3f45cf04
Avoid errors in cleanup, fixes #8766, fixes #8764 4 years ago
Jordi Boggiano 096b507050
Merge branch '1.10' 4 years ago
Jordi Boggiano e121de35a3
Fix variable used for symlinking absolute paths, refs #8700 4 years ago
Markus Staab 6f6974df70
added phpdocs (#8754) 4 years ago
Jordi Boggiano 55f122008b
Make sure we avoid cleanup running more than once per package on VcsDownloader 4 years ago
Jordi Boggiano 9575c7623f
Update changelog, add upgrade guide 4 years ago
Adam Žurek 25cd2382cb
Raise phpstan level to 1 (#8027) 4 years ago
Jordi Boggiano 87757de6bc
Merge branch '2.0' 4 years ago
Jordi Boggiano 800491175b
Avoid failing cleanup when a package gets uninstalled 4 years ago
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 4 years ago
Jordi Boggiano 918768fc54
Make sure we get a temporary dir which is unique 4 years ago
Jordi Boggiano 73251691a0
Avoid emptying the directory before extracting an archive into it, check that it is empty instead 4 years ago
Jordi Boggiano 7e679656a4
Keep absolute path repos symlinks absolute, fixes #8700 4 years ago
Jordi Boggiano 8a83d5cc35
Fix create-project command 4 years ago
Jordi Boggiano 7e142b5d6b
Use Upgrading for package installs too 4 years ago