diff mbox series

[v2] doc: Document challenges of tags with git fetcher

Message ID 20230904092405.2671456-1-richard.purdie@linuxfoundation.org
State Accepted, archived
Commit 56224da378ab63526d44fd7a70bcfd2cffe245cc
Headers show
Series [v2] doc: Document challenges of tags with git fetcher | expand

Commit Message

Richard Purdie Sept. 4, 2023, 9:24 a.m. UTC
Using tags with the git fetcher may cause surprising behaviour. There
are reasons for this, document them.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
---
v2 - add tweaks requested in review

 doc/bitbake-user-manual/bitbake-user-manual-fetching.rst | 8 ++++++++
 1 file changed, 8 insertions(+)

Comments

Peter Kjellerstedt Sept. 4, 2023, 9:49 a.m. UTC | #1
> -----Original Message-----
> From: bitbake-devel@lists.openembedded.org <bitbake-devel@lists.openembedded.org> On Behalf Of Richard Purdie
> Sent: den 4 september 2023 11:24
> To: bitbake-devel@lists.openembedded.org
> Subject: [bitbake-devel] [PATCH v2] doc: Document challenges of tags with git fetcher
> 
> Using tags with the git fetcher may cause surprising behaviour. There
> are reasons for this, document them.
> 
> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
> ---
> v2 - add tweaks requested in review
> 
>  doc/bitbake-user-manual/bitbake-user-manual-fetching.rst | 8 ++++++++
>  1 file changed, 8 insertions(+)
> 
> diff --git a/doc/bitbake-user-manual/bitbake-user-manual-fetching.rst
> b/doc/bitbake-user-manual/bitbake-user-manual-fetching.rst
> index f5723d6767..dc125509ff 100644
> --- a/doc/bitbake-user-manual/bitbake-user-manual-fetching.rst
> +++ b/doc/bitbake-user-manual/bitbake-user-manual-fetching.rst
> @@ -476,6 +476,14 @@ Here are some example URLs::
>     easy to share metadata without removing passwords. SSH keys,
> ``~/.netrc``
>     and ``~/.ssh/config`` files can be used as alternatives.
> 
> +Using tags with the git fetcher may cause surprising behaviour. Bitbake needs to
> +resolve the tag to a specific revision and to do that, it has to connect to and use
> +the upstream repository. This is because the revision tags point at can change and

I suggest changing "the revision tags" to "the revision the tags" because 
the first time I read it, I read it as "revision tags" rather than "revision" 
"tags", which did not make any sense.

> +we've seen cases of this happening in well known public repositories. This can mean

"well known" -> "well-known".

> +many more network connections than expected and recipes may reparsed at every build.

"may reparsed" -> "may be reparsed"

> +Source mirrors will also be bypassed as the upstream repository is the only source
> +of truth to resolve the revision accurately. For these reasons, whilst the fetcher
> +can support tags, we recommend being specific about revisions in recipes.
> 
>  .. _gitsm-fetcher:
> 
> --
> 2.39.2

//Peter
diff mbox series

Patch

diff --git a/doc/bitbake-user-manual/bitbake-user-manual-fetching.rst b/doc/bitbake-user-manual/bitbake-user-manual-fetching.rst
index f5723d6767..dc125509ff 100644
--- a/doc/bitbake-user-manual/bitbake-user-manual-fetching.rst
+++ b/doc/bitbake-user-manual/bitbake-user-manual-fetching.rst
@@ -476,6 +476,14 @@  Here are some example URLs::
    easy to share metadata without removing passwords. SSH keys, ``~/.netrc``
    and ``~/.ssh/config`` files can be used as alternatives.
 
+Using tags with the git fetcher may cause surprising behaviour. Bitbake needs to
+resolve the tag to a specific revision and to do that, it has to connect to and use
+the upstream repository. This is because the revision tags point at can change and
+we've seen cases of this happening in well known public repositories. This can mean
+many more network connections than expected and recipes may reparsed at every build.
+Source mirrors will also be bypassed as the upstream repository is the only source
+of truth to resolve the revision accurately. For these reasons, whilst the fetcher
+can support tags, we recommend being specific about revisions in recipes.
 
 .. _gitsm-fetcher: