[oe,meta-oe,1/4] meta-oe: fixup LAYERDEPENDS to include meta-python

Message ID 20190222172949.3661-2-nicolas.dechesne@linaro.org
State New
Headers show
Series
  • A few fixes when trying to run yocto-check-layer
Related show

Commit Message

Nicolas Dechesne Feb. 22, 2019, 5:29 p.m.
meta-oe depends on meta-python, for mongodb recipe, since
5cf9a144ad16 (mongodb: Upgrade to 4.0.1 release)

Trying to run the yocto-check-layer script fails with:

ERROR: Nothing PROVIDES 'python-cheetah-native' (but /work/yocto/meta-openembedded/meta-oe/recipes-dbs/mongodb/mongodb_git.bb
DEPENDS on or otherwise requires it). Close matches:
  python3-git-native
  python-nose-native
  python-native
ERROR: Required build target 'meta-world-pkgdata' has no buildable
providers.
Missing or unbuildable dependency chain was: ['meta-world-pkgdata',
'mongodb', 'python-cheetah-native']

Signed-off-by: Nicolas Dechesne <nicolas.dechesne@linaro.org>

---
 meta-oe/conf/layer.conf | 1 +
 1 file changed, 1 insertion(+)

-- 
2.20.1

-- 
_______________________________________________
Openembedded-devel mailing list
Openembedded-devel@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-devel

Comments

Khem Raj Feb. 22, 2019, 6:18 p.m. | #1
On Fri, Feb 22, 2019 at 9:30 AM Nicolas Dechesne
<nicolas.dechesne@linaro.org> wrote:
>

> meta-oe depends on meta-python, for mongodb recipe, since

> 5cf9a144ad16 (mongodb: Upgrade to 4.0.1 release)

>


The dependency was always there, but I wonder if there is a better
place for mongodb than meta-oe

> Trying to run the yocto-check-layer script fails with:

>

> ERROR: Nothing PROVIDES 'python-cheetah-native' (but /work/yocto/meta-openembedded/meta-oe/recipes-dbs/mongodb/mongodb_git.bb

> DEPENDS on or otherwise requires it). Close matches:

>   python3-git-native

>   python-nose-native

>   python-native

> ERROR: Required build target 'meta-world-pkgdata' has no buildable

> providers.

> Missing or unbuildable dependency chain was: ['meta-world-pkgdata',

> 'mongodb', 'python-cheetah-native']

>

> Signed-off-by: Nicolas Dechesne <nicolas.dechesne@linaro.org>

> ---

>  meta-oe/conf/layer.conf | 1 +

>  1 file changed, 1 insertion(+)

>

> diff --git a/meta-oe/conf/layer.conf b/meta-oe/conf/layer.conf

> index 23c10ce339..8cedcf0d0b 100644

> --- a/meta-oe/conf/layer.conf

> +++ b/meta-oe/conf/layer.conf

> @@ -28,6 +28,7 @@ BBFILE_PRIORITY_openembedded-layer = "6"

>  LAYERVERSION_openembedded-layer = "1"

>

>  LAYERDEPENDS_openembedded-layer = "core"

> +LAYERDEPENDS_openembedded-layer = "meta-python"

>

>  LAYERSERIES_COMPAT_openembedded-layer = "thud"

>

> --

> 2.20.1

>

> --

> _______________________________________________

> Openembedded-devel mailing list

> Openembedded-devel@lists.openembedded.org

> http://lists.openembedded.org/mailman/listinfo/openembedded-devel

-- 
_______________________________________________
Openembedded-devel mailing list
Openembedded-devel@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-devel
Peter Kjellerstedt Feb. 26, 2019, 5:39 p.m. | #2
> -----Original Message-----

> From: openembedded-devel-bounces@lists.openembedded.org <openembedded-

> devel-bounces@lists.openembedded.org> On Behalf Of Khem Raj

> Sent: den 22 februari 2019 19:19

> To: Nicolas Dechesne <nicolas.dechesne@linaro.org>

> Cc: openembeded-devel <openembedded-devel@lists.openembedded.org>

> Subject: Re: [oe] [meta-oe][PATCH 1/4] meta-oe: fixup LAYERDEPENDS to

> include meta-python

> 

> On Fri, Feb 22, 2019 at 9:30 AM Nicolas Dechesne

> <nicolas.dechesne@linaro.org> wrote:

> >

> > meta-oe depends on meta-python, for mongodb recipe, since

> > 5cf9a144ad16 (mongodb: Upgrade to 4.0.1 release)

> >

> 

> The dependency was always there, but I wonder if there is a better

> place for mongodb than meta-oe


Can we please revert this? Making meta-oe depend on meta-python 
is not the right thing to do. Either move mongodb to another layer 
that already depends on meta-python or where it is fine to do so, 
or move python-cheetah to meta-oe. The latter seems like the easier 
choice.

//Peter

-- 
_______________________________________________
Openembedded-devel mailing list
Openembedded-devel@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-devel
Khem Raj Feb. 26, 2019, 6:14 p.m. | #3
On Tue, Feb 26, 2019 at 9:39 AM Peter Kjellerstedt
<peter.kjellerstedt@axis.com> wrote:
>

> > -----Original Message-----

> > From: openembedded-devel-bounces@lists.openembedded.org <openembedded-

> > devel-bounces@lists.openembedded.org> On Behalf Of Khem Raj

> > Sent: den 22 februari 2019 19:19

> > To: Nicolas Dechesne <nicolas.dechesne@linaro.org>

> > Cc: openembeded-devel <openembedded-devel@lists.openembedded.org>

> > Subject: Re: [oe] [meta-oe][PATCH 1/4] meta-oe: fixup LAYERDEPENDS to

> > include meta-python

> >

> > On Fri, Feb 22, 2019 at 9:30 AM Nicolas Dechesne

> > <nicolas.dechesne@linaro.org> wrote:

> > >

> > > meta-oe depends on meta-python, for mongodb recipe, since

> > > 5cf9a144ad16 (mongodb: Upgrade to 4.0.1 release)

> > >

> >

> > The dependency was always there, but I wonder if there is a better

> > place for mongodb than meta-oe

>

> Can we please revert this? Making meta-oe depend on meta-python

> is not the right thing to do. Either move mongodb to another layer

> that already depends on meta-python or where it is fine to do so,

> or move python-cheetah to meta-oe. The latter seems like the easier

> choice.


I am fine with dropping mongodb from meta-oe and revert this patch
and the problem I see is that now meta-oe depends on meta-python
and meta-python depends on meta-oe, which is not good. Although
having meta-python as a dependency for meta-oe is fine or vice-versa
but no loops.

>

> //Peter

>

-- 
_______________________________________________
Openembedded-devel mailing list
Openembedded-devel@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-devel
Khem Raj Feb. 28, 2019, 5:35 p.m. | #4
On Tue, Feb 26, 2019 at 10:14 AM Khem Raj <raj.khem@gmail.com> wrote:
>

> On Tue, Feb 26, 2019 at 9:39 AM Peter Kjellerstedt

> <peter.kjellerstedt@axis.com> wrote:

> >

> > > -----Original Message-----

> > > From: openembedded-devel-bounces@lists.openembedded.org <openembedded-

> > > devel-bounces@lists.openembedded.org> On Behalf Of Khem Raj

> > > Sent: den 22 februari 2019 19:19

> > > To: Nicolas Dechesne <nicolas.dechesne@linaro.org>

> > > Cc: openembeded-devel <openembedded-devel@lists.openembedded.org>

> > > Subject: Re: [oe] [meta-oe][PATCH 1/4] meta-oe: fixup LAYERDEPENDS to

> > > include meta-python

> > >

> > > On Fri, Feb 22, 2019 at 9:30 AM Nicolas Dechesne

> > > <nicolas.dechesne@linaro.org> wrote:

> > > >

> > > > meta-oe depends on meta-python, for mongodb recipe, since

> > > > 5cf9a144ad16 (mongodb: Upgrade to 4.0.1 release)

> > > >

> > >

> > > The dependency was always there, but I wonder if there is a better

> > > place for mongodb than meta-oe

> >

> > Can we please revert this? Making meta-oe depend on meta-python

> > is not the right thing to do. Either move mongodb to another layer

> > that already depends on meta-python or where it is fine to do so,

> > or move python-cheetah to meta-oe. The latter seems like the easier

> > choice.

>

> I am fine with dropping mongodb from meta-oe and revert this patch

> and the problem I see is that now meta-oe depends on meta-python

> and meta-python depends on meta-oe, which is not good. Although

> having meta-python as a dependency for meta-oe is fine or vice-versa

> but no loops.

>


I think we have to revert it for now. Its breaking bitbake add-layers
due to circular dependency.

> >

> > //Peter

> >

-- 
_______________________________________________
Openembedded-devel mailing list
Openembedded-devel@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-devel
Martin Jansa Feb. 28, 2019, 5:59 p.m. | #5
Yes, please revert.

Having circular dependency between meta-oe and meta-python is worse than:

cp -ra meta-python/* meta-oe/ && rmdir meta-python

that's why was such patch rejected few times already, e.g. in
https://www.mail-archive.com/openembedded-devel@lists.openembedded.org/msg61053.html

before it was protobuf, now mongodb

Is it just python-typing and python-cheetah meta-oe (mongodb) needs from
meta-python?

Why not move these 2 to meta-oe/recipes-devtools/python/ to make
yocto-check-layer script happy for next 3 months before someone sends
another patch like this.

Or we should gave up and copy all layers to oe-core repository and call it
oe-classic-ng :).

BTW: Yes I understand that the issue this patch was trying to fix was valid
and yocto-check-layer is useful in some cases (e.g. this issue isn't seen
by many people because almost everybody needs something from meta-python as
well, so it's almost always included and inter-layer dependency like this
can easily slip-in unnoticed. But if we start making dependencies between
layers willy-nilly, then we will just end-up with one huge pile of recipes
disadvantageously separated in multiple layers/repositories, but without
any separation.

Regards,


On Thu, Feb 28, 2019 at 6:35 PM Khem Raj <raj.khem@gmail.com> wrote:

> On Tue, Feb 26, 2019 at 10:14 AM Khem Raj <raj.khem@gmail.com> wrote:

> >

> > On Tue, Feb 26, 2019 at 9:39 AM Peter Kjellerstedt

> > <peter.kjellerstedt@axis.com> wrote:

> > >

> > > > -----Original Message-----

> > > > From: openembedded-devel-bounces@lists.openembedded.org

> <openembedded-

> > > > devel-bounces@lists.openembedded.org> On Behalf Of Khem Raj

> > > > Sent: den 22 februari 2019 19:19

> > > > To: Nicolas Dechesne <nicolas.dechesne@linaro.org>

> > > > Cc: openembeded-devel <openembedded-devel@lists.openembedded.org>

> > > > Subject: Re: [oe] [meta-oe][PATCH 1/4] meta-oe: fixup LAYERDEPENDS to

> > > > include meta-python

> > > >

> > > > On Fri, Feb 22, 2019 at 9:30 AM Nicolas Dechesne

> > > > <nicolas.dechesne@linaro.org> wrote:

> > > > >

> > > > > meta-oe depends on meta-python, for mongodb recipe, since

> > > > > 5cf9a144ad16 (mongodb: Upgrade to 4.0.1 release)

> > > > >

> > > >

> > > > The dependency was always there, but I wonder if there is a better

> > > > place for mongodb than meta-oe

> > >

> > > Can we please revert this? Making meta-oe depend on meta-python

> > > is not the right thing to do. Either move mongodb to another layer

> > > that already depends on meta-python or where it is fine to do so,

> > > or move python-cheetah to meta-oe. The latter seems like the easier

> > > choice.

> >

> > I am fine with dropping mongodb from meta-oe and revert this patch

> > and the problem I see is that now meta-oe depends on meta-python

> > and meta-python depends on meta-oe, which is not good. Although

> > having meta-python as a dependency for meta-oe is fine or vice-versa

> > but no loops.

> >

>

> I think we have to revert it for now. Its breaking bitbake add-layers

> due to circular dependency.

>

> > >

> > > //Peter

> > >

> --

> _______________________________________________

> Openembedded-devel mailing list

> Openembedded-devel@lists.openembedded.org

> http://lists.openembedded.org/mailman/listinfo/openembedded-devel

>

-- 
_______________________________________________
Openembedded-devel mailing list
Openembedded-devel@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-devel

Patch

diff --git a/meta-oe/conf/layer.conf b/meta-oe/conf/layer.conf
index 23c10ce339..8cedcf0d0b 100644
--- a/meta-oe/conf/layer.conf
+++ b/meta-oe/conf/layer.conf
@@ -28,6 +28,7 @@  BBFILE_PRIORITY_openembedded-layer = "6"
 LAYERVERSION_openembedded-layer = "1"
 
 LAYERDEPENDS_openembedded-layer = "core"
+LAYERDEPENDS_openembedded-layer = "meta-python"
 
 LAYERSERIES_COMPAT_openembedded-layer = "thud"