Jordi Boggiano
131da999ac
Fix CS ( #11003 )
2022-08-17 14:20:07 +02:00
Mathias Reker ⚡️
4131f7cf4c
Static lambda ( #10854 )
...
Lambdas not (indirect) referencing $this must be declared static.
2022-06-22 14:19:18 +02:00
Jordi Boggiano
cb76394800
Merge branch '2.2' into 2.3
2022-06-06 16:34:34 +02:00
Jordi Boggiano
e3527ea37f
Detect broken symlinks when checking for a package's presence, fixes #6708
2022-06-06 15:22:49 +02:00
Jordi Boggiano
fd2972247f
Add missing param types, fixes #10638
2022-03-18 14:45:59 +01:00
Jordi Boggiano
e63e15aea8
Fix usage of react/promise resolve() to prepare for v3
2022-03-18 09:20:42 +01:00
Jordi Boggiano
6a466a120a
Enable strict types on all files
2022-02-24 13:24:34 +01:00
Jordi Boggiano
6da38f83a0
Add parameter types to all the things
2022-02-22 16:48:53 +01:00
Alexander Schranz
1321bfca36
Add return types to closures ( #9 )
2022-02-21 13:37:49 +01:00
Jordi Boggiano
84f0f19112
Split Composer into PartialComposer & Composer classes to avoid nullable properties on Composer for non-fully-loaded instances, add types to Composer\Factory
2022-02-18 14:45:08 +01:00
Jordi Boggiano
4e6d54b731
Fix all 5.3 $this-in-closure usages
2022-01-03 16:32:39 +01:00
Jordi Boggiano
24ce1eddbd
Add composer/pcre dependency and use it everywhere instead of preg_*
2021-12-07 12:37:19 +01:00
Helmut Hummel
f12a5b8214
Expose path to autoload in a global var for binaries ( #10137 )
...
Always create proxy files for package binaries,
to avoid not working binaries in case the package
was installed from a path repository and is itself linked
If the binary is a PHP script, a global variable is now exposed,
which holds the path to the vendor/autoload.php file.
This variable can the be used in the binaries to include this file
without guessing where the path to the vendor folder might be.
Additionally it is now checked on binary creation whether
the reference binary has a shebang and if not, generates
a much simple proxy code, because the stream wrapper code,
that is required for PHP <8 to omit the shebang from the output,
can be skipped.
Fixes : #10119
Co-authored-by: Jordi Boggiano <j.boggiano@seld.be>
2021-11-25 09:53:03 +01:00
Jordi Boggiano
c65d09dff7
Fix @inheritDoc annotations
2021-10-27 16:18:53 +02:00
Paolo Rossi
a921d9b233
Reaching phpstan level 6 in EventDispatcher Exception and Installer folders ( #10192 )
2021-10-25 10:44:29 +02:00
Jordi Boggiano
4bcd860b65
Add more type annotations
2021-09-05 17:34:12 +02:00
Jordi Boggiano
3380178798
Introduce a cross-platform safe version of is_readable to support UNC / wsl$ paths on Windows ( #9861 )
2021-05-04 13:25:52 +02:00
Jordi Boggiano
b7d770659b
CS fixes
2020-11-22 14:52:39 +01: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
5761228068
Make installer classes forward promises from downloaders to InstallationManager
2020-06-04 10:34:16 +02:00
Jordi Boggiano
53d2ab2253
Split up steps on VCS downloaders to allow doing network operations before touching the filesystem on GitDownloader, fixes #7903
2019-08-29 11:37:23 +02:00
Matthew Brown
65903aacfd
Fix type issues ( #7996 )
...
* Fix type issues found by Psalm
2019-02-19 15:35:48 +01:00
Jordi Boggiano
3dfcae99a9
Add parallel download capability to FileDownloader and derivatives
2019-01-18 08:39:03 +01:00
Jordi Boggiano
e697293cd9
Handle broken symlinks more cleanly, fixes #7255
2018-05-04 11:17:43 +02:00
Jordi Boggiano
59596ff012
Make sure we do not overwrite binaries but only re-create missing ones, refs #5127
2016-07-02 16:35:09 +01:00
Jordi Boggiano
88d5b74c74
Merge remote-tracking branch 'j0k3r/re-install-binaries'
2016-07-02 16:15:33 +01:00
Jeremy Benoist
4f7fbbc879
Introduce InstallerBinaryInterface
...
This is an interface for Installer which should support installing binary.
ATM there is only the `LibraryInstaller`.
It eases the check for supported method when installing binaries for all packages
2016-05-31 12:19:58 +02:00
Jordi Boggiano
3b0a1c6f70
Run cs fixer and update config to latest master
2016-04-11 15:06:57 +01:00
Jeremy Benoist
e9fc0e6548
Re-install binaries on update/install
...
Binaries are re-installed after an update/install (ie: removed and then installed)
2016-03-28 23:15:13 +02:00
Jordi Boggiano
ace88fa986
Rename LibraryBinariesHandler and reorganize constructor args, refs #5100
2016-03-26 08:44:54 +00:00
Helmut Hummel
b1ec99faed
Extract binary installation and removal to own class
...
The functionality to install binaries might be useful
for other installers.
Create API for that by extracting this functionality from
the LibraryInstaller class.
2016-03-23 21:39:58 +01:00
Jordi Boggiano
9d95456bb0
Fix bug in handling of special chars in proxy .bat files for binaries, fixes #4990
2016-03-02 14:07:30 +00:00
Jos
51d4c930ef
Fix for cygwin if $dir contains spaces
...
Without the quotes cygpath will interpret the filename (containing spaces) as two or more different files. This results in the value of $dir being incorrect.
2016-02-23 19:02:52 +01:00
Niels Keurentjes
72a3563f1e
Removed some 3 year old backward compatibility code.
2016-02-15 21:37:19 +01:00
Niels Keurentjes
0dab63e050
Unified all Windows tests throughout the code.
2016-02-03 22:39:16 +01:00
Niels Keurentjes
18cd4f966b
Added silencer utility to more gracefully handle error suppression without hiding errors or worse. Fixes #4203 , #4683
2016-01-25 23:37:54 +01:00
Jordi Boggiano
966a982738
CS fixes
2015-11-21 19:28:10 +00:00
Jordi Boggiano
d98b134dc3
Fix removal of packages installed in custom path with custom installers not overriding uninstall, fixes #2232
2015-11-19 16:36:19 +00:00
Jordi Boggiano
615638c7c3
Simplify bin-compat by removing the nosymlink option, refs #3704
2015-10-27 15:36:12 +00:00
Jordi Boggiano
c9b51a5751
Merge remote-tracking branch 'kocsismate/feature-bin-compat'
2015-10-27 15:20:53 +00:00
Jordi Boggiano
ebe0c8d79c
Fix issue #3229 , refs #3184
2015-10-27 15:12:18 +00:00
Jordi Boggiano
90a90e22de
Merge remote-tracking branch 'Wirone/unixy-proxy'
...
Conflicts:
src/Composer/Installer/LibraryInstaller.php
2015-10-27 15:10:35 +00:00
Gavin Staniforth
c1e60a0abd
Ensure the bin directory exists before checking empty
...
Line 130 has similar logic so avoided doing the check withiin `isDirEmpty()`
2015-09-23 13:46:35 +01:00
Jordi Boggiano
80f1e4372a
Remove empty bin dir after all binaries have been removed from it, fixes #3451
2015-09-22 23:54:43 +01:00
Markus Thielen
bd802407a8
Silence symlink() error
...
If not silenced it gives "symlink(): Operation not supported" on my ubuntu system with mounted cifs share.
2015-04-09 09:45:50 +02:00
Kocsis Máté
f385518e1a
Fixed merge conflict
2015-03-30 22:38:16 +02:00
Kocsis Máté
985c49d47c
Removed unnecessary cwd
2015-03-30 22:27:13 +02:00
Kocsis Máté
38c26ae26b
Added Symlink utility class
2015-03-30 20:00:12 +02:00
Rob Bast
cb336a5416
Implement writeError throughout Composer
2015-02-25 11:00:35 +01:00
Kocsis Máté
08c4732d1e
Improving bin-compat configuration
2015-02-03 19:27:29 +01:00