<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux/poky.git/bitbake/lib/bb/providers.py, branch yocto-4.0.14</title>
<subtitle>Mirror of git.yoctoproject.org/poky</subtitle>
<id>https://git.enea.com/cgit/linux/poky.git/atom?h=yocto-4.0.14</id>
<link rel='self' href='https://git.enea.com/cgit/linux/poky.git/atom?h=yocto-4.0.14'/>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/'/>
<updated>2022-05-12T12:41:42+00:00</updated>
<entry>
<title>bitbake: providers: use local variable for packages_dynamic pattern</title>
<updated>2022-05-12T12:41:42+00:00</updated>
<author>
<name>Matt Madison</name>
<email>matt@madison.systems</email>
</author>
<published>2022-05-10T18:05:26+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=a550f8333f9ee55bc455935dc7cb1831567a362f'/>
<id>urn:sha1:a550f8333f9ee55bc455935dc7cb1831567a362f</id>
<content type='text'>
During parsing, Python raises

   RuntimeError: dictionary changed size during iteration

in getRuntimeProviders, if you happen to have a recipe
with an explicit RDEPENDS on a dynamic package containing a '+'
character, such as 'gtk+3-locale-en'.

This is because we're using the modified pattern as the
key into the packages_dynamic dict to append to rproviders,
and since that key doesn't exist, the dict is getting modified
to add a new, empty, entry for it. So even without the runtime
error, we'd be generating an incorrect result.

Fix this by using a local variable for modifying the pattern
and using the original key to retrieve the value on a match.

(Bitbake rev: 69d3b86449be23b07f794e302f6e18f3a2c46424)

Signed-off-by: Matt Madison &lt;matt@madison.systems&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
(cherry picked from commit 07de375c3e57f17ab7b47569186f24ecd9896825)
Signed-off-by: Steve Sakoman &lt;steve@sakoman.com&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>bitbake: providers: Use new override syntax when handling pn- "override"</title>
<updated>2021-08-27T10:54:59+00:00</updated>
<author>
<name>Peter Kjellerstedt</name>
<email>peter.kjellerstedt@axis.com</email>
</author>
<published>2021-08-26T17:37:01+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=a5b257006b2c480d86e09909cdafb3c8ba05b863'/>
<id>urn:sha1:a5b257006b2c480d86e09909cdafb3c8ba05b863</id>
<content type='text'>
Make versionVariableMatch() support pn-foo overrides using the new
override syntax.

(Bitbake rev: 653df4bc413d595d5611d5fa678e7f2e30bb7431)

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: providers: replace newly added logger.warn() with logger.warning()</title>
<updated>2021-07-10T22:11:33+00:00</updated>
<author>
<name>Denys Dmytriyenko</name>
<email>denis@denix.org</email>
</author>
<published>2021-07-07T00:20:02+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=6b25d75ca8022e03cfefcc1596b39b555bf9a988'/>
<id>urn:sha1:6b25d75ca8022e03cfefcc1596b39b555bf9a988</id>
<content type='text'>
Commits https://git.openembedded.org/bitbake/commit/?id=78cd63285713fde59506eb2e71a7b7ee59a594ff
and https://git.openembedded.org/bitbake/commit/?id=5cbf6d95fc1009e78e7d0745a49e0bf418b37abb
added few calls to logger.warn(), which is deprecated and instead
should use logger.warning():

https://lists.openembedded.org/g/bitbake-devel/topic/82742194#12377

(Bitbake rev: a28ba2d31cd3aa557d4977e9376c5d01cd863e9a)

Signed-off-by: Denys Dmytriyenko &lt;denis@denix.org&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>bitbake: bitbake: lib: add Required Version to Bitbake --show-versions command</title>
<updated>2021-03-15T14:36:52+00:00</updated>
<author>
<name>Charlie Davies</name>
<email>charles.davies@whitetree.xyz</email>
</author>
<published>2021-02-18T20:52:19+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=889a7ce8dea4ecf505a7a27c088f908fd0b83fc3'/>
<id>urn:sha1:889a7ce8dea4ecf505a7a27c088f908fd0b83fc3</id>
<content type='text'>
This commit adds a new column to the Bitbake --show-versions command
called Required Version. This column will display any packages which
have a REQUIRED_VERSION successfully set.

Fixes [YOCTO #10096]

(Bitbake rev: 90c7d1815e41243323d32b9dbb865757a922578a)

Signed-off-by: Charlie Davies &lt;charles.davies@whitetree.xyz&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>bitbake: bitbake: providers: check for REQUIRED_VERSION in _filterProviders</title>
<updated>2021-03-15T14:36:51+00:00</updated>
<author>
<name>Charlie Davies</name>
<email>charles.davies@whitetree.xyz</email>
</author>
<published>2021-02-18T20:52:18+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=78fcf6831a3f12e5dd1aa0679fd972b040ea3d0d'/>
<id>urn:sha1:78fcf6831a3f12e5dd1aa0679fd972b040ea3d0d</id>
<content type='text'>
Before the REQUIRED_VERSION variable was introduced the
PREFERRED_VERSION variable allowed for a fallback to the next most
suitable version.

Since REQUIRED_VERSION does not allow a fallback to a different version
implement a check in the _filterProviders function to make sure that
if a requested REQUIRED_VERSION is not found then the function returns
no eligible providers have been found.

Fixes [YOCTO #10096]

(Bitbake rev: c41386b78aa53e0bf081cd973c950b88126670a7)

Signed-off-by: Charlie Davies &lt;charles.davies@whitetree.xyz&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>bitbake: bitbake: providers: introduce logic for REQUIRED_VERSION variable</title>
<updated>2021-03-15T14:36:51+00:00</updated>
<author>
<name>Charlie Davies</name>
<email>charles.davies@whitetree.xyz</email>
</author>
<published>2021-02-18T20:52:17+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=3752782cb77749ef11d947a26cfa7e4905662339'/>
<id>urn:sha1:3752782cb77749ef11d947a26cfa7e4905662339</id>
<content type='text'>
This commit adds checks during the findPreferredProvider function for a
new variable REQUIRED_VERSION. This can be set, in exactly the same
manner as PREFERRED_VERSION, on a per package basis to enforce the use
of a particular version of a package.

REQUIRED_VERSION is similar in behaviour to PREFERRED_VERSION except if
the version specified by REQUIRED_VERSION is not found an error occurs
and the execution of Bitbake stops.

Fixes [YOCTO #10096]

(Bitbake rev: 5cbf6d95fc1009e78e7d0745a49e0bf418b37abb)

Signed-off-by: Charlie Davies &lt;charles.davies@whitetree.xyz&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>bitbake: bitbake: providers: consistent single line formatting between functions</title>
<updated>2021-03-15T14:36:51+00:00</updated>
<author>
<name>Charlie Davies</name>
<email>charles.davies@whitetree.xyz</email>
</author>
<published>2021-02-18T20:52:16+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=70f90dcfd7401e9f6942d163579ef575a43721fc'/>
<id>urn:sha1:70f90dcfd7401e9f6942d163579ef575a43721fc</id>
<content type='text'>
(Bitbake rev: e8c74ac8e589ee44d862b71fd63dd75ab303d3b5)

Signed-off-by: Charlie Davies &lt;charles.davies@whitetree.xyz&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>bitbake: bitbake: providers: remove unneeded logging call</title>
<updated>2021-03-15T14:36:51+00:00</updated>
<author>
<name>Charlie Davies</name>
<email>charles.davies@whitetree.xyz</email>
</author>
<published>2021-02-18T20:52:15+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=04bb096170a5146e23a1518e2131c693f979885c'/>
<id>urn:sha1:04bb096170a5146e23a1518e2131c693f979885c</id>
<content type='text'>
The logging line for when no eligible providers are found only adds
unnecessary noise and is not required. As the stack unwinds better
logging occurs which satisfactorily describes the no eligible providers
error condition.

(Bitbake rev: 933c9df919f7947f515d843199cce2621cf8195f)

Signed-off-by: Charlie Davies &lt;charles.davies@whitetree.xyz&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>bitbake: bitbake: providers: use pythonic empty list check</title>
<updated>2021-02-21T22:01:56+00:00</updated>
<author>
<name>Charlie Davies</name>
<email>charles.davies@whitetree.xyz</email>
</author>
<published>2021-02-18T20:52:14+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=4952dcbd518165b676111d318c36ebbce8f8f703'/>
<id>urn:sha1:4952dcbd518165b676111d318c36ebbce8f8f703</id>
<content type='text'>
(Bitbake rev: 591542734988856afa53b99e5eef6e5ca15630b8)

Signed-off-by: Charlie Davies &lt;charles.davies@whitetree.xyz&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>bitbake: bitbake: providers: fix incorrect return type bug</title>
<updated>2021-02-21T22:01:56+00:00</updated>
<author>
<name>Charlie Davies</name>
<email>charles.davies@whitetree.xyz</email>
</author>
<published>2021-02-18T20:52:13+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=d47f4553893d0468827cc675a5b4334c9a0fdd29'/>
<id>urn:sha1:d47f4553893d0468827cc675a5b4334c9a0fdd29</id>
<content type='text'>
If no eligible providers are found then an integer zero is returned.
This causes the following error, in two possible places in taskdata.py,
when the return value is used in a list comprehension:

[snip]
    eligible = [p for p in eligible if not p in self.failed_fns]
TypeError: 'int' object is not iterable
[\snip]

Fix by returning the variable eligible itself, of type list.

(Bitbake rev: 217c4b436b588a6a47aeaddf61531711ad3fca67)

Signed-off-by: Charlie Davies &lt;charles.davies@whitetree.xyz&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
</feed>
