405 Commits (419567ba6db91e8cf15f78ba0690d5e4b6668c0e)

Author SHA1 Message Date
Jordi Boggiano c43137db3f
Merge branch '1.9' 5 years ago
Jordi Boggiano ef6ef8ac0f
Hint at the partial update command, fixes #8508, refs #8332 5 years ago
Yanick Witschi d1dc367d86 Removed the filters from the pool 5 years ago
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
5 years ago
Nils Adermann 3cbe91983c Display Locking instead of Installing for lock file install operations 5 years ago
Nils Adermann 25de5218c3 Reunify lock and local repo transaction code and apply the same sorting 5 years ago
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
  ...
5 years ago
Nils Adermann e26405d858 Clean up comments and output 5 years ago
Nils Adermann 3b26ef0f1b clean up extract dev packages 5 years ago
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
5 years ago
Nils Adermann e6e0723105 Remove unnecessary comments, aliases in lock file are correctly created 5 years ago
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.
5 years ago
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.
5 years ago
Jordi Boggiano bc2a1d762a
Merge branch 'master' into 2.0 5 years ago
Nils Adermann 4481cc4a88 Allow an install request for a package name which is already fixed
Ensures packages get loaded from locked repo correctly. We may not want
to support this particular use-case at all, but for now it fixes the
existing test, so we may want to revisit this later.
5 years ago
Arnout Boks 7c5e5e3ede Add option to disable the lock file
When the `lock` option is set to false, composer will not write a
`composer.lock` file to disk. This signals that the package is meant
to be developed with unlocked and always updated dependencies. At the
moment, both `install` and `update` are allowed to install the
dependencies for such a package. If #6822 is implemented, only `update`
should be used for packages without a lockfile.

https://github.com/composer/composer/issues/8354
5 years ago
Nils Adermann 3989a1b8ee Restore dev package extraction
New approach is to use only the solved set of packages as input and then
to resolve with only the non-dev requirements and to mark everything as
dev that is not part of the result set, rather than transitioning a
temporary local repo state by uninstalling dev packages.
5 years ago
Nils Adermann 4db325b7b4 Use the old root stack based approach to sorting operations in the transaction 5 years ago
Nils Adermann f5e18250e6 Merge remote-tracking branch 'github-composer/2.0' into solve-without-installed
* github-composer/2.0: (48 commits)
  Fix missing use/undefined var
  Split up steps on VCS downloaders to allow doing network operations before touching the filesystem on GitDownloader, fixes #7903
  Fix use statement
  Deduplicate findHeaderValue code
  Add install-path to the installed.json for every package, fixes #2174, closes #2424
  Remove unnecessary config from phpstan
  Make sure the directory exists and will not block installation later when downloading
  Avoid wiping the whole target package if download of the new one fails, refs #7929
  Only empty dir before actually installing packages, fixes #7929
  Improve output when installing packages
  Show best possible version in diagnose command
  Remove extra arg
  Allow path repos to point to their own source dir as install target, resulting in noop, fixes #8254
  Fix use of decodeJson
  Fix update mirrors to also update transport-options, fixes #7672
  Fix updating or URLs to include dist type and shasum, fixes #8216
  Fix origin computation
  Improve handling of non-standard ports for GitLab and GitHub installs, fixes #8173
  Load packages from the lock file for check-platform-reqs if no dependencies have been installed yet, fixes #8058
  Fix error_handler return type declaration
  ...
5 years ago
Nils Adermann 06d11f2f38 Fix calculation of lock transaction updates and start updating output in tests 5 years ago
Nils Adermann f1e4ccbe1d Fix handling of reference updates and root references 5 years ago
Jordi Boggiano 63da7c6b2d
Add install-path to the installed.json for every package, fixes #2174, closes #2424 5 years ago
Jordi Boggiano 08d661ceca
Merge branch 'master' into 2.0 5 years ago
Jordi Boggiano 96ad0aa01f
Remove extra arg 5 years ago
Jordi Boggiano 1002fb12fc
Merge branch 'master' into 2.0 5 years ago
Jordi Boggiano 3ef27cabd6
Merge pull request #7999 from Seldaek/store_dev
Store dev mode in installed.json, fixes #3008
5 years ago
Jordi Boggiano 362ebe4f68
Fix update mirrors to also update transport-options, fixes #7672 5 years ago
Jordi Boggiano db6882b57f
Fix updating or URLs to include dist type and shasum, fixes #8216 5 years ago
Nils Adermann 9053d74282 Merge branch '2.0' into solve-without-installed
* 2.0: (101 commits)
  SVN: hide passwords for debug output
  Free $solver asap
  fixes #8179
  [minor] Fixed a typo in the CHANGELOG.md.
  Update deps
  Update changelog
  Revert "Allow overriding self-update target file with envvar COMPOSER_SELF_UPDATE_TARGET" Revert "Add docs for COMPOSER_SELF_UPDATE_TARGET, refs #8151"
  Add docs for COMPOSER_SELF_UPDATE_TARGET, refs #8151
  Fix display of HHVM warning appearing when HHVM is not in use, fixes #8138
  Read classmap-authoritative and apcu-autoloader from project config when installing via create-project, fixes #8155
  Use possessive quantifiers
  Update xdebug-handler to 1.3.3
  fixes #8159
  Allow overriding self-update target file with envvar COMPOSER_SELF_UPDATE_TARGET
  flag should come before script name
  use full command name, not abbreviated/alias
  modify text
  Document the alternatives to disable the default script timeout
  Anchor pattern
  Fix URL resolution for Composer repositories
  ...
5 years ago
Nils Adermann d2fa1e1319 Merge branch 'master' into 2.0
* master: (48 commits)
  SVN: hide passwords for debug output
  Free $solver asap
  fixes #8179
  [minor] Fixed a typo in the CHANGELOG.md.
  Update deps
  Update changelog
  Revert "Allow overriding self-update target file with envvar COMPOSER_SELF_UPDATE_TARGET" Revert "Add docs for COMPOSER_SELF_UPDATE_TARGET, refs #8151"
  Add docs for COMPOSER_SELF_UPDATE_TARGET, refs #8151
  Fix display of HHVM warning appearing when HHVM is not in use, fixes #8138
  Read classmap-authoritative and apcu-autoloader from project config when installing via create-project, fixes #8155
  Use possessive quantifiers
  Update xdebug-handler to 1.3.3
  fixes #8159
  Allow overriding self-update target file with envvar COMPOSER_SELF_UPDATE_TARGET
  flag should come before script name
  use full command name, not abbreviated/alias
  modify text
  Document the alternatives to disable the default script timeout
  Anchor pattern
  Fix URL resolution for Composer repositories
  ...
5 years ago
Nicolas Grekas 89d5d8f182 Free $solver asap 5 years ago
Jordi Boggiano 60df892517
Store dev mode in installed.json, fixes #3008 5 years ago
Matthew Brown 65903aacfd Fix type issues (#7996)
* Fix type issues found by Psalm
5 years ago
Nils Adermann c875f538ea Make root alias behaviour consistent, add root ref handling, lock to newest metadata
root aliases during install should come from the lock file only, for
better reproducibility we don't reuse the value from update for the
following install
5 years ago
Nils Adermann 10ada7bf82 Refactor Installer class into separate install and update processes
- Introduce separate Lock and LocalRepo transactions, one for changes
  to the lock file, one for changes to locally installed packages based
  on lock file
- Remove various hacks to keep dev dependencies updated and
  incorporated the functionality into the transaction classes
- Remove installed repo, there are now local repo, locked repo and
  platform repo
- Remove access to local repo from solver, only supply locked packages
- Update can now be run to modify the lock file but not install packages
  to local repo
5 years ago
Nils Adermann 1211ba1d51 BC break: Remove workaround for loading lock files without dev requires 5 years ago
Jordi Boggiano 9c32808782 Merge branch 'master' into 2.0 6 years ago
Hans-Christian Otto 85617aa740
Installer: Initialize $nameMatchesRequiredPackage
We had a case where we got `Undefined variable: nameMatchesRequiredPackage` — I think it should be initialized with false, right?
6 years ago
Jordi Boggiano b89720b52a Merge branch 'master' into 2.0 6 years ago
Jordi Boggiano 1f97ffdcd7 Add some docs 6 years ago
Sascha Egerer 82ecf95a3c Add PHP 5.3 compatibility 6 years ago
Sascha Egerer 1845adcfbd Fix update whitelist pattern resolving and add more tests 6 years ago
Sascha Egerer dc59af555a Fix invalid call to array_merge 6 years ago
Sascha Egerer 50cb5fe3da Update all whitelist matching root dependencies
The update command can receive a pattern like `vendor/prefix-*`
to update all matching packages.
This has not worked if multiple packages, depending on each other,
where matched to the given pattern. No package has been updated
in this case as only the first package matching the pattern was
added to the whitelist.
6 years ago
Jordi Boggiano 411dd51f20 Merge branch 'master' into 2.0 6 years ago
Jordi Boggiano 66d84f60c6 Fix pattern matching for remove wildcard, refs #7715 6 years ago
Jordi Boggiano 2e0f31106a Merge remote-tracking branch 'origin/master' into 2.0 6 years ago
Mathias Brodala 38a34159ef Dispatch "post-package-update" event after writing lock (#7766)
Fixes #7765
6 years ago
Nils Adermann f11c357325 Restore output of number of packages analyzed in solver 6 years ago
Nils Adermann c0f19f6c57 Move construction of pool from repo set into a pool builder
Pool construction depends on the install request now, so only required
packages get loaded, add some structure for future asynchronously
loading composer repositories
6 years ago
Nils Adermann 4c7d271a36 Remove deprecated function 6 years ago
Nils Adermann 1747df97e7 Create pool in show command to use policy, remove todos 6 years ago
Nils Adermann b6e2d60c9e Create the pool in the installer before giving it to the solver 6 years ago
Nils Adermann 1228bcdffc Internalize pool creation in repository set, store root aliases in set
The pool is still exposed too early in a few places which will require
further refactoring
6 years ago
Nils Adermann 6ef65e5319 Add a new RepositorySet class and restrict pool usage to the solver
Breaking change for the plugin interface so bumping the version of
composer-plugin-api to 2.0.0

First step for a refactoring of the package metadata loading mechanism
6 years ago
Jordi Boggiano ff59bbdab0 CS fixer 6 years ago
Jordi Boggiano d5a9d86ee4 Undo reformatting from #7441 6 years ago
Vladimir Reznichenko cd39efc72c New finding by Static Code Analysis 6 years ago
Gabriel Caruso 7d9f8e2247
Improvements
Small improvements, such as remove unused imports, unecessaries casts, parentheses, etc.
6 years ago
Jeroen Ketelaar 6ff74d3ed1
[BUGFIX] Fixed typo in comment 6 years ago
Jordi Boggiano 43e33be79f Fix regression in 036fc44c25, fixes #7268 6 years ago
Jordi Boggiano 4bddcd7124 Add support for gitlab.com URL replacement, fixes #7160 6 years ago
Jordi Boggiano c8aea719b1 CS fixes 7 years ago
Jordi Boggiano 0b3bc4ccb9 Merge branch '1.5' 7 years ago
Jordi Boggiano 4c4f516ea2 Make sure binaries are recreated before POST-hooks fire 7 years ago
Jordi Boggiano 17ec4c17b0 Set COMPOSER_DEV_MODE for all events and not just POST hooks 7 years ago
Jordi Boggiano 9a99e86ebc Rename NonRoot to Transitive, refs #6674 7 years ago
Matthew Grasmick 776977f597 Fixing method name. 7 years ago
Matthew Grasmick 11db6f90c2 Cleaning up comments 7 years ago
Matthew Grasmick 3826e51caa Renaming some methods and props. 7 years ago
Matthew Grasmick 2e4afaa941 Not skipping root packages. 7 years ago
Matthew Grasmick 6db92eae92 Trying to fix update behavior. 7 years ago
Matthew Grasmick ad465aa769 Updating var names. 7 years ago
Matthew Grasmick f29e98cdf9 Fixes #6661: Allow a given package and its dependencies (including siblings) to be updated. 7 years ago
Abyr Valg 37addea447 Make composer see installed dev packages 7 years ago
Jordi Boggiano acdb7638a8 Warn about require-dev not being ignored when an update --no-dev fails to resolve dependencies, fixes #6575 7 years ago
Jordi Boggiano 23ab57c311 Merge branch '1.4' 7 years ago
Jordi Boggiano 9afbddab6b Only update dist references when one existed already, fixes #6363 7 years ago
Jordi Boggiano a3f2b7bb92 Tweak variable name 7 years ago
Nils Adermann b1110df873 Merge pull request #6371 from balbuf/balbuf/move-all-plugins
Move all plugins and their dependencies to the front
7 years ago
Stephen Beemsterboer 06bb6c7530 Move plugins with no dependencies to the front, followed by plugins with their dependencies 7 years ago
Stephen Beemsterboer 4cda7e0a44 Take into account a package's "provide" and "replace" fields
A package can satisfy a require by its "provide" or "replace" fields,
so this leverages the getNames() method which returns these alternate
names as well.
7 years ago
Jordi Boggiano 954300032b Avoid useless warnings when updating/removing stuff that is not installed 7 years ago
Stephen da6efc9b02 Move all plugins and their dependencies to the front 7 years ago
Jordi Boggiano 122e422682 CS fixes 7 years ago
Jordi Boggiano 6afc844339 Do not warn of mirrors not existing 7 years ago
Yanick Witschi 0ea93df252 Fixed no lock file was written when setting writeLock to true and executeOperations to false 8 years ago
Jordi Boggiano b2efcb1078 Update dist/source mirrors as well when updating a package's URL 8 years ago
Jordi Boggiano 4d77ffcb4a Merge branch 'simplify-output' 8 years ago
Jordi Boggiano 4d082f77b8 Simplify composer output to take less lines 8 years ago
Jordi Boggiano 1dcb2b5758 Merge remote-tracking branch 'nicolas-grekas/apcu' 8 years ago
Jordi Boggiano 3c1300bcaf Allow disabling execution of operations and lock writing independently from dryRun, closes #5787 8 years ago
Nicolas Grekas 6d4e60b991 Add --apcu-autoloader option to enable APCu caching of found/not-found classes 8 years ago
Jordi Boggiano 8ad6385ffb Merge remote-tracking branch 'fabpot/more-debug' 8 years ago
Jordi Boggiano 027de2960b Merge pull request #5794 from andrewjt71/issue-5769
Issue 5769 dev mode varaible
8 years ago
Fabien Potencier 5d742fd38b Fix POST_DEPENDENCIES_SOLVING trigger 8 years ago
Fabien Potencier 57ec0d1815 added more information in the output 8 years ago
Andrew Taylor ce6a3c0dd7 Issue 5769 dev mode varaible 8 years ago
Jordi Boggiano ed78253c58 Only update reference if there is actually a reference, fixes #5609 8 years ago
Jordi Boggiano edddae42db Revert default change from #5603 8 years ago