<feed xmlns='http://www.w3.org/2005/Atom'>
<title>u-boot.git/tools/buildman/builderthread.py, branch v2022.07</title>
<subtitle>Unnamed repository; edit this file 'description' to name the repository.</subtitle>
<id>http://cgit.235523.xyz/u-boot.git/atom/tools/buildman/builderthread.py?h=v2022.07</id>
<link rel='self' href='http://cgit.235523.xyz/u-boot.git/atom/tools/buildman/builderthread.py?h=v2022.07'/>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/'/>
<updated>2022-02-09T19:26:12Z</updated>
<entry>
<title>patman: Convert camel case in gitutil.py</title>
<updated>2022-02-09T19:26:12Z</updated>
<author>
<name>Simon Glass</name>
<email>sjg@chromium.org</email>
</author>
<published>2022-01-29T21:14:11Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/commit/?id=0157b187f45c00ffb3e85c7f5c33808454243608'/>
<id>urn:sha1:0157b187f45c00ffb3e85c7f5c33808454243608</id>
<content type='text'>
Convert this file to snake case and update all files which use it.

Signed-off-by: Simon Glass &lt;sjg@chromium.org&gt;
</content>
</entry>
<entry>
<title>patman: Convert camel case in command.py</title>
<updated>2022-02-09T19:26:12Z</updated>
<author>
<name>Simon Glass</name>
<email>sjg@chromium.org</email>
</author>
<published>2022-01-29T21:14:05Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/commit/?id=d98006997c342435f906317758292fe97c520b47'/>
<id>urn:sha1:d98006997c342435f906317758292fe97c520b47</id>
<content type='text'>
Convert this file to snake case and update all files which use it.

Signed-off-by: Simon Glass &lt;sjg@chromium.org&gt;
</content>
</entry>
<entry>
<title>buildman: Allow adjusting board config on the fly</title>
<updated>2022-02-09T04:07:59Z</updated>
<author>
<name>Simon Glass</name>
<email>sjg@chromium.org</email>
</author>
<published>2022-01-22T12:07:33Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/commit/?id=2b4806e481026df7364cb9ed53ffc577e3dc59bb'/>
<id>urn:sha1:2b4806e481026df7364cb9ed53ffc577e3dc59bb</id>
<content type='text'>
Add a -a option to specify changes to the config before the build
commences. For example

   buildman -a ~CONFIG_CMDLINE

disables CONFIG_CMDLINE before doing the build.

This makes it easier to try things out as well as to write tests without
creating a new board or manually manging the .config file.

Signed-off-by: Simon Glass &lt;sjg@chromium.org&gt;
</content>
</entry>
<entry>
<title>buildman: Provide a hint on how to debug thread crashes</title>
<updated>2022-02-09T04:07:59Z</updated>
<author>
<name>Simon Glass</name>
<email>sjg@chromium.org</email>
</author>
<published>2022-01-22T12:07:32Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/commit/?id=8ca0931a913d5e25232c454ceca70635c49058dc'/>
<id>urn:sha1:8ca0931a913d5e25232c454ceca70635c49058dc</id>
<content type='text'>
If a thread crashes it is helpful to try the operation again with
threading disabled. Add a hint about that.

Signed-off-by: Simon Glass &lt;sjg@chromium.org&gt;
</content>
</entry>
<entry>
<title>buildman: Write output even on fatal error</title>
<updated>2021-10-20T08:59:54Z</updated>
<author>
<name>Simon Glass</name>
<email>sjg@chromium.org</email>
</author>
<published>2021-10-20T03:43:23Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/commit/?id=bafdeb45462683692e0ae217d4683b8062c59608'/>
<id>urn:sha1:bafdeb45462683692e0ae217d4683b8062c59608</id>
<content type='text'>
At present buildman does not write any output (to the 'out' and 'err)
files if the build terminates with a fatal error. This is to avoid adding
lots of spam to the logs.

However there are times when this is actually useful, such as when the
build fails for an obscure reason such as a Kconfig loop.

Update the logic to always write the output, so that the user gets a clue
as to what is happening.

Signed-off-by: Simon Glass &lt;sjg@chromium.org&gt;
</content>
</entry>
<entry>
<title>buildman: Use bytes for the environment</title>
<updated>2021-04-29T10:23:39Z</updated>
<author>
<name>Simon Glass</name>
<email>sjg@chromium.org</email>
</author>
<published>2021-04-11T04:27:28Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/commit/?id=f1a83abe60b4ef8b2652e4c8e1d11a9afc909b71'/>
<id>urn:sha1:f1a83abe60b4ef8b2652e4c8e1d11a9afc909b71</id>
<content type='text'>
At present we sometimes see problems in gitlab where the environment has
0x80 characters or sequences which are not valid UTF-8.

Avoid this by using bytes for the environment, both internal to buildman
and when writing out the 'env' file. Add a test to make sure this works
as expected.

Reported-by: Marek Vasut &lt;marex@denx.de&gt;
Fixes: e5fc79ea718 ("buildman: Write the environment out to an 'env' file")
Signed-off-by: Simon Glass &lt;sjg@chromium.org&gt;
</content>
</entry>
<entry>
<title>buildman: Handle exceptions in threads gracefully</title>
<updated>2021-04-29T10:23:39Z</updated>
<author>
<name>Simon Glass</name>
<email>sjg@chromium.org</email>
</author>
<published>2021-04-11T04:27:27Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/commit/?id=8116c78ffddc71dec8f793339648a5239a5d9643'/>
<id>urn:sha1:8116c78ffddc71dec8f793339648a5239a5d9643</id>
<content type='text'>
There have been at least a few cases where an exception has occurred in a
thread and resulted in buildman hanging: running out of disk space and
getting a unicode error.

Handle these by collecting a list of exceptions, printing them out and
reporting failure if any are found. Add a test for this.

Signed-off-by: Simon Glass &lt;sjg@chromium.org&gt;
</content>
</entry>
<entry>
<title>buildman: Use common code to send an result</title>
<updated>2021-04-29T10:23:39Z</updated>
<author>
<name>Simon Glass</name>
<email>sjg@chromium.org</email>
</author>
<published>2021-04-11T04:27:26Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/commit/?id=ab9b4f35e38bf9725a13d2e487d1d5962ab412bb'/>
<id>urn:sha1:ab9b4f35e38bf9725a13d2e487d1d5962ab412bb</id>
<content type='text'>
At present the code to report a build result is duplicated. Put it in a
common function to avoid this.

Signed-off-by: Simon Glass &lt;sjg@chromium.org&gt;
</content>
</entry>
<entry>
<title>buildman: Tidy up a few comments</title>
<updated>2021-04-29T10:23:39Z</updated>
<author>
<name>Simon Glass</name>
<email>sjg@chromium.org</email>
</author>
<published>2021-04-11T04:27:25Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/commit/?id=249933136f860eb35f8729f4774b7058744bf31f'/>
<id>urn:sha1:249933136f860eb35f8729f4774b7058744bf31f</id>
<content type='text'>
Add some function comments which are missing, or missing arguments.

Signed-off-by: Simon Glass &lt;sjg@chromium.org&gt;
</content>
</entry>
<entry>
<title>buildman: Add an encoding to the out-env file</title>
<updated>2021-04-06T04:33:19Z</updated>
<author>
<name>Simon Glass</name>
<email>sjg@chromium.org</email>
</author>
<published>2021-03-26T01:39:39Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/commit/?id=5f86454b3da54586513ab83941a021cb79c383c7'/>
<id>urn:sha1:5f86454b3da54586513ab83941a021cb79c383c7</id>
<content type='text'>
The environment may contain some unicode characters. At least that is what
seemed to happen on one commit:

Building current source for 1 boards (0 threads, 64 jobs per thread)
    0    0    0 /1       -1      (starting)
Traceback (most recent call last):
  File ".../tools/buildman/buildman", line 64, in &lt;module&gt;
    ret_code = control.DoBuildman(options, args)
  File "tools/buildman/control.py", line 372, in DoBuildman
    options.keep_outputs, options.verbose)
  File ".../tools/buildman/builder.py", line 1704, in BuildBoards
    results = self._single_builder.RunJob(job)
  File ".../tools/buildman/builderthread.py", line 526, in RunJob
    self._WriteResult(result, job.keep_outputs, job.work_in_output)
  File ".../tools//buildman/builderthread.py", line 349, in _WriteResult
    print('%s="%s"' % (var, env[var]), file=fd)
UnicodeEncodeError: 'ascii' codec can't encode characters in position
	311-312: ordinal not in range(128)

The problem defies repetition with any change at all to buildman. But
let's set an encoding in any case.

Signed-off-by: Simon Glass &lt;sjg@chromium.org&gt;
</content>
</entry>
</feed>
