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
80505e745e
Fix phpstan issues
2020-04-07 14:40:51 +02:00
Nils Adermann
5bdc0fc9c5
Request jobs replaced by root require / fixed package
...
The only type of request job remaining was "install" which is really a
root requirement. The only other kind of input for the solver is now a
set of fixed packages.
Rules have been updated to account for only two kinds of former job
reason: FIXED or ROOT_REQUIRE. The job property has always been
redundant and has been removed, since reasonData suffices.
Problem reasons are always rules, so the unnecessary wrapping in an
array has been removed.
We now only ever generate a single rule per root require or fixed
package, so there is no need for the solver to special handle disabling
"jobs" anymore, the rule can just be disabled as usual.
For consistency special handling of rules for jobs in problems has been
integrated into the rule class like all other rule reasons. As part of
this change the error message for root requirements has been improved a
bit to make it clearer where the package installation request came from.
The word job has also been removed from operations, which are called
operations, not jobs.
2020-01-19 23:21:07 +01:00
Adam Žurek
406a28708f
updated phpstan to 0.12
2019-12-16 21:58:05 +01:00
Jordi Boggiano
f2058680a7
Remove unused use statements
2019-11-24 08:46:23 +01:00
Jordi Boggiano
5c62c7d566
Simplify promise handling
2019-11-23 12:37:17 +01:00
Jordi Boggiano
f288acb1ca
Execute alias operations still
2019-11-23 11:29:50 +01:00
Jordi Boggiano
5725a2db57
Allow all prepare/cleanup/install/update/uninstall operations to return promises to be executed in parallel as well
2019-11-23 11:25:28 +01:00
Jordi Boggiano
006985a0ea
Execute all operations at once which lets us download all packages in parallel then install only once all downloads succeeded, fixes #2847
...
This also changes the PRE/POST_PACKAGE_INSTALL/UPDATE/UNINSTALL events to have less information available on them, repositorySet, request and policy are gone
2019-11-14 15:21:28 +01: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
Jordi Boggiano
3dfcae99a9
Add parallel download capability to FileDownloader and derivatives
2019-01-18 08:39:03 +01:00
Jordi Boggiano
122e422682
CS fixes
2017-03-08 15:16:44 +01: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
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
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
3d9daea6a0
CS fixes
2015-10-25 15:19:15 +00:00
Boris Momčilović
b05b52ff7e
InstallationManager: notifyInstalls: append authorization header for repository
2015-10-24 00:58:34 +02:00
Jordi Boggiano
ce08582671
Fix CS
2015-09-28 10:53:24 +01:00
Jordi Boggiano
b232a31815
Fix --no-plugins support in installation manager, fixes #3031
2014-06-29 15:57:19 +02:00
Nils Adermann
15ac7be6f1
Fix disabling plugins which has to happen in the factory now
2013-08-30 12:51:41 +02:00
Nils Adermann
f0b45099c1
Correct authorship info for files I edited
2013-08-30 12:51:41 +02:00
Nils Adermann
01a08a2ff3
As preparation for composer plugins, rename custom installers to plugins
2013-08-30 12:51:40 +02:00
Pavel Savinov
831bd844bd
Almost PHPDoc problems fixed
2013-06-13 11:05:44 +11:00
Jordi Boggiano
1debe22412
Add HTTPS_PROXY_REQUEST_FULLURI to disable the request_fulluri only for https requests, fixes #1946 , fixes #1839
2013-05-30 14:59:02 +02:00
Fernando Mantoan
df592d40de
Solving the issue #1387
2012-12-05 12:35:10 -02:00
Jordi Boggiano
4965fb599c
s/return/continue/
2012-11-29 10:11:23 +01:00
Jordi Boggiano
a8f74a0983
Allow notification from locked installs, fixes #1368 , fixes #1372 , fixes #1369
2012-11-29 09:24:28 +01:00
Jordi Boggiano
e868c9706b
Add support for batch notifications
2012-11-28 18:44:49 +01:00
Pascal Borreli
83fd3967f0
Fixed PHPDoc
2012-10-24 23:44:40 +00:00
Jordi Boggiano
ef637c8f1a
CS fixes
2012-08-18 16:18:41 +02:00
Johannes M. Schmitt
88a1f27798
added a way to disable custom installers
2012-07-21 16:51:40 +02:00
Alexey Prilipko
22d41845ae
Exclude dirs from list of binaries
2012-07-08 15:20:35 +11:00
Jordi Boggiano
b876dcbafb
Use the config object to define the vendor dir and not the installation manager
2012-06-24 21:58:51 +02:00
Jordi Boggiano
66e9dcddf4
CS fixes
2012-06-23 11:58:18 +02:00
Jordi Boggiano
a518f471f7
Ensure aliases are removed from local repos when a package is deleted from the filesystem
2012-06-20 11:45:55 +02:00
Jordi Boggiano
1bd4ccbd54
php-cs-fixer magic
2012-05-22 12:07:08 +02:00
Jordi Boggiano
6864555aa4
Do not notify installation of aliases
2012-05-09 17:46:13 +02:00
Nils Adermann
0c1944a9d0
Let the solver handle aliases instead of the installer
2012-05-09 15:15:39 +02:00
Jordi Boggiano
bd50ad32f0
Refactor InstallationManagerMock
2012-04-29 17:27:37 +02:00
Igor Wiedler
0995933183
Do not install root package as a vendor if some dependency requires it, closes #480
...
Also add some tests for the installer.
2012-04-27 12:29:11 +02:00
Jordi Boggiano
903facd64f
Make sure the anti-aliased package contains the alias info from the correct alias
2012-04-24 11:16:25 +02:00
Jordi Boggiano
bf6fd10a8a
Make use of the proper interface
2012-04-18 00:59:42 +02:00
Jordi Boggiano
89e095b4b5
Handle --dev installs/updates
2012-04-14 23:38:10 +02:00
Jordi Boggiano
b094ef7155
Add repository notification API support
2012-04-13 02:59:23 +02:00
Jordi Boggiano
ceac0ca75b
Fix updating of already installed dev packages, fixes #496
2012-04-02 21:32:05 +02:00
Jordi Boggiano
87c1629ebc
Fix isInstalled detection broken by metapackage installer
2012-03-26 01:47:17 +02:00
Martin Hasoň
c85ae48e5d
Vendor dir can be outside the current working directory
2012-03-12 12:12:44 +01:00
Jordi Boggiano
0b7ee194c6
Remove persistence of alias data, make abstract branch aliasing and keep it in composer only
2012-02-25 02:52:19 +01:00
Jordi Boggiano
59d2b1145c
Add lock file alias support and a bunch of fixes
2012-02-21 16:44:49 +01:00
Jordi Boggiano
f9fc9695e9
Wrap the package in an aliased package instead of replacing
2012-02-21 15:32:45 +01:00
Jordi Boggiano
cb44ba8325
Fix autoload handling of main project
2011-11-21 11:33:30 +01:00
Jordi Boggiano
f5b7e968b2
Minor adjustments to merged PR
2011-11-20 22:03:11 +01:00
Ant Cunningham
e0400773f7
Adding support for configurable vendor path in composer.json.
2011-11-18 13:31:50 -05:00
Jordi Boggiano
8aaac35ca1
Make installer type case insensitive
2011-10-30 22:01:37 +01:00
Jordi Boggiano
c33fc80d23
Add supports() to the InstallerInterface
2011-10-23 19:40:24 +02:00
Igor Wiedler
ea31039556
[autoload] autoloading prototype
2011-10-23 19:40:06 +02:00
everzet
2fc0699492
Moved operations evaluation into new InstallationManager class
2011-09-25 19:31:51 +03:00