aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorArthur Zamarin <arthurzam@gentoo.org>2024-01-13 11:16:10 +0200
committerArthur Zamarin <arthurzam@gentoo.org>2024-01-13 11:16:10 +0200
commitf2d4e371da2bfa834644973d4dd0bede50deafb4 (patch)
treeb01862d2cd0d1c25a6af0417080bf6b7b18bdcd2 /testdata
parentDeprecatedDep: fix mishandling of slotted deprecates (diff)
downloadpkgcheck-f2d4e371da2bfa834644973d4dd0bede50deafb4.tar.gz
pkgcheck-f2d4e371da2bfa834644973d4dd0bede50deafb4.tar.bz2
pkgcheck-f2d4e371da2bfa834644973d4dd0bede50deafb4.zip
UnstatedIuse: check for unstated IUSE in "?" dependencies
Check for cases where a dependency uses conditional use dependency with unknown USE flag. PMS states: It is an error for an ebuild to use a conditional use dependency when that ebuild does not have the flag in IUSE_EFFECTIVE. Bug: https://bugs.gentoo.org/921841 Requested-by: Sam James <sam@gentoo.org> Signed-off-by: Arthur Zamarin <arthurzam@gentoo.org>
Diffstat (limited to 'testdata')
-rw-r--r--testdata/data/repos/standalone/DependencyCheck/MissingUseDepDefault/fix.patch4
-rw-r--r--testdata/data/repos/standalone/DependencyCheck/UnstatedIuse/expected-verbose.json1
-rw-r--r--testdata/data/repos/standalone/DependencyCheck/UnstatedIuse/expected.json1
-rw-r--r--testdata/repos/standalone/DependencyCheck/MissingUseDepDefault/MissingUseDepDefault-0.ebuild1
-rw-r--r--testdata/repos/standalone/DependencyCheck/MissingUseDepDefault/metadata.xml7
-rw-r--r--testdata/repos/standalone/DependencyCheck/UnstatedIuse/UnstatedIuse-0.ebuild3
6 files changed, 15 insertions, 2 deletions
diff --git a/testdata/data/repos/standalone/DependencyCheck/MissingUseDepDefault/fix.patch b/testdata/data/repos/standalone/DependencyCheck/MissingUseDepDefault/fix.patch
index c86bbe16..c1cd3750 100644
--- a/testdata/data/repos/standalone/DependencyCheck/MissingUseDepDefault/fix.patch
+++ b/testdata/data/repos/standalone/DependencyCheck/MissingUseDepDefault/fix.patch
@@ -1,10 +1,10 @@
diff -Naur standalone/DependencyCheck/MissingUseDepDefault/MissingUseDepDefault-0.ebuild fixed/DependencyCheck/MissingUseDepDefault/MissingUseDepDefault-0.ebuild
--- standalone/DependencyCheck/MissingUseDepDefault/MissingUseDepDefault-0.ebuild 2019-12-02 21:50:34.617257001 -0700
+++ fixed/DependencyCheck/MissingUseDepDefault/MissingUseDepDefault-0.ebuild 2019-12-02 21:52:56.547749364 -0700
-@@ -3,7 +3,7 @@
- HOMEPAGE="https://github.com/pkgcore/pkgcheck"
+@@ -4,7 +4,7 @@
SLOT="0"
LICENSE="BSD"
+ IUSE="foo"
-DEPEND="stub/stub1[foo]"
-RDEPEND="|| ( stub/stub2[used] stub/stub2[-foo] )"
-BDEPEND="stub/stub3[foo?]"
diff --git a/testdata/data/repos/standalone/DependencyCheck/UnstatedIuse/expected-verbose.json b/testdata/data/repos/standalone/DependencyCheck/UnstatedIuse/expected-verbose.json
index 799fec6f..12e2f462 100644
--- a/testdata/data/repos/standalone/DependencyCheck/UnstatedIuse/expected-verbose.json
+++ b/testdata/data/repos/standalone/DependencyCheck/UnstatedIuse/expected-verbose.json
@@ -1,2 +1,3 @@
+{"__class__": "UnstatedIuse", "category": "DependencyCheck", "package": "UnstatedIuse", "version": "0", "attr": "depend", "flags": ["used"], "profile": null, "num_profiles": null}
{"__class__": "UnstatedIuse", "category": "DependencyCheck", "package": "UnstatedIuse", "version": "0", "attr": "rdepend", "flags": ["used"], "profile": "default/amd64", "num_profiles": null}
{"__class__": "UnstatedIuse", "category": "DependencyCheck", "package": "UnstatedIuse", "version": "0", "attr": "rdepend", "flags": ["used"], "profile": "default/x86", "num_profiles": null}
diff --git a/testdata/data/repos/standalone/DependencyCheck/UnstatedIuse/expected.json b/testdata/data/repos/standalone/DependencyCheck/UnstatedIuse/expected.json
index 512b0afa..0950d1f3 100644
--- a/testdata/data/repos/standalone/DependencyCheck/UnstatedIuse/expected.json
+++ b/testdata/data/repos/standalone/DependencyCheck/UnstatedIuse/expected.json
@@ -1 +1,2 @@
+{"__class__": "UnstatedIuse", "category": "DependencyCheck", "package": "UnstatedIuse", "version": "0", "attr": "depend", "flags": ["used"], "profile": null, "num_profiles": null}
{"__class__": "UnstatedIuse", "category": "DependencyCheck", "package": "UnstatedIuse", "version": "0", "attr": "rdepend", "flags": ["used"], "profile": "default/amd64", "num_profiles": 2}
diff --git a/testdata/repos/standalone/DependencyCheck/MissingUseDepDefault/MissingUseDepDefault-0.ebuild b/testdata/repos/standalone/DependencyCheck/MissingUseDepDefault/MissingUseDepDefault-0.ebuild
index 53992988..f03b475b 100644
--- a/testdata/repos/standalone/DependencyCheck/MissingUseDepDefault/MissingUseDepDefault-0.ebuild
+++ b/testdata/repos/standalone/DependencyCheck/MissingUseDepDefault/MissingUseDepDefault-0.ebuild
@@ -4,6 +4,7 @@ DESCRIPTION="Ebuild missing USE dependency default"
HOMEPAGE="https://github.com/pkgcore/pkgcheck"
SLOT="0"
LICENSE="BSD"
+IUSE="foo"
DEPEND="stub/stub1[foo]"
RDEPEND="|| ( stub/stub2[used] stub/stub2[-foo] )"
BDEPEND="stub/stub3[foo?]"
diff --git a/testdata/repos/standalone/DependencyCheck/MissingUseDepDefault/metadata.xml b/testdata/repos/standalone/DependencyCheck/MissingUseDepDefault/metadata.xml
new file mode 100644
index 00000000..bd802a63
--- /dev/null
+++ b/testdata/repos/standalone/DependencyCheck/MissingUseDepDefault/metadata.xml
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <use>
+ <flag name="foo">stub</flag>
+ </use>
+</pkgmetadata>
diff --git a/testdata/repos/standalone/DependencyCheck/UnstatedIuse/UnstatedIuse-0.ebuild b/testdata/repos/standalone/DependencyCheck/UnstatedIuse/UnstatedIuse-0.ebuild
index b7438aaa..1179764b 100644
--- a/testdata/repos/standalone/DependencyCheck/UnstatedIuse/UnstatedIuse-0.ebuild
+++ b/testdata/repos/standalone/DependencyCheck/UnstatedIuse/UnstatedIuse-0.ebuild
@@ -1,5 +1,8 @@
+EAPI=7
+
DESCRIPTION="Ebuild with unstated IUSE in depsets"
HOMEPAGE="https://github.com/pkgcore/pkgcheck"
SLOT="0"
LICENSE="BSD"
RDEPEND="used? ( stub/stub1 )"
+DEPEND="stub/stub4[used?]"