1
0
Fork 0
composer/tests/Composer/Test/Fixtures/installer
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.
2020-10-21 17:11:13 +02:00
..
install-branch-alias-composer-repo Add failing test case 2014-11-20 16:54:38 +00:00
SAMPLE Refactor functional tests to fit existing tests better 2012-08-14 01:16:40 +02:00
abandoned-listed.test Display Locking instead of Installing for lock file install operations 2019-11-08 16:57:52 +01:00
alias-in-lock.test Add test for root alias presence in lock 2020-04-21 23:01:20 +02:00
alias-solver-problems.test SolverProblemException: Hide learnt rules on output 2020-10-21 14:08:12 +02:00
alias-solver-problems2.test More hints 2020-10-18 13:13:44 +02:00
alias-with-reference.test Fix tests to use default-branch prop 2020-06-19 16:06:38 +02:00
aliased-priority-conflicting.test Fix tests to use default-branch prop 2020-06-19 16:06:38 +02:00
aliased-priority.test Update tests for new output and for required lock file on partial update 2019-09-07 07:53:31 +02:00
aliases-with-require-dev.test Fix inline aliases not being loaded when extracting dev requirements, fixes #8954 2020-06-16 13:50:29 +02:00
broken-deps-do-not-replace.test Improve error reporting of solver issues, refs #7779 2020-01-30 14:43:54 +01:00
circular-dependency.test Adjust circular dep test 2013-04-30 10:34:58 +02:00
circular-dependency2.test Fix tests 2020-03-11 09:34:40 +01:00
conflict-between-dependents.test Fix conflict order to be more accurate 2020-01-30 15:55:37 +01:00
conflict-between-root-and-dependent.test Add individual test checking for clashes between requirements at root and transitive dependency level 2020-01-30 14:43:55 +01:00
deduplicate-solver-problems.test Deduplicate require/conflict rules which are the same but for different versions of the same package, fixes #8851 2020-05-01 15:41:54 +02:00
disjunctive-multi-constraints.test Fix tests 2020-03-11 09:34:40 +01:00
github-issues-4319.test Improve error reporting of solver issues, refs #7779 2020-01-30 14:43:54 +01:00
github-issues-4795-2.test Merge branch '1.10' 2020-06-16 17:16:42 +02:00
github-issues-4795.test More hints 2020-10-18 13:13:44 +02:00
github-issues-7051.test Solver: Prevent infinite recursion in analyzeUnsolvableRule 2020-10-21 17:11:13 +02:00
github-issues-8902.test Improve error reporting for RULE_PACKAGE_ALIAS 2020-06-02 10:35:04 +02:00
github-issues-8903.test SolverProblemException: Hide learnt rules on output 2020-10-21 14:08:12 +02:00
github-issues-9012.test Solver: Prevent infinite recursion in analyzeUnsolvableRule 2020-10-21 17:11:13 +02:00
install-aliased-alias.test Transaction: Define a total order on packages to keep behavior on PHP8 2020-10-14 11:13:51 +02:00
install-branch-alias-composer-repo.test Add failing test case 2014-11-20 16:54:38 +00:00
install-dev-using-dist.test Speed up installer tests by avoiding lots of bootstrapping and git processes 2020-06-19 17:56:13 +02:00
install-dev.test Fix integration tests 2014-04-07 11:10:57 +02:00
install-from-empty-lock.test Fix tests 2020-03-11 09:34:40 +01:00
install-from-lock-removes-package.test Merge branch '1.10' 2020-06-16 17:16:42 +02:00
install-funding-notice.test Merge branch 'master' into 2.0 2020-03-13 11:18:23 +01:00
install-ignore-platform-package-requirements.test Add tests for platform packages required by root and avoid creating rules altogether instead of disabling them, refs #3320 2014-10-17 15:30:27 +01:00
install-missing-alias-from-lock.test Update lock syntax in tests and verify installed version does not impact lock generation 2019-10-30 00:32:23 +01:00
install-overridden-platform-packages.test Finalize platform override feature 2015-04-29 22:38:07 +01:00
install-package-and-its-provider-skips-original.test Add test for replace 2015-05-05 11:07:11 +01:00
install-prefers-repos-over-package-versions.test Prioritize repository over package versions in the default policy, fixes #3509 2015-04-30 10:43:04 +01:00
install-reference.test Fix tests to use default-branch prop 2020-06-19 16:06:38 +02:00
install-self-from-root.test Fix test 2020-03-10 17:11:19 +01:00
install-simple.test Refactor integration tests to accept any run command 2012-05-28 00:11:18 +02:00
install-without-lock.test Add tests for installer with lock: false 2019-10-20 10:51:59 +02:00
partial-update-downgrades-non-allow-listed-unstable.test More hints 2020-10-18 13:13:44 +02:00
partial-update-forces-dev-reference-from-lock-for-non-updated-packages.test Merge branch '1.10' 2020-06-16 17:16:42 +02:00
partial-update-from-lock-with-root-alias.test Fix handling of root aliases in partial updates, fixes #9110 2020-08-25 11:05:28 +02:00
partial-update-from-lock.test On composer install we fix locked packages, but consider them locked for error reporting 2020-10-14 11:46:13 +02:00
partial-update-installs-from-lock-even-missing.test Fix transaction order 2020-04-20 22:24:00 +02:00
partial-update-without-lock.test Replace whitelist with allow list 2020-06-07 22:15:09 +01:00
plugins-are-installed-first.test Fix tests 2020-03-11 09:34:40 +01:00
prefer-lowest-branches.test Add test to assert prefer-lowest behavior when conflicting branches prevent absolute lowest version from being installed, closes #7408 2020-06-03 08:34:25 +02:00
problems-reduce-versions.test More hints 2020-10-18 13:13:44 +02:00
provider-can-coexist-with-other-version-of-provided.test Add another test verifying that a package may provide an incompatible version of sth that actually exists 2020-08-28 13:40:44 +02:00
provider-conflicts.test Remove obsolete rules and their generation 2020-04-07 11:11:18 +02:00
provider-conflicts2.test A package providing a name should not conflict with a package replacing it 2020-04-07 11:08:47 +02:00
provider-conflicts3.test Solver: Prevent infinite recursion in analyzeUnsolvableRule 2020-10-21 17:11:13 +02:00
provider-dev-require-can-satisfy-require.test Separate createPool and createPoolWithAllPackages, fix test description 2020-03-12 13:17:04 +01:00
provider-gets-picked-together-with-other-version-of-provided-conflict.test Add tests for edge cases of packages providing names which exist as real packages 2020-08-28 14:50:28 +02:00
provider-gets-picked-together-with-other-version-of-provided-indirect.test Add tests for edge cases of packages providing names which exist as real packages 2020-08-28 14:50:28 +02:00
provider-gets-picked-together-with-other-version-of-provided.test Add tests for edge cases of packages providing names which exist as real packages 2020-08-28 14:50:28 +02:00
provider-packages-can-be-installed-if-selected.test 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
provider-packages-can-be-installed-together-with-provided-if-both-installable.test Fix provider coexistence test, needs another requirement to install both 2020-08-28 13:40:44 +02:00
provider-packages-can-not-be-installed-unless-selected.test Update after rebase 2020-01-30 14:52:47 +01:00
remove-deletes-unused-deps.test Partial updates should remove all unused dependencies 2020-10-14 11:46:13 +02:00
remove-does-nothing-if-removal-requires-update-of-dep.test Partial updates should remove all unused dependencies 2020-10-14 11:46:13 +02:00
replace-alias.test fix "replace-alias.test" test 2014-03-12 16:35:04 +01:00
replace-priorities.test Fix tests 2020-03-11 09:34:40 +01:00
replace-range-require-single-version.test Add test for replace version overlap 2020-05-04 11:24:11 +02:00
replace-root-require.test Add tests for the changes in #2690 2014-02-21 13:15:07 +01:00
replaced-packages-should-not-be-installed-when-installing-from-lock.test Update tests for replace conflicts 2018-08-27 12:14:34 +02:00
replaced-packages-should-not-be-installed.test Update tests for replace conflicts 2018-08-27 12:14:34 +02:00
repositories-priorities.test Add options to configure repository priorities 2020-04-09 13:39:06 +02:00
repositories-priorities2.test 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
repositories-priorities3.test Add options to configure repository priorities 2020-04-09 13:39:06 +02:00
repositories-priorities4.test Fix test to avoid network usage 2020-08-23 16:03:00 +02:00
repositories-priorities5.test Add support for detecting packages not matching only due to minimum stability 2020-08-23 16:48:07 +02:00
root-alias-change-with-circular-dep.test On composer install we fix locked packages, but consider them locked for error reporting 2020-10-14 11:46:13 +02:00
root-requirements-do-not-affect-locked-versions.test Change update to upgrade for package update operations which are upgrades, refs #8594 2020-02-11 13:43:38 +01:00
solver-problems.test More hints 2020-10-18 13:13:44 +02:00
suggest-installed.test Display Locking instead of Installing for lock file install operations 2019-11-08 16:57:52 +01:00
suggest-prod-nolock.test Fix tests 2020-03-13 11:26:12 +01:00
suggest-prod.test 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
suggest-replaced.test Present lock changes alphabetically, with uninstalls first, then all install/updates mixed 2020-03-10 16:08:40 +01:00
suggest-uninstalled.test Fix tests 2020-03-13 11:26:12 +01:00
unbounded-conflict-does-not-match-dev-master.test Fix tests to use default-branch prop 2020-06-19 16:06:38 +02:00
update-alias-lock.test Change update to upgrade for package update operations which are upgrades, refs #8594 2020-02-11 13:43:38 +01:00
update-alias-lock2.test Add failing test showing that packages fail to be installed if they match a previous alias which was not removed yet 2020-04-20 21:50:06 +02:00
update-alias.test Fix transaction order 2020-04-20 22:24:00 +02:00
update-all-dry-run.test Change update to upgrade for package update operations which are upgrades, refs #8594 2020-02-11 13:43:38 +01:00
update-all.test Change update to upgrade for package update operations which are upgrades, refs #8594 2020-02-11 13:43:38 +01:00
update-allow-list-locked-require.test Merge branch '1.10' 2020-06-16 17:16:42 +02:00
update-allow-list-patterns-with-all-dependencies.test Merge branch '1.10' 2020-06-16 17:16:42 +02:00
update-allow-list-patterns-with-dependencies.test Merge branch '1.10' 2020-06-16 17:16:42 +02:00
update-allow-list-patterns-with-root-dependencies.test Merge branch '1.10' 2020-06-16 17:16:42 +02:00
update-allow-list-patterns-without-dependencies.test Merge branch '1.10' 2020-06-16 17:16:42 +02:00
update-allow-list-patterns.test Merge branch '1.10' 2020-06-16 17:16:42 +02:00
update-allow-list-reads-lock.test Rename test files and standardize on allow list rather than whitelist 2020-03-27 22:15:04 +01:00
update-allow-list-removes-unused.test Merge branch '1.10' 2020-06-16 17:16:42 +02:00
update-allow-list-require-new-replace.test Separate locked packages from fixed packages in request 2020-10-14 11:46:13 +02:00
update-allow-list-warns-non-existing-patterns.test Rename test files and standardize on allow list rather than whitelist 2020-03-27 22:15:04 +01:00
update-allow-list-with-dependencies-alias.test Fix transaction order 2020-04-20 22:24:00 +02:00
update-allow-list-with-dependencies-new-requirement.test Test: partial update adding a new dep on a locked package should mark it for update 2020-03-27 23:07:02 +01:00
update-allow-list-with-dependencies-require-new-replace-mutual.test Separate locked packages from fixed packages in request 2020-10-14 11:46:13 +02:00
update-allow-list-with-dependencies-require-new-replace.test Mark replaced packages for update when using --with-dependencies 2020-03-27 22:59:00 +01:00
update-allow-list-with-dependencies-require-new.test Test: composer update new/plg --with-dependencies updates locked transitive deps 2020-03-27 22:46:54 +01:00
update-allow-list-with-dependencies.test Merge branch '1.10' 2020-06-16 17:16:42 +02:00
update-allow-list-with-dependency-conflict.test Merge branch '1.10' 2020-06-16 17:16:42 +02:00
update-allow-list.test Merge branch '1.10' 2020-06-16 17:16:42 +02:00
update-changes-url.test Fix tests to use default-branch prop 2020-06-19 16:06:38 +02:00
update-dev-ignores-providers.test Change update to upgrade for package update operations which are upgrades, refs #8594 2020-02-11 13:43:38 +01:00
update-dev-packages-updates-repo-url.test Change update to upgrade for package update operations which are upgrades, refs #8594 2020-02-11 13:43:38 +01:00
update-dev-to-new-ref-picks-up-changes.test Fix tests to use default-branch prop 2020-06-19 16:06:38 +02:00
update-downgrades-unstable-packages.test Fix tests to use default-branch prop 2020-06-19 16:06:38 +02:00
update-ignore-platform-package-requirements.test Change update to upgrade for package update operations which are upgrades, refs #8594 2020-02-11 13:43:38 +01:00
update-installed-alias-dry-run.test Fixed update alias packages in dry-run mode 2013-04-11 13:20:35 +02:00
update-installed-alias.test Fixed update alias packages in dry-run mode 2013-04-11 13:20:35 +02:00
update-installed-reference-dry-run.test added tests for not updating packages referenced by specific commit hash 2014-05-27 14:23:31 +02:00
update-installed-reference.test Change update to upgrade for package update operations which are upgrades, refs #8594 2020-02-11 13:43:38 +01:00
update-mirrors-changes-url.test Rename DEV_MASTER_ALIAS to DEFAULT_BRANCH_ALIAS 2020-06-25 08:56:14 +02:00
update-no-dev-still-resolves-dev.test Fix transaction order 2020-04-20 22:24:00 +02:00
update-no-install.test Fix tests 2020-04-24 09:07:32 +02:00
update-picks-up-change-of-vcs-type.test Change update to upgrade for package update operations which are upgrades, refs #8594 2020-02-11 13:43:38 +01:00
update-prefer-lowest-stable.test Change update to upgrade for package update operations which are upgrades, refs #8594 2020-02-11 13:43:38 +01:00
update-reference-picks-latest.test Change update to upgrade for package update operations which are upgrades, refs #8594 2020-02-11 13:43:38 +01:00
update-reference.test Change update to upgrade for package update operations which are upgrades, refs #8594 2020-02-11 13:43:38 +01:00
update-removes-unused-locked-dep.test Always use Removing for consistency between dry-run and actual install 2020-03-12 08:12:12 +01:00
update-requiring-decision-reverts-and-learning-positive-literals.test Fix solver problem exceptions with unexpected contradictory "Conclusions" 2019-02-03 16:33:55 +01:00
update-syncs-outdated.test Make sure the abandoned state is copied over even if the packages are installed already 2016-04-22 23:41:15 +01:00
update-to-empty-from-blank.test 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
update-to-empty-from-locked.test Fix tests to use default-branch prop 2020-06-19 16:06:38 +02:00
update-with-all-dependencies.test Update test description 2020-06-17 09:24:25 +02:00
update-without-lock.test Add tests for installer with lock: false 2019-10-20 10:51:59 +02:00
updating-dev-from-lock-removes-old-deps.test Fix tests to use default-branch prop 2020-06-19 16:06:38 +02:00
updating-dev-updates-url-and-reference.test Change update to upgrade for package update operations which are upgrades, refs #8594 2020-02-11 13:43:38 +01:00