1
0
Fork 0
Commit Graph

9343 Commits (afa18f20925f5fc222dd70780e937a260364a108)

Author SHA1 Message Date
Jordi Boggiano 438c45e991
Change UpdateOperation::show to match what the installers output, fixes the dry-run output to be more like real output 2019-11-14 15:41:23 +01:00
Nils Adermann 4e7702598e Always treat changes in dist and source references as updates 2019-11-14 15:33:03 +01:00
Jordi Boggiano 99eb86c506
Avoid outputting "Loading ... from cache" in non-verbose installs 2019-11-14 15:26:25 +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 3b6d517ce0
Return 404s in ComposerRepository when network is disabled instead of failing hard 2019-11-14 09:57:59 +01:00
Jordi Boggiano eb3e3063b8
Revert "When network is disabled all uncached requests result in 404"
This reverts commit c325112670.
2019-11-14 09:55:57 +01:00
Nils Adermann 7fc0cb021e
Merge pull request #8424 from naderman/multi-conflict-rule
New Multi Conflict Rule for transitive conflicts, to reduce memory use by rules
2019-11-12 23:19:34 +01:00
Nils Adermann 28afc4de32 MultiConflictRules cannot be disabled, so no need to check 2019-11-12 23:14:56 +01:00
Nils Adermann 79066931e6 Update exception message for disabling multi conflict rules 2019-11-12 23:14:56 +01:00
Nils Adermann dc0f2e7e46 Ensure multi conflict rules are only used for 3+ literals
Implements the equals method correctly on multi conflict rules. If there
are fewer literals a regular Rule2Literals is enough to represent the
basic conflict rule.
2019-11-12 23:14:56 +01:00
Nils Adermann ed300b9f22 New Multi Conflict Rule for transitive conflicts, to reduce memory 2019-11-12 23:14:56 +01:00
Nils Adermann 6f9b1e76e3 Remove disableRules code from Solver, leftover from original C code
This goes back to an input option to install recommended packages, which
would in turn allow removal of these packages if that was needed to
resolve the rest. This was supported in very early versions of Composer
with suggested packages. We later realized this was not useful in the
context of a project based dependency manager with a lock file, so it
was removed but the solver was never cleaned up.
2019-11-12 23:14:24 +01:00
Nils Adermann c325112670 When network is disabled all uncached requests result in 404 2019-11-12 22:22:03 +01:00
Nils Adermann 7ef3a31de7 Make TransportException in network disabled case clearer
Otherwise it's a bit hard to work out what request triggered the exception
2019-11-12 22:00:02 +01:00
xy2z a91c946e27 Hide not-yet installed packages from "require" and "init" suggestions 2019-11-12 16:32:04 +01:00
Nils Adermann aa6bc75af2 Add a test case for transactions to verify correct sorting 2019-11-08 17:51:18 +01:00
Nils Adermann 8810c6467d
Merge pull request #7936 from naderman/solve-without-installed
Separate Install & Update code, no longer use vendor dir as input to solver
2019-11-08 17:03:16 +01:00
Nils Adermann 3cbe91983c Display Locking instead of Installing for lock file install operations 2019-11-08 16:57:52 +01:00
Nils Adermann 25de5218c3 Reunify lock and local repo transaction code and apply the same sorting 2019-11-08 15:56:46 +01:00
Nils Adermann ff5ec54f04 Correctly use install and update commands in our installer tests 2019-11-08 12:31:26 +01:00
Nils Adermann 97ec2d7b61 Merge remote-tracking branch 'github-composer/2.0' into solve-without-installed
* github-composer/2.0: (63 commits)
  Fix PSR warnings for optimized autoloader, refs #8397, refs #8403
  Prepare 1.9.1 changelog
  Output a hint that maybe you are not in the right directory, fixes #8404
  Fix PSR warnings for optimized autoloader, refs #8397, refs #8403
  Fix tests for PSR-fix in optimized autoloader, refs #8397
  Fix tests for PSR-fix in optimized autoloader, refs #8397
  Change PSR-fix for optimized autoloader to only warn for now, refs #8397
  Fix output of dump-autoload command to avoid interfering with warnings, refs #8397
  Remove credentials from git remotes in cache and vendor dirs
  Avoid overwriting credentials with existing ones from git repos, refs #8293
  Fix github auth to try https with pwd also, fixes #8356
  Fix gitlab support for basic-auth fallback from ssh URLs
  Avoid clearing the error output during removeDirectory execution, losing git error output, fixes #8351
  Move test file parsing into try/catch block to avoid phpunit swallowing errors
  make optimized autoloader respect PSR standards
  Validate composer show with --tree and --path options set (#8390)
  Don't show root warning for docker containers
  Added phpdoc for ComposerAutoloaderInit$SHA1::getLoader() (#8393)
  Validate schema name, type and version
  Fix require command to allow working on network mounts, fixes #8231
  ...
2019-11-08 12:27:13 +01:00
Nils Adermann e26405d858 Clean up comments and output 2019-11-08 12:26:46 +01:00
Nils Adermann 3b26ef0f1b clean up extract dev packages 2019-11-08 12:13:23 +01:00
Nils Adermann 0099f56361 Define property which is later accessed in lock transaction 2019-11-07 22:11:54 +01:00
Nils Adermann bd6b4e433c Use JsonFile::JSON_PRETTY_PRINT instead of php const for PHP 5.3 compat 2019-11-07 22:09:24 +01:00
Nils Adermann 28596d9c12 Define property which is later accessed in local repo transaction 2019-11-07 22:02:35 +01:00
Nils Adermann 737a613a50 Use array() instead of [] for PHP 5.3 compat 2019-11-07 22:01:37 +01:00
Nils Adermann bf99f1a341 Fix RepositorySet constructor calls to use new signature 2019-11-07 21:56:17 +01:00
Nils Adermann 26da52227e Clean up the Solver tests, no more installed repo input and new sorting
The solver now only calculates a lock file transaction which does not
need to be sorted in order of dependencies. This is only necessary for
the local repo transaction generated without the solver during install
2019-11-07 21:51:53 +01:00
Nils Adermann e6e0723105 Remove unnecessary comments, aliases in lock file are correctly created 2019-11-07 21:25:43 +01:00
Nils Adermann e308f043b9 Fully switch to spl_object_hash in lock transaction
The pool builder tries to be minimal so it's fine for present/locked
packages not be assigned a solver/pool id. Adding a test to verify
correct creation of uninstall jobs
2019-11-07 21:18:09 +01:00
Nils Adermann c50d236378 Correctly load branch aliases from lock file
Root aliases are also stored in the lock file, so on install do not read
them from composer.json.
2019-11-07 20:40:28 +01:00
Nils Adermann cc274ebdf4 Do not reset references on update mirrors if VCS type has changed 2019-11-07 17:42:17 +01:00
Nils Adermann 2d37bb4116 Outated lock files now trigger an error requesting removal rather than being ignored silently 2019-11-07 17:38:16 +01:00
Nils Adermann 6925005ac9 Implement update mirrors/nothing/lock as its own installer mode
These special commands no longer (ab)use the partial update mechanism
but rather create a special install request for all current lock file
contents and later override any modified code references to the
originals. This leads to up to date remote metadata but no other
changes.
2019-11-07 17:35:44 +01:00
johnstevenson 7e649fac41 Fix Windows test regression from commit 149250a
Commit: 149250ab92

ProcessExecutor::escape handled a false value inconsistently across
platforms, returning an emtpy string on Windows, otherwise `''`. This
is fixed to return `""` on Windows.

The GitDownloaderTest code has been appropriately updated.
2019-11-07 12:50:42 +00:00
johnstevenson 7de68bebe6 Update xdebug-handler to 1.4.0 2019-11-06 17:14:14 +00:00
Jordi Boggiano 7e92950367
Merge pull request #8407 from localheinz/fix/environment-variables
Fix: Add environment variables related to Xdebug to documentation
2019-11-06 11:27:40 +01:00
Jordi Boggiano 28f0d8fcf7
Merge pull request #8406 from localheinz/fix/xdebug
Fix: Xdebug vs xdebug
2019-11-06 11:26:20 +01:00
polarathene 43e0321ee7 Chore: Use consistent directory path
Only when a install directory was not specified, was the CWD prepended to `$directory`. This change provides consistency in paths displayed to the user.
2019-11-05 21:14:22 +13:00
polarathene 1b2582ff5b Chore: Improve create-project install UX
Provides feedback output before a potentially long wait on getBestCandidate() call on slow network connections where unresponsiveness/hang may be assumed.
2019-11-05 20:33:20 +13:00
polarathene 5987114f6c Fix: Fail when install location is a file
In the event a file has the same name as the intended install directory, fail fast too.
2019-11-05 20:29:57 +13:00
polarathene 11207a9a2e Fix: Check for null install directory earlier
Allows for failing fast when no install directory was provided to the command(uses package name instead).
2019-11-05 20:26:30 +13:00
polarathene e5e8736383 Fix: Fail fast when the project directory is not empty
Avoid waiting until after `getBestCandidate()` has finished, as it can add notably delay on slow connections due to downloading megabytes of data. Only to fail if the install location is invalid.
2019-11-05 20:26:21 +13:00
Andreas Möller f4ff91da6c
Fix: Add environment variables related to Xdebug to documentation 2019-11-03 14:27:22 +01:00
Andreas Möller f7f7883a5e
Fix: Xdebug vs xdebug 2019-11-03 14:08:14 +01:00
Jordi Boggiano 4e4c38795a
Merge branch '1.9' 2019-11-01 17:29:20 +01:00
Jordi Boggiano 1c012b74a6
Update dependencies 2019-11-01 17:20:09 +01:00
Jordi Boggiano aaead1bb88
Merge branch 'master' into 2.0 2019-11-01 17:13:09 +01:00
Jordi Boggiano 3496431a6c
Fix PSR warnings for optimized autoloader, refs #8397, refs #8403 2019-11-01 17:13:02 +01:00