Openembedded Core Discussions
 help / color / mirror / Atom feed
From: Richard Purdie <richard.purdie@linuxfoundation.org>
To: Stefan Herbrechtsmeier
	<stefan.herbrechtsmeier-oss@weidmueller.com>,
	 openembedded-core@lists.openembedded.org
Cc: Stefan Herbrechtsmeier <stefan.herbrechtsmeier@weidmueller.com>
Subject: Re: [OE-core] [RFC PATCH 05/30] lib: oe: add vendor module
Date: Wed, 12 Feb 2025 09:38:53 +0000	[thread overview]
Message-ID: <ea2233e4e8854e59bf2221ead2cb9bab33a6a969.camel@linuxfoundation.org> (raw)
In-Reply-To: <db370fd9-a390-46c2-bf5b-250110bb0c96@weidmueller.com>

On Wed, 2025-02-12 at 10:27 +0100, Stefan Herbrechtsmeier wrote:
> Am 11.02.2025 um 22:31 schrieb Richard Purdie:
> > On Tue, 2025-02-11 at 16:00 +0100, Stefan Herbrechtsmeier via lists.openembedded.org wrote:
> > > From: Stefan Herbrechtsmeier <stefan.herbrechtsmeier@weidmueller.com>
> > > 
> > > Add a vendor package as base for package manager specific
> > > implementations to resolve dependencies and populate vendor directories.
> > > Add common dump and load function for SRC_URI files.
> > > 
> > > Signed-off-by: Stefan Herbrechtsmeier <stefan.herbrechtsmeier@weidmueller.com>
> > > ---
> > > 
> > >  meta/lib/oe/vendor/__init__.py | 28 ++++++++++++++++++++++++++++
> > >  1 file changed, 28 insertions(+)
> > >  create mode 100644 meta/lib/oe/vendor/__init__.py
> > >  
> > > 
> >  
> > 
> > Initially I was going to ask there to be a "fetch" or "download" in the
> > namespacing. That then made me wonder if in the interests of clarity
> > and namepacing, these vendor classes should go into
> > lib/bb/fetch2/vendor in bitbake?
> > 
> >   
> The package isn't limited to fetch / download. In some cases it
> populate the vendor directory and could be used for the license
> extraction in future.

"populate" and "extraction" sound related to the fetcher.

>  I think it is a bad idea to move code into bitbake which isn't used
> by bitbake. It will complicate future development without any
> benefit.

You could argue that about the fetch module. It does encourage
strong/stable APIs to the modules, which has been of benefit. I can see
the arguments either way though.

> > I appreciate the class in OE will use them and separation into bitbake
> > can be a bit awkward but it would mean we don't confuse this with any
> > other kind of vendoring
> 
> What do you mean by "any other kind of vendoring"?

When someone customises their BSP, the original might be from "the
vendor" so perhaps this code handles that? OSV as in software vendor is
going to get confused with this. I'd imagine there will be other ways
people could read it too. We have TARGET_VENDOR, HOST_VENDOR,
SDK_VENDOR and so on in the triplets.

My point is that if someone sees a "vendor" module in isolation, they
aren't going to know what it relates to. You're really close to this
topic so it is obvious to you, it is not going to be obvious to others,
or perhaps even you in a few years time.

Cheers,

Richard



  reply	other threads:[~2025-02-12  9:39 UTC|newest]

Thread overview: 73+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-02-11 15:00 [RFC PATCH 00/30] Add vendor support for go, npm and rust Stefan Herbrechtsmeier
2025-02-11 15:00 ` [RFC PATCH 01/30] classes: create-spdx-2.2: use expanded FetchData for downloaded packages Stefan Herbrechtsmeier
2025-02-11 15:00 ` [RFC PATCH 02/30] lib: spdx30_tasks: use expanded FetchData for download files Stefan Herbrechtsmeier
2025-02-11 15:00 ` [RFC PATCH 03/30] classes: create-spdx-2.2: use name and version for download dependencies Stefan Herbrechtsmeier
2025-02-11 15:00 ` [RFC PATCH 04/30] lib: bb: fetch2: add support to unpack .crate files Stefan Herbrechtsmeier
2025-02-11 21:22   ` [OE-core] " Richard Purdie
2025-02-11 15:00 ` [RFC PATCH 05/30] lib: oe: add vendor module Stefan Herbrechtsmeier
2025-02-11 21:31   ` [OE-core] " Richard Purdie
2025-02-12  9:27     ` Stefan Herbrechtsmeier
2025-02-12  9:38       ` Richard Purdie [this message]
2025-02-12 12:21         ` Stefan Herbrechtsmeier
2025-02-11 15:00 ` [RFC PATCH 06/30] lib: oe: vendor: add cargo support Stefan Herbrechtsmeier
2025-02-12 10:32   ` [OE-core] " Alexander Kanavin
2025-02-12 12:45   ` Frédéric Martinsons
2025-02-12 16:29     ` Stefan Herbrechtsmeier
2025-02-12 17:48       ` Frédéric Martinsons
2025-02-13  8:53         ` Stefan Herbrechtsmeier
2025-02-11 15:00 ` [RFC PATCH 07/30] lib: oe: vendor: add go support Stefan Herbrechtsmeier
2025-02-11 15:00 ` [RFC PATCH 08/30] lib: oe: vendor: add npm support Stefan Herbrechtsmeier
2025-02-11 15:00 ` [RFC PATCH 09/30] oeqa: oelib: add vendor tests Stefan Herbrechtsmeier
2025-02-11 15:00 ` [RFC PATCH 10/30] conf: bitbake: add SRC_URI_FILES variable Stefan Herbrechtsmeier
2025-02-11 16:22   ` [bitbake-devel] " Peter Kjellerstedt
2025-02-12  8:55     ` Stefan Herbrechtsmeier
2025-02-12  9:49       ` [OE-core] " Alexander Kanavin
     [not found]       ` <18236D0FFBD06B89.28278@lists.openembedded.org>
2025-02-12 10:42         ` Alexander Kanavin
2025-02-11 19:06   ` Peter Kjellerstedt
2025-02-11 15:00 ` [RFC PATCH 11/30] classes: go: make source directory configurable Stefan Herbrechtsmeier
2025-02-11 15:00 ` [RFC PATCH 12/30] classes: go-mod: make class customizable Stefan Herbrechtsmeier
2025-02-11 15:00 ` [RFC PATCH 13/30] classes: add nodejs-arch class Stefan Herbrechtsmeier
2025-02-12 10:37   ` [OE-core] " Alexander Kanavin
2025-02-11 15:00 ` [RFC PATCH 14/30] classes: base: add get_src_uris and unpack_src_uris functions Stefan Herbrechtsmeier
2025-02-11 15:00 ` [RFC PATCH 15/30] classes: add early fetch, unpack and patch support Stefan Herbrechtsmeier
2025-02-11 22:27   ` [OE-core] " Richard Purdie
2025-02-12 12:21     ` Stefan Herbrechtsmeier
2025-02-11 22:32   ` Bruce Ashfield
2025-02-12 12:42     ` Stefan Herbrechtsmeier
2025-02-12 13:55       ` Bruce Ashfield
2025-02-12 14:40         ` Stefan Herbrechtsmeier
2025-02-12 11:08   ` Alexander Kanavin
2025-02-12 16:23     ` Stefan Herbrechtsmeier
2025-02-11 15:00 ` [RFC PATCH 16/30] classes: add vendor class Stefan Herbrechtsmeier
2025-02-11 19:17   ` [OE-core] " Peter Kjellerstedt
2025-02-11 15:00 ` [RFC PATCH 17/30] classes: add vendor class for cargo Stefan Herbrechtsmeier
2025-02-11 15:00 ` [RFC PATCH 18/30] classes: add vendor class for go Stefan Herbrechtsmeier
2025-02-11 22:59   ` [OE-core] " Bruce Ashfield
2025-02-12 15:23     ` Stefan Herbrechtsmeier
2025-02-11 15:00 ` [RFC PATCH 19/30] classes: add vendor class for npm Stefan Herbrechtsmeier
2025-02-11 15:00 ` [RFC PATCH 20/30] classes: add vendor_npm_build class Stefan Herbrechtsmeier
2025-02-11 15:00 ` [RFC PATCH 21/30] python3-bcrypt: mirgrate to vendor cargo class Stefan Herbrechtsmeier
2025-02-11 21:46   ` [OE-core] " Richard Purdie
2025-02-12 14:36     ` Stefan Herbrechtsmeier
2025-02-12 15:06       ` Richard Purdie
2025-02-12 17:27         ` Stefan Herbrechtsmeier
2025-02-12 15:07       ` Bruce Ashfield
2025-02-12 17:24         ` Stefan Herbrechtsmeier
2025-02-12 17:45           ` Bruce Ashfield
2025-02-12 17:52             ` Richard Purdie
2025-02-13 12:45             ` Stefan Herbrechtsmeier
2025-02-13 17:07               ` Bruce Ashfield
2025-02-11 15:00 ` [RFC PATCH 22/30] python3-cryptography: " Stefan Herbrechtsmeier
2025-02-11 15:00 ` [RFC PATCH 23/30] python3-maturin: " Stefan Herbrechtsmeier
2025-02-11 15:00 ` [RFC PATCH 24/30] python3-rpds-py: " Stefan Herbrechtsmeier
2025-02-11 15:00 ` [RFC PATCH 25/30] librsvg: " Stefan Herbrechtsmeier
2025-02-11 15:00 ` [RFC PATCH 26/30] librsvg: update dependecies to fix RUSTSEC-2024-0421 Stefan Herbrechtsmeier
2025-02-11 15:00 ` [RFC PATCH 27/30] [DO NOT MERGE] recipes: add crucible go demo Stefan Herbrechtsmeier
2025-02-11 15:00 ` [RFC PATCH 28/30] [DO NOT MERGE] recipes: add node-red npm demo Stefan Herbrechtsmeier
2025-02-11 15:00 ` [RFC PATCH 29/30] [DO NOT MERGE] recipes: add nucleoidai " Stefan Herbrechtsmeier
2025-02-11 15:00 ` [RFC PATCH 30/30] [DO NOT MERGE] classes: spdx: use version 2.2 Stefan Herbrechtsmeier
2025-02-11 23:14 ` [bitbake-devel] [RFC PATCH 00/30] Add vendor support for go, npm and rust Bruce Ashfield
2025-02-12  8:41   ` Stefan Herbrechtsmeier
2025-02-12 14:11     ` Bruce Ashfield
2025-02-13  8:36       ` Stefan Herbrechtsmeier
2025-02-13 17:01         ` Bruce Ashfield

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=ea2233e4e8854e59bf2221ead2cb9bab33a6a969.camel@linuxfoundation.org \
    --to=richard.purdie@linuxfoundation.org \
    --cc=openembedded-core@lists.openembedded.org \
    --cc=stefan.herbrechtsmeier-oss@weidmueller.com \
    --cc=stefan.herbrechtsmeier@weidmueller.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox