From 9813107c3368684784706cf2b77bd056bea58e3c Mon Sep 17 00:00:00 2001 From: Dominik Fischer Date: Mon, 7 Dec 2015 21:37:09 +0100 Subject: test version range restrictions corner case The test introduced herein illustrates a behavior that may be unexpected to package writers. It creates a package "pkg3" that is configured to depend on a "dependency" which version is between 3 and 4, inclusive. Two other packages are already present, providing "dependency" in version 2 and 5, respectively. So, the situation looks roughly like this: pkg1 pkg3 pkg2 provides depends on provides | <------------> | version __________2____________3____________4____________5___________... This seems to be enough to satisfy pacman when installing "pkg3". From an iterative standpoint, this is completely logical: First, the requirement "dependency>=3" is checked. There is a package that satisfies this restriction, it is called "pkg2". Afterwards, "dependency<=4" is covered in the same way by "pkg1". Nonetheless, what a package writer intends when specifying depends=('dependency>=3' 'dependency<=4') is most probably that pacman should only allow this package to be installed when there indeed is a package present that provides a version of "dependency" that lies _between_ 3 and 5. Signed-off-by: Dominik Fischer Signed-off-by: Allan McRae --- test/pacman/tests/TESTS | 1 + 1 file changed, 1 insertion(+) (limited to 'test/pacman/tests/TESTS') diff --git a/test/pacman/tests/TESTS b/test/pacman/tests/TESTS index bee7c8ec..f35ec1a0 100644 --- a/test/pacman/tests/TESTS +++ b/test/pacman/tests/TESTS @@ -15,6 +15,7 @@ TESTS += test/pacman/tests/depconflict110.py TESTS += test/pacman/tests/depconflict111.py TESTS += test/pacman/tests/depconflict120.py TESTS += test/pacman/tests/dependency-cycle-fixed-by-upgrade.py +TESTS += test/pacman/tests/deprange001.py TESTS += test/pacman/tests/deptest001.py TESTS += test/pacman/tests/dummy001.py TESTS += test/pacman/tests/epoch001.py -- cgit v1.2.3-24-g4f1b