johnstevenson
2a913c7a68
Improve proxy error messages for streams
4 years ago
Jordi Boggiano
62eff8e979
Tweaks to new proxying code, refs #9324
4 years ago
johnstevenson
d47261eb93
Refactor proxy handling for Composer2
4 years ago
Nils Adermann
e868996bdd
Validate: Warn about providing or replacing packages you require
4 years ago
Jordi Boggiano
8564dd8dac
Allow Url::sanitize to escape URLs without scheme
4 years ago
johnstevenson
8feb83b22b
Remove duplicate StreamContextFactory ssl options
...
Added in Dec 2014 (commit 8dad846
), superseded in Jan 2016 (pr #4759 )
4 years ago
Jordi Boggiano
4d2f41a415
Merge pull request #9318 from naderman/validate-provide-replace-requirement
...
Validate: Warn about providing or replacing packages you require
4 years ago
Jordi Boggiano
447416a357
Fix typo
4 years ago
Nils Adermann
6409ed0fc2
Validate: Warn about providing or replacing packages you require
4 years ago
Jordi Boggiano
492bece6e2
Merge pull request #9317 from naderman/test-provider-satisfy-self
...
Test: Verify require for package provided or replaced by pkg itself is used
4 years ago
Nils Adermann
1d6c0865ca
Test: Verify replacing a package required by the same package satisfies the dep
4 years ago
Nils Adermann
290450214e
Test: Verify require for package provided by pkg itself is used
4 years ago
Nils Adermann
c0236c5ed2
Move slow integration test to separate fixtures directory and add to slow group
4 years ago
Nils Adermann
c37dce0bb3
Remove unnecessary hhvm conflict rules from test
4 years ago
Nils Adermann
2468cd20dd
Update test case for github issue 7665 to have correct output
4 years ago
Nils Adermann
e11f52c041
Add a test to reproduce github issue #7665
4 years ago
Jordi Boggiano
b74afd772b
Merge pull request #9309 from naderman/fix-solver-9290
...
MultiConflictRule conflict analysis handling on level 1 decisions
4 years ago
Nils Adermann
7b4cb9c370
Solver: Prevent infinite recursion in analyzeUnsolvableRule
...
In complex scenarios reasons for learned rules can themselves be learned
rules caused by other learned rules which had the some of the same
reasons. In this situation iterating over all problem rules requires
keeping track of which rules have previously been analyzed to avoid and
endless loop.
Side effect is that the sorting of problems including learned rules
changes slightly.
4 years ago
Nils Adermann
9641ad6025
SolverProblemException: Hide learnt rules on output
...
Results in too much error output which is not helpful. Very repetitive
and hard to understand. In issue 8903 even leads to endless recursion
bug.
4 years ago
Nils Adermann
853305063d
Add test case for github issue 9290
4 years ago
Jordi Boggiano
99a5469b5e
More hints
4 years ago
Jordi Boggiano
4d005a9786
Merge pull request #9296 from mcaskill/bugfix/file-downloader-cache-keys
...
Fix availability of $urls in FileDownloader
4 years ago
Jordi Boggiano
c01e3bd2f0
Make async test more robust
4 years ago
Chauncey McAskill
fcc072fdb6
Add test to check processed URL and cache key
4 years ago
Nils Adermann
fdde9e5933
On composer install we fix locked packages, but consider them locked for error reporting
4 years ago
Nils Adermann
74fb313c39
Separate locked packages from fixed packages in request
...
Locked packages are basically like removable fixed packages, so we still
only load one version, but we do not require their installation unless
something the user needs requires their use. So they automatically get
removed if they are no longer needed on any update.
4 years ago
Nils Adermann
73e24ea9fb
Partial updates should remove all unused dependencies
...
Instead of marking locked packages as fixed, we change the pool builder
to load only the locked version and treat it like a fixed package, but
removing the actual request fix, makes the solver treat it as a regular
optional dependency. As a consequence locked packages may be removed on
a partial update of another package, but they cannot be updated.
4 years ago
Nils Adermann
85eb007f4f
Transaction: Define a total order on packages to keep behavior on PHP8
...
So far the ordering of alias packages with the same name was undefined
so the actual order was determined by implementation of the sorting
algorithm in PHP. As of PHP8 sort is stable by default which changes the
outcome in some of our test cases.
With the fully defined total order the order can longer change depending
on sorting algorithm used and remains the same across PHP versions.
4 years ago
Jordi Boggiano
7ea6d5d2e7
Merge branch '1.10'
4 years ago
Nicolas Grekas
4feed8b85c
Fix parsing "branch-version"
4 years ago
Jordi Boggiano
d702fa0e1a
Add test to ensure root requirements do not get expanded by the pool builder
4 years ago
Jordi Boggiano
528030716e
Fix tests
4 years ago
Jordi Boggiano
bafdf9f705
Merge branch '1.10'
4 years ago
Nicolas Grekas
893fbfcb89
Add support for "extra.branch-version"
4 years ago
Jordi Boggiano
24abd233ec
Merge branch 'master' into code-improvements
4 years ago
Jordi Boggiano
0775e261c5
Merge remote-tracking branch 'lstrojny/apcu-prefix'
4 years ago
Jordi Boggiano
09ef026d43
Remove OperationInterface::getReason, closes #9230 , closes #9263
4 years ago
Jordi Boggiano
03b8c3db3f
Merge branch '1.10'
4 years ago
Jordi Boggiano
6698e0bafa
Merge remote-tracking branch 'naderman/version-guess-remotes' into 1.10
4 years ago
Nicolas Grekas
f9913205dd
Fix VcsRepositoryTest
4 years ago
Nils Adermann
89afb823b6
VersionGuesser: Add test for remote version guess
4 years ago
Nils Adermann
92722a9a4c
VersionGuesser: Fix root package loader test which relies on git cmd in guesser
4 years ago
Nils Adermann
db2f09a361
VersionGuesser: Update tests to match new git command generated
4 years ago
Simon Berger
80d71ccb3f
Merged isset, unset and str_replace calls
4 years ago
Michael Telgmann
a4509d28e7
Introduce constants for Composer\Package\Link types
4 years ago
Simon Berger
80a75e9959
Minor code improvements
4 years ago
Lars Strojny
0b6abf3b96
APCu prefix as a separate option
4 years ago
Lars Strojny
de0085767c
Sanitize prefix
4 years ago
Lars Strojny
dafd225a35
Allow to pass a string for apcu-autoloader to set the APCu prefix
4 years ago
Jordi Boggiano
d942c65e0c
Fix more warnings
4 years ago
Jordi Boggiano
1593b67230
Fix warnings on higher phpunit versions
4 years ago
Simon Berger
f3936b82cd
Added test to cancel ProcessExecutor::asyncExecute
4 years ago
Nils Adermann
976fcd2eb4
PoolBuilderTest: Add case for multiple repositories and partial update with replace
4 years ago
Nils Adermann
6c4ed247dd
Add a pool builder test for replaces across multiple repos
4 years ago
Nils Adermann
1385412748
Merge branch 'master' into filter-packages
...
* master:
Add tests for edge cases of packages providing names which exist as real packages
Add another test verifying that a package may provide an incompatible version of sth that actually exists
Fix provider coexistence test, needs another requirement to install both
Fix test filename to end with .test extension so it gets run
Update config section to note required scope for GitLab tokens
Fix pre/post-package-install/update/uninstall events receiving a partial list of operations, fixes #9079
Also remove credentials from cache dirs in git/svn drivers, fixes #7439 , refs #9155
AuthHelper: Allow fall-through GitLab-specific HTTP headers for auth
Sanitize repo URLs to mask HTTP auth passwords from cache directory
Util/Zip: fix strpos args order
4 years ago
Nils Adermann
43093d0eeb
Add tests for edge cases of packages providing names which exist as real packages
4 years ago
Nils Adermann
140665eadd
Add another test verifying that a package may provide an incompatible version of sth that actually exists
4 years ago
Nils Adermann
85950f8e9a
Fix provider coexistence test, needs another requirement to install both
4 years ago
Nils Adermann
cf8ff2a75d
Fix test filename to end with .test extension so it gets run
4 years ago
Nils Adermann
c9201b8e40
PoolBuilderTest: Allow setting filter options for repositories
4 years ago
Nils Adermann
fcb9ef4899
Allow defining multiple reppos in pool builder tests
4 years ago
Ayesh Karunaratne
931a1ff1f8
AuthHelper: Allow fall-through GitLab-specific HTTP headers for auth
...
Previously, `AuthHelper` consumed the authentication credentials for GitLab domains and added access tokens as GitLab-specific headers.
[Composer repositories now supported in GitLab](https://php.watch/articles/composer-gitlab-repositories ) require standard Authorization headers with a personal access to function, which failed to work due to out GitLab-specific headers.
With this commit, AuthHelper checks if the password is an access token, and falls through to HTTP basic authentication even if the domain name is a GitLab domain name.
4 years ago
Jordi Boggiano
9a04ecefbf
Merge branch 'master' into filter-packages
4 years ago
Jordi Boggiano
6186c7f36f
Fix handling of root aliases in partial updates, fixes #9110
4 years ago
Jordi Boggiano
448daea696
Add support for detecting packages not matching only due to minimum stability
4 years ago
Jordi Boggiano
4d83783641
Fix test to avoid network usage
4 years ago
Oleg Andreyev
e745e59656
updated repositories-priorities4.test
4 years ago
Oleg Andreyev
f262feebec
fixing error message for higher repository priority, when higher repo has only a dev-branch
4 years ago
Lars Strojny
3e750b69f4
Fix name
4 years ago
Lars Strojny
a83588f568
The proper fix
4 years ago
Lars Strojny
99fd5c7b49
Add tests
4 years ago
Jordi Boggiano
4d20e6f5d6
Move Version util to Platform namespace, fix CS nitpicks, make regexes case insensitive for robustness, refs #9093
4 years ago
Jordi Boggiano
7e1ef19a5a
Expand library version checking capabilities ( closes #9093 )
4 years ago
Wissem Riahi
657ae5519e
Add support for TAR in Artifact packages ( #9105 )
4 years ago
Jordi Boggiano
00f712a7c4
Revert "Allow specifying a version requirement for CLDR"
4 years ago
Jordi Boggiano
7bcde1481d
Fix git downloader syntax for windows cmd when updating packages, fixes #9089
4 years ago
Lars Strojny
5a02ea6a96
Check that class exists
4 years ago
Lars Strojny
404dea61c2
Allow specifying a version requirement for the relevant CLDR
4 years ago
Jordi Boggiano
d8fa746433
Merge pull request #9058 from Seldaek/zip-cleanup
...
Clean up Zip Util to be more strict about what is a valid package archive
4 years ago
Wissem Riahi
c353ac835c
Add exception for multiple composer.json files ( #3 )
4 years ago
Jordi Boggiano
22367a68f9
Avoid loading same packages multiple times
4 years ago
Jordi Boggiano
23339e44b8
Fix alias tests to use default-branches
4 years ago
Yanick Witschi
6ba0f3adf9
Merge branch 'master' into filter-packages
...
* master: (59 commits)
Update deps
Reuse repository manager and others directly from the Composer instance, refs #9057
Fix usage of create-project with local filesystem repos
Fix return value
Add support for multiple --repository additions in create-project, and make --add-repository delete the lock file, fixes #8853
Remove cygwin php handling in UAC elevation
Clean up a little to make impl less invasive and to handle replacers/providers
Supply event dispatcher in Create Project Command
Avoid attempting to use /etc/xdg as base config home, fixes #9053 , refs #9045
Create an issue @ Docker repository on tag
Mark transaction classes internal, refs #8827
Prepare 1.10.9 release
Remove highest/lowest builds for 1.10 maintenance branch
Fix bitbucket detection of redirects to login page, fixes #9041
Fix doc comment
Fixed spelling mistake
Add Windows UAC elevation to self-update command
GitLab: clarify interactive auth prompt
Improve support for XDG and default to XDG config dir if both that and ~/.composer are available, fixes #9045
Fix #9033 - inconsistent behavior with minor-only flag
...
4 years ago
Jordi Boggiano
433968de17
Fix usage of create-project with local filesystem repos
4 years ago
Jordi Boggiano
942562c382
Clean up Zip Util to be more strict about what is a valid package archive, fixes #8931
4 years ago
Jordi Boggiano
212fbc516e
Fix test issues
4 years ago
Nils Adermann
3d2d33dd58
Solver: Add missing rules and replace some with %A for pcre length limit
4 years ago
Nils Adermann
de3931c742
Revert "Remove unnecessary duplicate rule output from expected test result"
...
This reverts commit c78eb49b5e
.
4 years ago
Nils Adermann
c78eb49b5e
Remove unnecessary duplicate rule output from expected test result
4 years ago
Nils Adermann
2cfb60e683
Solver: Add test case for github issue 7051
4 years ago
Jordi Boggiano
bee91155a1
Fix guessing of default branch when HEAD is a non-feature-branch
4 years ago
Jordi Boggiano
05dacbdabb
Rename DEV_MASTER_ALIAS to DEFAULT_BRANCH_ALIAS
4 years ago
Jordi Boggiano
74d89d7110
Get rid of default branch handling in version guesser as it is way too time intensive at every initialization
4 years ago
Yanick Witschi
ea0ce9dd7d
Merge branch 'master' into filter-packages
4 years ago
Jordi Boggiano
6d2b5c1950
Add missing class
4 years ago
Jordi Boggiano
7a37e78a30
Speed up installer tests by avoiding lots of bootstrapping and git processes
4 years ago
Jordi Boggiano
d19f5db568
Fix tests to use default-branch prop
4 years ago
Jordi Boggiano
6349764c2d
Fix root package handling of default-branch
4 years ago
Jordi Boggiano
6f0e5996de
Treat default branch name as a non-feature-branch no matter what it is called
4 years ago
Jordi Boggiano
f70d527f4f
Fix git tests
4 years ago
Jordi Boggiano
04381c70fe
Merge branch '1.10'
4 years ago
Jordi Boggiano
fb7fc4a4ca
Fix git tests
4 years ago
Jordi Boggiano
93d4cf6f91
Add --no-show-signature where git supports it, fixes #8966
4 years ago
Jordi Boggiano
83c64a9d19
Reuse operation formatting logic in downloaders
4 years ago
Jordi Boggiano
e5fe35d554
Update test description
4 years ago
Jordi Boggiano
c8731598cc
Merge branch '1.10'
4 years ago
Jordi Boggiano
ee58f25c00
Fix ZipDownloaderTest
4 years ago
Jordi Boggiano
3af617efe8
Parallelize zip extraction using async unzip processes
4 years ago
Jordi Boggiano
0dad963cd8
Add executeAsync to ProcessExecutor and allow Loop class to wait on it in addition to HttpDownloader
4 years ago
Jordi Boggiano
a797ee1322
Fix inline aliases not being loaded when extracting dev requirements, fixes #8954
4 years ago
Michael Chekin
6d9bf42655
Additional Util\RemoteFileSystem tests ( #8960 )
...
* RemoteFilesystemTest: simplifying some mock expectations calls
- will($this->returnValue()) to willReturn()
- will($this->returnCallBack()) to willReturnCallback()
* RemoteFilesystemTest: extracting identical mocks for IOInterface into a separate getIOInterfaceMock() method
* RemoteFilesystemTest: converting protected helper methods to private.
* RemoteFilesystemTest: moving getConfigMock() private method after the public methods (with other private methods)
* adding RemoteFileSystemTest::testCopyWithRetryAuthFailureFalse() unit test.
* Allow optional injecting of AuthHelper into RemoteFilesystem constructor.
* adding RemoteFileSystemTest::testCopyWithSuccessOnRetry() unit test.
* using backward compatible @expectedException in RemoteFilesystemTest.php
* RemoteFilesystemTest: extracting RemoteFilesystem with mocked method creation into a separate method.
* RemoteFilesystemTest: extracting AuthHelper with mocked method creation into a separate method.
4 years ago
Graham Campbell
fa799970ad
Replace whitelist with allow list
4 years ago
Jordi Boggiano
2fa58ccf96
Reduce amount of packages loaded by avoiding extensions of the constraint beyond the root constraint
4 years ago
Jordi Boggiano
4b9b499ce5
Fix issue loading aliases and fix markPackageNameForLoading when called twice in a row for same package it would overwrite the constraint the second time
4 years ago
Jordi Boggiano
b7f1550896
Add test covering replacer unfixing
4 years ago
Jordi Boggiano
f2befc46c9
Avoid storing duplicate packages when loading the same package twice
4 years ago
Jordi Boggiano
67a88880ec
Get rid of EmptyConstraint
4 years ago
Yanick Witschi
c7f10bdd90
Fixed RuleTest
4 years ago
Yanick Witschi
bde9502473
Made the constraint argument in Link mandatory
4 years ago
Yanick Witschi
63906171f0
Cleanup EmptyConstraint output
4 years ago
Yanick Witschi
b935a76bc6
Removed already covered test
4 years ago
Yanick Witschi
8b4e834675
Added another poolbuilder test to show issue with constraint matching
4 years ago
Yanick Witschi
71fde80048
Fixed test
4 years ago
Yanick Witschi
29611a4d27
Fixed test descriptions
4 years ago
Yanick Witschi
8e2dd62d10
Fixed tests related to constraint changes
4 years ago
Yanick Witschi
bca88bdd4b
Fixed PoolBuilder running endlessly when packages do not exist
4 years ago
Yanick Witschi
28f82032cd
And here's the key test :)
4 years ago
Yanick Witschi
b87fc5bbfd
Added more poolbuilder test
4 years ago
Nils Adermann
43888cae8c
PoolBuilder: failing test for partial update with multiple deps
4 years ago
Nils Adermann
4f13875f3f
PoolBuilderTest: add new fixtures for partial updates with locked packages
4 years ago
Nils Adermann
85ea29d241
PoolBuilder failing test: do not load alternatives for pkg replaced by fixed pkg
4 years ago
Nils Adermann
208a735645
PoolBuilder Failing test: fixed package is not only pkg loaded for that name
4 years ago
Jordi Boggiano
a4a617abb4
Reduce amount of Filesystem/ProcessExecutor instantiations, add lots of docblocks
4 years ago
Jordi Boggiano
a66a939b76
Merge pull request #8937 from Seldaek/optim-rules
...
Optimize rule creation for alias packages
4 years ago
Jordi Boggiano
fafa959933
Add test to assert prefer-lowest behavior when conflicting branches prevent absolute lowest version from being installed, closes #7408
4 years ago
Jordi Boggiano
5a4709c3d6
Optimize rule creation for alias packages
...
This mainly benefits projects running updates with minimum-stability: dev
4 years ago
Jordi Boggiano
1ea3111583
Use RULE_LEARNED instead of RULE_FIXED
4 years ago
Jordi Boggiano
5e5f9f8142
Remove unused RULE_INTERNAL_ALLOW_UPDATE
4 years ago
Jordi Boggiano
c8efb50d39
Change the single requirement ignore from --ignore-platform-reqs=xx to --ignore-platform-req=xx to avoid BC issues
4 years ago
Jordi Boggiano
2ddf4346ef
Improve error reporting for RULE_PACKAGE_ALIAS
4 years ago
Jordi Boggiano
0ea9eafcaf
Add rules for aliased packages when an alias is added, fixes #8902
4 years ago
Jordi Boggiano
dfccf8c091
Add failing test reproducing the problem of #8902
4 years ago
Jordi Boggiano
537402f814
Add tests for #8861
4 years ago
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
4 years ago
Jordi Boggiano
21e708f2c4
Remove upper bound PHP version checks from platform-check as there is not enough value added and it risks causing issues
4 years ago
Jordi Boggiano
b72ac2d01a
Oops
4 years ago
Jordi Boggiano
863e7076ba
Bump to use composer/semver 3.x
4 years ago
Jordi Boggiano
d72a07db06
Fix tests
4 years ago
Jordi Boggiano
4e1f8cf89d
Build tweaks
4 years ago
Jordi Boggiano
45d3e133a4
Avoid checking for unbounded constraints in platform checks
4 years ago