<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux/poky.git/meta/classes/buildhistory.bbclass, branch master</title>
<subtitle>Mirror of git.yoctoproject.org/poky</subtitle>
<id>https://git.enea.com/cgit/linux/poky.git/atom?h=master</id>
<link rel='self' href='https://git.enea.com/cgit/linux/poky.git/atom?h=master'/>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/'/>
<updated>2025-11-07T13:31:53+00:00</updated>
<entry>
<title>The poky repository master branch is no longer being updated.</title>
<updated>2025-11-07T13:31:53+00:00</updated>
<author>
<name>Richard Purdie</name>
<email>richard.purdie@linuxfoundation.org</email>
</author>
<published>2025-11-07T13:31:53+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=8c22ff0d8b70d9b12f0487ef696a7e915b9e3173'/>
<id>urn:sha1:8c22ff0d8b70d9b12f0487ef696a7e915b9e3173</id>
<content type='text'>
You can either:

a) switch to individual clones of bitbake, openembedded-core, meta-yocto and yocto-docs

b) use the new bitbake-setup

You can find information about either approach in our documentation:
https://docs.yoctoproject.org/

Note that "poky" the distro setting is still available in meta-yocto as
before and we continue to use and maintain that.

Long live Poky!

Some further information on the background of this change can be found
in: https://lists.openembedded.org/g/openembedded-architecture/message/2179

Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>buildhistory: Drop BUILDHISTORY_RESET due to reliability issues</title>
<updated>2025-06-24T12:53:23+00:00</updated>
<author>
<name>Richard Purdie</name>
<email>richard.purdie@linuxfoundation.org</email>
</author>
<published>2025-01-15T15:31:49+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=ea4b963d9a59210bb9eeaee55dcb6378ef65baba'/>
<id>urn:sha1:ea4b963d9a59210bb9eeaee55dcb6378ef65baba</id>
<content type='text'>
The implementation of BUILDHISTORY_RESET is problematic, particlarly given that
people are trying to create an API with it alongside BUILDHISTORY_PRESERVE
which simply doesn't exist and can't work reliably. Worse, the code paths with
this bolted on implementation are convoluted and near impossible to follow.

BUILDHISTORY_PRESERVE is effectively internal API, used to stop buildhistory
removing some files which are needed for data, or are created at different
parts of the build. Add a comment to explain what it is doing and why these files
are listed.

Commit 9f68a45aa238ae5fcdfaca71ba0e7015e9cb720e tried to "fix" preserve support
with the reset functionality but it didn't fully work and has just exposed futher
issues. There is a further fix however I can brely follow the code and in reviewing
it, I've concluded we shouldn't be doing this at all.

Due to the way BUILDHISTORY_RESET was implemented, horrible races were introduced
making it unclear what happens to the data if builds fail for example, or how sstate
interacts with the build since things get reset but stamps do not and tasks may not
rerun. It also interacts badly with any additions to the preserve list, due to
misunderstandings on what that variable does.

Having stared long and hard at the code, and really struggled to understand it, I',
of the view that "reset" for CI purposes should be done by the CI itself. The CI can
choose to remove some files or all files and decide how to handle failures. It has
to handle the buildhistory directory anyway.

Therefore drop BUILDHISTORY_RESET support, allowing the "old" codepaths to be dropped.
BUILDHISTORY_PRESERVE is better documented to hint that it is internal API and to
show what it is really for.

If we really do want some functionality list this, it needs to be implemented in a
way you can follow the code, and have tests.

(From OE-Core rev: 15c5258fd0063ace425b7e904521f1695ffb2a85)

Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>buildhistory: Update for bitbake changes</title>
<updated>2025-03-20T13:50:40+00:00</updated>
<author>
<name>Richard Purdie</name>
<email>richard.purdie@linuxfoundation.org</email>
</author>
<published>2025-03-18T23:01:35+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=07563ec1b567a4ce4227fa0623a84ba93c1c0c13'/>
<id>urn:sha1:07563ec1b567a4ce4227fa0623a84ba93c1c0c13</id>
<content type='text'>
Bitbake is dropping the need for fetcher name iteration and multiple revisions
per url. Update the code to match (removal of the for loop).

(From OE-Core rev: 571e8c6730eb5b89f732d879487ae578ef04aaee)

Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>buildhistory.bbclass: Do not create annotated tags if tag.gpgSign is set</title>
<updated>2025-03-19T12:09:06+00:00</updated>
<author>
<name>Peter Kjellerstedt</name>
<email>peter.kjellerstedt@axis.com</email>
</author>
<published>2025-03-17T17:13:03+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=58deeacb07a00a9e7975d204b1ecd46c348b9eec'/>
<id>urn:sha1:58deeacb07a00a9e7975d204b1ecd46c348b9eec</id>
<content type='text'>
If tag.gpgSign is configured in Git's configuration, then creating the
build-minus-X tags will fail (if Git's core.editor is not configured) or
it will hang (when trying to open the editor). This is beacause
tag.gpgSign causes git tag to create annotated tags. To avoid this,
specify --no-sign as argument to git tag.

(From OE-Core rev: 7595a0a63a933af9dd9d1e458dc34a4ba80d9eae)

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>buildhistory: Drop git-gc call as obsolete</title>
<updated>2024-12-03T11:21:34+00:00</updated>
<author>
<name>Richard Purdie</name>
<email>richard.purdie@linuxfoundation.org</email>
</author>
<published>2024-12-02T23:17:31+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=e11cf39bf9e1282d00a1f1389e402520c997bdcb'/>
<id>urn:sha1:e11cf39bf9e1282d00a1f1389e402520c997bdcb</id>
<content type='text'>
buildhistory used to result in many individual objects in the repo which
could affect performance. This gc call was added over a decade ago to avoid
those performance issues. Modern git calls git-gc when needed and this kind
of workaround should no longer be needed.

There is a small chance this is contributing to problems with the autobuilder
buildhistory repositories, so simplifying the code may help that too.

(From OE-Core rev: 0a88f9109f7670a6b188463a19392d445af6ff40)

Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>buildhistory: Simplify intercept call sites and drop SSTATEPOSTINSTFUNC usage</title>
<updated>2024-09-04T11:38:44+00:00</updated>
<author>
<name>Richard Purdie</name>
<email>richard.purdie@linuxfoundation.org</email>
</author>
<published>2024-08-29T11:57:40+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=ead03cae663d19ce202cdfefad50b59ada7f1073'/>
<id>urn:sha1:ead03cae663d19ce202cdfefad50b59ada7f1073</id>
<content type='text'>
We planned to drop SSTATEPOSTINSTFUNC some time ago with the introduction of
postfuncs. Finally get around to doing that which should make the buildhistory
code a little more readable.

Unfortunately ordering the buildhistory function calls after the sstate ones is
difficult without coding that into the sstate class. This patch does that to
ensure everything functions as expected until we can find a better way. This is
still likely preferable than the generic sstate postfuncs support since the function
flow is much more readable.

(From OE-Core rev: c9e2a8fa2f0305ef1247ec405555612326f798f8)

Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>buildhistory: Restoring files from preserve list</title>
<updated>2024-08-07T14:47:15+00:00</updated>
<author>
<name>Pedro Ferreira</name>
<email>pedro.silva.ferreira@criticaltechworks.com</email>
</author>
<published>2024-08-06T12:59:55+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=7355465f9ead0c4969adbfc167d7f29d0ca1fc11'/>
<id>urn:sha1:7355465f9ead0c4969adbfc167d7f29d0ca1fc11</id>
<content type='text'>
This fix will ensure that, when we activate feature
`BUILDHISTORY_RESET`, files marked to keep on feature
`BUILDHISTORY_PRESERVE` will indeed exist is buildhistory
final path since they are moved to buildhistory/old but
not restored at any point.

(From OE-Core rev: 9f68a45aa238ae5fcdfaca71ba0e7015e9cb720e)

Signed-off-by: Pedro Ferreira &lt;Pedro.Silva.Ferreira@criticaltechworks.com&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>buildhistory: Fix intermittent package file list creation</title>
<updated>2024-08-07T14:47:15+00:00</updated>
<author>
<name>Pedro Ferreira</name>
<email>pedro.silva.ferreira@criticaltechworks.com</email>
</author>
<published>2024-08-06T12:59:54+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=738b3b1e6516625c7c99ff81ca28d183bc30e200'/>
<id>urn:sha1:738b3b1e6516625c7c99ff81ca28d183bc30e200</id>
<content type='text'>
The directory that buildhistory_list_pkg_files writes to during do_package
is created by do_packagedata so a clean buildhistory doesn't have
files-in-package written during the first build since packagedata happens
after do_package.

Ensure the output package folder is created to avoid missing
files-in-package.txt files.

Also it ensures that in case of `find` fails we leave with
a hard error instead of hiding the error on the for loop.

(From OE-Core rev: 8de9b8c1e199896b9a7bc5ed64967c6bfbf84bea)

Signed-off-by: Pedro Silva Ferreira &lt;Pedro.Silva.Ferreira@criticaltechworks.com&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>buildhistory: fix typos</title>
<updated>2024-07-04T21:56:15+00:00</updated>
<author>
<name>Ulrich Ölmann</name>
<email>u.oelmann@pengutronix.de</email>
</author>
<published>2024-07-03T14:28:06+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=b2bc061f7ce285010218c257c1c293f63db149ef'/>
<id>urn:sha1:b2bc061f7ce285010218c257c1c293f63db149ef</id>
<content type='text'>
Fix some simple typos found while looking through the code.

(From OE-Core rev: c23cb2d89fcd014d1f08944468c7e2d8a7f3e8b0)

Signed-off-by: Ulrich Ölmann &lt;u.oelmann@pengutronix.de&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>classes: Drop ';' delimiter from ROOTFS/IMAGE*COMMAND variables</title>
<updated>2023-09-09T21:14:41+00:00</updated>
<author>
<name>Richard Purdie</name>
<email>richard.purdie@linuxfoundation.org</email>
</author>
<published>2023-09-07T11:57:36+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=6fd8af0d30e555da55e5ca954009f32a84ced4a6'/>
<id>urn:sha1:6fd8af0d30e555da55e5ca954009f32a84ced4a6</id>
<content type='text'>
Originally these were shell functions but they have long since been processed by
bb.build.exec_func(). Since we no longer need shell syntax, we can drop the ';'
delimiters and just use a space separated string.

This cleans up the variable and quietly removes any stray ';' that do happen to
still make it in.

(From OE-Core rev: c3365dfd9ddd7fbe70b62e0f11166e57a8ca6f73)

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