<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux/poky.git/bitbake/lib/bb/parse/parse_py/BBHandler.py, branch yocto-4.1.2</title>
<subtitle>Mirror of git.yoctoproject.org/poky</subtitle>
<id>https://git.enea.com/cgit/linux/poky.git/atom?h=yocto-4.1.2</id>
<link rel='self' href='https://git.enea.com/cgit/linux/poky.git/atom?h=yocto-4.1.2'/>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/'/>
<updated>2022-08-12T10:49:29+00:00</updated>
<entry>
<title>bitbake: BBHandler/cooker: Implement recipe and global classes</title>
<updated>2022-08-12T10:49:29+00:00</updated>
<author>
<name>Richard Purdie</name>
<email>richard.purdie@linuxfoundation.org</email>
</author>
<published>2022-08-10T13:34:22+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=7bd328f9d24b4fb23c7d5de50bddbb60828c9ffc'/>
<id>urn:sha1:7bd328f9d24b4fb23c7d5de50bddbb60828c9ffc</id>
<content type='text'>
We have some confusion for users since some classes are meant to work
in the configuration space (or "globally") and some are meant to be
selected by recipes individually.

The cleanest way I could find to clarify this is to create "classes-global"
and "classes-recipe" directories which contain the approproate classes and
have bitbake switch scope between them at the appropriate point during
parsing. The existing "classes" directory is always searched as a fallback.

Once a class is moved to a specific directory, it will no longer be found
in the incorrect context. A good example from OE is that

INHERIT += "testimage"

will no longer work but

IMAGE_CLASSES += "testimage"

will, which makes the global scope cleaner by only including it where it
is useful and intended to be used (images).

(Bitbake rev: f33ce7e742f46635658c400b82558cf822690b5e)

Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>bitbake: BBHandler: Make inherit calls more directly</title>
<updated>2022-08-12T10:49:29+00:00</updated>
<author>
<name>Richard Purdie</name>
<email>richard.purdie@linuxfoundation.org</email>
</author>
<published>2022-08-10T12:43:43+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=12d7157a4145062bfba74dadd493ae870852e7e3'/>
<id>urn:sha1:12d7157a4145062bfba74dadd493ae870852e7e3</id>
<content type='text'>
Rather than recursing into the conf handler code, simply call into
the parse code directly when inheriting files as we've already resolved
the paths and don't need anything the other codepath brings. This
makes the codepath clearer at the expense of some slight duplication.

(Bitbake rev: 0f4f3af6d93a0018df58b8a1d8d423c78ba6526d)

Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>bitbake: BBHandler: Allow earlier exit for classes not found</title>
<updated>2022-08-12T10:49:29+00:00</updated>
<author>
<name>Richard Purdie</name>
<email>richard.purdie@linuxfoundation.org</email>
</author>
<published>2022-08-10T12:42:51+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=be8ddaed17dd4440ac66df06f3c84c572672339f'/>
<id>urn:sha1:be8ddaed17dd4440ac66df06f3c84c572672339f</id>
<content type='text'>
Rather than relying on later code to error if the class isn't found,
exit earlier and more clearly from a code perspective.

(Bitbake rev: f7c55c8147329670fd5bc55b1ae3f47f25b89bab)

Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>bitbake: ConfHandler/BBHandler: Improve comment error messages and add tests</title>
<updated>2022-07-04T21:52:36+00:00</updated>
<author>
<name>Richard Purdie</name>
<email>richard.purdie@linuxfoundation.org</email>
</author>
<published>2022-07-01T16:52:52+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=bc6d96e69684253a7236594cb0af2738be06b7a9'/>
<id>urn:sha1:bc6d96e69684253a7236594cb0af2738be06b7a9</id>
<content type='text'>
Currently if you trigger one of the comment errors, the newline characters
are stripped and the line numbers are incorrect. In one case it prints
the empty line which is also unhelpful.

Rework the code around these errors so the line numbers are correct
and the lines in question are more clearly displayed complete with newlines
so the user can more clearly see the error.

I also added a couple of simplistic test cases to ensure that errors
are raised by the two known comment format errors.

[YOCTO #11904]

(Bitbake rev: 712da71b24445c814d79a206ce26188def8fce0a)

Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>bitbake: parse_py: Drop deprecated function reference</title>
<updated>2021-09-10T08:26:04+00:00</updated>
<author>
<name>Richard Purdie</name>
<email>richard.purdie@linuxfoundation.org</email>
</author>
<published>2021-09-09T20:23:16+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=ad0ffb6f9f85bd0068b7807658a3a13243ee39d7'/>
<id>urn:sha1:ad0ffb6f9f85bd0068b7807658a3a13243ee39d7</id>
<content type='text'>
This is now used from bb.parse everywhere so drop this long deprecated reference.

(Bitbake rev: aaa5292ef96ea27f505bc5c5a4b1eb4f497ed061)

Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>bitbake: data_smart/parse: Allow ':' characters in variable/function names</title>
<updated>2021-07-20T17:59:18+00:00</updated>
<author>
<name>Richard Purdie</name>
<email>richard.purdie@linuxfoundation.org</email>
</author>
<published>2021-07-18T11:59:15+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=75fad23fc06c008a03414a1fc288a8614c6af9ca'/>
<id>urn:sha1:75fad23fc06c008a03414a1fc288a8614c6af9ca</id>
<content type='text'>
It is becomming increasingly clear we need to find a way to show what
is/is not an override in our syntax. We need to do this in a way which
is clear to users, readable and in a way we can transition to.

The most effective way I've found to this is to use the ":" charater
to directly replace "_" where an override is being specified. This
includes "append", "prepend" and "remove" which are effectively special
override directives.

This patch simply adds the character to the parser so bitbake accepts
the value but maps it back to "_" internally so there is no behaviour
change.

This change is simple enough it could potentially be backported to older
version of bitbake meaning layers using the new syntax/markup could
work with older releases. Even if other no other changes are accepted
at this time and we don't backport, it does set us on a path where at
some point in future we could
require a more explict syntax.

I've tested this patch by converting oe-core/meta-yocto to the new
syntax for overrides (9000+ changes) and then seeing that builds
continue to work with this patch.

(Bitbake rev: 0dbbb4547cb2570d2ce607e9a53459df3c0ac284)

Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>bitbake: logging: Make bitbake logger compatible with python logger</title>
<updated>2021-02-10T23:48:16+00:00</updated>
<author>
<name>Joshua Watt</name>
<email>JPEWhacker@gmail.com</email>
</author>
<published>2021-02-09T15:50:21+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=75f87db413f3659fee18eff389b7b339b01cce15'/>
<id>urn:sha1:75f87db413f3659fee18eff389b7b339b01cce15</id>
<content type='text'>
The bitbake logger overrode the definition of the debug() logging call
to include a debug level, but this causes problems with code that may
be using standard python logging, since the extra argument is
interpreted differently.

Instead, change the bitbake loggers debug() call to match the python
logger call and add a debug2() and debug3() API to replace calls that
were logging to a different debug level.

[RP: Small fix to ensure bb.debug calls bbdebug()]
(Bitbake rev: f68682a79d83e6399eb403f30a1f113516575f51)

Signed-off-by: Joshua Watt &lt;JPEWhacker@gmail.com&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>bitbake: BBHandler: Don't classify shell functions that names start with "python*" as python function</title>
<updated>2021-02-10T23:48:16+00:00</updated>
<author>
<name>Tomasz Dziendzielski</name>
<email>tomasz.dziendzielski@gmail.com</email>
</author>
<published>2021-02-06T20:42:38+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=a30a06d9c1e6e585dba11d55266440de6f4ac35a'/>
<id>urn:sha1:a30a06d9c1e6e585dba11d55266440de6f4ac35a</id>
<content type='text'>
If shell function name starts with 'python' or 'fakeroot' parser wrongly
assumes it's python/fakeroot function.

[YOCTO #14204]

Use regex lookahead assertions to check if 'python' expression is
followed by whitespace or '(' and if 'fakeroot' is followed by
whitespace.

(Bitbake rev: b07b226d5d1b3acd3f76d8365bc8002293365999)

Signed-off-by: Tomasz Dziendzielski &lt;tomasz.dziendzielski@gmail.com&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>bitbake: BBHandler: prompt error when task name contain expression</title>
<updated>2020-11-08T14:04:42+00:00</updated>
<author>
<name>Lee Chee Yang</name>
<email>chee.yang.lee@intel.com</email>
</author>
<published>2020-11-05T00:59:21+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=03f8c9d9f91ac9efe54e22e78575e4a248cfa62f'/>
<id>urn:sha1:03f8c9d9f91ac9efe54e22e78575e4a248cfa62f</id>
<content type='text'>
Task name contain expresion (eg, do_foo_remove_bar) can cause fatal error.

Check for naming before addtask. Prompt with understandable error message
when expression found in task name.

[YOCTO #8805]

(Bitbake rev: 5b4a5bb0960386f9c524c220e43a16e60e38964d)

Signed-off-by: Lee Chee Yang &lt;chee.yang.lee@intel.com&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>bitbake: build: Allow deltask to take multiple tasknames</title>
<updated>2020-07-21T15:57:43+00:00</updated>
<author>
<name>Richard Purdie</name>
<email>richard.purdie@linuxfoundation.org</email>
</author>
<published>2020-07-01T10:09:09+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=acce65abb98529be15748892480d4c24396556f2'/>
<id>urn:sha1:acce65abb98529be15748892480d4c24396556f2</id>
<content type='text'>
deltask currently supports only one task to delete but it would be useful
if it could support a variable which gets expanded to allow flexibility
in the metadata.

This is simple to support in bitbake and is how other directives such
as inherit operate so adjust the parser/code to handle that. It means
that syntax like:

EXTRA_NOPACKAGE_DELTASKS = ""
deltask ${EXTRA_NOPACKAGE_DELTASKS}

is now allowed.

(Bitbake rev: 883d926120833c85a16dcf60425dd7af7699046a)

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