1
0
Fork 0
Commit Graph

6048 Commits (3ec59204fc021ff0d07bccb4f91ba3d9bd4d03f9)

Author SHA1 Message Date
Volker Killesreiter e532e70b22 Revert "Chore: Use consistent directory path"
This reverts commit 43e0321ee7.
2020-02-14 19:54:18 +01:00
Jordi Boggiano 2e82e34fe0
Merge branch 'master' into 2.0 2020-02-14 17:03:29 +01:00
Jordi Boggiano 4f59162827
Fix class name of caught exception 2020-02-14 17:03:22 +01:00
Jordi Boggiano 0ad322e51f
Fix tests 2020-02-14 16:55:21 +01:00
Jordi Boggiano ee2252c6ac
Add lint check after phar is built
The initial 1.10.0-RC build (593b8dfb29)
had what looks like a bit flip of one > into a :, causing a parse error as $foo->bar became $foo-:bar in some class.

This is quite unpleasant and easy to miss as it requires including the file in question before the error is spotted.

It was quite lucky I ran a composer install with the new phar right after to do something else and spotted the error.

Linting all files covers this problem mostly, at least for the PHP files.
2020-02-14 16:36:14 +01:00
Jordi Boggiano bc002ae1fb
Merge branch 'master' into 2.0 2020-02-14 15:42:17 +01:00
Jordi Boggiano 055a179cc5
Merge pull request #8453 from naderman/funding
Add funding field to composer.json and composer fund command
2020-02-14 14:27:12 +01:00
Jordi Boggiano 8dc055bec7
Fix 5.3 syntax 2020-02-14 14:18:26 +01:00
Jordi Boggiano 653e62f201
Merge pull request #8605 from guilliamxavier/fix-validate-strict-warnings
Fix validate strict warnings
2020-02-14 14:14:21 +01:00
Jordi Boggiano 4ebc318510
Fix 5.3/5.4 builds 2020-02-14 14:10:42 +01:00
Jordi Boggiano 77a477fb57
Add FundCommand 2020-02-14 14:08:38 +01:00
Jordi Boggiano f171d1fd89
Avoid requiring auth for the funding API access 2020-02-14 11:50:56 +01:00
Guilliam Xavier a17e7e9bd3
ValidateCommand: fix array syntax for PHP 5.3 2020-02-14 10:57:19 +01:00
Jordi Boggiano b033a2ae81
Retrieve funding info from github into composer.json if not declared there 2020-02-14 10:55:22 +01:00
Jordi Boggiano ff8bf0ab82
Clarify code
Co-Authored-By: Guilliam Xavier <guilliamxavier@users.noreply.github.com>
2020-02-14 10:45:35 +01:00
Guilliam Xavier a222ec5b36
ValidateCommand: remove actually unused code 2020-02-14 10:19:27 +01:00
Nils Adermann d665ea7ea9
After update and install commands display how many packages want funding 2020-02-14 10:08:36 +01:00
Nils Adermann 5c4f524d6a
Add funding field to composer.json
You can specify a list of funding options each with a type and URL. The
type is used to specify the kind of funding or the platform through
which funding is possible.
2020-02-14 10:08:35 +01:00
Jordi Boggiano 8fd70d2dc4
Target ClassMapGenerator ignoring of invalid PSR classes for 2.0 2020-02-14 10:07:51 +01:00
Jordi Boggiano fe5b4fa4cc
Merge pull request #8597 from glaubinix/t/log-git-sync-mirror-error
Git: log error for sync mirror with existing local copy
2020-02-14 09:58:28 +01:00
Jordi Boggiano 850bfcddfa
Fix json manipulation fallback handling of empty objects, fixes #8600 2020-02-14 09:33:53 +01:00
Jordi Boggiano 71005091f0
Fix invalid access to private prop 2020-02-13 22:19:32 +01:00
Jordi Boggiano 2d8a8ed7e3
Add InstalledRepository to clean up some concepts and usages, remove BaseRepository 2020-02-13 21:44:24 +01:00
Jordi Boggiano 78885c556a
Add missing use statement 2020-02-13 18:05:04 +01:00
Jordi Boggiano c5c6d44a0b
Refactor away some unnecessary RepositorySet usages 2020-02-13 17:51:22 +01:00
Jordi Boggiano f35cd8948a
Minor refactoring of RootPackageRepo 2020-02-13 16:29:57 +01:00
Jordi Boggiano 44d1e15294
Simplify suggester output when updating, refactor suggest command to reuse SuggestedPackagesReporter and make smarter defaults, fixes #6267 2020-02-13 16:13:29 +01:00
Guilliam Xavier 35562dcd49
ValidateCommand: add a comment that we didn't forget $lockErrors 2020-02-13 15:48:36 +01:00
Guilliam Xavier 2f4bd85219
ValidateCommand: de-invert if-elseif-else to reduce code duplication 2020-02-13 14:57:38 +01:00
Guilliam Xavier 901d177179
ValidateCommand: factorize $printSchemaUrl code 2020-02-13 14:46:50 +01:00
Guilliam Xavier b5e41d6792
ValidateCommand: always display all warnings, independently of --strict 2020-02-13 14:43:26 +01:00
Guilliam Xavier 7e2679ffc1
ValidateCommand: pass $isStrict to outputResult() of with-dependencies too 2020-02-13 14:37:08 +01:00
Jordi Boggiano d52ce3c37f
Replace pre/post-dependencies-solving by a pre-operations-exec event happening only on install from lock 2020-02-12 14:35:31 +01:00
Stephan Vock 243ee9b1e4 Git: log error for sync mirror with existing local copy 2020-02-12 10:17:21 +00:00
Jordi Boggiano 835a91532d
Add PRE_POOL_CREATE event, fixes #8348 2020-02-12 10:41:04 +01:00
Jordi Boggiano 71855e6430
Restore PRE/POST_DEPENDENCY_SOLVING events 2020-02-12 10:41:03 +01:00
Jordi Boggiano 4d74f5ba95
Fix exclude-from-classmap handling to avoid foo matching foo* directories, fixes #8563, refs #8575 2020-02-12 10:23:03 +01:00
Jordi Boggiano 7e142b5d6b
Use Upgrading for package installs too 2020-02-11 17:51:02 +01:00
Jordi Boggiano 02433c3659
Merge pull request #8565 from glaubinix/t/create-project-add-repository
Create project: add option to add the repository to the composer.json
2020-02-11 13:47:34 +01:00
Jordi Boggiano 9609729de7
Change update to upgrade for package update operations which are upgrades, refs #8594 2020-02-11 13:43:38 +01:00
Jordi Boggiano be8dd528b8
Merge remote-tracking branch 'origin/master' into 2.0 2020-02-11 11:33:52 +01:00
Jordi Boggiano ef249ef6b6
Add support for lib-zip platform package 2020-02-11 11:01:20 +01:00
Ion Bazan a180f48921 Distinguish between updates and downgrades in dry-run 2020-02-11 16:35:35 +08:00
Stephan Vock 2a564a9f36 Create project: add option to add the repository to the composer.json 2020-02-10 16:46:28 +00:00
Jordi Boggiano 5843a282bc
Merge pull request #8562 from adrianosferreira/fix-archive-format-cli
Uses config data from Composer object whenever possible on ArchiveCommand
2020-02-10 17:26:26 +01:00
Adriano Ferreira 97d077c43b Uses config data from Composer object whenever possible on ArchiveCommand
It was previously blindly getting a new instance from the factory thus ignoring what is on Composer object config data.
2020-02-10 13:15:58 -02:00
Jordi Boggiano 589abb06a3
PHPStan fixes 2020-02-07 23:10:10 +01:00
Jordi Boggiano c56886ac36
Avoid checking for .dockerenv if open_basedir is set, fixes #8585 2020-02-07 22:33:39 +01:00
Jordi Boggiano 45ecbae8f5
Merge branch 'master' into 2.0 2020-02-07 22:20:51 +01:00
Ion Bazan 2ff73a8797 respect `notify-on-install` option 2020-02-05 15:52:14 +08:00
Jordi Boggiano 4e4304ae7d
Fix 2020-02-04 13:22:46 +01:00
Jordi Boggiano 0b4763e6c7
Make it clear which package the error is for when detecting uncommitted changes 2020-02-04 13:06:20 +01:00
Jordi Boggiano 006c3de542
Fix tests and make TTY usage on ProcessExecutor cleaner 2020-01-31 16:33:34 +01:00
Jordi Boggiano f572636628
Add support for TTY mode on Linux/OSX in script handlers when running in interactive mode, fixes #5856, fixes #3299, closes #4036 2020-01-31 15:45:33 +01:00
Jérôme Billiras 58e2956b95
Allow referencing scripts to extends @composer 2020-01-31 14:56:22 +01:00
Jordi Boggiano d14d411fa4
Add --dry-run to require and remove commands, fixes #7793 2020-01-31 14:34:10 +01:00
Nils Adermann fdfdee03c1 Remove unused argument to pool->match 2020-01-30 22:54:59 +01:00
Nils Adermann 4f44b7b221 Remove unused policy function findUpdatePackages 2020-01-30 22:49:15 +01:00
Jordi Boggiano a1fe64152d
Minor Installer cleanups 2020-01-30 21:03:35 +01:00
Jordi Boggiano 2f4ea3a463
Fix show command, refactor RepositorySet constructor 2020-01-30 20:21:17 +01:00
Jordi Boggiano 38f6ae2c4e
Fix react/promise usage for v2 2020-01-30 17:30:38 +01:00
Jordi Boggiano 189d5adab0
Fix reporting of replace conflicts to not mention provides 2020-01-30 17:13:12 +01:00
Jordi Boggiano ec90c17e3b
Fix conflict order to be more accurate 2020-01-30 15:55:37 +01:00
Jordi Boggiano 1e68555e0a
Sanitize URLs in getRepoName and centralize the Url sanitization process 2020-01-30 15:50:46 +01:00
Jordi Boggiano c41df325d8
Remove RepositorySet from Solver and remove getPool from RepositorySet 2020-01-30 15:23:22 +01:00
Jordi Boggiano 1d4cdb60d0
Improve error reporting for conflicts/replaces of various kinds, fixes #7254 2020-01-30 14:43:56 +01:00
Jordi Boggiano 6c9d9e775c
Clean up and deduplicate the output of RULE_LEARNED 2020-01-30 14:43:56 +01:00
Jordi Boggiano 29efc473a1
Suggest which providers could be required to fulfill a virtual package requirement, fixes #2811 2020-01-30 14:43:55 +01:00
Jordi Boggiano 3fc7e10c5c
Improve error reporting of solver issues, refs #7779
Fixes #8525
Fixes #6513
2020-01-30 14:43:54 +01:00
Jordi Boggiano f611c641db
Merge pull request #8561 from Seldaek/allow-providers-even-on-match
Allow providers which are selected to be installed in place of existing packages which do not satisfy requirements
2020-01-30 14:22:42 +01:00
Jordi Boggiano 46e35bc8d7
Fix 5.3/undef var issues 2020-01-30 14:17:49 +01:00
Jordi Boggiano 8a41f1a5ca
Allow providers which are selected to be installed in place of existing packages which do not satisfy requirements, fixes #6753 2020-01-30 14:09:55 +01:00
Jordi Boggiano 2901995fc8
Fix issue excluding unstable packages when stabilityFlags are empty 2020-01-30 10:17:42 +01:00
Jordi Boggiano 8f09f3764b
Avoid fetching non-existing files multiple times 2020-01-30 08:40:35 +01:00
Jordi Boggiano 39fb2cc51c
Fix case 2020-01-28 16:04:11 +01:00
Jordi Boggiano 3f48acf56a
Add test checking references update to latest and remove TODO 2020-01-28 16:01:17 +01:00
Jordi Boggiano 41720e9b70
Show abandoned warnings from the locked repo 2020-01-28 15:56:52 +01:00
Jordi Boggiano 292d4b3c8f
Make sure a lock file is always written and things work well even without any dependencies in the require/require-dev 2020-01-28 15:14:58 +01:00
Jordi Boggiano 173b96de2d
Make sure the first require does not fail due to a missing lock file 2020-01-28 15:13:35 +01:00
Jordi Boggiano 8584d15e8c
Merge branch 'master' into 2.0 2020-01-28 14:04:27 +01:00
Jordi Boggiano 94dce37424
Avoid use of refs and avoid a false path when showing the root package, refs #8545 2020-01-28 13:52:34 +01:00
Jordi Boggiano 9db08f9883
Merge remote-tracking branch 'Serializator/feature/show-package-json' 2020-01-28 12:57:34 +01:00
Jordi Boggiano e9c7e253f4
Merge pull request #8529 from vitalyzhakov/master
Change only modified files for docker caching
2020-01-28 11:31:40 +01:00
Jordi Boggiano 1287a7a611
Merge pull request #8538 from adrianosferreira/add-vendor-bin-for-each-event
Append the bin dir on each listener iteration
2020-01-28 11:29:22 +01:00
Julian van den Berkmortel 933fe27cd5 Add support for "composer show --format=json <package>" #8544 2020-01-21 23:07:54 +01:00
Жаков Виталий ccd8be382b comments for #2764 2020-01-21 11:10:18 +05:00
Жаков Виталий 415cf9fd50 Merge branch 'master' of https://github.com/composer/composer 2020-01-21 11:06:56 +05:00
Жаков Виталий 48c7442b63 should be || not OR 2020-01-20 16:25:38 +05:00
Adriano Ferreira acc040f745 Append the bin dir on each listener iteration
The "composer install" can create the vendor/dir folders and be used as a script item on composer.json. Having another script running after it that relies on vendor/bir binaries (such as phpunit) will cause it to not find the binary. This fix addresses the issue by trying to append the path on each script iteration.
2020-01-20 08:11:08 -02:00
Nils Adermann 8b877eb068 Remove superfluous check in Problem 2020-01-20 10:27:04 +01:00
Nils Adermann 0b4e8952f6 PHP5 disallows require as a function name, use requireName analog to fixPackage 2020-01-19 23:28:00 +01: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
Jordi Boggiano 1d31190472
Keep track of unacceptable fixed packages for later to use in error reporting and make sure the pool state is consistent 2020-01-17 15:48:31 +01:00
Жаков Виталий 1e92780600 operations case touch 2020-01-17 19:37:39 +05:00
Jordi Boggiano c6a3f48eaf
Remove some more remove request handling 2020-01-17 15:35:37 +01:00
Patrick Weyck 7d7e3d594b Normalize minimum-stability `rc` to `RC` in `InitCommand`
A `minimum-stability` of `rc` is valid according to
`composer-schema.json` and works fine with install and update and
generally in version comparisons, because it's normalized to `RC`.

This commit makes it work in `InitCommand` and `RequireCommand` too.
2020-01-17 15:34:18 +01:00
Jordi Boggiano 7cc8a4aed8
Avoid checking stability on platform packages too 2020-01-17 15:29:30 +01:00
Jordi Boggiano 6dc576738a
Avoid partial updates from applying changes to packages which are not locked with an acceptable stability 2020-01-17 15:15:46 +01:00
Jordi Boggiano e162cc6f0a
Remove "remove" from request 2020-01-17 14:57:32 +01:00
Jordi Boggiano 304753ff69
Remove callback and pass stabilities all the way instead
This allows optimizing the loading of ~dev files, and cleans up a few things
2020-01-17 14:57:32 +01:00