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
80a7c40c76
Shorten long lists of similar versions in problem output, fixes #8743
2020-04-15 16:47:44 +02:00
Carsten Brandt
3e8021ed06
Add package naming pattern to the composer.json JSON schema
...
fixes #8749
2020-04-15 13:43:05 +02:00
Jordi Boggiano
44a4429978
Remove PEAR installer/downloader/repos/..., fixes #8778
2020-04-15 00:24:13 +02:00
Jordi Boggiano
876136022b
Merge remote-tracking branch 'origin/1.10'
2020-04-13 12:41:30 +02:00
Jordi Boggiano
62fda2ed85
Reorg ComposerRepository to fix tests
2020-04-13 12:10:31 +02:00
Ayesh Karunaratne
280f02b4bc
Update HTTP URLs to their HTTPS if they already redirect automatically
2020-04-13 06:22:02 +07: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
b6bad4eef6
Add options to configure repository priorities
2020-04-09 13:39:06 +02:00
Jordi Boggiano
8930f1b824
Add color to lock operations and dry run output
2020-04-08 15:18:28 +02:00
Jordi Boggiano
64f907f93f
Fix handling of aliases to use consistent format everywhere
2020-04-08 12:31:02 +02:00
Markus Staab
c30925e68d
extracted `VersionParser::DEV_MASTER_ALIAS` ( #8742 )
2020-04-07 15:49:07 +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
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
Nils Adermann
f38e969b02
Update test expected output to different formatting
2020-04-07 11:16:13 +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
Nils Adermann
8072ec9b7c
Number 2: Adjust forgotten error message in test to new language
2020-04-02 16:31:30 +02:00
Nils Adermann
ce0c2d44cd
Adjust forgotten error message in test to new language
2020-04-02 16:20:54 +02:00
Nils Adermann
4fab2c7759
Error wording use "thus cannot" instead of "can thus not"
2020-04-02 16:02:17 +02:00
Nils Adermann
88e3f24b91
Fix description of test case
2020-04-02 15:42:42 +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
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
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
9fb09049ff
Rename and document constants for partial update behavior
2020-03-30 16:21:27 +02: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
Nils Adermann
ef42d323b1
Test: partial update adding a new dep on a locked package should mark it for update
2020-03-27 23:07:02 +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
17b50157e4
Test: composer update new/plg --with-dependencies updates locked transitive deps
2020-03-27 22:46:54 +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
Graham Campbell
fd63588dce
Fixed up tests
2020-03-19 13:27:23 +00:00
Jordi Boggiano
7a05286f55
Fix build
2020-03-13 13:33:54 +01:00
Jordi Boggiano
70f23e42f3
Fix tests
2020-03-13 11:26:12 +01:00
Jordi Boggiano
e15f7d6bb7
Merge branch 'master' into 2.0
2020-03-13 11:18:23 +01:00
Aaron Johnson
33479f00ab
Add backticks to test.
2020-03-12 23:20:10 -04:00
Jordi Boggiano
08cee4c3e9
Implement getProviders equally on all repos
2020-03-12 15:39:26 +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
3ec59204fc
Update test: require-dev is now allowed to satisfy providers from require
2020-03-12 12:28:46 +01:00
Jordi Boggiano
73a5cc63cc
Always use Removing for consistency between dry-run and actual install
2020-03-12 08:12:12 +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
Jordi Boggiano
589aa351a8
Change Uninstalling to Removing in lock operations
2020-03-11 16:44:08 +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
Jordi Boggiano
97e2a249e8
Merge branch 'master' into 2.0
2020-03-11 09:34:55 +01:00
Jordi Boggiano
ffac8646fc
Fix tests
2020-03-11 09:34:40 +01:00
Jordi Boggiano
3e82542812
Fix test
2020-03-10 17:11:19 +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
d63eb8179e
Merge branch 'master' into 2.0
2020-03-10 14:05: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
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
remorhaz
8df263a756
Test added for issue #8622 fix
2020-02-26 17:39:54 +02:00
Jordi Boggiano
0ad322e51f
Fix tests
2020-02-14 16:55:21 +01:00
Jordi Boggiano
bc002ae1fb
Merge branch 'master' into 2.0
2020-02-14 15:42:17 +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
2d8a8ed7e3
Add InstalledRepository to clean up some concepts and usages, remove BaseRepository
2020-02-13 21:44:24 +01:00
Jordi Boggiano
c5c6d44a0b
Refactor away some unnecessary RepositorySet usages
2020-02-13 17:51:22 +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
Jordi Boggiano
5d8dc48bd4
Fix test on windows
2020-02-13 10:05:42 +01:00
Nils Adermann
4bb314e4af
Merge pull request #8566 from Seldaek/installer-events
...
Restore installer events and add a PRE_POOL_CREATE hook for plugins
2020-02-12 15:26:14 +01:00
Jordi Boggiano
23efda9155
Try to fix windows build
2020-02-12 15:11:59 +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
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
c7ba751319
Merge commit 'refs/pull/8575/head' of github.com:composer/composer
2020-02-12 10:11:58 +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
fc5682ed9f
Fix build
2020-02-11 11:41:31 +01:00
Jordi Boggiano
be8dd528b8
Merge remote-tracking branch 'origin/master' into 2.0
2020-02-11 11:33:52 +01:00
Jordi Boggiano
31068b7bed
Merge pull request #8594 from IonBazan/downgrading-dry-run
...
Distinguish between updates and downgrades in dry-run
2020-02-11 10:49:09 +01:00
Ion Bazan
11ae757e99
fix risky tests
2020-02-11 17:27:56 +08: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
21ab2f85bb
Fix 7.4 build
2020-02-07 23:21:48 +01:00
Jordi Boggiano
589abb06a3
PHPStan fixes
2020-02-07 23:10:10 +01:00
Jordi Boggiano
45ecbae8f5
Merge branch 'master' into 2.0
2020-02-07 22:20:51 +01:00
Ion Bazan
a9bace37f6
fix windows build
2020-02-07 15:18:18 +08:00
Ion Bazan
58b34d13e8
fix risky tests (without any assertion)
2020-02-07 14:35:07 +08:00
Ion Bazan
db32d6bc18
do not use env
2020-02-07 13:07:01 +08:00
Ion Bazan
a2137d5263
use Symfony PHPUnit Bridge
2020-02-07 12:22:22 +08:00
Jeroen Versteeg
cabf373bf4
Added test for exclude-from-classmap (see issue #8563 )
2020-02-04 12:57:26 +01:00
Jordi Boggiano
006c3de542
Fix tests and make TTY usage on ProcessExecutor cleaner
2020-01-31 16:33:34 +01:00
Jordi Boggiano
2f4ea3a463
Fix show command, refactor RepositorySet constructor
2020-01-30 20:21:17 +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
f982a10447
Update after rebase
2020-01-30 14:52:47 +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
e6029d725a
Add individual test checking for clashes between requirements at root and transitive dependency level
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
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
3f48acf56a
Add test checking references update to latest and remove TODO
2020-01-28 16:01:17 +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
7e6fe585bc
Merge branch 'master' into 2.0
2020-01-28 14:22:25 +01:00
Jordi Boggiano
fb93036a70
Fix putenv to avoid leaving the environment in a dirty state
2020-01-28 14:22:11 +01:00
Jordi Boggiano
8584d15e8c
Merge branch 'master' into 2.0
2020-01-28 14:04:27 +01: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
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
921a97457d
Add PoolBuilder test harness for writing .test files
2020-01-19 19:46:16 +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
Jordi Boggiano
ebe910c3a5
Tweak test to follow changes
2020-01-17 15:16:01 +01:00
Jordi Boggiano
b5e34ca767
Fix remove tests
2020-01-17 14:57:33 +01:00
Jordi Boggiano
6f44350c01
Remove problem reporting for locked package not being found, needs to be fixed in #7779 later
2020-01-17 14:01:01 +01:00
Jordi Boggiano
de189c1b80
Fix deps=high build
2020-01-17 11:56:23 +01:00
Jordi Boggiano
7a4d3e6f25
Fix SolverTest
2020-01-15 15:03:11 +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
Jordi Boggiano
30b6a41035
Extract MetadataMinifier util
2020-01-15 12:58:30 +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
4a7d42604f
Fix tests
2020-01-14 16:27:16 +01:00
Jordi Boggiano
40f5806a7c
Fix ComposerRepo issue
2020-01-14 16:20:31 +01:00
Jordi Boggiano
f91859ceff
Fix expectation
2020-01-14 15:46:58 +01:00
Jordi Boggiano
a5b178084c
Merge branch 'master' into 2.0
2020-01-14 15:39:35 +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
a902279a5b
Merge branch '1.9'
2020-01-14 09:32:27 +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
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
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
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
4e667f891b
Fix 5.3 build
2020-01-13 13:45:04 +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
Ondrej Mirtes
7d4d4622ab
ProcessExecutor - do not format output from executed processes
2020-01-13 13:20:04 +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
Stephan Vock
731d94a2a3
VcsRepositories: mark archived repositories as abandoned
2020-01-04 17:01:27 +00: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
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
8449a113b3
Fix build
2019-12-07 21:09: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
johnstevenson
00da9b125d
Tidy and fix tests
2019-11-30 15:45:54 +00: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
02b6dc876f
Fixed phpstan issues
2019-11-27 17:57:24 +01:00
Yanick Witschi
d1dc367d86
Removed the filters from the pool
2019-11-27 17:57:24 +01:00
Jordi Boggiano
88eb61c1d8
Fix 5.3 syntax
2019-11-23 13:18:09 +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
Stephan Vock
b847115617
Git: fix authentication handling for private GitHub repositories
2019-11-23 12:02:06 +01: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
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
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
ff5ec54f04
Correctly use install and update commands in our installer tests
2019-11-08 12:31:26 +01:00
Nils Adermann
97ec2d7b61
Merge remote-tracking branch 'github-composer/2.0' into solve-without-installed
...
* github-composer/2.0: (63 commits)
Fix PSR warnings for optimized autoloader, refs #8397 , refs #8403
Prepare 1.9.1 changelog
Output a hint that maybe you are not in the right directory, fixes #8404
Fix PSR warnings for optimized autoloader, refs #8397 , refs #8403
Fix tests for PSR-fix in optimized autoloader, refs #8397
Fix tests for PSR-fix in optimized autoloader, refs #8397
Change PSR-fix for optimized autoloader to only warn for now, refs #8397
Fix output of dump-autoload command to avoid interfering with warnings, refs #8397
Remove credentials from git remotes in cache and vendor dirs
Avoid overwriting credentials with existing ones from git repos, refs #8293
Fix github auth to try https with pwd also, fixes #8356
Fix gitlab support for basic-auth fallback from ssh URLs
Avoid clearing the error output during removeDirectory execution, losing git error output, fixes #8351
Move test file parsing into try/catch block to avoid phpunit swallowing errors
make optimized autoloader respect PSR standards
Validate composer show with --tree and --path options set (#8390 )
Don't show root warning for docker containers
Added phpdoc for ComposerAutoloaderInit$SHA1::getLoader() (#8393 )
Validate schema name, type and version
Fix require command to allow working on network mounts, fixes #8231
...
2019-11-08 12:27:13 +01:00
Nils Adermann
bd6b4e433c
Use JsonFile::JSON_PRETTY_PRINT instead of php const for PHP 5.3 compat
2019-11-07 22:09:24 +01:00
Nils Adermann
737a613a50
Use array() instead of [] for PHP 5.3 compat
2019-11-07 22:01:37 +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
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
2d37bb4116
Outated lock files now trigger an error requesting removal rather than being ignored silently
2019-11-07 17:38:16 +01:00
Nils Adermann
6925005ac9
Implement update mirrors/nothing/lock as its own installer mode
...
These special commands no longer (ab)use the partial update mechanism
but rather create a special install request for all current lock file
contents and later override any modified code references to the
originals. This leads to up to date remote metadata but no other
changes.
2019-11-07 17:35:44 +01:00
johnstevenson
7e649fac41
Fix Windows test regression from commit 149250a
...
Commit: 149250ab92
ProcessExecutor::escape handled a false value inconsistently across
platforms, returning an emtpy string on Windows, otherwise `''`. This
is fixed to return `""` on Windows.
The GitDownloaderTest code has been appropriately updated.
2019-11-07 12:50:42 +00:00
Andreas Möller
f7f7883a5e
Fix: Xdebug vs xdebug
2019-11-03 14:08:14 +01:00
Jordi Boggiano
0ea06de286
Merge branch 'master' into 2.0
2019-11-01 16:41:48 +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
c3f034e33b
Fix tests for PSR-fix in optimized autoloader, refs #8397
2019-11-01 15:13:28 +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
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
e6e317bc27
Fix test configurations, missing lock files, invalid ones
...
aliased alias test is failing because double alias is improperly
resolved now
2019-10-30 00:40:36 +01:00
Nils Adermann
94d45a980c
Update lock syntax in tests and verify installed version does not impact lock generation
...
Particularly the test
tests/Composer/Test/Fixtures/installer/partial-update-downgrades-non-whitelisted-unstable.test
is interesting because it verifies that an older version will be
installed on update if the new one is only present in the installed repo
or vendor dir. This was the cause of a lot of weird edge cases and
unreliable update behavior in Composer v1
2019-10-30 00:32:23 +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
48ae45e5fe
Correct github issue test to include a lock file, still fails because of real bug now
2019-10-29 23:16:38 +01:00
Nils Adermann
5c129be5e7
Partial updates without a lock file are no longer possible, update test
2019-10-29 23:12:54 +01:00
Nils Adermann
0873c4099b
Merge branch '1.9'
...
* 1.9:
Move test file parsing into try/catch block to avoid phpunit swallowing errors
2019-10-29 23:09:53 +01:00
Nils Adermann
6a335a459c
Move test file parsing into try/catch block to avoid phpunit swallowing errors
2019-10-29 23:08:03 +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
Markus Staab
e47aa38ad4
Added phpdoc for ComposerAutoloaderInit$SHA1::getLoader() ( #8393 )
2019-10-29 14:08:33 +01: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
johnstevenson
8d9b822413
Add messages to junction tests to see failures
2019-10-21 11:09:17 +02:00
Arnout Boks
22caa0f097
Add tests for installer with lock: false
...
https://github.com/composer/composer/issues/8354
2019-10-20 10:51:59 +02:00
Mike van Rooyen
6b56ddae2a
Remove unused variable
2019-10-08 20:49:44 +01:00
Mike van Rooyen
daedb4a74f
Remove extra line in method following CS-Fixer
2019-10-08 16:08:11 +01:00
Mike van Rooyen
e62478ab89
Test to check there is a RuntimeException thrown when a path repository doesn't exist
2019-10-08 15:48:04 +01:00
zakonnic
f159eb724a
Add test for double gap in php-file
2019-09-20 17:08:00 +03:00
Nils Adermann
995b4f923e
Fix more tests which were lacking lock files for partial updates, display fix jobs in problems
2019-09-07 09:32:06 +02:00
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.
2019-09-07 08:52:10 +02:00
Nils Adermann
33ff67abf3
Update tests for new output and for required lock file on partial update
2019-09-07 07:53:31 +02:00
Nils Adermann
a114e26841
Correctly load aliases in lockedRepository to fix alias install output
2019-09-07 07:43:23 +02:00
Nils Adermann
3e0e5dc1fa
Fix test expectation: Install and update operations are now alphabetical
2019-09-07 07:17:41 +02:00
Nils Adermann
c16ab6174e
Fix tests: Alias install now always right after origin package, partial update requires lock file
2019-09-07 07:16:43 +02:00
Nils Adermann
b700aa3d62
Sort local repo transaction as topological as possible
2019-09-07 06:05:02 +02:00
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
...
2019-09-07 02:55:21 +02:00
Nils Adermann
06d11f2f38
Fix calculation of lock transaction updates and start updating output in tests
2019-09-07 02:33:50 +02:00
Nils Adermann
f1e4ccbe1d
Fix handling of reference updates and root references
2019-09-07 01:58:12 +02:00
Jordi Boggiano
a403ee9b0e
Fix tests for reals
2019-08-29 15:23:58 +02:00
Jordi Boggiano
6fee17f16c
Fix tests, refs #8292
2019-08-29 15:09:26 +02:00
Jordi Boggiano
53d2ab2253
Split up steps on VCS downloaders to allow doing network operations before touching the filesystem on GitDownloader, fixes #7903
2019-08-29 11:37:23 +02:00
Jordi Boggiano
63da7c6b2d
Add install-path to the installed.json for every package, fixes #2174 , closes #2424
2019-08-02 21:39:42 +02:00
Jordi Boggiano
8dfadd99d1
Merge branch '2.0' into fix/unused
2019-08-02 16:38:53 +02:00
Jordi Boggiano
1002fb12fc
Merge branch 'master' into 2.0
2019-08-02 13:26:03 +02:00
Jordi Boggiano
300a888470
Merge pull request #7995 from Seldaek/plugin-deactivation
...
Plugin deactivation/uninstall support
2019-08-01 18:11:49 +02:00
Jordi Boggiano
3ef27cabd6
Merge pull request #7999 from Seldaek/store_dev
...
Store dev mode in installed.json, fixes #3008
2019-08-01 17:59:09 +02:00
Jordi Boggiano
362ebe4f68
Fix update mirrors to also update transport-options, fixes #7672
2019-07-31 18:43:18 +02:00
Jordi Boggiano
db6882b57f
Fix updating or URLs to include dist type and shasum, fixes #8216
2019-07-31 18:36:27 +02:00
Jordi Boggiano
0fe200d6d9
Fix origin computation
2019-07-31 18:01:08 +02:00
Jordi Boggiano
6c4357a7ed
Merge branch 'master' into 2.0
2019-07-31 17:50:01 +02:00
Jordi Boggiano
26a3e12c96
Merge pull request #7994 from aschempp/feature/zip-util
...
Extract the ZIP utility functions from ArtifactRepository
2019-07-30 11:36:10 +02:00
Jordi Boggiano
14f2a6dd9a
Fix remove command not working with escaped slashes (e.g. foo\/bar), fixes #8249
2019-07-30 09:48:49 +02:00
Jordi Boggiano
555fa5bae2
Merge pull request #8239 from carusogabriel/improve-redability-foreach
...
Make usage of foreach to improve readability
2019-07-30 07:24:43 +02:00
Jordi Boggiano
6ecff8e71d
Merge pull request #8241 from carusogabriel/remove-assignment
...
Remove override assignment
2019-07-29 18:08:15 +02:00
Jordi Boggiano
70c0d20772
Merge pull request #8242 from carusogabriel/remove-unused-private-methods
...
Remove unused private methods
2019-07-29 18:07:13 +02:00
Jordi Boggiano
d9c2f00891
Merge pull request #8240 from carusogabriel/remove-unused-private-properties
...
Remove unused private properties
2019-07-29 18:06:55 +02:00
Jordi Boggiano
79e4ff4373
Merge pull request #8186 from freality/script_event_originating
...
allow Composer\Script\Event to reference originating event
2019-07-29 16:46:06 +02:00
Jordi Boggiano
369e8a2247
Fix indenting
2019-07-29 16:44:50 +02:00
Gabriel Caruso
1d05d4171c
Remove unused private methods
2019-07-24 03:13:53 +02:00
Gabriel Caruso
4cb2b303ec
Remove override assignment
2019-07-24 02:57:08 +02:00
Gabriel Caruso
6c8ddd4d57
Remove unused private properties
2019-07-24 02:53:53 +02:00
Gabriel Caruso
b4fc3b7eef
Make usage of foreach to improve readability
...
Instead of count and comparing, we can simple use a foreach.
2019-07-24 02:39:40 +02:00
Adam Žurek
b935d1c812
fixed phpstan error
2019-07-12 18:34:12 +02:00
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
...
2019-06-27 14:35:36 +02:00
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
...
2019-06-27 14:08:00 +02:00
Nils Adermann
e022c07370
Merge branch '1.8'
...
* 1.8:
SVN: hide passwords for debug output
2019-06-27 14:06:49 +02:00
Stephan Vock
8da046e4e9
SVN: hide passwords for debug output
2019-06-23 18:59:36 +01:00
Ken Love
b51cfce8e6
return the upper-most event in chain
2019-06-13 14:51:27 -04:00
Jordi Boggiano
79a300eaac
Merge branch '1.8'
2019-06-07 16:58:37 +02:00
Jordi Boggiano
fbb964888d
Merge branch '1.8'
2019-06-07 13:12:21 +02:00
pfofi
c751914410
Fix URL resolution for Composer repositories
...
Composer was unable canonicalize URLs in non-HTTP(S) Composer
repositories. For example it was not possible to use a `providers-url`
in a repository loaded via the `file://` scheme.
See also: #8115
2019-05-10 13:55:31 +02:00
Rob Bast
080b0f27e9
add missing testcase
2019-05-08 15:58:02 +02:00
ShiraNai7
a2b647a99e
Handle absolute phar:// paths in autoload_static.php
2019-04-11 20:23:31 +02:00
Jordi Boggiano
2b421a94cb
Merge branch '1.8'
2019-04-09 13:05:02 +02:00
Rob Bast
25e3f6d4b9
expand regex and testcases
2019-04-04 08:31:26 +02:00
Rob Bast
971528916b
fix regex for heredoc/nowdoc
...
* take into account relaxed changes introduced in php 7.3
* see: 4887357269
* allow " as well as ', which was introduced in php 5.3
closes #8080
2019-04-03 10:46:35 +02:00
Patrick Reimers
dd1e80a38f
Add tests for wrong package name.
2019-03-05 10:53:43 +01:00
Andreas Schempp
0e2215dc6c
Added full unit test coverage
2019-03-04 11:08:59 +01:00
Patrick Reimers
5d14a95543
Add test for warning on deprecated naming
2019-03-01 20:11:20 +01:00
Jordi Boggiano
60df892517
Store dev mode in installed.json, fixes #3008
2019-02-21 12:46:02 +01:00
Jordi Boggiano
8fe2b9ec69
Fix test
2019-02-20 13:41:43 +01:00
Jordi Boggiano
3fc9ede24b
Add plugin callbacks for deactivation and uninstall, fixes #3000
2019-02-18 18:14:46 +01:00
Jordi Boggiano
1b7e957cc1
Add EventDispatcher::removeListener to allow deregistration of listeners
2019-02-18 18:12:38 +01:00
Jordi Boggiano
169fb2347a
Avoid issues with git signatures when running tests
2019-02-18 17:00:57 +01:00
Jordi Boggiano
936933fa66
Fix cache tests
2019-02-18 14:12:01 +01:00
Jordi Boggiano
0caa616e6c
Fix test warnings
2019-02-18 14:03:23 +01:00
Jordi Boggiano
799717f102
Tweak and fix some more phpstan reports
2019-02-18 13:05:14 +01:00
CZechBoY
a062cd1a31
added phpstan on level 0
2019-02-18 13:05:14 +01:00
Jordi Boggiano
fb3d0981c0
Fix test suite
2019-02-18 12:35:24 +01:00
Jordi Boggiano
0fd74d1cc4
Fix PerforceDownloader, fixes #7979
2019-02-18 12:28:21 +01:00
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
2019-02-11 01:00:02 +01:00
Nils Adermann
287419f6a0
Merge branch 'master' into 2.0
...
* master:
Follow up to #7946 test: add solver flag to assert path execution
Fix tests
Make sure config command output is also output on --quiet so that warnings can be hidden, fixes #7963
Recognize composer-plugin-api as a platform package, fixes #7951
Quote wildcards to avoid issues in some shells, fixes #7960
Avoid dumping null values for dist reference/shasum and source reference, fixes #7955
Soften hard exit after revert of composer file
Make unixy proxy code POSIX compatible
Update aliases.md
Same but for Problem.php
Better error message for present but incompatible versions
Fix inconsistent casing
Don't do (new Foo())->bar() - not 5.3-compatible
Support identifying the HHVM version when not running with HHVM
2019-02-10 20:28:24 +01:00
Nils Adermann
0619fbed58
Merge branch '1.8'
...
* 1.8:
Follow up to #7946 test: add solver flag to assert path execution
2019-02-10 20:28:05 +01:00
Nils Adermann
29ff6a40ae
Follow up to #7946 test: add solver flag to assert path execution
2019-02-10 20:26:47 +01:00
Jordi Boggiano
28b51ccfc5
Merge branch '1.8'
2019-02-10 20:24:43 +01:00
Jordi Boggiano
c66bb0b1d0
Fix tests
2019-02-10 13:07:42 +01:00
Jordi Boggiano
ff246e3e85
Merge branch '1.8'
2019-02-10 12:59:38 +01:00
Jordi Boggiano
f2cc666c2c
Merge pull request #7913 from fredemmott/hhvm-version
...
Support identifying the HHVM version when not running with HHVM
2019-02-08 16:13:32 +01:00
Nils Adermann
728e57b9e0
Merge branch 'master' into 2.0
...
* master:
Fix solver problem exceptions with unexpected contradictory "Conclusions"
Also load config into IO if not freshly created
Only load configuration into IO if IO is available
Fix defaultRepos fallback does not use auth config
Add warning/info msg when tweaking disable-tls setting to avoid confusion, fixes #7935
2019-02-05 15:35:51 +01:00
Nils Adermann
fdcae616b0
Merge branch '1.8'
...
* 1.8:
Fix solver problem exceptions with unexpected contradictory "Conclusions"
Also load config into IO if not freshly created
Only load configuration into IO if IO is available
Fix defaultRepos fallback does not use auth config
2019-02-05 15:32:52 +01:00
Nils Adermann
6b2edeae56
Fix solver problem exceptions with unexpected contradictory "Conclusions"
...
This 5 character fix comes with a solver test as well as a functional
installer test essentially verifying the same thing. The solver test is
more useful when working on the solver. But the functional test is less
likely to be accidentally modified incorrectly during refactoring, as
every single package, version and link in the rather complex test
scenario is essential, and a modified version of the test may very well
still result in a successful installation but no longer verify the bug
described below.
Background:
In commit 451bab1c2c
from May 19, 2012 I
refactored literals from complex objects into pure integers to reduce
memory consumption. The absolute value of an integer literal is the id
of the package it refers to in the package pool. The sign indicates
whether the package should be installed (positive) or removed (negative),
So a major part of the refactoring was swapping this call:
$literal->getPackageId()
For this:
abs($literal)
Unintentionally in line 554/523 I incorrectly applied this change to the
line:
$this->literalFromId(-$literal->getPackageId());
It was converted to:
-abs($literal);
The function literalFromId used to create a new literal object. By using
the abs() function this change essentially forces the resulting literal
to be negative, while the minus sign previously inverted the literal, so
positive into negative and vice versa.
This particular line is in a function meant to analyze a conflicting
decision during dependency resolution and to draw a conclusion from it,
then revert the state of the solver to an earlier position, and attempt
to solve the rest of the rules again with this new "learned" conclusion.
Because of this bug these conclusions could only ever occur in the
negative, e.g. "don't install package X". This is by far the most likely
scenario when the solver reaches this particular line, but there are
exceptions.
If you experienced a solver problem description that contained a
statement like "Conclusion: don't install vendor/package 1.2.3" which
directly contradicted other statements listed as part of the problem,
this could likely have been the cause.
2019-02-03 16:33:55 +01:00
Fred Emmott
bac2ef3dfd
Don't do (new Foo())->bar() - not 5.3-compatible
2019-02-01 11:20:34 -08:00
Fred Emmott
1b196720bf
Support identifying the HHVM version when not running with HHVM
...
hhvm-nightly (and the next release) are no longer able to execute
Composer. Support executing Composer with PHP to install dependencies
for hack projects.
The goal is for this to be temporary, until Hack identifies a new
package manager, given that Composer does not aim to be a multi-language
package manager.
fixes #7734
2019-01-29 09:48:15 -08:00
Jordi Boggiano
71193132a3
Fix test
2019-01-29 14:22:20 +01:00
Jordi Boggiano
4517c00d40
Merge branch 'master' into 2.0
2019-01-29 14:01:28 +01:00
Jordi Boggiano
79af9d45af
Merge branch '1.8'
2019-01-29 13:49:25 +01:00
Jordi Boggiano
acea4a4d4d
Warn on invalid package name or require/provide/.., fixes #7874
2019-01-29 13:46:23 +01:00
Jordi Boggiano
98a15bc93c
Add output for metapackage installs/updates/.. fixes #7586
2019-01-29 11:38:18 +01:00
Jordi Boggiano
b89720b52a
Merge branch 'master' into 2.0
2019-01-28 18:00:52 +01:00
Jordi Boggiano
81de5f82aa
Merge branch '1.8'
2019-01-28 17:57:31 +01:00
Sascha Egerer
1845adcfbd
Fix update whitelist pattern resolving and add more tests
2019-01-28 17:34:24 +01:00
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.
2019-01-28 17:34:08 +01:00
Nils Adermann
386382503d
Add a test for autoloading if a package is only required via replacing name
2019-01-28 17:08:51 +01:00
Den Girnyk
3b6b63784f
Fix: Keep replaced packages for autoload dumping with --no-dev
2019-01-28 17:02:32 +01:00
Jordi Boggiano
2200043a43
Merge pull request #7900 from Great-Antique/fix-dumpautoload-no-dev-packages-resolving
...
Fix: Keep replaced packages for autoload dumping with --no-dev
2019-01-28 15:52:43 +01:00
Jordi Boggiano
b7d1f87848
Fix tests
2019-01-28 15:44:21 +01:00
Jordi Boggiano
0b928b2a42
Merge branch 'master' into 2.0
2019-01-28 14:33:10 +01:00
Jordi Boggiano
f54237159d
Cleanups
2019-01-18 12:14:47 +01:00
Den Girnyk
5b78ea529a
Fix: Keep replaced packages for autoload dumping with --no-dev
2019-01-18 11:45:35 +02:00
Jordi Boggiano
3dfcae99a9
Add parallel download capability to FileDownloader and derivatives
2019-01-18 08:39:03 +01:00
Jordi Boggiano
fd5c5ff6bc
Fix implementation of whatProvides for older provider-only repos
2019-01-14 17:29:24 +01:00
Jordi Boggiano
b47330adf1
Refactor ComposerRepository to work with combined repos having lazy providers and partial packages
2019-01-14 17:29:24 +01:00
Jordi Boggiano
e8c6948770
Deduplicate link instances between versions of a given package
2019-01-14 17:29:24 +01:00
Jordi Boggiano
64384f8b15
Fix tests
2019-01-14 17:29:24 +01:00
Jordi Boggiano
fd11cf3618
Port/extract most behavior of RemoteFilesystem to CurlDownloader
2019-01-14 17:29:23 +01:00
Jordi Boggiano
09fd239f24
Fix factory test
2019-01-14 17:29:23 +01:00
Jordi Boggiano
1cd9f4f9db
Disable request_fulluri by default for HTTPS connections
2019-01-14 17:29:23 +01:00
Jordi Boggiano
f946d8eb5a
More RemoteFilesystem usage removals and some repository/vcs driver refactorings
2019-01-14 17:29:23 +01:00
Jordi Boggiano
713bc4de1d
Minor fixes and updated the rest of the code/tests to use HttpDownloader
2019-01-14 17:29:23 +01:00
fancyweb
a9d6068c57
feat(buffer-io): add the possibility to set user inputs for interactive questions
2019-01-05 11:59:33 +01:00
Jordi Boggiano
bf33eec912
Fix tests
2018-12-03 10:59:04 +01:00
Jordi Boggiano
411dd51f20
Merge branch 'master' into 2.0
2018-12-03 10:41:19 +01:00
Jordi Boggiano
85ec111dee
Merge remote-tracking branch 'dmanners/add-chat-option-for-support'
2018-11-26 19:47:13 +01:00
Jérôme Deuchnord
b0b00ad1fa
Call a script recursively with extra parameters ( #7720 )
...
* Added support for calling scripts recursively (fixes #7562 )
2018-11-26 12:35:41 +01:00
Jordi Boggiano
2e0f31106a
Merge remote-tracking branch 'origin/master' into 2.0
2018-11-12 16:01:07 +01:00
Jordi Boggiano
5a56bb6971
Remove BC event and constraint classes
2018-11-12 15:57:44 +01:00
Jordi Boggiano
86f59348f5
Fix TestCase import
2018-11-12 15:24:28 +01:00
Gabriel Caruso
2a13bb2649
Fixes from PHPStan ( #7687 )
...
* fix docblocks
* remove redundant conditional
* fix wrong variable name
* fix wrong namespaces
* add missing private members
* remove unused/redundant arguments
* move testcase class
* exclude TestCase.php
* Tweak RuleWatchGraph type hints
* Tweak doc comment
2018-11-12 15:23:32 +01:00
Jordi Boggiano
ceb3a7a8e8
Merge branch '1.7'
2018-10-31 18:32:39 +01:00
Jordi Boggiano
42dca2aff5
Remove weird binary file from repo
2018-10-31 18:29:32 +01:00
Jordi Boggiano
2528654c53
Merge branch '1.7'
2018-10-31 18:13:39 +01:00
Jordi Boggiano
9e6a0bff71
Merge pull request #7658 from fooman/fix-non-zip-file-with-zip-ext
...
Fix regression for artifact repository
2018-10-31 16:12:55 +01:00
Alexey Kopytko
aa6d138bdc
Check for the actual warning description
2018-10-30 15:56:24 +01:00
Alexey Kopytko
20107dbf77
Ensure that a missing SSL/TLS protection warning does not pollute STDOUT
...
Fixes #7737
2018-10-30 15:56:24 +01:00
Stephan Vock
819f487b38
Bitbucket: switch to v2 API
2018-10-19 14:31:17 +02:00
David Manners
96347fbea1
composer/composer#7384 : add chat to support options
...
- update schema documents to note that chat is allowed,
- validate that chat must be a string and a url similar to forum options
2018-10-14 11:15:25 +00:00
Kristof Ringleff, Fooman
add71388ca
Add failing artifact
2018-10-01 23:03:51 +13:00
Nils Adermann
902cb290e7
Only load package versions which fit the root composer.json constraints
2018-09-12 16:48:17 +02:00
Nils Adermann
81bb8f81ad
Set all package ids only once the pool is created
...
They all get set in one place only and at a specific time when nothing
else will possibly change them anymore
2018-09-12 14:31:40 +02:00
Nils Adermann
5c491ecc9b
Merge pull request #7625 from naderman/repository-set
...
Separate RepositorySet from Package Pool, load only metadata of packages directly required
2018-09-12 14:22:01 +02:00
Nils Adermann
96c812fb24
Properly buffer installer test output to display as errors if necessary
2018-09-12 13:27:10 +02:00
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
2018-09-12 11:49:09 +02:00
Nils Adermann
b6e2d60c9e
Create the pool in the installer before giving it to the solver
2018-09-11 15:49:08 +02:00
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
2018-09-11 13:34:18 +02:00
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
2018-09-10 15:27:54 +02:00
Gabriel Caruso
71c8735e11
Use combined assignment operators
2018-09-10 14:24:41 +02:00
Gabriel Caruso
a17f051e29
Remove useless parentheses
2018-09-10 14:24:24 +02:00
Christophe Coevoet
8c3898aa57
Update tests for replace conflicts
...
This reverts the test changes done in b4698568d2
to the original tests added
in 1425bb7fc3
.
2018-08-27 12:14:34 +02:00
Jordi Boggiano
bf125295df
Fix escaping of URLs in Perforce and Subversion drivers
2018-08-25 18:48:56 +02:00
Jordi Boggiano
3d01ef28fa
Revert "Do not dump source and dist for metapackages"
...
The source/dist reference is needed to operate composer outdated and other functionality
Fixes #7546
This reverts commit 42739e7959
.
2018-08-22 09:45:54 +02:00
Alexander Kurilo
e1a6bd5ff1
Make JSON formatter test clearer
2018-08-10 08:54:34 +02:00
Alexander Kurilo
5a22a4f1f3
Make surrogate sequences in JSON work on PHP 5.3
...
Fixes #7510
2018-08-10 08:54:27 +02:00
Rafael Kassner
42739e7959
Do not dump source and dist for metapackages
2018-07-29 16:16:02 +02:00
Jordi Boggiano
ff59bbdab0
CS fixer
2018-07-24 14:32:52 +02:00
Jordi Boggiano
c5fa3bdde0
Migrate to repo.packagist.org for package metadata
2018-07-24 09:30:06 +02:00
Jordi Boggiano
16af52be8a
Merge remote-tracking branch 'origin/1.6'
2018-07-20 11:39:44 +02:00
Théo FIDRY
87646ae689
Hide suggest reason when there is not one
2018-06-09 15:18:21 +01:00
Jordi Boggiano
0a27ca7b65
Make sure circular dependencies do not break the autoload dumper, refs #7316 , refs #7348
2018-06-06 14:51:52 +02:00
Jordi Boggiano
eedbd218f5
Make sure circular dependencies do not break the autoload dumper, refs #7316 , refs #7348
2018-05-31 17:02:04 +02:00
Jordi Boggiano
46f973e213
Merge branch '1.6'
2018-05-15 16:07:05 +02:00
Philipp Fritsche
b0be87177d
Filter dev-dependencies from "dump-autoload --no-dev" , fixes #4343
2018-05-08 02:57:26 +02:00
Jordi Boggiano
4ebb747e12
Merge branch '1.6'
2018-05-04 11:18:18 +02:00
Jordi Boggiano
78ae0a97f7
Terminate quoted strings
2018-05-04 11:02:12 +02:00
Jordi Boggiano
3b9d6769bf
Fix class names in comments being parsed in short_open_tags files, fixes #7289
2018-05-04 11:02:12 +02:00
Jordi Boggiano
464daeebe2
Merge branch '1.6'
2018-05-03 17:38:09 +02:00
Jordi Boggiano
43e33be79f
Fix regression in 036fc44c25
, fixes #7268
2018-05-03 17:30:33 +02:00
Jordi Boggiano
38866ba310
Merge remote-tracking branch 'johnstevenson/external-xdebug'
2018-04-13 15:38:27 +02:00
Jordi Boggiano
c917865fe9
Fix handling of dev versions and consolidate logic, refs #7119
2018-04-13 13:55:02 +02:00
Jordi Boggiano
24ad6307a7
Merge remote-tracking branch 'austris-argalis/issue-7085'
2018-04-13 13:11:46 +02:00
Jordi Boggiano
ea78712822
Merge branch '1.6'
2018-04-13 10:52:23 +02:00
Edwin Rodríguez
9dc6222288
Allow using fossil dependency in a fossil repository, fixes #7125 , closes #7126
2018-04-13 09:00:03 +02:00
Jordi Boggiano
35ebb8b93f
Merge branch '1.6'
2018-04-12 19:22:50 +02:00
Filippo Tessarotto
277f32d388
Lock _readme: remove outdated hashtag link part, closes #7096
2018-04-12 18:00:01 +02:00
Jordi Boggiano
2bd34c0534
Merge branch '1.6'
2018-04-12 17:01:00 +02:00
Jordi Boggiano
9041622b86
Fix version guessing regression and a few other issues, fixes #7127
2018-04-12 15:16:39 +02:00
Jordi Boggiano
bfa01285c2
Merge branch '1.6'
2018-04-12 10:25:03 +02:00
Jordi Boggiano
066351c5b9
Remove use of deprecated getMock method
2018-04-12 10:24:56 +02:00
Jordi Boggiano
036fc44c25
Make sure aliased packages are removed correctly from the repository, fixes #7167
2018-04-12 09:51:01 +02:00
Petr /Peggy/ Sládek
8d06832077
Update ClassMapGenerator to work better with symlinks, fixes #7252 , closes #7251
2018-04-12 09:37:26 +02:00
johnstevenson
ed97c2116c
Use external XdebugHandler library
2018-03-08 19:20:16 +00:00
austris argalis
8a5645ffda
Wording: Downgrading instead of Updating #7085
2018-02-16 00:38:41 +02:00
Jordi Boggiano
16dcb04e1d
Merge branch '1.6'
2018-01-24 10:28:44 +01:00
Jordi Boggiano
a1bf6890d5
Fix ConsoleIO tests
2018-01-24 10:28:39 +01:00
Jordi Boggiano
96d07e6753
Merge branch '1.6'
2018-01-22 16:44:24 +01:00
Jordi Boggiano
842a7ea922
Fix dev-master not being normalized correctly for the root package, fixes #7007
2018-01-22 16:44:17 +01:00
Jordi Boggiano
ad8b44a4c8
Merge branch '1.6'
2018-01-22 15:42:56 +01:00
Jordi Boggiano
ea9b7ecbb0
Merge pull request #6982 from carusogabriel/phpstan
...
Fixes from PHPStan level 0
2018-01-22 14:50:43 +01:00
Jean-Baptiste
595cf4432c
Fix Test RepositoryFactory
2018-01-22 14:06:56 +01:00
Martin Hujer
bbee0d7c6c
Validation warns if script description for nonexistent script is present
...
Fixes #7010
2018-01-17 19:15:06 +01:00
Gabriel Caruso
3d262bd637
Fixes from PHPStan level 0
...
More fixes from PHPStan level 0
2018-01-14 11:44:15 -02:00
Tomas Klinkenberg
60106edd32
Added a test to confirm issue #6994 .
...
Added a encapsulated group to the replacement parameter of the `preg_replace` for GitLab in `\Composer\Util\Url::updateDistReference()`. This fixes #6994 .
2018-01-09 17:57:22 +01:00
Jordi Boggiano
e6114b2ca7
Fix support for replacing dist refs in gitlab URLs and add support for gitlab/github enterprise too
2018-01-05 15:20:30 +01:00
Gabriel Caruso
2ad6f611d7
Allow bin key to receive string
2018-01-02 07:00:55 -02:00
Andreas Möller
79828f7543
Enhancement: Assert that key is removed when value is null
2017-12-28 21:11:54 +01:00
Andreas Möller
6059acf0a3
Fix: Remove unused parameter and field
2017-12-27 13:20:12 +01:00
Jordi Boggiano
50665aa18d
Simplify check for current revision, refs #6684
2017-12-19 17:50:02 +01:00
Jordi Boggiano
93cd9d874b
Merge remote-tracking branch 'RobberPhex/git-repo'
2017-12-19 15:47:58 +01:00
John Stevenson
02fbbd5a42
Skip MockedZipDownloader tests if zip is missing ( #6917 )
...
* Skip MockedZipDownloader tests if zip is missing
2017-12-19 11:07:09 +01:00
Jordi Boggiano
a1c5754b1f
Make sure tests run non-interactively
2017-12-18 17:18:59 +01:00
Jordi Boggiano
c8aea719b1
CS fixes
2017-12-18 16:02:48 +01:00
Jordi Boggiano
0a9abeef88
Merge branch '1.5'
2017-12-17 15:05:08 +01:00
Renoir Boulanger
9f723ba381
Support GitLab repositories w/ port over HTTPs
...
When we have self-hosted GitLab, over HTTPs, on a different port.
rel composer/composer#6894
2017-12-17 13:59:08 +01:00
Alessandro Lai
54adf0b61e
Add regression test about VersionGuesser pretty_version handling
2017-12-17 13:49:07 +01:00
Gabriel Caruso
885da4c8ef
Refactoring tests
2017-12-03 02:41:58 -02:00
Gabriel Caruso
afc9a7643e
Use PHPUnit\Framework\TestCase instead of PHPUnit_Framework_TestCase
2017-11-30 13:44:43 -02:00
Gabriel Caruso
a4b220273e
Refactoring Tests ( #6849 )
2017-11-30 15:58:10 +01:00
Jordi Boggiano
6256e17149
Merge branch '1.5'
2017-11-30 15:19:19 +01:00
Jordi Boggiano
5ba6d7d436
Fix pretty guessed versions to show nicely on numeric branches, refs #6845
2017-11-30 15:19:11 +01:00
Alessandro Lai
3cf31da414
Fix root package not having a pretty version when detecting from VCS, fixes #6845 , closes #6847
2017-11-30 15:07:08 +01:00
Jordi Boggiano
eab826b00b
Merge branch '1.5'
2017-11-29 16:37:49 +01:00
Jordi Boggiano
45cd26b2df
Fix test and actually check that we get hasAuthentication called for different domains
2017-11-29 16:37:00 +01:00
Jordi Boggiano
9850621c6b
Merge pull request #6788 from GawainLynch/symfony-4
...
Symfony 4
2017-11-28 18:30:31 +01:00
Jordi Boggiano
0b3bc4ccb9
Merge branch '1.5'
2017-11-28 18:09:36 +01:00
johnstevenson
b0922b95af
Report multiple inis in php.ini specific messages
...
Where systems use multiple ini files it is perhaps more useful to
suggest running `php --ini` to see their locations, rather than showing
the loaded php.ini (if one exists).
2017-11-28 18:09:08 +01:00
Nils Adermann
7dffe79a0f
Update tests of solver problem message to match new message
2017-11-16 12:41:41 +01:00
Robert Lu
3ce71a55bf
fix unittest
2017-11-07 13:54:52 +08:00
Gawain Lynch
f74c6f4620
Update tests to handle optional QuestionHelper::setInputStream() availability
2017-11-06 16:32:29 +01:00
Gawain Lynch
157075b996
Migrate ConsoleIO::select to use QuestionHelper and ChoiceQuestion
2017-11-06 16:29:55 +01:00
Jordi Boggiano
26a50b3762
Merge branch '1.5'
2017-11-03 19:53:36 +01:00
Jordi Boggiano
4ab34c22fa
Merge pull request #6740 from croensch/master
...
also support NO_PROXY
2017-11-03 19:50:28 +01:00
Jérôme Vasseur
71c2ecbace
Fix platform package detection in VersionParser
2017-11-03 19:48:52 +01:00
Jordi Boggiano
9a99e86ebc
Rename NonRoot to Transitive, refs #6674
2017-11-03 14:35:04 +01:00
Jordi Boggiano
9df22654c3
Merge remote-tracking branch 'grasmash/issue-6661-whitelist-all-deps'
2017-11-03 14:20:38 +01:00
croensch
6da92e98ac
also support NO_PROXY
...
since WINDOWS can only have one case and that is usually upperase
2017-10-12 16:35:05 +02:00
Matthew Grasmick
776977f597
Fixing method name.
2017-09-11 13:53:56 -04:00
Vladimir Reznichenko
c8615358cb
SCA with PHP Inspections (EA Extended)
2017-09-11 19:40:43 +02:00
Matthew Grasmick
11db6f90c2
Cleaning up comments
2017-09-11 12:56:51 -04:00
Matthew Grasmick
3826e51caa
Renaming some methods and props.
2017-09-11 12:38:54 -04:00
Matthew Grasmick
ad465aa769
Updating var names.
2017-09-11 11:47:33 -04:00
Matthew Grasmick
21722f6e42
Fixing test version constraints.
2017-09-11 11:32:19 -04:00
Matthew Grasmick
f29e98cdf9
Fixes #6661 : Allow a given package and its dependencies (including siblings) to be updated.
2017-09-11 11:16:15 -04:00
Jordi Boggiano
dae575c197
Merge branch '1.5'
2017-09-11 16:09:36 +02:00
Deamon
3d753b117b
add test on remove mainkey at end of file
2017-09-11 16:07:13 +02:00
Jordi Boggiano
a8df30c09b
Merge branch '1.5'
2017-09-11 12:16:16 +02:00
Mikk Tendermann
2a89d37651
fix gitlab not telling visibilty if user is not logged in
2017-09-11 10:37:32 +02:00
Christian Ramelow
f178c340e9
Fixed tests.
2017-09-01 20:47:13 +02:00
Christian Ramelow
39d8104897
Introduces a new method `copy()`.
...
Some packages, e. g. `tm/tooly-composer-script`, are using the composer classes to e. g. create symlinks or perform other file operations. While there's only a `copyThenRemove()` method this commit introduces a new `copy()` method. `copy()` behaves the same as the copy part of `copyThenRemove()` did with one exception: it returns `true` on success and `false` on failure. Copying a directory may lead to a `false`, while the whole directory or some of its files couldn't been copied. To ensure backwards compatibility `copyThenRemove()` calls `copy()` now. This commit also adds the necessary tests.
2017-08-31 20:19:43 +02:00
Jordi Boggiano
e33d00f98e
Fix gitlab tests
2017-08-18 14:14:15 +02:00
Jordi Boggiano
f420d31233
Fix application test
2017-08-08 10:43:26 +02:00
Jordi Boggiano
a6c4fb2dcf
Fix gitlab tests
2017-08-08 10:26:35 +02:00
Jordi Boggiano
c89f6338c2
CS tweaks, refs #6592
2017-08-08 10:11:35 +02:00
Helmut Januschka
ae42e4f8a3
php 5
2017-08-07 22:00:14 +02:00
Helmut Januschka
bc4a7834ba
php 5 being php5 :/
2017-08-07 21:56:02 +02:00
Helmut Januschka
b847270d08
rename test method
2017-08-07 21:47:41 +02:00
Helmut Januschka
b486056066
add tests for gitlab paging
2017-08-07 21:46:43 +02:00
Jordi Boggiano
b07be842a0
Remove feature-branches option as it is misnamed and duplicates the non-feature-branches option, refs #6475
2017-08-07 18:14:04 +02:00
Jordi Boggiano
6832eacb01
Update GitLab API usage to v4, fixes #6453
2017-08-07 13:13:24 +02:00
Jordi Boggiano
65d49bf811
Merge branch '1.4'
2017-08-07 10:04:46 +02:00
Jordi Boggiano
d2b102ecb9
Merge remote-tracking branch 'svenmuennich/pr/fix-require-command' into 1.4
2017-08-07 09:25:24 +02:00
Sergey Shcherbin
118abacd14
Fix for time format in GitBitbucketDriver test
2017-08-06 12:40:47 +02:00
Jordi Boggiano
34dbde3873
Merge branch '1.4'
2017-07-03 17:00:48 +02:00
Sven Münnich
d51ef83a43
Fix case insensitivity of ‘require’ command
...
When currently executing the `require` command for a package that is already listed in `require(-dev)`, one must use the exact same, case matching package name as written in `composer.json`. That is, if one changes the case of a character in the package name, the `require` command will add a new entry to `require(-dev)`, instead of updating the existing one.
This commit fixes the described behaviour to make it consistent with other commands like `update` that are already case insensitive.
2017-07-03 12:11:24 +02:00
Rob Bast
422a9adb07
images related to new trusty images
2017-06-22 15:20:19 +02:00
Jordi Boggiano
ef47d8bf05
Merge pull request #6486 from WilHall/feature/htaccess-protect-option
...
Add htaccess-protect option for disabling the creation of .htaccess files
2017-06-17 15:39:56 +02:00
Jordi Boggiano
91a4e76958
Merge pull request #6460 from bmax/master
...
Cache: clear cache using removeDirectory
2017-06-17 15:28:05 +02:00
Brandon Max
24b8fea48a
Cache: clear cache using removeDirectory
2017-06-16 16:25:11 -04:00
Wil Hall
f0924fb878
Add htaccess-protect option for disabling the creation of .htaccess files
2017-06-15 11:06:13 -04:00
Jordi Boggiano
7cee8e385f
Merge branch '1.4'
2017-06-15 16:28:08 +02:00
Jordi Boggiano
cc9234562d
Merge pull request #6475 from NamelessCoder/featurebranches
...
Add support for feature-branches setting
2017-06-15 15:49:10 +02:00
Claus Due
965f1f42d1
Add support for feature-branches setting
...
A negative list of non-feature-branches names
is already supported - this patch adds a list of
branches names which *will* be considered as
feature branches.
Allows changing the currently hardcoded set of
expected feature branch names, from:
* master|trunk|default|develop
To any set of names or patterns that you desire.
2017-06-11 19:02:51 +02:00
Sergey Shcherbin
292882f0d0
Fix for time format in GitBitbucketDriver test
2017-06-07 22:29:15 +03:00
Nils Adermann
b1110df873
Merge pull request #6371 from balbuf/balbuf/move-all-plugins
...
Move all plugins and their dependencies to the front
2017-05-24 13:23:09 +02:00
Stephen Beemsterboer
06bb6c7530
Move plugins with no dependencies to the front, followed by plugins with their dependencies
2017-05-23 20:28:32 -04:00
Remi Collet
741c8d63fb
fix test for Symfony 3.2
2017-05-22 08:16:45 +02:00
Remi Collet
95d82f6fde
fix test for json-schema 5.2
2017-05-22 08:01:51 +02:00
Martin Hasoň
88ec172bd8
Fix CS
2017-05-19 15:14:47 +02:00
Martin Hasoň
d1ba698291
Fix PHP 5.3 compatibility
2017-05-19 12:36:19 +02:00
Martin Hasoň
3c5bfcf1e9
Register github repository type
2017-05-19 11:40:42 +02:00
Jordi Boggiano
a6627d55b7
Fix build
2017-05-16 23:50:15 +02:00
Jordi Boggiano
ce56fc4ab6
Merge pull request #6381 from deeky666/pass-vsc-driver-options
...
Forward GitLab driver options to remote filesystem
2017-05-16 23:36:30 +02:00
Jordi Boggiano
c917c52f81
Message tweak, refs #6341
2017-05-16 22:45:47 +02:00
AjiYakin
8858b27ced
Warn identical names w/ different capitalization - extract zip archive
...
Warn about identical names with different capitalization on zip archive
extract failure (Not a directory)
Issue #5938
2017-05-16 22:43:04 +02:00
Steve Müller
1d29fa04b1
forward GitLab driver options to remote filesystem
2017-04-26 16:59:50 +02:00
Rob Bast
e2eb8f2201
support for gitlab subgroups, closes #6349
2017-04-24 10:51:47 +02:00
Stephen
6c4800b8d2
Update corresponding test for plugin moving
2017-04-22 16:43:07 -04:00
Jordi Boggiano
e3a23c0047
Merge branch '1.4'
2017-04-20 13:43:12 +02:00
Jordi Boggiano
75416c69b4
Merge pull request #6340 from derrabus/remove-control-chars-from-suggest
...
Remove ANSI control characters from suggested packages output
2017-04-19 17:49:46 +02:00
Alexander M. Turek
20050dd984
Remove console formatting as well.
2017-04-19 17:24:47 +02:00
Jordi Boggiano
3c1e7a67cf
Merge branch '1.4'
2017-04-19 13:37:25 +02:00
Jordi Boggiano
9b3c9e0c26
Fix tests
2017-04-19 13:34:57 +02:00
Jordi Boggiano
123e8956c7
Merge pull request #6337 from theotonge/bugfix-5989
...
Fix for https://github.com/composer/composer/issues/5989
2017-04-19 13:34:43 +02:00
Alexander M. Turek
401ef69ae3
Remove ANSI control characters from suggested packages output.
2017-04-11 15:20:40 +02:00
Theo Tonge
c077df0d80
Fix for https://github.com/composer/composer/issues/5989
...
Enforce yes/no answers for Confirmation Questions
2017-04-10 21:33:30 +01:00
Jordi Boggiano
2c03dab4c3
Merge branch '1.4'
2017-04-10 18:47:30 +02:00
Jordi Boggiano
be201924cd
Revert "Changes the query string parameter `sha` to `ref` to reflect the GitLab API"
...
Fixes #6344 , refs #6198
This reverts commit 8a496cd2a7
.
2017-04-10 18:46:38 +02:00
Nicole Cordes
d834fcfac5
Change commitHash to match real life examples
2017-04-03 12:00:31 +01:00
Nicole Cordes
c0f5a64e81
Use long array sysntax for PHP 5.3 compatibility
2017-03-31 17:09:04 +02:00
Nicole Cordes
c2fe198ebc
Re-add unit test for FETCH_HEAD parsing
2017-03-31 15:37:39 +02:00
Nicole Cordes
313e6b914d
Fix Git branch parsing for detached HEAD on a commit
...
Current versions of Git output the commit hash as detached HEAD instead
of FETCH_HEAD. The VersionGuesser should be able to handle commit hashes
as well as FETCH_HEAD to detect the correct branch of a commit.
2017-03-31 15:02:50 +02:00
Jordi Boggiano
61511cfed6
Fix CS issues, refs #6159
2017-03-30 09:29:48 +02:00
Jordi Boggiano
0a337e7c75
Merge remote-tracking branch 'gza/fix_unzip_on_win_php56'
2017-03-30 09:15:26 +02:00
Jose Miguel Pérez Ruiz
4ba3c741f5
Fix Init Command to accept author names with Unicode combining diacritical marks
2017-03-17 21:58:57 +01:00
Jose Miguel Pérez Ruiz
b2f62bc06c
Fix Init Command to accept author names with Unicode combining diacritical marks
2017-03-16 01:43:54 +01:00
Guillaume ZITTA
f89e01d622
switch first / fallback order
2017-03-14 23:43:48 +01:00
Jordi Boggiano
843877cd6d
Fix hg version guessing, fixes #6236 , fixes #6235
2017-03-08 17:12:13 +01:00
Filippo Tessarotto
04b1ddb79f
VersionGuesser test for HG
2017-03-08 16:10:12 +01:00
Jordi Boggiano
122e422682
CS fixes
2017-03-08 15:16:44 +01:00
Jordi Boggiano
ddef9923b0
Merge branch '1.3'
2017-03-08 10:33:46 +01:00
Sjoerd Adema
8a496cd2a7
Changes the query string parameter `sha` to `ref` to reflect the GitLab API
...
Updated the unit test to reflect the change
Fixes #6198
2017-03-08 10:27:58 +01:00
Jordi Boggiano
f200343cf2
Fix gitlab driver issues not asking for auth when token is missing, and not falling back properly to git driver
2017-03-08 10:26:08 +01:00
Jordi Boggiano
44ea284ab9
Merge remote-tracking branch 'stefangr/implement_bitbucket_api_v2'
2017-03-07 14:43:16 +01:00
Jordi Boggiano
c61a1c7523
Merge branch '1.3'
2017-03-07 10:02:15 +01:00
Jordi Boggiano
260b85882f
Merge remote-tracking branch 'dzuelke/installmsgs' into 1.3
2017-03-07 10:01:02 +01:00
rubenrua
4e1887a721
Improve memory usage resolving dependencies
...
It is known that composer update takes a lot of memory: #5915 , #5902 ,
I am playing with a profiler (@blackfireio) to make a demo in my local
PHP meetup (@phpvigo) and I found out a way to use less memory. These
are my first tests:
* Private project using PHP 5.6:
* Memory: from 1.31GB to 1.07GB
* Wall Time: from 2min 8s to 1min 33s
* symfony-demo using PHP 7.1 in my old mac book:
* Memory: from 667MB to 523MB
* Wall Time: from 5min 29s to 5min 28s
Not use an array inside conflict rules is this improvement main idea:
```php
<?php
//Memory 38MB
gc_collect_cycles();
gc_disable();
class Rule
{
public $literals;
public function __construct(array $literals)
{
$this->literals = $literals;
}
}
$rules = array();
$i = 0;
while ($i<80000){ //
$i++;
$array = array(-$i, $i);
$rule = new Rule($array);
$rules[] = $rule;
}
```
```php
<?php
//Memory 11.1MB
gc_collect_cycles();
gc_disable();
class Rule2Literals
{
public $literal1;
public $literal2;
public function __construct($literal1, $literal2)
{
$this->literal1 = $literal1;
$this->literal2 = $literal2;
}
}
$rules = array();
$i = 0;
while ($i<80000){ //
$i++;
$rule = new ConflictRule(-$i, $i);
$rules[] = $rule;
}
```
More info https://github.com/composer/composer/pull/6168
2017-02-20 18:52:17 +00:00
Guillaume ZITTA
abf06913a2
remove useless expect (already done by docstring)
2017-02-14 17:37:40 +01:00
Guillaume ZITTA
921ffe741f
Cleaner fallback Algorithm
2017-02-13 15:54:55 +01:00
Jordi Boggiano
20c16f18f5
Merge branch '1.3'
2017-01-27 18:01:50 +01:00
Jordi Boggiano
f3d0e4660d
Fix urlencoding of gitlab dots, fixes #6064
2017-01-27 18:01:24 +01:00
David Zuelke
2d36324e99
streamline install progress messages
2017-01-24 20:51:37 +01:00
Stefan Grootscholten
5dbdefdd72
Implement ordering in requesting tags and branches.
...
Update unit test with latest changes.
2017-01-22 15:55:17 +01:00
Stefan Grootscholten
7ae4ed1ec8
Improve fetching single files via bitbucket API.
...
The former implementation used the 'src' endpoint which returned some meta data as well.
This has been replaced with the 'raw' endpoint which does not return the meta data and does not need an extra JSON decode step.
2017-01-22 14:35:37 +01:00
Stefan Grootscholten
d25c483231
Implement Bitbucket API version 2.0 (where applicable).
2017-01-22 14:35:37 +01:00
Stefan Grootscholten
512750a20e
Add more tests to cover the new functionality.
2017-01-22 14:35:37 +01:00
Stefan Grootscholten
a4af559ca8
Store access-token for re-use
...
Store the Bitbucket access-token (and the expiration time) so it can be re-used within the time it is valid.
The Bitbucket::requestToken and Bitbucket::getToken now only return the access-token and not all other parameters it receives from the Bitbucket API.
2017-01-22 14:35:37 +01:00
jbixler
dac51c7f4b
Add ignore filters option to archive command
2017-01-11 16:21:44 -06:00
Christophe Coevoet
1cb0ec7911
Resolve references in ComposerSchemaTest
2017-01-03 11:57:35 +01:00
johnstevenson
2b8ad7dc2a
Clear xdebug version if restart fails, fixes #5995
2016-12-27 18:46:21 +00:00
Jordi Boggiano
2782d37a15
Merge pull request #5992 from AnrDaemon/fix-git-skips-proper
...
Properly skip GitDownloaderTest if git is not available
2016-12-24 01:47:04 +01:00
AnrDaemon
1d2a949e3e
Properly fix git excludes.
...
Mindless copy-paste never gets old. Sorry. This is fixed proper this time.
2016-12-24 03:19:50 +03:00
AnrDaemon
810e70d234
Fix __DIR__/getcwd() inconsistency.
2016-12-23 21:57:00 +03:00
Jordi Boggiano
df5fd3ba09
Cache executable finder calls
2016-12-23 15:01:05 +01:00
AnrDaemon
ab70601700
Skip git-related tests if no git found.
2016-12-22 20:14:57 +03:00
johnstevenson
3928f1f3be
Set xdebug version in environment, fixes #5967
2016-12-15 21:20:41 +00:00
Jordi Boggiano
a1b468ea50
Fix git shortening, it is sunday..
2016-12-11 17:04:24 +01:00
Jordi Boggiano
98c5f825e0
Fix tests and regression in @ref script handling
2016-12-11 16:37:55 +01:00
Jordi Boggiano
4d77ffcb4a
Merge branch 'simplify-output'
2016-12-11 16:24:01 +01:00
Jordi Boggiano
4d082f77b8
Simplify composer output to take less lines
2016-12-07 01:09:06 +01:00
Jordi Boggiano
e54c7478ee
Attempt at fixing support for git 2.11, refs #5942
2016-12-07 01:02:55 +01:00
Jordi Boggiano
1dcb2b5758
Merge remote-tracking branch 'nicolas-grekas/apcu'
2016-12-07 00:21:13 +01:00
Jordi Boggiano
e9d04f2b2d
Merge branch '1.2'
2016-12-06 17:04:39 +01:00
Hans-Joachim Michl
817b2747c7
Fix #5672
...
This fixes the issue reported in #5672 .
It just makes sure the ZendGuard encoded files can be autoloaded correctly.
2016-12-06 17:02:27 +01:00
Dries Vints
2ab7df5566
Do not add newlines to output
2016-12-06 16:53:46 +01:00
Nicolas Grekas
6d4e60b991
Add --apcu-autoloader option to enable APCu caching of found/not-found classes
2016-12-06 11:21:44 +01:00
Jordi Boggiano
f3f063e3e2
Merge pull request #5888 from alcohol/array-default
...
use array as default value
2016-12-01 14:24:41 +01:00
Rob Bast
873f17261c
try to fix test instead of guarding implementation
2016-12-01 14:03:20 +01:00
Jordi Boggiano
8a2f597db3
Fix tests
2016-11-30 23:56:43 +01:00
Jordi Boggiano
91e7372c6e
Backport update packagist default repo to be packagist.org
2016-11-30 22:57:11 +01:00
johnstevenson
c1058cf37c
Fix XdebugHandler test
2016-11-21 11:52:56 +00:00
johnstevenson
379fb70ad9
Use random name for tmp ini and delete after use
...
Thanks to Patrick Rose for reporting this issue.
2016-11-20 10:59:05 +00:00
Jordi Boggiano
8ad6385ffb
Merge remote-tracking branch 'fabpot/more-debug'
2016-11-06 18:18:52 +01:00
Jordi Boggiano
43903a3979
Merge branch '1.2'
2016-11-06 17:38:53 +01:00
Jordi Boggiano
98a599d6c3
Merge pull request #5843 from stof/enforce_map_types
...
Enhance the json schema with validation for map objects
2016-11-06 17:02:38 +01:00
Jordi Boggiano
9801d831ed
Merge pull request #5852 from fabpot/io-fix
...
Remove usage of echo when executing Composer script
2016-11-06 16:49:08 +01:00
Jordi Boggiano
d6499b7c4a
Merge pull request #5748 from kassner/hgdriver-bitbucket
...
HgDriver does not identify bitbucket mercurial repos correctly
2016-11-06 12:36:13 +01:00
Fabien Potencier
103624d4ed
Remove usage of echo when executing Composer script
2016-11-05 22:10:39 -07:00
Christophe Coevoet
1882f9a502
Enhance the json schema with validation for map objects
2016-11-03 13:19:20 +01:00
Jordi Boggiano
208086d8e3
Merge remote-tracking branch 'channelgrabber/GitSpeedIncrease'
2016-11-03 12:08:28 +01:00
Jordi Boggiano
adee0ff132
Fix tests
2016-11-03 11:30:35 +01:00
Jordi Boggiano
e38ebefc7e
Update packagist default repo to be packagist.org
2016-11-03 11:00:40 +01:00
Fabien Potencier
57ec0d1815
added more information in the output
2016-10-29 11:37:23 -07:00
Richard Heelin
c2f6c61f56
Updated the tests to match the new command that is executed
2016-10-21 15:49:27 +01:00
Jordi Boggiano
d9328ed5ae
Merge pull request #5753 from alcohol/use-rfc3339-in-arraydumper
...
bring arraydumper in line with json schema spec and packagist
2016-10-12 16:51:59 +02:00
Konstantin.Myakshin
dc70b40d34
Use implode instead of join
2016-10-11 16:52:29 +03:00
Jordi Boggiano
d1867d5859
Merge branch '1.2'
2016-10-10 18:21:22 +02:00
Jordi Boggiano
5ee22f25ba
Rework JSON matching to use a properly recursive pattern, fixes #5771
2016-10-10 18:20:53 +02:00
Jordi Boggiano
092dec9596
Add failing test for #5771
2016-10-10 18:12:24 +02:00
Jordi Boggiano
183398fe5e
Merge pull request #5717 from berlinger-rarents/fix/5584_anon_redirect_bitbucket
...
prevent (prompt for) bitbucket auth when it redirected
2016-10-10 14:11:24 +02:00
Jordi Boggiano
c540dace8c
Merge pull request #5765 from fabpot/remove-obsolete-code
...
removed obsolete code
2016-10-08 11:28:19 +02:00
Jordi Boggiano
4cd6eabdba
Merge branch '1.2'
2016-10-08 11:27:52 +02:00
Fabien Potencier
2853e82400
removed obsolete code
2016-10-06 11:56:54 -07:00
Christophe Coevoet
d5810c8a36
Fix namespace for tests for consistency
2016-10-05 10:45:22 +02:00
Rob Bast
a45ae5f585
fix test
2016-10-04 13:23:25 +02:00
Rafael Kassner
34ec5fba58
Code review fixes
2016-10-03 13:35:48 +02:00
Rafael Kassner
44634a689d
HgDriver does not identify bitbucket mercurial repos correctly
2016-10-03 13:17:07 +02:00