Jordi Boggiano
c0f5c13516
RuleSetGenerator instance does not need to be kept around anymore
2020-06-02 09:45:19 +02:00
Jordi Boggiano
1e08097a17
Fix phpstan warning
2020-06-01 16:05:13 +02:00
Jordi Boggiano
a9affa8413
Add missing use statement
2020-06-01 15:58:34 +02:00
Jordi Boggiano
e85da00dff
Add a way to ignore only some packages in --ignore-platform-reqs, and make the platform check ignore those packages which were ignored as requirements, fixes #8861
2020-06-01 15:43:24 +02:00
Jordi Boggiano
21e708f2c4
Remove upper bound PHP version checks from platform-check as there is not enough value added and it risks causing issues
2020-06-01 09:39:44 +02:00
Jérémy Derussé
95e6e16b78
Use Semver compiled constraints
2020-05-26 21:35:30 +02:00
Markus Staab
6a0e02db1b
Autoload-Generator: support glob patterns in classmaps
2020-05-23 21:22:07 +02:00
Jordi Boggiano
a07f9ffba9
Catch SIGINT/Ctrl+C during installs and run cleanups on all packages before exiting
2020-05-22 13:24:30 +02:00
Jordi Boggiano
385655f02a
Mark temp files as such for clarity in case any gets left over
2020-05-22 13:23:14 +02:00
Jordi Boggiano
acf2b15982
Merge branch '1.10'
2020-05-22 10:30:51 +02:00
azjezz
30f994e424
fix deprecations in PHP 8
2020-05-21 18:16:19 +01:00
Jordi Boggiano
c7fb15faf4
Update to MatchAllConstraint
2020-05-21 16:12:41 +02:00
Jordi Boggiano
45d3e133a4
Avoid checking for unbounded constraints in platform checks
2020-05-19 17:15:08 +02:00
Jordi Boggiano
62d0443e07
Avoid checking for readline in non-CLI contexts, fixes #8909
2020-05-19 16:46:33 +02:00
Jordi Boggiano
d42e12c514
Make config non optional, fixes #8896
2020-05-19 16:34:51 +02:00
Jordi Boggiano
b27c4b2472
Merge branch '1.10'
2020-05-19 15:48:19 +02:00
Timo Webler
541692bbfe
Use "getInitialWorkingDirectory" instead of "getWorkingDirectory"
...
Follow-up 8d24b61bef
2020-05-19 15:47:51 +02:00
Jordi Boggiano
1d2df5ef55
Add output to remove/require command to highlight the fact it is running an update command, refs #8910
2020-05-19 14:48:58 +02:00
Jordi Boggiano
af6444353f
Refactor hint generation and whitespace handling in SolverProblemsException
2020-05-19 12:17:57 +02:00
Jordi Boggiano
98e5f81a5f
Fix detection of fixed package problems to include more cases, fixes #8910
2020-05-19 12:17:25 +02:00
Jordi Boggiano
beded906ba
Merge branch '1.10'
2020-05-08 21:05:07 +02:00
Jean-Michel DELEHAYE
42fc372e52
Add function_exists() for 'pcntl_signal'
2020-05-08 20:53:43 +02:00
Matěj Kmínek
a074819a51
Add support for gitlab deploy token ( #8867 )
...
* feat: Added ability to work with GitLab deploy tokens: https://docs.gitlab.com/ee/user/project/deploy_tokens/
Deploy tokens can be specified two ways:
1) GIT CONFIG:
git config --add gitlab.deploytoken.user USERNAME && git config --add gitlab.deploytoken.token TOKEN
2) Auth.json:
"gitlab-token": {
"gitlab.com": {"username": "USERNAME", "token": "TOKEN"}
}
2020-05-08 17:43:07 +02:00
Jordi Boggiano
1ef352751c
Fix display issue in create-project when installing dev-master
2020-05-06 13:45:31 +02:00
Jordi Boggiano
ba3df8faea
Merge pull request #8843 from FIDATA/feature/archive-name
...
Add (default) base name of archive into composer.json
2020-05-06 11:06:28 +02:00
Jordi Boggiano
dd0c8b4278
Merge pull request #8723 from helhum/fix-package-sorting
...
Fix package sorting
2020-05-06 10:47:01 +02:00
Jordi Boggiano
3134466b42
Merge branch '1.10'
2020-05-06 10:30:53 +02:00
Jordi Boggiano
4ce492d01d
Fix detection of gitlab URLs, fixes #8402 , closes #8868
2020-05-06 10:18:53 +02:00
Nils Adermann
5d5515348a
Merge pull request #8860 from Seldaek/update-with
...
Add --with to update command to allow downgrading to a specific version / applying custom temporary constraints
2020-05-05 17:03:49 +02:00
Nils Adermann
ff0717ad66
Merge pull request #8859 from Seldaek/deduplicate-problems
...
Deduplicate require/conflict rules which are the same but for different versions of the same package
2020-05-05 16:19:07 +02:00
Nils Adermann
678abdbc9f
Merge pull request #8873 from Seldaek/version_selector_platform
...
Use all PlatformRepo packages in VersionSelector checks
2020-05-04 22:20:11 +02:00
Jordi Boggiano
1d68e85433
Fix usage
2020-05-04 22:04:57 +02:00
Jordi Boggiano
ef3797cdd6
Cache successful requests to make sure subsequent loadPackages calls do not do the same requests for nothing
2020-05-04 21:58:33 +02:00
Jordi Boggiano
8a2dd1baef
Adjust all usages of VersionSelector to the new API
2020-05-04 21:48:48 +02:00
Jordi Boggiano
419567ba6d
Update VersionSelector to take all platform requirements into account when selecting packages
2020-05-04 21:16:41 +02:00
Jordi Boggiano
b11f43f59e
Merge remote-tracking branch 'origin/1.10'
2020-05-04 20:27:34 +02:00
Jordi Boggiano
92aed041e4
Make the VersionSelector take Composer API/Runtime versions into account, refs getsentry/sentry-php#1008
2020-05-04 13:51:34 +02:00
Markus Staab
11930001fb
Added phpdoc types for PoolBuilder ( #8862 )
2020-05-04 13:34:05 +02:00
Ayesh Karunaratne
aa20413990
Improve regex in \Composer\Downloader\SvnDownloader::getCommitLogs() by removing unnecessary greedy operator
2020-05-04 01:03:15 +07:00
Ayesh Karunaratne
d4c8478df5
Improve regex in \Composer\Repository\ComposerRepository::fetchFile() by removing unnecessary greedy operator
2020-05-04 00:38:53 +07:00
Helmut Hummel
7c891701e6
Fix package sorting
...
PackageSorter weighs the importance of a package
by counting how many times it is required by other packages.
This works by calculating the weight for each package name.
However currently the package index of the package array
is currently passed the weigh function, which basically
disables package sorting.
The reason for that is, that a package repository previously
returned the package list as associative array with package name as keys,
but currently just as an array with integer keys.
Therefore we must extract the package name from the package
before passing it to the weigh function.
2020-05-03 16:31:47 +02:00
Jordi Boggiano
1d077ede70
Merge branch '1.10'
2020-05-01 18:08:22 +02:00
Jordi Boggiano
bfe71fb952
Fix support for --self --name-only, fixes #8844
2020-05-01 18:03:22 +02:00
Jordi Boggiano
4ce3836f51
Fix creation of a php: dir when running create-project, fixes #8849
2020-05-01 17:23:32 +02:00
Jordi Boggiano
7f308d986e
Add --with to update command to allow downgrading to a specific version/applying custom temporary constraints, fixes #8756
2020-05-01 16:56:17 +02:00
Jordi Boggiano
3a64acb53e
Make sure versions are ordered also in the satisfied by package lists
2020-05-01 15:54:01 +02:00
Jordi Boggiano
56a11b9c2c
Deduplicate require/conflict rules which are the same but for different versions of the same package, fixes #8851
2020-05-01 15:41:54 +02:00
Jordi Boggiano
56811b4c8f
Exclude platform require/provides from InstalledVersions as concrete ones are also not listed
2020-05-01 13:10:50 +02:00
Jordi Boggiano
557fb873ee
Add a way to retrieve the Loop instance from Composer to be able to wait on promises to integrate things
2020-05-01 09:54:41 +02:00
Jordi Boggiano
3c593b0d12
Remove duplicate use statement
2020-04-30 21:36:17 +02:00
Jordi Boggiano
74a63b4d6b
Merge branch '1.10'
2020-04-30 21:31:29 +02:00
Jordi Boggiano
81bf47ffa2
Use fully qualified calls in hot classes
2020-04-30 21:28:05 +02:00
Alessandro Lai
ff05150c4e
Add composer-runtime-api version constant
2020-04-29 09:02:51 +02:00
Basil Peace
6140897d08
feat: add archive.name config option
2020-04-29 01:01:48 +03:00
Alessandro Lai
270c7c3262
Backport validation support for composer-runtime-api ( #8842 )
...
Fixes #8841
2020-04-28 16:04:00 +02:00
Nils Adermann
56edd53046
Remove unnecessary implementation of interface method in abstract class
2020-04-28 11:57:03 +02:00
Jordi Boggiano
a63913c245
Merge pull request #8836 from kbacia7/master
...
close #8784 , Added --locked option to composer show command. Displaying locked packages with --all option
2020-04-28 08:54:16 +02:00
Kamil Bacia
0779308076
close #8784 , Added --locked option to composer show command. Displaying locked packages with --all option
2020-04-27 21:53:12 +02:00
Nils Adermann
994a5b41c2
Provide default impl for abstract method in interface for PHP < 5.3.9 ( #8837 )
2020-04-26 09:15:15 +02:00
Jordi Boggiano
d173af2d7a
Fix check-platform-reqs command to take into account provide/replace from the root package
2020-04-24 13:46:18 +02:00
Jordi Boggiano
6a6ea6057f
Handle provider/replacer packages and avoid checking extensions which are provided by packages, refs #8546
2020-04-24 13:38:50 +02:00
Jordi Boggiano
d494df61ff
Make sure platform-check returns a non-0 exit code if it fails
2020-04-24 13:25:13 +02:00
Jordi Boggiano
755a73baa9
Only check for pcntl on cli SAPI, fixes #8828
2020-04-23 20:44:14 +02:00
PirxDanford
3a7ea25289
Introduce --no-install option for the update, require and remove commands
...
Closes #8669 , fixes #8551
Co-authored-by: Jordi Boggiano <j.boggiano@seld.be>
2020-04-23 14:55:07 +02:00
effulgentsia
46efcefefa
Added --json and --merge options to ConfigCommand ( #8779 )
2020-04-23 14:27:14 +02:00
Jordi Boggiano
1d4185b844
Recommend ocramius/package-versions fork if needed to solve dependencies
2020-04-23 13:51:57 +02:00
Jordi Boggiano
34801239f1
Tweak problem wording slightly
2020-04-23 13:17:34 +02:00
Jordi Boggiano
cdc6a87e8d
Fix docblock
2020-04-23 11:01:44 +02:00
Jordi Boggiano
9b8694bc0b
Show suggestions from root package in suggest, and lists them in count only on first install of a project, fixes #8805
2020-04-23 10:53:24 +02:00
Jordi Boggiano
6529fabb24
Add isFresh to InstalledRepositoryInterface and make sure local repo is always an InstalledRepositoryInterface
2020-04-23 10:52:33 +02:00
Jordi Boggiano
fa14cd1353
Show number of additional suggestions when not using --all, fixes #8788
2020-04-23 10:23:56 +02:00
Jordi Boggiano
d6a9d78309
Merge pull request #8810 from heddn/8809_expand_context_post_file_download
...
#8809 : expand context for post file download event
2020-04-22 17:14:45 +02:00
Jordi Boggiano
7049bbb714
Switch require_once to require for autoload_static as the once variant seems unnecessary
2020-04-22 17:05:37 +02:00
Jordi Boggiano
c2f77d80bd
Remove usage of 5.6+ constant
2020-04-22 16:40:42 +02:00
Jordi Boggiano
1000d49145
Fix error reporting when the root version changed since the last update, and does not match circular deps in lock file anymore
2020-04-22 14:02:09 +02:00
Jordi Boggiano
0ab48a1773
Add composer-runtime-api platform package
2020-04-22 12:10:09 +02:00
Jordi Boggiano
0d1922dc27
Add a Composer\Versions class which is available in all projects at runtime to query installed packages/versions
2020-04-22 12:10:09 +02:00
Jordi Boggiano
4ba958f08e
Merge pull request #8816 from staabm/patch-2
...
fixed typo in phpdocs
2020-04-22 07:38:54 +02:00
Pierre Grimaud
a42c6ceff3
Fix typos
2020-04-22 00:43:34 +02:00
Jordi Boggiano
2c8a4a1b93
Add platform-check config option to disable platform_check.php generation, and disable it for Composer
2020-04-21 15:25:35 +02:00
Markus Staab
3c09e4021e
fixed typo
2020-04-21 15:04:47 +02:00
Jordi Boggiano
af18c2bd7d
Update semver, fix poolbuilder usage and optimize creation of filtering nameConstraints
2020-04-21 14:50:11 +02:00
Jordi Boggiano
c9846d4d3c
Merge pull request #8812 from nicolas-grekas/ext-check
...
Optimize extension checks
2020-04-21 11:45:26 +02:00
Nils Adermann
75f4116417
Merge pull request #8811 from Seldaek/fix-transaction-order
...
Fix transaction order
2020-04-21 11:38:59 +02:00
Jordi Boggiano
c41bb909ff
Add platform check file in phars, fixes #8813
2020-04-21 11:18:02 +02:00
Nicolas Grekas
6463ab9e49
Optimize extension checks
2020-04-21 09:35:34 +02:00
Yanick Witschi
e23710f92d
Implemented php version check in autoload.php ( #8546 )
2020-04-21 08:59:36 +02:00
Lucas D Hedding
2bf2e9fc60
fix failing tests
2020-04-20 14:40:25 -06:00
Jordi Boggiano
ba9d4793bc
Fix transaction order
2020-04-20 22:24:00 +02:00
Lucas D Hedding
3e2163de5c
#8809 : expand context for post file download event
2020-04-20 13:50:42 -06:00
Jordi Boggiano
3f338ee8d9
Make sure versions are sorted before they get trimmed in error output
2020-04-19 15:51:30 +02:00
Jordi Boggiano
424c08d6b2
Fix bug loading ~dev in some circumstances
2020-04-19 15:51:29 +02:00
Jordi Boggiano
b3f46979b0
Merge pull request #8802 from kubawerlos/command-validate-no-check-version
...
Add "no-check-version" option to ValidateCommand
2020-04-18 14:41:38 +02:00
Jordi Boggiano
c12a1a6d64
Update flag description
2020-04-18 14:41:04 +02:00
Kuba Werłos
a54bf0e2d4
Use flags instead of boolean in ConfigValidator for checking version field
2020-04-18 09:24:54 +02:00
Kuba Werłos
4ec73874cb
Add "no-check-version" option to ValidateCommand
2020-04-17 22:38:14 +02:00
Jérôme Tamarelle
bd34ff1328
Remove unused property $httpDownloader
2020-04-16 01:14:56 +02:00
Jordi Boggiano
80a7c40c76
Shorten long lists of similar versions in problem output, fixes #8743
2020-04-15 16:47:44 +02:00
Jordi Boggiano
5b54a93751
Fix phpstan build
2020-04-15 00:33:52 +02:00
Jordi Boggiano
44a4429978
Remove PEAR installer/downloader/repos/..., fixes #8778
2020-04-15 00:24:13 +02:00
Nils Adermann
5e9bf532c1
Merge pull request #8786 from Seldaek/unused-flag
...
Add --unused flag to remove command
2020-04-14 23:51:19 +02:00
Lucas Hedding
1883832ddc
Provides a post download event ( #8655 )
2020-04-14 23:48:18 +02:00
Jordi Boggiano
11765ddfea
Add --unused flag to remove command, fixes #8283
2020-04-14 23:42:49 +02:00
Jordi Boggiano
6bed9d8f13
Implement count and search correctly in FilterRepository
2020-04-14 22:55:53 +02:00
Jordi Boggiano
a0c5d519e9
Restore --no-suggest but mark it deprecated, remove --no-custom-installers and mark --dev also deprecated with stronger wording
2020-04-14 22:35:13 +02:00
Markus Staab
3819b02fea
added phpstan types to `CompletePackageInterface` ( #8782 )
2020-04-14 22:05:58 +02:00
Alexandre D'Eschambeault
e0e2bb11a5
Fix typo: directory instead of directoy
2020-04-13 19:45:35 -04:00
Jordi Boggiano
be1ddcf293
Fix handling of svn trunk in version guesser, fixes #8765
2020-04-13 12:48:43 +02:00
Jordi Boggiano
876136022b
Merge remote-tracking branch 'origin/1.10'
2020-04-13 12:41:30 +02:00
Jordi Boggiano
19902ba6a9
Merge pull request #8772 from villfa/fix/8771
...
Dispatch POST_STATUS_CMD even when there is no changes
2020-04-13 12:41:02 +02:00
Jordi Boggiano
2e7ace238a
Merge pull request #8767 from cebe/package-name-double-dash
...
Allow duplicate dashes in package names (1.10)
2020-04-13 12:37:41 +02:00
Jordi Boggiano
7d3f45cf04
Avoid errors in cleanup, fixes #8766 , fixes #8764
2020-04-13 12:15:17 +02:00
Jordi Boggiano
62fda2ed85
Reorg ComposerRepository to fix tests
2020-04-13 12:10:31 +02:00
Jordi Boggiano
048781c268
Fix whatProvides function declaration
2020-04-13 12:02:59 +02:00
Jordi Boggiano
3dd6dbe14a
Merge pull request #8774 from Ayesh/https
...
Update HTTP URLs to their HTTPS if they already redirect automatically
2020-04-13 11:52:21 +02:00
Jordi Boggiano
4ea6b1ef55
Make all params non-optional
2020-04-13 11:49:51 +02:00
Ayesh Karunaratne
fdb35a6a06
Fix \Composer\Installer\PackageEvent::__construct() and \Composer\Repository\ComposerRepository::isVersionAcceptable() required arguments used after optional, which is deprecated in PHP 8.0
...
1. `Deprecated: Required parameter $name follows optional parameter $constraint in src\Composer\Repository\ComposerRepository.php on line 745`
2. `Deprecated: Required parameter $operation follows optional parameter $operations in src\Composer\Installer\PackageEvent.php on line 73`
Optional parameters with a type declared, and a default value of `null` is excepted from this deprecation. See https://php.watch/versions/8.0/deprecate-required-param-after-optional . This is the case in `ComposerRepository::isVersionAcceptable`, which still has two optional parameters as first two parameters, but this will not raise a deprecation notice.
2020-04-13 07:12:35 +07:00
Ayesh Karunaratne
280f02b4bc
Update HTTP URLs to their HTTPS if they already redirect automatically
2020-04-13 06:22:02 +07:00
Fabien Villepinte
c718579623
Dispatch POST_STATUS_CMD even when there is no changes
2020-04-12 14:35:23 +02:00
Carsten Brandt
960fa4b205
Allow duplicate dashes in package names
...
fixes #8749
1.10 implementation of #8750
2020-04-10 19:01:06 +02:00
Jordi Boggiano
40a35abb94
Resolve options when creating requests to fix 5.3 build
2020-04-10 12:24:43 +02:00
Jordi Boggiano
4cb74d33e6
Forward default HttpDownloader options to RemoteFilesystem/CurlDownloader, fixes #8757
2020-04-10 12:10:30 +02:00
Jordi Boggiano
86cfbdc541
Merge branch '1.10'
2020-04-10 11:45:48 +02:00
Jordi Boggiano
2f7e901940
Fix #8748 in an alternative way to avoid messing with PATH for other binaries, fixes #8758
2020-04-10 11:42:52 +02:00
Jordi Boggiano
b3dbd95332
Fix PHP <5.6 syntax, fixes #8759 , closes #8760
2020-04-10 11:34:00 +02:00
Jordi Boggiano
a7ad186c89
Return early in case a call to the wrapped repo is unnecessary
2020-04-09 17:12:35 +02:00
Jordi Boggiano
096b507050
Merge branch '1.10'
2020-04-09 17:07:58 +02:00
Jordi Boggiano
e121de35a3
Fix variable used for symlinking absolute paths, refs #8700
2020-04-09 17:01:48 +02:00
Jordi Boggiano
f70b3b0152
Avoid warning about --2 usage when no channel is requested
2020-04-09 16:25:10 +02:00
Jordi Boggiano
8e664a37f5
Merge branch '1.10'
2020-04-09 16:13:15 +02:00
Jordi Boggiano
b79f2b5e0f
Make sure scripts calling composer call the correct composer binary even if the project requires composer/composer, fixes #8748
2020-04-09 15:43:47 +02:00
Jordi Boggiano
ccc8829ed9
Allow forcing self-update to stick to 1.x or 2.x using --1 and --2 flags, fixes #8753
2020-04-09 15:17:30 +02:00
Jordi Boggiano
28d26bd3a4
Merge pull request #8755 from Seldaek/repo-filtering
...
Add options to configure repository priorities
2020-04-09 14:02:33 +02:00
Markus Staab
6f6974df70
added phpdocs ( #8754 )
2020-04-09 13:44:30 +02:00
Jordi Boggiano
b6bad4eef6
Add options to configure repository priorities
2020-04-09 13:39:06 +02:00
Jordi Boggiano
59c831c2f8
Add docs to loadPackages
2020-04-09 11:50:37 +02:00
Jordi Boggiano
e34a2a9f45
Remove unused used vars
2020-04-09 11:23:25 +02:00
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
55f122008b
Make sure we avoid cleanup running more than once per package on VcsDownloader
2020-04-09 10:32:59 +02:00
Matthias Van Woensel
067101dbf5
Only send GitHub API token to api.github.com domain ( #8747 )
2020-04-09 09:58:34 +02:00
Jordi Boggiano
0aaa815268
Merge branch '1.10'
2020-04-09 09:51:35 +02:00
Bingqing Wang
46db638678
fix typo
2020-04-09 09:50:38 +02:00
Bingqing Wang
63eb178297
compatible with symfony/console 5.0.0 getVerticalBorderChars() method
2020-04-09 09:50:19 +02:00
Jordi Boggiano
aa6be02c64
Allow COMPOSER_DISABLE_NETWORK to work with GitHubDriver by doing a cache priming pass first
2020-04-08 17:53:15 +02:00
Jordi Boggiano
9575c7623f
Update changelog, add upgrade guide
2020-04-08 16:44:32 +02:00
Jordi Boggiano
ee09b75be3
Clean ups
2020-04-08 15:55:51 +02:00
Jordi Boggiano
8930f1b824
Add color to lock operations and dry run output
2020-04-08 15:18:28 +02:00
Jordi Boggiano
2e64e8dc2e
Avoid generating duplicate aliases in lock file if several aliased packages are installed
2020-04-08 14:18:38 +02:00
Jordi Boggiano
64f907f93f
Fix handling of aliases to use consistent format everywhere
2020-04-08 12:31:02 +02:00
Jordi Boggiano
a695f686c3
Add some docblocks and make sure RepositorySet/PoolBuilder accept regular rootAliases and not pre-normalized ones
2020-04-08 11:46:06 +02:00
Markus Staab
593d5abf27
use more precise phpstan/psam return-types ( #8744 )
2020-04-08 10:01:09 +02:00
Jordi Boggiano
736af4cb58
Add with-all-dependencies and update-with-all-dependencies args to remove command
2020-04-07 16:13:56 +02:00
Jordi Boggiano
52d1b52eb6
Merge branch '1.10'
2020-04-07 16:07:05 +02:00
Jordi Boggiano
11999118a5
Avoid failing on malformed funding info, fixes #8731
2020-04-07 16:04:58 +02:00
Jordi Boggiano
a8eec36931
Merge branch '1.10'
2020-04-07 16:00:11 +02:00
Jordi Boggiano
96c1ba279a
Add infos about plugin install failure
2020-04-07 15:55:59 +02:00
Markus Staab
c30925e68d
extracted `VersionParser::DEV_MASTER_ALIAS` ( #8742 )
2020-04-07 15:49:07 +02:00
Jordi Boggiano
b166ef4b58
Fix more phpstan errors
2020-04-07 14:57:37 +02:00
Jordi Boggiano
bbc4854452
Merge pull request #8740 from renanbr/patch-1
...
Remove duplicated `dry-run` option
2020-04-07 14:43:41 +02:00
Jordi Boggiano
80505e745e
Fix phpstan issues
2020-04-07 14:40:51 +02:00
Adam Žurek
25cd2382cb
Raise phpstan level to 1 ( #8027 )
2020-04-07 14:13:50 +02:00
Nils Adermann
cb68fc3134
Merge pull request #8690 from Seldaek/solver-problems
...
Error reporting improvements
2020-04-07 13:27:46 +02:00
Jordi Boggiano
d34ea60c48
canonicalize providers api url
2020-04-07 13:09:22 +02:00
Jordi Boggiano
3e19e3b0f1
Show alias of version in package lists in problems
2020-04-07 13:06:05 +02:00
Jordi Boggiano
7cca451312
Fix more issues with dev-master normalization in aliases
2020-04-07 13:06:04 +02:00
Jordi Boggiano
e09dd9c10d
Detect packages which are only available in lock file and warn appropriately
2020-04-07 13:06:04 +02:00
Jordi Boggiano
8945936dbd
Deduplicate solver problems which list problems for dev-master AND 9999999-dev
2020-04-07 13:06:03 +02:00
Renan
c4a3e912a1
Remove duplicated `dry-run` option
2020-04-07 12:28:17 +02:00
Nils Adermann
415b36a1a1
Remove match types from Pool as these are no longer used
2020-04-07 11:11:18 +02:00
Nils Adermann
80a5fdf398
Remove obsolete rules and their generation
...
The only automatic conflict we have results from packages using the same name
either by literally having the same name and being different versions or they
replace the same name, so
- removed all types of obsolete rules
- simplified rule generation significantly
- got rid of provide filtering in the pool
- fixed some language in error handling
2020-04-07 11:11:18 +02:00
Nils Adermann
4e3d989978
A package providing a name should not conflict with a package replacing it
...
Simplified whatProvides, mustMatchName is unused, removed unused
function from policy
2020-04-07 11:08:47 +02:00
Jordi Boggiano
2b86df4003
Add a hint about being on v2 when things go wrong
2020-04-07 10:05:53 +02:00
Jordi Boggiano
87757de6bc
Merge branch '2.0'
2020-04-07 09:39:00 +02:00
Jordi Boggiano
1c73f078f7
Remove repository field from getProviders result
2020-04-06 21:17:03 +02:00
Nils Adermann
4fab2c7759
Error wording use "thus cannot" instead of "can thus not"
2020-04-02 16:02:17 +02:00
Jordi Boggiano
51c48b1519
Merge pull request #8729 from naderman/t/partial-update-always-update-replace
...
Give a clearer error message explaining how to update a conflicting locked dependency
2020-04-02 15:54:45 +02:00
Nils Adermann
9858718ef6
Give a clearer error message explaining how to update a conflicting locked dependency
2020-04-02 15:32:02 +02:00
Jordi Boggiano
4e7ff690c6
Revert lock file as well when a require command operation failed to complete
2020-04-02 14:39:53 +02:00
Nils Adermann
1b55b466fb
require: Add with-dependencies and with-all-dependencies as alternative option names
2020-04-02 14:19:36 +02:00
Jordi Boggiano
379baa1560
Merge pull request #8717 from naderman/t/pool-builder-allow-list
...
Move processing of partial update argument list into the pool builder
2020-04-02 12:53:02 +02:00
Nils Adermann
f7b5cbd1fc
Lock file should not contain new aliases for packages which were not updated
2020-04-02 01:12:34 +02:00
Nils Adermann
5ad93959cf
PoolBuilder: On partial update of a new dep with mutual replace, unfix replacer
...
Test also verifies provider does not get uninstalled in partial update
for another package name
2020-04-02 00:54:49 +02:00
Nils Adermann
613450e58a
PoolBuilder: properly clean up alias packages when unfixing packages
...
Prevent aliases to be duplicated: no need to apply root aliases from
composer.json on packages currently locked, they should have their
aliases in the lock file, otherwise request an update.
2020-04-02 00:08:53 +02:00
Nils Adermann
2dfbf3692a
PoolBuilder: Remove null default for io
2020-04-01 16:42:12 +02:00
Nils Adermann
14000e7575
PoolBuilder: Ensure alias references get removed when unfixing a locked package
...
Use the last key + 1 for an index instead of count, since we unset elements somtimes
2020-04-01 16:40:45 +02:00
Nils Adermann
c270d3cfa6
PoolBuilder: make io non-nullable, NullIO can be used instead
2020-04-01 15:27:51 +02:00
Nils Adermann
71c3c63b54
Remove unused variable assignment
2020-03-30 16:37:31 +02:00
Nils Adermann
9fb09049ff
Rename and document constants for partial update behavior
2020-03-30 16:21:27 +02:00
Jordi Boggiano
22a52f5813
Apply suggestions from code review
...
Co-Authored-By: Andreas Möller <am@localheinz.com>
2020-03-29 16:59:07 +02:00
Andreas Möller
6e88683e35
Fix: Return early
2020-03-29 12:18:56 +02:00
Jordi Boggiano
800491175b
Avoid failing cleanup when a package gets uninstalled
2020-03-28 20:50:49 +01:00
Jordi Boggiano
6e45a53e76
Add support for relative paths in handling of install-path for the installed.json
2020-03-28 20:39:11 +01:00
Jordi Boggiano
1b1d59ee6c
Make FileDownloader always download file first in vendor-dir/composer/$tmp instead of next to install path to avoid issues with custom installers not being loaded when downloading on first install, and use cleanup method properly
2020-03-28 20:38:50 +01:00
Jordi Boggiano
918768fc54
Make sure we get a temporary dir which is unique
2020-03-28 20:37:09 +01:00
Jordi Boggiano
73251691a0
Avoid emptying the directory before extracting an archive into it, check that it is empty instead
2020-03-28 20:36:55 +01:00
Nils Adermann
fc40fefa6f
Make sure nameConstraints is always set when loading a name
2020-03-27 23:13:21 +01:00
Nils Adermann
443553423b
Mark replaced packages for update when using --with-dependencies
...
This is necessary to allow the requiring of new packages which replace
packages currently locked without requiring explicitly listing them as
an argument, so simplifies the composer require command
2020-03-27 22:59:00 +01:00
Nils Adermann
392d0abd21
Rename test files and standardize on allow list rather than whitelist
2020-03-27 22:15:04 +01:00
Nils Adermann
01fe92905a
The update allow list is now generated while building the pool
...
This reduces code complexity while making partial updates more
predictable. This also allows composer require to successfully run a
partial update for a new package with transitive dependency updates.
2020-03-27 21:41:49 +01:00
Nils Adermann
da84763f03
Move partial update handling to pool builder
2020-03-26 12:03:52 +01:00
Christian Raue
b644f63a93
fixed help URL for ClearCacheCommand
2020-03-24 22:47:11 +01:00
Jordi Boggiano
6679dde713
Merge pull request #8693 from enumag/patch-2
...
Add --dry-run to composer require
2020-03-24 14:01:47 +01:00
Jordi Boggiano
7e679656a4
Keep absolute path repos symlinks absolute, fixes #8700
2020-03-24 12:35:18 +01:00
Jordi Boggiano
86677ad172
Avoid scanning files twice when generating optimized autoloaders, fixes #8683
2020-03-13 18:28:27 +01:00
Jáchym Toušek
3bf46a77f9
Update RequireCommand.php
2020-03-13 18:18:13 +01:00
Jáchym Toušek
bbb781b1ed
Add --dry-run to composer require
2020-03-13 14:40:25 +01:00
Jordi Boggiano
cbdf74eb34
Merge remote-tracking branch 'naderman/optimize-fixed-pkg-loading' into 2.0
2020-03-13 11:57:56 +01:00
Jordi Boggiano
cf5513f28d
Fix syntax error
2020-03-13 11:50:35 +01:00
Jordi Boggiano
0d2c2c044a
Avoid skipping feature branch detection if no branch-alias is defined at all
2020-03-13 11:39:19 +01:00
Jordi Boggiano
c2d0fed06b
Tweak lock repo name
2020-03-13 11:20:58 +01:00
Jordi Boggiano
3a9b786400
Bring suggest output in line with the rest of update/install output
2020-03-13 11:18:41 +01:00
Jordi Boggiano
e15f7d6bb7
Merge branch 'master' into 2.0
2020-03-13 11:18:23 +01:00
Aaron Johnson
b41e768e1f
Put backticks around command for readability.
...
Helps to promote the command to discern it from the sentence. :)
2020-03-12 23:17:14 -04:00
Nils Adermann
8a6382d78d
Remove unnecessary TODOs and skip EmptyConstraint like null
2020-03-12 18:12:05 +01:00
Nils Adermann
bbdbb3517b
PoolBuilder: Drop name constraints loop, already set earlier in same code
2020-03-12 16:45:09 +01:00
Nils Adermann
59bc957e76
Simplify loading of fixed and root require packages in pool builder
...
additionally mark all packages replaced by fixed packages as loaded as
there is no need to load those names at all, since the fixed package
will provide them
2020-03-12 16:43:08 +01:00
Jordi Boggiano
d58653627a
Optimize loading of deps from fixed packages
2020-03-12 16:40:30 +01:00
Jordi Boggiano
82e2a679bf
Add TODO note
2020-03-12 16:40:30 +01:00
Jordi Boggiano
08cee4c3e9
Implement getProviders equally on all repos
2020-03-12 15:39:26 +01:00
Jordi Boggiano
8a83d5cc35
Fix create-project command
2020-03-12 13:50:40 +01:00
Jordi Boggiano
d09daa8d5a
Merge pull request #8684 from naderman/dev-require-errors
...
Handle dev extraction exit codes instead of completing broken lock with errors
2020-03-12 13:20:55 +01:00
Nils Adermann
ee8df484c4
Separate createPool and createPoolWithAllPackages, fix test description
2020-03-12 13:17:04 +01:00
Nils Adermann
281d8930ff
For dev extraction skip pool building, we already have a working package set
...
Also reduce getProviders back to just providers, and add some todos
2020-03-12 12:19:46 +01:00
Jordi Boggiano
3d0d71367d
Doc updates
2020-03-12 08:37:01 +01:00
Jordi Boggiano
73a5cc63cc
Always use Removing for consistency between dry-run and actual install
2020-03-12 08:12:12 +01:00
Mathias Berchtold
1ebeb143ae
Fix PHP 8 warnings
...
The PR fixes this PHP 8 warning:
PHP Deprecated: Required parameter $ambiguousClasses follows optional parameter $blacklist in phar://.../composer.phar/src/Composer/Autoload/AutoloadGenerator.php on line 339
2020-03-11 23:00:04 -05:00
Nils Adermann
06f460c557
Remove trailing spaces from output
2020-03-11 21:32:55 +01:00
Nils Adermann
1f467046d7
Implement getProviders on reposet for all repo types and add replacers
...
This way errors during require dev extraction make more sense
2020-03-11 17:38:16 +01:00
Nils Adermann
ddb1e79bef
Handle dev extraction exit codes instead of completing broken lock with errors
2020-03-11 17:31:49 +01:00
Jordi Boggiano
9c84f4d79f
Make sure InstalledRepository itself can be added too but requires allowing installed repos in reposet
2020-03-11 17:02:25 +01:00
Jordi Boggiano
589aa351a8
Change Uninstalling to Removing in lock operations
2020-03-11 16:44:08 +01:00
Jordi Boggiano
ba04a46cae
Fix 5.3 issue
2020-03-11 16:20:35 +01:00
Jordi Boggiano
d13ce20b6e
Fix handling of composer repos with v1 version_normalized format
2020-03-11 16:11:12 +01:00
Jordi Boggiano
a453792d6b
Merge pull request #8682 from glaubinix/f/gitlab-guest-token-access
...
GitLab: properly handle token which has Guest only access
2020-03-11 15:34:25 +01:00
Jordi Boggiano
d559bf5387
Allow configuring a path repo to an empty path as long as using wildcards and the wildcard root exists, fixes #8679
2020-03-11 15:33:14 +01:00
Stephan
402c64c271
Update src/Composer/Repository/Vcs/GitLabDriver.php
...
Co-Authored-By: Jordi Boggiano <j.boggiano@seld.be>
2020-03-11 15:17:12 +01:00
Jordi Boggiano
a7a975ec1c
Alias dev-master/trunk/default to 9999999-dev instead of normalizing the version to that, fixes #8323
2020-03-11 15:04:18 +01:00
Stephan Vock
55d252b9c3
GitLab: properly handle token which has Guest only access
2020-03-11 13:35:28 +01:00
Jordi Boggiano
97e2a249e8
Merge branch 'master' into 2.0
2020-03-11 09:34:55 +01:00
Jordi Boggiano
d271004b30
Also check for package requiring itself in require, not only require-dev
2020-03-10 17:00:28 +01:00
Jordi Boggiano
5c4ef1eb96
Make package name validation a hard failure, fixes #7875
2020-03-10 16:57:34 +01:00
Jordi Boggiano
c033644f8b
Present lock changes alphabetically, with uninstalls first, then all install/updates mixed
2020-03-10 16:08:40 +01:00
Jordi Boggiano
24a5a0dacb
Skip invalid PSR-0/4 classes from optimized autoloader, fixes #8403
2020-03-10 15:40:45 +01:00
Jordi Boggiano
94e6cfc521
Only show direct dependencies suggestions by default, add --all flag to see all in suggest command, fixes #8660
2020-03-10 15:09:28 +01:00
Jordi Boggiano
2445ef5e1f
Refactor check-platform-reqs to use InstalledRepository and look for providers as well as platform packages, fixes #8645 , closes #8676
...
Co-authored-by: Ellis <eantaya@nuglif.com>
Co-authored-by: Jordi Boggiano <j.boggiano@seld.be>
2020-03-10 14:53:42 +01:00
Jordi Boggiano
d63eb8179e
Merge branch 'master' into 2.0
2020-03-10 14:05:33 +01:00
Jordi Boggiano
f964b83018
Add bearer support in config command and add to docs/schema, refs #8671
2020-03-10 13:39:26 +01:00
Jordi Boggiano
0b993ba4b9
Merge pull request #8671 from ethanclevenger91/ethanclevenger91/explicit-bearer-support
...
Bearer support.
2020-03-10 13:33:02 +01:00
Jordi Boggiano
479414d8bd
Move bearer auth to be first to make sure it does not get shadowed by github/gitlab/.. configs
2020-03-10 13:26:53 +01:00
Jordi Boggiano
9d72c92f07
Avoid looping endlessly for invalid GitLab tokens in git config, fixes #8667
2020-03-10 11:25:45 +01:00
Jordi Boggiano
34fb609aad
Merge pull request #8652 from clxmstaab/more-ambiguous
...
report ambiguous classes across all classmaps
2020-03-10 10:47:37 +01:00
Jordi Boggiano
beb64914a3
Retrieve latest funding info for all packages in fund command
2020-03-06 17:01:59 +01:00
Ethan Clevenger
cbec8ceb53
Bearer support.
2020-03-04 15:01:35 -08:00
Markus Staab
cc5c5dbee1
merge fix from https://github.com/composer/composer/pull/8651
2020-03-02 13:28:10 +01:00
Markus Staab
04a18c72ba
fix CS
2020-03-02 13:25:54 +01:00
Markus Staab
883a179dec
removed superflous code
2020-03-02 13:24:06 +01:00
Markus Staab
61e0bf1cb5
fix typo
2020-03-02 13:23:33 +01:00
Jordi Boggiano
6d3d7c39ac
Merge pull request #8621 from remorhaz/master
...
Fix incorrect --no-dev handling of replaced packages
2020-02-28 23:49:09 +01:00
Jordi Boggiano
6cf54170cc
Avoid mixing write/writeError which causes issues on some terminals, fixes #8656
2020-02-28 22:42:52 +01:00
Jordi Boggiano
2285a79c63
Merge pull request #8641 from souweb22/delete_return
...
delete 'return' and 'spaces' in Filesystem.php
2020-02-28 22:28:14 +01:00
Jordi Boggiano
c5ce4de89e
Consistently return void
2020-02-28 22:27:53 +01:00
Jordi Boggiano
eb56c8dcd4
Merge pull request #8640 from souweb22/fix_doc
...
add 'array' to document in ConfigSourceInterface.php
2020-02-28 22:04:28 +01:00
Jordi Boggiano
5d970022e8
Normalize output of create-project target path, refs #8609 , refs #8412
2020-02-28 17:02:15 +01:00
Jordi Boggiano
919fa60579
Merge pull request #8611 from ol0lll/fix/create-project-with-absolute-path
...
Create project with absolute path(fixes #8609 )
2020-02-28 16:59:29 +01:00
Jordi Boggiano
c6969756e8
Make sure $_SERVER is updated when putenv updates environment variables, fixes #8298
2020-02-28 16:27:06 +01:00
Jordi Boggiano
7a270955f5
Fix issues handling branch names with pipes in them
2020-02-28 16:00:45 +01:00
Jordi Boggiano
80875e896d
Merge branch 'master' into 2.0
2020-02-28 14:54:09 +01:00
Jordi Boggiano
05737a46fb
Improve funding info parsing
2020-02-28 14:52:29 +01:00
Jordi Boggiano
9cab8c10cc
Merge branch 'master' into 2.0
2020-02-28 13:31:56 +01:00
Jordi Boggiano
0b9c658bef
Add plugin-api-version used to generate a lock file in itself
2020-02-28 10:21:24 +01:00
Jordi Boggiano
c4f19e51d8
Rework the funding info parsing to avoid requiring graphql permissions
2020-02-28 09:09:23 +01:00
remorhaz
339ee953e5
Fix incorrect --no-dev handling of replaced packages
2020-02-26 17:39:26 +02:00
Markus Staab
30b1dfb8a9
report ambiguous classes across all classmaps
2020-02-25 16:09:36 +01:00
arai
e61b559eb2
delete 'return' in Filesystem.php
2020-02-23 21:38:14 +09:00
arai
766c8d448c
add 'array' to document in ConfigSourceInterface.php
2020-02-23 21:31:28 +09:00
Jordi Boggiano
a2eb0bab12
Abort loop correctly when package is a match
2020-02-18 08:28:35 +01:00
Jordi Boggiano
5b41b78809
Optimize findPackagesWithReplacersAndProviders to avoid multiple loops over replace/provide links
2020-02-18 08:10:54 +01:00
Jordi Boggiano
20e4cc3b6f
Fix finding replacers/providers to check constraints correctly
2020-02-17 11:23:15 +01:00
arai
1f08138379
Delete variable
2020-02-16 13:34:08 +09:00
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
Jordi Boggiano
98860b8619
Fix show command when no package is found
2020-01-17 14:52:28 +01:00
Jordi Boggiano
8bb472a608
No need to alias platform packages before the repository set as the pool builder already does it
2020-01-17 14:52:28 +01:00
Jordi Boggiano
b9d00153d9
Suggest using -p when a platform package can not be found in show command
2020-01-17 14:52:07 +01:00
Jordi Boggiano
56b2e1ae7a
Allow installing an aliased root package
2020-01-17 14:26:52 +01:00
Jordi Boggiano
572ef1add1
Add comment for lockable
2020-01-17 14:25:43 +01:00
Jordi Boggiano
cc91e9164a
Stop unrolling the root aliases
2020-01-17 13:54:13 +01:00
Jordi Boggiano
73bc137c3c
Avoid nameConstraints from being collected for fixed packages
2020-01-17 12:20:27 +01:00
Jordi Boggiano
e50f78043a
Try to load packages from lock file only and avoid loading other versions for pinned packages
2020-01-17 12:20:03 +01:00
Jordi Boggiano
257d2ce889
Avoid setting the update whitelist in require command on newly created files and when the lock file is disabled
2020-01-17 11:33:47 +01:00
Жаков Виталий
33db6ec71b
touch only if update
2020-01-17 10:58:52 +05:00
Jordi Boggiano
e6749d8717
Add comment, fix 5.3 build
2020-01-15 16:18:56 +01:00
Jordi Boggiano
dd556f989b
Use LockArrayRepository instead of RepositoryInterface to clearly indicate which type of repo it is in some places
2020-01-15 14:56:58 +01:00
Jordi Boggiano
6c24e85e54
Merge pull request #8528 from Seldaek/repo-prio-fix
...
Avoid loading packages found in a higher prio repo entirely from lower prio repos
2020-01-15 14:55:25 +01:00
Jordi Boggiano
f68731e663
Remove package/repo priority concept as it is enforced by the pool builder now
2020-01-15 14:52:44 +01:00
Жаков Виталий
f02989ceba
revert formatting
2020-01-15 18:27:12 +05:00
Жаков Виталий
a4dc076dc8
fix file load errors
2020-01-15 18:09:42 +05:00
Жаков Виталий
8429a48dac
Change only modified files
2020-01-15 17:09:44 +05:00
Jordi Boggiano
30b6a41035
Extract MetadataMinifier util
2020-01-15 12:58:30 +01:00
Jordi Boggiano
926afab1f4
Move loadPackages impl out of BaseRepository
2020-01-15 12:37:24 +01:00
Jordi Boggiano
47a94b3a88
Ensure packages that exist in a higher prio repo never get loaded in lower prio repos, fixes #5076
2020-01-15 12:02:12 +01:00
Jordi Boggiano
40f5806a7c
Fix ComposerRepo issue
2020-01-14 16:20:31 +01:00
Jordi Boggiano
13f1924892
Merge branch 'master' into 2.0
2020-01-14 15:46:30 +01:00
Jordi Boggiano
e4b495ca16
Fix 5.3 build
2020-01-14 15:42:43 +01:00
Jordi Boggiano
a5b178084c
Merge branch 'master' into 2.0
2020-01-14 15:39:35 +01:00
Jordi Boggiano
4b6c25d4bc
Use Authorization header instead of deprecated access_token query param, fixes #8454
2020-01-14 15:35:52 +01:00
Jordi Boggiano
c3d3d45903
Merge pull request #8331 from jimmy-ho/bug/issue-8330
...
8330 Correct issue where permission umask of files were not set when …
2020-01-14 15:09:28 +01:00
Jordi Boggiano
669033f1e7
Collect existing packages only once, refs #8372
2020-01-14 14:45:15 +01:00
Jordi Boggiano
c0714e5ff8
Merge remote-tracking branch 'xy2z/has-package-name'
2020-01-14 14:33:01 +01:00
Jordi Boggiano
78217e2313
Merge branch '1.9'
2020-01-14 12:52:32 +01:00
Jordi Boggiano
a2dadb91bf
Return two packages in PathRepository when on a feature branch, one for feature branch and one for the source branch it came from, fixes #8498 , fixes #8477
2020-01-14 12:52:20 +01:00
Jordi Boggiano
6c795dedc0
Add openssl version to diagnose command, refs #8506
2020-01-14 09:36:53 +01:00
Jordi Boggiano
a902279a5b
Merge branch '1.9'
2020-01-14 09:32:27 +01:00
Jordi Boggiano
0b767e0b83
Allow calling getProviderNames multiple times, refs #8516
2020-01-14 09:31:57 +01:00
Maximilian Bösing
3791a574a2
Provide partial packages names if available, closes #8516 , fixes #8526
2020-01-14 09:31:57 +01:00
Jordi Boggiano
f5dab18b7d
Remove dead code, refs #8517
2020-01-13 18:21:57 +01:00
Jordi Boggiano
ee3fd0f745
Merge remote-tracking branch 'adrianosferreira/package-install-method-cli'
...
Fixed formatting, and handling of config command to be preferred-install.foo value
Refs #8517
2020-01-13 18:18:18 +01:00
Jordi Boggiano
e8426d2c01
Adjust config handling of suggest, refs #8520
2020-01-13 17:51:38 +01:00
Jordi Boggiano
f203b3eb41
Merge remote-tracking branch 'adrianosferreira/add-suggest-in-json-by-cli'
2020-01-13 17:36:10 +01:00
Jordi Boggiano
c43137db3f
Merge branch '1.9'
2020-01-13 15:50:39 +01:00
Jordi Boggiano
8d24b61bef
Tweak and add comments to the working dir fix with global exec, refs #8515
2020-01-13 15:50:34 +01:00
Jordi Boggiano
6b8f1c71b6
Merge remote-tracking branch 'cdayjr/issue-8481'
2020-01-13 15:31:22 +01:00
Jordi Boggiano
ef6ef8ac0f
Hint at the partial update command, fixes #8508 , refs #8332
2020-01-13 14:19:37 +01:00
Jordi Boggiano
818e16238f
Merge pull request #8510 from glaubinix/t/abandon-archived
...
VcsRepositories: mark archived repositories as abandoned
2020-01-13 13:47:33 +01:00
Jordi Boggiano
a6176a7beb
Add IOInterface methods
2020-01-13 13:36:09 +01:00
Jordi Boggiano
23359f2db6
Merge branch 'master' into 2.0
2020-01-13 13:35:52 +01:00
Jordi Boggiano
3d72b56ed6
Merge branch '1.9'
2020-01-13 13:30:52 +01:00
Jordi Boggiano
d3f1c664d4
Avoid formatting output from external processes, fixes #8524
2020-01-13 13:30:46 +01:00
Jordi Boggiano
2bd817acf9
Merge pull request #8444 from Toflar/remove-filters-from-pool
...
Removed the filters from the pool
2020-01-13 12:47:22 +01:00
Adriano Ferreira
607d491921
Implemented way to add packages into suggest through CLI
2020-01-10 09:13:36 -02:00
Adriano Ferreira
5ea6fd0bcb
Implemented way to use preferred-install for defining granular preferences through CLI
...
Currently, preferred-install accepts the hash of patterns as the value in the composer.json. I've followed the same approach as used in extra and platform for letting the user define install preferences through CLI in the format: `composer config preferred-install my-organization/stable-package.dist`.
2020-01-07 14:25:57 -02:00
Chad Wade Day, Jr
917680e0d4
Make global exec execute commands in working directory
2020-01-06 19:29:00 -08:00
Stephan Vock
731d94a2a3
VcsRepositories: mark archived repositories as abandoned
2020-01-04 17:01:27 +00:00
Tyson Andre
6827105a5b
Fix nits on typos
2019-12-29 12:14:38 -05:00
Jordi Boggiano
2dd001132a
Merge pull request #8492 from staabm/putenv
...
implemented `@putenv` composer script
2019-12-22 12:27:23 +01:00
Markus Staab
3d8c1ebad5
implemented @putenv composer script
...
@putenv supports setting environment variables in a x-OS compatible way
2019-12-21 19:26:29 +01:00
johnstevenson
beacdf4e51
Add Windows OneDrive to platform warnings
2019-12-20 19:01:57 +00:00
Stephan Vock
dd2cc3e985
VcsRepository: make transport exceptions during initialize run accessible
...
* also display the http status code in composer failed to load a composer.json file
2019-12-17 10:26:21 +00:00
Adam Žurek
406a28708f
updated phpstan to 0.12
2019-12-16 21:58:05 +01:00
Jordi Boggiano
620497a2ed
Fix usage of DefaultPolicy in show command
2019-12-13 17:21:21 +01:00
Jordi Boggiano
082422f334
Merge pull request #8458 from johnstevenson/noproxy
...
Rewrite NoProxyPattern to include IPv6
2019-12-13 12:11:50 +01:00
Jordi Boggiano
f6b3f12107
Merge branch 'master' into 2.0
2019-12-07 21:10:14 +01:00
Jordi Boggiano
92cc5a821f
Merge pull request #8412 from polarathene/fix/improve-createproject-ux
...
Fix: Improve the create-project UX
2019-12-07 20:36:04 +01:00
Jordi Boggiano
5fc31716dd
Avoid using CURLPIPE_HTTP1 in php7.4+
2019-12-07 18:58:17 +01:00
Jordi Boggiano
295cc8bc90
Merge pull request #8462 from BR0kEN-/issues/8461
...
#8461 : [ZipDownloader] Print `unzip` exit code when the command is failed
2019-12-07 18:42:26 +01:00
Sergii Bondarenko
bb127aa3e7
Resolves #8461 : [ZipDownloader] Print `unzip` exit code when the command is failed
2019-12-03 15:30:08 +04:00
gary houbre
920d690d90
Added new Alias For Clear cache
2019-12-02 18:54:54 +01:00
johnstevenson
74ba9decdf
Rewrite NoProxyPattern to include IPv6
...
This includes two breaking changes:
- the hostname is not resolved in the case of an IP address.
- a hostname with a trailing period (FQDN) is not matched.
This brings the basic implementation in line with curl behaviour, with
the addition of full IP address and range matching (curl does not
differentiate between IP addresses host names).
The NO_PROXY environment variable can be set to either a comma-separated
list of host names that should not use a proxy, or single asterisk `*`
to match all hosts.
- Port numbers can be included by prefixing the port with a colon `:`.
- IP addresses can be used, but must be enclosed in square brackets
`[...]` if they include a port number.
- IP address ranges can specified in CIDR notation, separating the IP
address and prefix-length with a forward slash `/`.
2019-11-29 20:39:08 +00:00
Yanick Witschi
d1dc367d86
Removed the filters from the pool
2019-11-27 17:57:24 +01:00
Jordi Boggiano
d12c20db4b
Remove async repo interface, closes #7902
2019-11-24 09:41:02 +01:00
Jordi Boggiano
f2058680a7
Remove unused use statements
2019-11-24 08:46:23 +01:00
Jordi Boggiano
3b0339802b
Fix install manager usage
2019-11-23 13:12:13 +01:00
Jordi Boggiano
29612e8e8e
Remove dead code
2019-11-23 13:11:19 +01:00
Jordi Boggiano
5c62c7d566
Simplify promise handling
2019-11-23 12:37:17 +01:00
Nils Adermann
a732ea5dd8
Display source/dist refs if updates do not change the version
...
We now output an update when only a source or dist ref changes even if
it's a stable version so in these cases the output needs to contain the
ref to make it clear to users what changed
2019-11-23 12:33:58 +01:00
Jordi Boggiano
88b051c96b
Merge branch 'master' into 2.0
...
Update deps
2019-11-23 12:27:41 +01:00
Jordi Boggiano
67e170eaa8
Merge branch '1.9'
2019-11-23 12:25:23 +01:00
Jordi Boggiano
89f6b2c54c
Merge pull request #8418 from glaubinix/f/github-authentication-behaviour
...
Git: fix authentication handling for private GitHub repositories
2019-11-23 12:24:41 +01:00
Cyril VERLOOP
0bd3f27693
Do not show commit signature for git log.
2019-11-23 12:23:46 +01:00
Jordi Boggiano
44cdc37c0c
Invalidate map cache when addPackage/removePackage is called
2019-11-23 12:07:29 +01:00
Stephan Vock
b847115617
Git: fix authentication handling for private GitHub repositories
2019-11-23 12:02:06 +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
Michael Thessel
96af983700
Fixed map initialization
2019-11-21 10:08:09 -08:00
Michael Thessel
f8010d5220
Improved hasPackage() performance
2019-11-20 14:58:28 -08:00
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
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
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
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
28596d9c12
Define property which is later accessed in local repo transaction
2019-11-07 22:02:35 +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
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
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
f7f7883a5e
Fix: Xdebug vs xdebug
2019-11-03 14:08:14 +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
Jordi Boggiano
0ea06de286
Merge branch 'master' into 2.0
2019-11-01 16:41:48 +01:00
Jordi Boggiano
6a7f8ac335
Merge branch '1.9'
2019-11-01 16:41:16 +01:00
Jordi Boggiano
af86ca1fb3
Output a hint that maybe you are not in the right directory, fixes #8404
2019-11-01 16:32:34 +01:00
Jordi Boggiano
d059d90ecf
Fix PSR warnings for optimized autoloader, refs #8397 , refs #8403
2019-11-01 16:18:42 +01:00
Jordi Boggiano
502b68967a
Fix tests for PSR-fix in optimized autoloader, refs #8397
2019-11-01 15:31:55 +01:00
Jordi Boggiano
f6b8643dcd
Change PSR-fix for optimized autoloader to only warn for now, refs #8397
2019-11-01 14:50:15 +01:00
Jordi Boggiano
050707ed0c
Fix output of dump-autoload command to avoid interfering with warnings, refs #8397
2019-10-30 16:35:13 +01:00
Jordi Boggiano
3a0d05c148
Merge remote-tracking branch 'and800/fix-autoload-opts'
2019-10-30 16:22:44 +01:00
Jordi Boggiano
f867c407c7
Merge branch 'master' into 2.0
2019-10-30 15:40:26 +01:00
Jordi Boggiano
a0690525b5
Merge branch '1.9'
2019-10-30 15:25:57 +01:00
Jordi Boggiano
149250ab92
Remove credentials from git remotes in cache and vendor dirs
...
This only removes the credentials if they are managed by composer auth.json or equivalent, if the credentials were present in the package URL to begin with they might remain
Refs #8293
Fixes #3644
Closes #3608
2019-10-30 15:24:53 +01:00
Jordi Boggiano
4e43f849c7
Avoid overwriting credentials with existing ones from git repos, refs #8293
2019-10-30 12:56:08 +01:00
Jordi Boggiano
12184aa9c5
Fix github auth to try https with pwd also, fixes #8356
2019-10-30 12:01:23 +01:00
Jordi Boggiano
b925d06861
Fix gitlab support for basic-auth fallback from ssh URLs
2019-10-30 11:25:00 +01:00
Jordi Boggiano
ae9cc3db58
Avoid clearing the error output during removeDirectory execution, losing git error output, fixes #8351
2019-10-30 10:45:40 +01:00
Jordi Boggiano
bc2a1d762a
Merge branch 'master' into 2.0
2019-10-30 08:54:44 +01:00
Nils Adermann
eaae360ce6
Correcting lock files in test cases and updating output
2019-10-30 00:55:11 +01:00
Nils Adermann
0ff07015a1
Only load package info from lock file for fixed packages
...
As a result some lock file packages are no longer in the pool, so the
former installed map, now present map cannot use package ids anymore
Need to revisit some more code later to simplify this, todo notes left
2019-10-30 00:24:25 +01:00
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.
2019-10-29 22:28:36 +01:00
Andriy Maletsky
ec293adabc
make optimized autoloader respect PSR standards
2019-10-29 20:36:29 +02:00
Armando Miani
82d939d7f7
Validate composer show with --tree and --path options set ( #8390 )
2019-10-29 15:06:07 +01:00
Jordi Boggiano
8bcacc8a3a
Merge branch '1.9'
2019-10-29 14:24:44 +01:00
MichaelKo
99e23d5263
Don't show root warning for docker containers
...
Signed-off-by: Viacheslav Sychov <viacheslav.sychov@gmail.com>
2019-10-29 14:24:33 +01:00
Markus Staab
e47aa38ad4
Added phpdoc for ComposerAutoloaderInit$SHA1::getLoader() ( #8393 )
2019-10-29 14:08:33 +01:00
Jordi Boggiano
eea4098f98
Merge branch '1.9'
2019-10-25 14:17:35 +02:00
Jordi Boggiano
4fc6479837
Fix require command to allow working on network mounts, fixes #8231
2019-10-25 14:08:30 +02:00
Jordi Boggiano
46657a8a7f
5.3 support :/
2019-10-24 15:26:55 +02:00
Jordi Boggiano
8d92048c8c
Update safeguard code, fixes #8383
2019-10-24 15:20:14 +02:00
xy2z
1a0d5dfacd
Now using findPackage() instead of HasPackageName()
2019-10-24 15:13:17 +02:00
Jordi Boggiano
78b8c365cd
Merge branch '1.9'
2019-10-24 15:05:45 +02:00
Jordi Boggiano
18dad48fa6
Merge pull request #8363 from sincilite/feature/error-reporting-for-missing-path
...
Improve error reporting for missing path in Repository Path
2019-10-24 11:34:55 +02:00
Jordi Boggiano
b311b2c077
Merge pull request #8375 from mathiasdonoso/feature/add-homepage-to-package-information-command
...
added package homepage information to the command 'show'
2019-10-24 11:32:59 +02:00
Jordi Boggiano
f2700bbd98
Merge pull request #8377 from TysonAndre/misc-nit
...
Fix misc phpdoc and strpos arg order nits for suggestions
2019-10-24 11:17:03 +02:00
Jordi Boggiano
d73cef3fb4
Avoid calling findPackage for non-platform packages
2019-10-24 11:16:42 +02:00
Jordi Boggiano
e85ade3107
Merge pull request #8386 from cedric-anne/bugfix/fix-php74-outdated-command
...
Fix composer outdated command on PHP 7.4; fixes #8346
2019-10-24 11:13:27 +02:00
Jordi Boggiano
82e0fdccca
Merge pull request #8384 from aboks/no-lock
...
Config option to disable lockfile generation
2019-10-24 11:06:02 +02:00
Jordi Boggiano
127ba941f1
Merge pull request #8376 from aschempp/bugfix/why-replaces
...
Consider replaces when checking package dependents
2019-10-24 10:48:09 +02:00
Jordi Boggiano
9082701ccb
Merge pull request #8359 from glaubinix/t/show-used-authentication-in-debug
...
Debug: display used authentication for http calls
2019-10-24 10:46:03 +02:00
Cédric Anne
9c9ca87537
Fix composer outdated command on PHP 7.4; fixes #8346
2019-10-21 13:04:31 +02:00
Stephan Vock
73b269fade
HgDriver: don't run command in non-existing directory
2019-10-21 11:11:10 +02:00
Mikhail Fesenko
c2f1a6b643
Added clear cache for windows, fix tests
2019-10-21 11:06:12 +02:00
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
2019-10-19 21:46:29 +02:00
Andreas Schempp
5f202efa0b
Added comment why source link check is necessary
2019-10-16 13:36:28 +02:00
Tyson Andre
4c8e41d9a9
Fix misc phpdoc and strpos arg order nits
...
https://www.php.net/strpos has the signature
`strpos ( string $haystack , mixed $needle [, int $offset = 0 ] ) : int`
(The needle is usually the constant)
`strpos('/', $suggestion)` would only be `false` for `''` and `'/'`
So the existing check would just not suggest **anything** that was
already installed (from pecl, built-in, or composer).
The intent seems to be to not suggest non-vendored php packages
that were already installed. (b20cc22ebb
)
2019-10-15 21:32:02 -04:00
Andreas Schempp
80317eb289
Remove invalid array keys
2019-10-15 10:56:43 +02:00
Andreas Schempp
20eb9e66cf
Consider replaces when checking package dependents
2019-10-15 08:26:19 +02:00
Mathías Donoso
07ec3bda3e
changed homepage information position
2019-10-15 00:38:24 -03:00
Mathías Donoso
14b3f09cf8
added package homepage information to the command 'show'
2019-10-15 00:19:57 -03:00
xy2z
a8abdd9639
Hide installed packages from suggestions when package is not found
2019-10-12 22:22:27 +02:00