Bug 244682
| Summary: | [GLib][webkitpy] Script apply-build-revision-to-files.py does not work with Python 3.10 | ||
|---|---|---|---|
| Product: | WebKit | Reporter: | Adrian Perez <aperez> |
| Component: | Tools / Tests | Assignee: | Adrian Perez <aperez> |
| Status: | RESOLVED CONFIGURATION CHANGED | ||
| Severity: | Normal | ||
| Priority: | P2 | ||
| Version: | WebKit Nightly Build | ||
| Hardware: | Unspecified | ||
| OS: | Unspecified | ||
| See Also: | https://bugs.webkit.org/show_bug.cgi?id=242191 | ||
Adrian Perez
Traceback (most recent call last):
File "/home/aperez/buildroot/output-rpi4test/build/wpewebkit-custom/Tools/glib/apply-build-revision-to-files.py", line 68, in <module>
sys.exit(main(sys.argv[1:]))
File "/home/aperez/buildroot/output-rpi4test/build/wpewebkit-custom/Tools/glib/apply-build-revision-to-files.py", line 41, in main
build_revision = get_build_revision()
File "/home/aperez/buildroot/output-rpi4test/build/wpewebkit-custom/Tools/glib/apply-build-revision-to-files.py", line 32, in get_build_revision
return str(repository.find("HEAD", include_log=False))
File "/home/aperez/buildroot/output-rpi4test/build/wpewebkit-custom/Tools/Scripts/libraries/webkitscmpy/webkitscmpy/local/git.py", line 871, in find
return self.commit(hash=output.stdout.rstrip(), include_log=include_log, include_identifier=include_identifier)
File "/home/aperez/buildroot/output-rpi4test/build/wpewebkit-custom/Tools/Scripts/libraries/webkitscmpy/webkitscmpy/local/git.py", line 685, in commit
cached_identifier = self.cache.to_identifier(hash=hash, branch=branch) if self.cache else None
File "/home/aperez/buildroot/output-rpi4test/build/wpewebkit-custom/Tools/Scripts/libraries/webkitscmpy/webkitscmpy/local/git.py", line 295, in to_identifier
self.populate(branch=branch)
File "/home/aperez/buildroot/output-rpi4test/build/wpewebkit-custom/Tools/Scripts/libraries/webkitscmpy/webkitscmpy/local/git.py", line 114, in populate
self.populate(branch=self.repo.default_branch, remote=self.repo.default_remote)
File "/home/aperez/buildroot/output-rpi4test/build/wpewebkit-custom/Tools/Scripts/libraries/webkitscmpy/webkitscmpy/local/git.py", line 162, in populate
line = log.stdout.readline()
File "/home/aperez/buildroot/output-rpi4test/per-package/wpewebkit/host/lib/python3.10/codecs.py", line 322, in decode
(result, consumed) = self._buffer_decode(data, self.errors, final)
UnicodeDecodeError: 'utf-8' codec can't decode byte 0xea in position 4655: invalid continuation byte
| Attachments | ||
|---|---|---|
| Add attachment proposed patch, testcase, etc. |
Adrian Perez
Populating the cache only needs to parse identifiers which should be
exclusively ASCII, so as long as we get to read those, it does not
matter what's the encoding of Git commit logs. I think it would be
good to use an ASCII stream reader that ignores decoding errors to
make the code more robust to whatever oddball content may be present
in commit logs.
Adrian Perez
Pull request: https://github.com/WebKit/WebKit/pull/3931
Adrian Perez
This should not be an issue after 254851@main