diff mbox series

classes-global/insane: Add check for "virtual/" in RPROVIDES and RDEPENDS

Message ID 20240114171903.10264-1-simone.p.weiss@posteo.com
State Accepted, archived
Commit f673d3d239799fb1ab50f4aa5d44187666aa0cd7
Headers show
Series classes-global/insane: Add check for "virtual/" in RPROVIDES and RDEPENDS | expand

Commit Message

Simone Weiß Jan. 14, 2024, 5:19 p.m. UTC
From: Simone Weiß <simone.p.weiss@posteo.com>

Fixes [YOCTO #14538]

Recipes shouldn't use "virtual/" in RPROVIDES and RDEPENDS. This was
addressed already in recipes in meta-oe and oe-core. Add a test for
this in insane.bbclass to ensure no regressions occur.

Signed-off-by: Simone Weiß <simone.p.weiss@posteo.com>
---
 meta/classes-global/insane.bbclass | 6 ++++++
 1 file changed, 6 insertions(+)

Comments

Alexandre Belloni Jan. 16, 2024, 11:29 p.m. UTC | #1
Hello,

This causes warnings for meta-aws:

https://autobuilder.yoctoproject.org/typhoon/#/builders/122/builds/3840/steps/12/logs/warnings

On 14/01/2024 17:19:03+0000, Simone Wei� wrote:
> From: Simone Wei� <simone.p.weiss@posteo.com>
> 
> Fixes [YOCTO #14538]
> 
> Recipes shouldn't use "virtual/" in RPROVIDES and RDEPENDS. This was
> addressed already in recipes in meta-oe and oe-core. Add a test for
> this in insane.bbclass to ensure no regressions occur.
> 
> Signed-off-by: Simone Wei� <simone.p.weiss@posteo.com>
> ---
>  meta/classes-global/insane.bbclass | 6 ++++++
>  1 file changed, 6 insertions(+)
> 
> diff --git a/meta/classes-global/insane.bbclass b/meta/classes-global/insane.bbclass
> index d625fd82f7..9e8e35e0f7 100644
> --- a/meta/classes-global/insane.bbclass
> +++ b/meta/classes-global/insane.bbclass
> @@ -1606,6 +1606,12 @@ python () {
>      if (d.getVar(d.expand('DEPENDS:${PN}'))):
>          oe.qa.handle_error("pkgvarcheck", "recipe uses DEPENDS:${PN}, should use DEPENDS", d)
>  
> +    # virtual/ is meaningless for those variables
> +    for k in ['RDEPENDS', 'RPROVIDES']:
> +        for var in bb.utils.explode_deps(d.getVar(k + ':' + pn) or ""):
> +            if var.startswith("virtual/"):
> +                bb.warn("%s is set to %s, the substring 'virtual/' holds no meaning in this context. It is suggested to use the 'virtual-' instead." % (k, var))
> +
>      issues = []
>      if (d.getVar('PACKAGES') or "").split():
>          for dep in (d.getVar('QADEPENDS') or "").split():
> -- 
> 2.39.2
> 

> 
> -=-=-=-=-=-=-=-=-=-=-=-
> Links: You receive all messages sent to this group.
> View/Reply Online (#193617): https://lists.openembedded.org/g/openembedded-core/message/193617
> Mute This Topic: https://lists.openembedded.org/mt/103722088/3617179
> Group Owner: openembedded-core+owner@lists.openembedded.org
> Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [alexandre.belloni@bootlin.com]
> -=-=-=-=-=-=-=-=-=-=-=-
>
Simone Weiß Jan. 17, 2024, 7:19 p.m. UTC | #2
Hi,
On Wed, 2024-01-17 at 00:29 +0100, Alexandre Belloni via
lists.openembedded.org wrote:
> Hello,
> 
> This causes warnings for meta-aws:
> 
> https://autobuilder.yoctoproject.org/typhoon/#/builders/122/builds/3840/steps/12/logs/warnings
> 
> On 14/01/2024 17:19:03+0000, Simone Weiß wrote:
> > From: Simone Weiß <simone.p.weiss@posteo.com>
> > 
> > Fixes [YOCTO #14538]
> > 
> > Recipes shouldn't use "virtual/" in RPROVIDES and RDEPENDS. This
> > was
> > addressed already in recipes in meta-oe and oe-core. Add a test for
> > this in insane.bbclass to ensure no regressions occur.
> > 
> > Signed-off-by: Simone Weiß <simone.p.weiss@posteo.com>
> > ---
> >  meta/classes-global/insane.bbclass | 6 ++++++
> >  1 file changed, 6 insertions(+)
> > 
> > diff --git a/meta/classes-global/insane.bbclass b/meta/classes-
> > global/insane.bbclass
> > index d625fd82f7..9e8e35e0f7 100644
> > --- a/meta/classes-global/insane.bbclass
> > +++ b/meta/classes-global/insane.bbclass
> > @@ -1606,6 +1606,12 @@ python () {
> >      if (d.getVar(d.expand('DEPENDS:${PN}'))):
> >          oe.qa.handle_error("pkgvarcheck", "recipe uses
> > DEPENDS:${PN}, should use DEPENDS", d)
> >  
> > +    # virtual/ is meaningless for those variables
> > +    for k in ['RDEPENDS', 'RPROVIDES']:
> > +        for var in bb.utils.explode_deps(d.getVar(k + ':' + pn) or
> > ""):
> > +            if var.startswith("virtual/"):
> > +                bb.warn("%s is set to %s, the substring 'virtual/'
> > holds no meaning in this context. It is suggested to use the
> > 'virtual-' instead." % (k, var))
> > +
> >      issues = []
> >      if (d.getVar('PACKAGES') or "").split():
> >          for dep in (d.getVar('QADEPENDS') or "").split():
> > -- 
> > 2.39.2
> > 
> 
> > 
> > 
> > 
> 
> 
> 
> -=-=-=-=-=-=-=-=-=-=-=-
> Links: You receive all messages sent to this group.
> View/Reply Online (#193879):
> https://lists.openembedded.org/g/openembedded-core/message/193879
> Mute This Topic: https://lists.openembedded.org/mt/103722088/8052774
> Group Owner: openembedded-core+owner@lists.openembedded.org
> Unsubscribe:
> https://lists.openembedded.org/g/openembedded-core/unsub [
> simone.p.weiss@posteo.com]
> -=-=-=-=-=-=-=-=-=-=-=-
> 
I see, the warning is correct and a fix should be applied to meta-
oe/recipes-core/opencl/ocl-icd_2.3.2.bb for this, I will send out a
patch for this as well. Afterwards this should be fixed implicitly.
Just one question: Which branch is tested in the autobuilder for meta-
aws/meta-op? Is it good enough if I just fix it on meta-oes main
branch?

- 
Simone
Alexandre Belloni Jan. 17, 2024, 9:05 p.m. UTC | #3
On 17/01/2024 19:19:28+0000, Simone Wei� wrote:
> I see, the warning is correct and a fix should be applied to meta-
> oe/recipes-core/opencl/ocl-icd_2.3.2.bb for this, I will send out a
> patch for this as well. Afterwards this should be fixed implicitly.
> Just one question: Which branch is tested in the autobuilder for meta-
> aws/meta-op? Is it good enough if I just fix it on meta-oes main
> branch?

Yes, this would be master for this patch.
diff mbox series

Patch

diff --git a/meta/classes-global/insane.bbclass b/meta/classes-global/insane.bbclass
index d625fd82f7..9e8e35e0f7 100644
--- a/meta/classes-global/insane.bbclass
+++ b/meta/classes-global/insane.bbclass
@@ -1606,6 +1606,12 @@  python () {
     if (d.getVar(d.expand('DEPENDS:${PN}'))):
         oe.qa.handle_error("pkgvarcheck", "recipe uses DEPENDS:${PN}, should use DEPENDS", d)
 
+    # virtual/ is meaningless for those variables
+    for k in ['RDEPENDS', 'RPROVIDES']:
+        for var in bb.utils.explode_deps(d.getVar(k + ':' + pn) or ""):
+            if var.startswith("virtual/"):
+                bb.warn("%s is set to %s, the substring 'virtual/' holds no meaning in this context. It is suggested to use the 'virtual-' instead." % (k, var))
+
     issues = []
     if (d.getVar('PACKAGES') or "").split():
         for dep in (d.getVar('QADEPENDS') or "").split():