Repoquery silently ignores unsatisfied dependencies

Satoshi Yagi <[email protected]> Fri, 3 Jul 2015 19:40:06 -0700
Newsgroups gmane.linux.rpm.yum
Message-ID <[email protected]>
--===============3905382993755726602==
Content-Type: multipart/alternative;
	boundary="_d6f8d3b4-1978-4c75-9799-13f23af88af6_"

--_d6f8d3b4-1978-4c75-9799-13f23af88af6_
Content-Type: text/plain; charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable

I hope this is the right forum for repoquery=2C as I believe it is part of =
yum-utils package.

I have an RPM in my repo that requires a non-existent package (i.e. broken =
dependency chain).

$ repoquery --requires mypackage
nonexistent_package > 3.0
this_package_exists > 1.0

Yum correctly identifies this as a problem upon installation:

$ sudo yum -y install mypackage
# output omitted for brevity
--> Missing Dependency: nonexistent_package > 3.0 is needed by package mypa=
ckage-0.0.1-2.el5.x86_64 (reponame)
Error: Missing Dependency: nonexistent_package > 3.0 is needed by package m=
ypackage-0.0.1-2.el5.x86_64 (reponame)

Yum deplist works as far as detecting the issue:

$ yum deplist mypackage
Finding dependencies:
package: mypackage.x86_64 0.0.1-2.el5
dependency: nonexistent_package > 3.0
  Unsatisfied dependency
dependency: this_package_exists > 1.0
  provider: this_package_exists.x86_64 1.4.6-480.el5

However=2C when I try resolving on repoquery=2C it doesn't say anything abo=
ut the nonexistent_package=2C and exit code is 0.

$ repoquery --requires --resolve mypackage
this_package_exists-0:1.1.0-394.el5.x86_64
$ echo $?
0

Searching for the provider of nonexistent_package comes up empty=2C obvious=
ly:

$ repoquery --whatprovides nonexistent_package
$=20

Is there a way to have repoquery report on resolution failures? The current=
 behavior is problematic because there is no way to tell when resolution fa=
iled=3B repoquery silently ignores capabilities that didn't resolve and onl=
y return what it could resolve=2C which means the result isn't trustworthy.

Thanks=2C

Satoshi
 		 	   		  =

--_d6f8d3b4-1978-4c75-9799-13f23af88af6_
Content-Type: text/html; charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable

<html>
<head>
<style><!--
.hmmessage P
{
margin:0px=3B
padding:0px
}
body.hmmessage
{
font-size: 12pt=3B
font-family:Calibri
}
--></style></head>
<body class=3D'hmmessage'><div dir=3D'ltr'>I hope this is the right forum f=
or repoquery=2C as I believe it is part of yum-utils package.<br><br>I have=
 an RPM in my repo that requires a non-existent package (i.e. broken depend=
ency chain).<br><br>$ repoquery --requires mypackage<br>nonexistent_package=
 &gt=3B 3.0<br>this_package_exists &gt=3B 1.0<br><br>Yum correctly identifi=
es this as a problem upon installation:<br><br>$ sudo yum -y install mypack=
age<br># output omitted for brevity<br>--&gt=3B Missing Dependency: nonexis=
tent_package &gt=3B 3.0 is needed by package mypackage-0.0.1-2.el5.x86_64 (=
reponame)<br>Error: Missing Dependency: nonexistent_package &gt=3B 3.0 is n=
eeded by package mypackage-0.0.1-2.el5.x86_64 (reponame)<br><br>Yum deplist=
 works as far as detecting the issue:<br><br>$ yum deplist mypackage<br>Fin=
ding dependencies:<br>package: mypackage.x86_64 0.0.1-2.el5<br>dependency: =
nonexistent_package &gt=3B 3.0<br>&nbsp=3B Unsatisfied dependency<br>depend=
ency: this_package_exists &gt=3B 1.0<br>&nbsp=3B provider: this_package_exi=
sts.x86_64 1.4.6-480.el5<br><br>However=2C when I try resolving on repoquer=
y=2C it doesn't say anything about the nonexistent_package=2C and exit code=
 is 0.<br><br>$ repoquery --requires --resolve mypackage<br>this_package_ex=
ists-0:1.1.0-394.el5.x86_64<br>$ echo $?<br>0<br><br>Searching for the prov=
ider of nonexistent_package comes up empty=2C obviously:<br><br>$ repoquery=
 --whatprovides nonexistent_package<br>$ <br><br>Is there a way to have rep=
oquery report on resolution failures? The current behavior is problematic b=
ecause there is no way to tell when resolution failed=3B repoquery silently=
 ignores capabilities that didn't resolve and only return what it could res=
olve=2C which means the result isn't trustworthy.<br><br>Thanks=2C<br><br>S=
atoshi<br> 		 	   		  </div></body>
</html>=

--_d6f8d3b4-1978-4c75-9799-13f23af88af6_--

--===============3905382993755726602==
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: inline

_______________________________________________
Yum mailing list
[email protected]
http://lists.baseurl.org/mailman/listinfo/yum

--===============3905382993755726602==--