<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux/poky.git/bitbake, branch 3.3_M2</title>
<subtitle>Mirror of git.yoctoproject.org/poky</subtitle>
<id>https://git.enea.com/cgit/linux/poky.git/atom?h=3.3_M2</id>
<link rel='self' href='https://git.enea.com/cgit/linux/poky.git/atom?h=3.3_M2'/>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/'/>
<updated>2021-01-08T10:11:42+00:00</updated>
<entry>
<title>bitbake: fetch/git: Fix usehead for non-default names</title>
<updated>2021-01-08T10:11:42+00:00</updated>
<author>
<name>Joey Degges</name>
<email>jdegges@gmail.com</email>
</author>
<published>2020-12-14T08:30:02+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=10c69538c0cb8708c7eff9e8dc05ca7c669cb61c'/>
<id>urn:sha1:10c69538c0cb8708c7eff9e8dc05ca7c669cb61c</id>
<content type='text'>
The usehead url parameter for git repositories causes bitbake to use
whatever commit the repository HEAD is pointing to if the repository
happens to have the name 'default'. This is the default name so in many
cases it works just fine, but if a different name is specified with the
url parameter 'name=newName' then it will fail to parse the recipe with
an error along the lines of:

ERROR: ExpansionError during parsing /path/to/my/recipe.bb
Traceback (most recent call last):
  File "/path/to/poky/bitbake/lib/bb/fetch2/git.py", line 235, in Git.urldata_init:
    &gt;        ud.setup_revisions(d)
  File "/path/to/poky/bitbake/lib/bb/fetch2/__init__.py", line 1302, in FetchData.setup_revisions:
             for name in self.names:
    &gt;            self.revisions[name] = srcrev_internal_helper(self, d, name)
  File "/path/to/poky/bitbake/lib/bb/fetch2/__init__.py", line 1167, in srcrev_internal_helper(name='newName'):
         if srcrev == "AUTOINC":
    &gt;        srcrev = ud.method.latest_revision(ud, d, name)
  File "/path/to/poky/bitbake/lib/bb/fetch2/__init__.py", line 1562, in Git.latest_revision(name='newName'):
             except KeyError:
    &gt;            revs[key] = rev = self._latest_revision(ud, d, name)
                 return rev
  File "/path/to/poky/bitbake/lib/bb/fetch2/git.py", line 650, in Git._latest_revision(name='newName'):
             raise bb.fetch2.FetchError("Unable to resolve '%s' in upstream git repository in git ls-remote output for %s" % \
    &gt;            (ud.unresolvedrev[name], ud.host+ud.path))
bb.data_smart.ExpansionError: Failure expanding variable SRCPV, expression was ${@bb.fetch2.get_srcrev(d)} which triggered exception FetchError: Fetcher failure: Unable to resolve 'master' in upstream git repository in git ls-remote output for /path/to/local/git/repo

Let's fix this by setting the unresolved rev of _all_ repository names
to 'HEAD' when the usehead url parameter is specified. Update the
currently failing test, test_local_gitfetch_usehead_withname, to now
expect success.

This change preserves existing behavior that allows usehead to be
overridden by a valid looking revision if one happens to be specified
instead of AUTOREV.

(Bitbake rev: 01e901c44ab0f496606b1d45c8953dc54970204c)

Signed-off-by: Joey Degges &lt;jdegges@gmail.com&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>bitbake: tests/fetch: Test usehead with a non-default name</title>
<updated>2021-01-08T10:11:42+00:00</updated>
<author>
<name>Joey Degges</name>
<email>jdegges@gmail.com</email>
</author>
<published>2021-01-05T05:14:55+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=41ed881feaca7248426b60053aef41a2ce0eb39e'/>
<id>urn:sha1:41ed881feaca7248426b60053aef41a2ce0eb39e</id>
<content type='text'>
Add tests for fetching a URL with the usehead parameter set and a
non-default name set. We currently expect the local version of this test
to fail since there is a bug in the usehead implementation that breaks
for non-default names.

(Bitbake rev: a2345110f217fac429f6ec15f699c87c39531e7c)

Signed-off-by: Joey Degges &lt;jdegges@gmail.com&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>bitbake: tests/fetch: Document behavior of test_gitfetch_usehead</title>
<updated>2021-01-08T10:11:42+00:00</updated>
<author>
<name>Joey Degges</name>
<email>jdegges@gmail.com</email>
</author>
<published>2021-01-05T05:08:42+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=d5c4cd6a0b50c87a686c9e560f1b4d7c4446bc1e'/>
<id>urn:sha1:d5c4cd6a0b50c87a686c9e560f1b4d7c4446bc1e</id>
<content type='text'>
The test `test_gitfetch_usehead' exercises a way to override the usehead
feature by setting SRCREV. It may not be obvious that this is what is
being exercised here so let's add some comments to document the expected
behavior.

(Bitbake rev: 1cd998c19101e3b093e81c126b3048c5d56058b0)

Signed-off-by: Joey Degges &lt;jdegges@gmail.com&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>bitbake: tests/fetch: Organize usehead tests by net requirements</title>
<updated>2021-01-08T10:11:42+00:00</updated>
<author>
<name>Joey Degges</name>
<email>jdegges@gmail.com</email>
</author>
<published>2021-01-04T21:49:41+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=54f4968f36dcabae28ac0414f5b9428d361c60fa'/>
<id>urn:sha1:54f4968f36dcabae28ac0414f5b9428d361c60fa</id>
<content type='text'>
Move the local only usehead test to the FetcherLocalTest class so it
will be run when BB_SKIP_NETTESTS=yes since it does not require
network access.

Rename the usehead tests to better match the new organization.

(Bitbake rev: 137cfa13d5319bc91c3e5fe6c7062cb8c8484d64)

Signed-off-by: Joey Degges &lt;jdegges@gmail.com&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>bitbake: utils: add docstrings to functions</title>
<updated>2021-01-08T10:11:42+00:00</updated>
<author>
<name>Milan Shah</name>
<email>mshah@mvista.com</email>
</author>
<published>2021-01-05T09:31:58+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=0fa7258d27e64984c41e03580921ebd48eba5a64'/>
<id>urn:sha1:0fa7258d27e64984c41e03580921ebd48eba5a64</id>
<content type='text'>
A list of functions that now has a docstring.
* vercmp_string
* explode_dep_versions
* prunedir
* prune_suffix
* to_boolean
* contains_any
* export_proxies

See [YOCTO #9725] for details.

(Bitbake rev: b61ba4a18693a9e553d2a93161feb0bcc1c82384)

Signed-off-by: Milan Shah &lt;mshah@mvista.com&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>bitbake: cooker: Include all packages a recipe provides in SkippedPackage.rprovides</title>
<updated>2020-12-21T22:29:57+00:00</updated>
<author>
<name>Peter Kjellerstedt</name>
<email>peter.kjellerstedt@axis.com</email>
</author>
<published>2020-12-07T21:38:51+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=b66ff692942305d630f52f367d4bd9ed3330a3cf'/>
<id>urn:sha1:b66ff692942305d630f52f367d4bd9ed3330a3cf</id>
<content type='text'>
The provided packages by a skipped recipe are supposed to be listed in
SkippedPackage.rprovides, which is used when generating a meaningful
error message when a build fails because of a skipped package.
Previously this variable only contained the contents of ${RPROVIDES}.
However, most recipes don't define RPROVIDES, they define
RPROVIDES_&lt;pkg&gt; for each package they provide. Additionally, the recipe
provides the packages in PACKAGES without them being included in
${RPROVIDES}.

Before this change, having a runtime dependency on a skipped non-recipe
package would result in a build error stating that the build failed
because the package was skipped, but without providing any reason for
why it was skipped.

(Bitbake rev: efd026c26a377b826a49b945a8212bf7de8a480a)

Signed-off-by: Peter Kjellerstedt &lt;peter.kjellerstedt@axis.com&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>bitbake: cache: Make CoreRecipeInfo include rprovides_pkg for skipped recipes</title>
<updated>2020-12-21T22:29:57+00:00</updated>
<author>
<name>Peter Kjellerstedt</name>
<email>peter.kjellerstedt@axis.com</email>
</author>
<published>2020-12-07T21:38:50+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=8939086648f2129b08e1971afbab597d1217a331'/>
<id>urn:sha1:8939086648f2129b08e1971afbab597d1217a331</id>
<content type='text'>
This will be needed by SkippedPackage in the cooker.

(Bitbake rev: 93d01614565bd540d05fbc1791dd66e46723d683)

Signed-off-by: Peter Kjellerstedt &lt;peter.kjellerstedt@axis.com&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>bitbake: data_smart: Ensure hash reflects vardepvalue flags correctly</title>
<updated>2020-12-19T17:18:07+00:00</updated>
<author>
<name>Richard Purdie</name>
<email>richard.purdie@linuxfoundation.org</email>
</author>
<published>2020-12-16T23:38:17+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=65e67f40280aee4aa5ec454dbdeeac54fae0adf9'/>
<id>urn:sha1:65e67f40280aee4aa5ec454dbdeeac54fae0adf9</id>
<content type='text'>
The get_hash() function is used to decide if the base configuration has changed
and hence whether a reparse is required. The vardepvalue flag's value was not
expanded but it is often used in contexts like:

METADATA_REVISION = "${@base_detect_revision(d)}"
METADATA_REVISION[vardepvalue] = "${METADATA_REVISION}"

which in it's unexpanded form means reparsing doesn't happen when it should
as the data appears unchanged. Update get_hash to expand the values of
vardepvalue so reparsing works as expected. This avoids basehash mismatch
errors such as the one recently caused by using METADATA_REVISION in poky.conf's
DISTRO_VERSION variable. The issue there could be exposed by a recipe using
DISTRO_VERSION with the sequence:

bitbake os-release
&lt;change the revision of the metadata with a dummy commit&gt;
bitbake os-release -C install

which was caused because METADATA_REVISION changed but the metadata didn't reparse.

(Bitbake rev: 26ccf1575aef2d6e2d7717d3bd10b1ed0d5a777d)

Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>bitbake: msg: use safe YAML loader</title>
<updated>2020-12-10T13:39:15+00:00</updated>
<author>
<name>Ross Burton</name>
<email>ross@burtonini.com</email>
</author>
<published>2020-12-10T13:13:41+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=796be0593a607938aef3941372a9238b7e895446'/>
<id>urn:sha1:796be0593a607938aef3941372a9238b7e895446</id>
<content type='text'>
If using a YAML file in BB_LOGCONFIG, the unsafe loader is used and this
causes a runtime warning:

YAMLLoadWarning: calling yaml.load() without Loader=... is deprecated,
as the default Loader is unsafe. Please read https://msg.pyyaml.org/load
for full details.

As log configuration YAML is relatively simple we can just use
safe_load().

(Bitbake rev: 71aaac9efa69abbf6c27d174e0862644cbf674ef)

Signed-off-by: Ross Burton &lt;ross.burton@arm.com&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>bitbake: hashserv: Fix broken AF_UNIX path length limit</title>
<updated>2020-12-10T13:39:15+00:00</updated>
<author>
<name>Joshua Watt</name>
<email>JPEWhacker@gmail.com</email>
</author>
<published>2020-12-09T21:45:06+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=fe205758a06a7e1cfcca504647da7a82770aeea4'/>
<id>urn:sha1:fe205758a06a7e1cfcca504647da7a82770aeea4</id>
<content type='text'>
Fixes the bug were long paths would break Unix domain socket clients
(for real this time; the previous attempt was missing os.path.basename).

Adds some tests to prevent regressions

(Bitbake rev: 77790e3656048eff5cb1a086c727d86d32773b68)

Signed-off-by: Joshua Watt &lt;JPEWhacker@gmail.com&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
</feed>
