Signed-off-by: Igor Raits <ignatenkobrain@fedoraproject.org>epel9
parent
d936b970ca
commit
b042dacc38
@ -0,0 +1,110 @@
|
|||||||
|
From 617d4b9140b35f4f74def98b87a69a84943a33de Mon Sep 17 00:00:00 2001
|
||||||
|
From: Igor Raits <igor.raits@gmail.com>
|
||||||
|
Date: Mon, 28 Dec 2020 12:44:52 +0100
|
||||||
|
Subject: [PATCH] Always require upper-bound dependency with ~ sign
|
||||||
|
|
||||||
|
Proper fix is quite complex and given we do not package pre-release
|
||||||
|
versions very often (and esp. not multiple versions of them), this is
|
||||||
|
good enough (not nice though).
|
||||||
|
|
||||||
|
References: https://pagure.io/fedora-rust/rust2rpm/issue/70
|
||||||
|
Signed-off-by: Igor Raits <igor.raits@gmail.com>
|
||||||
|
---
|
||||||
|
rust2rpm/metadata.py | 2 +-
|
||||||
|
test.py | 40 ++++++++++++++++++++--------------------
|
||||||
|
2 files changed, 21 insertions(+), 21 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/rust2rpm/metadata.py b/rust2rpm/metadata.py
|
||||||
|
index b29e7b5..4636cc5 100644
|
||||||
|
--- a/rust2rpm/metadata.py
|
||||||
|
+++ b/rust2rpm/metadata.py
|
||||||
|
@@ -197,7 +197,7 @@ class Dependency:
|
||||||
|
if not reqs:
|
||||||
|
return cap
|
||||||
|
deps = ' with '.join(
|
||||||
|
- f'{cap} {op} {CargoSemVer.unparse_version(version, sep="~")}'
|
||||||
|
+ f'{cap} {op} {CargoSemVer.unparse_version(version, sep="~")}{"~" if op == CargoSemVer.KIND_LT else ""}'
|
||||||
|
for op, version in reqs)
|
||||||
|
if len(reqs) > 1:
|
||||||
|
return f"({deps})"
|
||||||
|
diff --git a/test.py b/test.py
|
||||||
|
index ccda3b5..7623be0 100644
|
||||||
|
--- a/test.py
|
||||||
|
+++ b/test.py
|
||||||
|
@@ -6,53 +6,53 @@ from rust2rpm.metadata import Version
|
||||||
|
|
||||||
|
@pytest.mark.parametrize("req, rpmdep", [
|
||||||
|
("^1.2.3",
|
||||||
|
- "(crate(test) >= 1.2.3 with crate(test) < 2.0.0)"),
|
||||||
|
+ "(crate(test) >= 1.2.3 with crate(test) < 2.0.0~)"),
|
||||||
|
("^1.2",
|
||||||
|
- "(crate(test) >= 1.2.0 with crate(test) < 2.0.0)"),
|
||||||
|
+ "(crate(test) >= 1.2.0 with crate(test) < 2.0.0~)"),
|
||||||
|
("^1",
|
||||||
|
- "(crate(test) >= 1.0.0 with crate(test) < 2.0.0)"),
|
||||||
|
+ "(crate(test) >= 1.0.0 with crate(test) < 2.0.0~)"),
|
||||||
|
("^0.2.3",
|
||||||
|
- "(crate(test) >= 0.2.3 with crate(test) < 0.3.0)"),
|
||||||
|
+ "(crate(test) >= 0.2.3 with crate(test) < 0.3.0~)"),
|
||||||
|
("^0.2",
|
||||||
|
- "(crate(test) >= 0.2.0 with crate(test) < 0.3.0)"),
|
||||||
|
+ "(crate(test) >= 0.2.0 with crate(test) < 0.3.0~)"),
|
||||||
|
("^0.0.3",
|
||||||
|
- "(crate(test) >= 0.0.3 with crate(test) < 0.0.4)"),
|
||||||
|
+ "(crate(test) >= 0.0.3 with crate(test) < 0.0.4~)"),
|
||||||
|
("^0.0",
|
||||||
|
- "(crate(test) >= 0.0.0 with crate(test) < 0.1.0)"),
|
||||||
|
+ "(crate(test) >= 0.0.0 with crate(test) < 0.1.0~)"),
|
||||||
|
("^0",
|
||||||
|
- "(crate(test) >= 0.0.0 with crate(test) < 1.0.0)"),
|
||||||
|
+ "(crate(test) >= 0.0.0 with crate(test) < 1.0.0~)"),
|
||||||
|
("~1.2.3",
|
||||||
|
- "(crate(test) >= 1.2.3 with crate(test) < 1.3.0)"),
|
||||||
|
+ "(crate(test) >= 1.2.3 with crate(test) < 1.3.0~)"),
|
||||||
|
("~1.2",
|
||||||
|
- "(crate(test) >= 1.2.0 with crate(test) < 1.3.0)"),
|
||||||
|
+ "(crate(test) >= 1.2.0 with crate(test) < 1.3.0~)"),
|
||||||
|
("~1",
|
||||||
|
- "(crate(test) >= 1.0.0 with crate(test) < 2.0.0)"),
|
||||||
|
+ "(crate(test) >= 1.0.0 with crate(test) < 2.0.0~)"),
|
||||||
|
("*",
|
||||||
|
"crate(test) >= 0.0.0"),
|
||||||
|
("1.*",
|
||||||
|
- "(crate(test) >= 1.0.0 with crate(test) < 2.0.0)"),
|
||||||
|
+ "(crate(test) >= 1.0.0 with crate(test) < 2.0.0~)"),
|
||||||
|
("1.2.*",
|
||||||
|
- "(crate(test) >= 1.2.0 with crate(test) < 1.3.0)"),
|
||||||
|
+ "(crate(test) >= 1.2.0 with crate(test) < 1.3.0~)"),
|
||||||
|
("1.*.*",
|
||||||
|
- "(crate(test) >= 1.0.0 with crate(test) < 2.0.0)"),
|
||||||
|
+ "(crate(test) >= 1.0.0 with crate(test) < 2.0.0~)"),
|
||||||
|
(">= 1.2.0",
|
||||||
|
"crate(test) >= 1.2.0"),
|
||||||
|
("> 1",
|
||||||
|
"crate(test) > 1.0.0"),
|
||||||
|
("< 2",
|
||||||
|
- "crate(test) < 2.0.0"),
|
||||||
|
+ "crate(test) < 2.0.0~"),
|
||||||
|
("= 1.2.3",
|
||||||
|
"crate(test) = 1.2.3"),
|
||||||
|
(">= 1.2, < 1.5",
|
||||||
|
- "(crate(test) >= 1.2.0 with crate(test) < 1.5.0)"),
|
||||||
|
+ "(crate(test) >= 1.2.0 with crate(test) < 1.5.0~)"),
|
||||||
|
("^1.0.0-alpha.6",
|
||||||
|
- "(crate(test) >= 1.0.0~alpha.6 with crate(test) < 2.0.0)"),
|
||||||
|
+ "(crate(test) >= 1.0.0~alpha.6 with crate(test) < 2.0.0~)"),
|
||||||
|
("^0.1.0-alpha.6",
|
||||||
|
- "(crate(test) >= 0.1.0~alpha.6 with crate(test) < 0.2.0)"),
|
||||||
|
+ "(crate(test) >= 0.1.0~alpha.6 with crate(test) < 0.2.0~)"),
|
||||||
|
("^0.0.1-alpha.6",
|
||||||
|
- "(crate(test) >= 0.0.1~alpha.6 with crate(test) < 0.0.2)"),
|
||||||
|
+ "(crate(test) >= 0.0.1~alpha.6 with crate(test) < 0.0.2~)"),
|
||||||
|
("^0.0.0-alpha.6",
|
||||||
|
- "(crate(test) >= 0.0.0~alpha.6 with crate(test) < 0.0.1)"),
|
||||||
|
+ "(crate(test) >= 0.0.0~alpha.6 with crate(test) < 0.0.1~)"),
|
||||||
|
])
|
||||||
|
def test_dependency(req, rpmdep):
|
||||||
|
dep = rust2rpm.Dependency("test", req)
|
||||||
|
--
|
||||||
|
2.30.0.rc2
|
||||||
|
|
Loading…
Reference in new issue