All of lore.kernel.org
 help / color / mirror / Atom feed
* [meta][PATCH] go-vendor.bbclass: Unpack into BP for destsuffix
@ 2026-06-18 21:31 John Ripple
  2026-06-18 21:33 ` [OE-core] " Bruce Ashfield
  0 siblings, 1 reply; 5+ messages in thread
From: John Ripple @ 2026-06-18 21:31 UTC (permalink / raw)
  To: openembedded-core; +Cc: John Ripple

The go-vendor class has a hardcoded destsuffix variable used to unpack
sources fetched with the go_src_uri function. Change this unpack
location to take the base package name into account (BP) as is the new
standard.

Signed-off-by: John Ripple <john.ripple@keysight.com>
---
 meta/classes/go-vendor.bbclass | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/meta/classes/go-vendor.bbclass b/meta/classes/go-vendor.bbclass
index 6ec6178add..f854d14bdf 100644
--- a/meta/classes/go-vendor.bbclass
+++ b/meta/classes/go-vendor.bbclass
@@ -19,7 +19,7 @@ inherit go-mod
 def go_src_uri(repo, version, path=None, subdir=None, \
                 vcs='git', replaces=None, pathmajor=None):
 
-    destsuffix = "git/src/import/vendor.fetch"
+    destsuffix = "${BP}/src/import/vendor.fetch"
     module_path = repo if not path else path
 
     src_uri = "{}://{};name={}".format(vcs, repo, module_path.replace('/', '.'))
@@ -58,7 +58,8 @@ python do_go_vendor() {
     if not src_uri:
         bb.fatal("SRC_URI is empty")
 
-    default_destsuffix = "git/src/import/vendor.fetch"
+    base_package = d.getVar('BP')
+    default_destsuffix = "{}/src/import/vendor.fetch".format(base_package)
     fetcher = bb.fetch2.Fetch(src_uri, d)
     go_import = d.getVar('GO_IMPORT')
     source_dir = d.getVar('S')


^ permalink raw reply related	[flat|nested] 5+ messages in thread

* Re: [OE-core] [meta][PATCH] go-vendor.bbclass: Unpack into BP for destsuffix
  2026-06-18 21:31 [meta][PATCH] go-vendor.bbclass: Unpack into BP for destsuffix John Ripple
@ 2026-06-18 21:33 ` Bruce Ashfield
  2026-06-18 21:56   ` John Ripple
  0 siblings, 1 reply; 5+ messages in thread
From: Bruce Ashfield @ 2026-06-18 21:33 UTC (permalink / raw)
  To: john.ripple; +Cc: openembedded-core

[-- Attachment #1: Type: text/plain, Size: 2429 bytes --]

On Thu, Jun 18, 2026 at 5:31 PM John Ripple via lists.openembedded.org
<john.ripple=keysight.com@lists.openembedded.org> wrote:

> The go-vendor class has a hardcoded destsuffix variable used to unpack
> sources fetched with the go_src_uri function. Change this unpack
> location to take the base package name into account (BP) as is the new
> standard.
>

I have no particular issues with the change, but the commit log doesn't
tell us why this is needed. Was something breaking ? is there any risk
to the assumptions that other classes/recipes/layers may have made
about the location of the unpacked files ?

Bruce



>
> Signed-off-by: John Ripple <john.ripple@keysight.com>
> ---
>  meta/classes/go-vendor.bbclass | 5 +++--
>  1 file changed, 3 insertions(+), 2 deletions(-)
>
> diff --git a/meta/classes/go-vendor.bbclass
> b/meta/classes/go-vendor.bbclass
> index 6ec6178add..f854d14bdf 100644
> --- a/meta/classes/go-vendor.bbclass
> +++ b/meta/classes/go-vendor.bbclass
> @@ -19,7 +19,7 @@ inherit go-mod
>  def go_src_uri(repo, version, path=None, subdir=None, \
>                  vcs='git', replaces=None, pathmajor=None):
>
> -    destsuffix = "git/src/import/vendor.fetch"
> +    destsuffix = "${BP}/src/import/vendor.fetch"
>      module_path = repo if not path else path
>
>      src_uri = "{}://{};name={}".format(vcs, repo,
> module_path.replace('/', '.'))
> @@ -58,7 +58,8 @@ python do_go_vendor() {
>      if not src_uri:
>          bb.fatal("SRC_URI is empty")
>
> -    default_destsuffix = "git/src/import/vendor.fetch"
> +    base_package = d.getVar('BP')
> +    default_destsuffix = "{}/src/import/vendor.fetch".format(base_package)
>      fetcher = bb.fetch2.Fetch(src_uri, d)
>      go_import = d.getVar('GO_IMPORT')
>      source_dir = d.getVar('S')
>
> -=-=-=-=-=-=-=-=-=-=-=-
> Links: You receive all messages sent to this group.
> View/Reply Online (#239109):
> https://lists.openembedded.org/g/openembedded-core/message/239109
> Mute This Topic: https://lists.openembedded.org/mt/119874754/1050810
> Group Owner: openembedded-core+owner@lists.openembedded.org
> Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [
> bruce.ashfield@gmail.com]
> -=-=-=-=-=-=-=-=-=-=-=-
>
>

-- 
- Thou shalt not follow the NULL pointer, for chaos and madness await thee
at its end
- "Use the force Harry" - Gandalf, Star Trek II

[-- Attachment #2: Type: text/html, Size: 4283 bytes --]

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [meta][PATCH] go-vendor.bbclass: Unpack into BP for destsuffix
  2026-06-18 21:33 ` [OE-core] " Bruce Ashfield
@ 2026-06-18 21:56   ` John Ripple
  2026-06-18 22:06     ` [OE-core] " Richard Purdie
  0 siblings, 1 reply; 5+ messages in thread
From: John Ripple @ 2026-06-18 21:56 UTC (permalink / raw)
  To: openembedded-core

[-- Attachment #1: Type: text/plain, Size: 1050 bytes --]

> 
> I have no particular issues with the change, but the commit log doesn't
> tell us why this is needed. Was something breaking ? is there any risk
> to the assumptions that other classes/recipes/layers may have made
> about the location of the unpacked files ?
> 

The go-vendor class was unpacking dependencies to ${UNPACKDIR}/git
and then needed S = "${UNPACKDIR}/git" to find the dependencies.
Changing the S variable caused the do_qa_unpack() ( https://git.openembedded.org/openembedded-core/tree/meta/classes-global/insane.bbclass#n1450 ) from insane.bbclass
to throw an error.

There shouldn't be any other assumptions from other classes/recipes/layers
that have been broken. The recipes I tested this change against used sources
fetched using the go_src_uri() function, regular git fetching, and local files.
There weren't any issues with moving to the go dependencies to the new
location. As far as I know nothing in openembedded-core uses the go-vendor
class making it trickier to test against a known baseline.

John

[-- Attachment #2: Type: text/html, Size: 1665 bytes --]

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [OE-core] [meta][PATCH] go-vendor.bbclass: Unpack into BP for destsuffix
  2026-06-18 21:56   ` John Ripple
@ 2026-06-18 22:06     ` Richard Purdie
  2026-06-18 22:12       ` John Ripple
  0 siblings, 1 reply; 5+ messages in thread
From: Richard Purdie @ 2026-06-18 22:06 UTC (permalink / raw)
  To: john.ripple, openembedded-core

On Thu, 2026-06-18 at 14:56 -0700, John Ripple via lists.openembedded.org wrote:
> 
> 
> > I have no particular issues with the change, but the commit log doesn't
> > tell us why this is needed. Was something breaking ? is there any risk
> > to the assumptions that other classes/recipes/layers may have made
> > about the location of the unpacked files ?
> 
> The go-vendor class was unpacking dependencies to ${UNPACKDIR}/git
> and then needed S = "${UNPACKDIR}/git" to find the dependencies. 
> Changing the S variable caused the do_qa_unpack() from insane.bbclass
> to throw an error.
>  
> There shouldn't be any other assumptions from other classes/recipes/layers
> that have been broken. The recipes I tested this change against used sources
> fetched using the go_src_uri() function, regular git fetching, and local files.
> There weren't any issues with moving to the go dependencies to the new
> location. As far as I know nothing in openembedded-core uses the go-vendor
> class making it trickier to test against a known baseline.

It does sound a lot like we're missing some test cases as if I
understand it correctly, that class can't have worked for a while?

Cheers,

Richard


^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [meta][PATCH] go-vendor.bbclass: Unpack into BP for destsuffix
  2026-06-18 22:06     ` [OE-core] " Richard Purdie
@ 2026-06-18 22:12       ` John Ripple
  0 siblings, 0 replies; 5+ messages in thread
From: John Ripple @ 2026-06-18 22:12 UTC (permalink / raw)
  To: openembedded-core

[-- Attachment #1: Type: text/plain, Size: 470 bytes --]

> 
> It does sound a lot like we're missing some test cases as if I
> understand it correctly, that class can't have worked for a while?
> 

I've used the go-vendor class on Scarthgap and have only started to
look at it on Wrynose with the recent release. It would have thrown
an error since whenever the insane.bbclass explicitly denied setting
S = "${UNPACKDIR}/git". It's probably slipped under the radar
because nothing uses it in the core layers.

John

[-- Attachment #2: Type: text/html, Size: 583 bytes --]

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2026-06-18 22:12 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-06-18 21:31 [meta][PATCH] go-vendor.bbclass: Unpack into BP for destsuffix John Ripple
2026-06-18 21:33 ` [OE-core] " Bruce Ashfield
2026-06-18 21:56   ` John Ripple
2026-06-18 22:06     ` [OE-core] " Richard Purdie
2026-06-18 22:12       ` John Ripple

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.