Commit 2df5704e by Sébastien Eustace

Fix legacy repositories packages being continuously updated

parent bc9acdbc
......@@ -92,7 +92,7 @@ class Solver:
elif package.version != pkg.version:
# Checking version
operations.append(Update(pkg, package))
elif package.source_type != pkg.source_type:
elif pkg.source_type and package.source_type != pkg.source_type:
operations.append(Update(pkg, package))
else:
operations.append(Install(package).skip("Already installed"))
......
......@@ -2039,3 +2039,22 @@ def test_solver_cannot_choose_another_version_for_url_dependencies(
# via the git dependency
with pytest.raises(SolverProblemError):
solver.solve()
def test_solver_should_not_update_same_version_packages_if_installed_has_no_source_type(
solver, repo, package, installed
):
package.add_dependency("foo", "1.0.0")
foo = get_package("foo", "1.0.0")
foo.source_type = "legacy"
foo.source_reference = "custom"
foo.source_url = "https://foo.bar"
repo.add_package(foo)
installed.add_package(get_package("foo", "1.0.0"))
ops = solver.solve()
check_solver_result(
ops, [{"job": "install", "package": foo, "skipped": True}],
)
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment