snapcraft fails on s390x with utf8 error
Metadata
Current evaluation
Snapcraft's s390x UTF-8/surrogate failure was fixed by merged PR snapcore/snapcraft#838, adding encoding-aware file handling in pluginhandler (commit 01848ee71).
Resolution: closed resolved
Reason: PR snapcore/snapcraft#838 was merged as commit 01848ee71. Its pluginhandler change accounted for file encoding, resolving the LP #1628457 build failure.
Evaluated by: mr-cal-bot
No scores available.
Issue body
with snapcraft 2.18 landing in xenial-updates last night the daily build of ubuntu-core started to fail reliably on the s390x architecture with the following traceback:
Staging livebuild
Priming livebuild
'utf-8' codec can't encode character '\udcc5' in position 87: surrogates not allowed
Traceback (most recent call last):
File "/usr/share/launchpad-buildd/slavebin/buildsnap", line 191, in main
builder.build()
File "/usr/share/launchpad-buildd/slavebin/buildsnap", line 137, in build
["snapcraft"], path=os.path.join("/build", self.name))
File "/usr/share/launchpad-buildd/slavebin/buildsnap", line 88, in run_build_command
self.chroot(["/bin/sh", "-c", command], echo=echo)
File "/usr/share/launchpad-buildd/slavebin/buildsnap", line 66, in chroot
"/usr/bin/sudo", "/usr/sbin/chroot", self.chroot_path] + args)
File "/usr/lib/python2.7/subprocess.py", line 541, in check_call
raise CalledProcessError(retcode, cmd)
CalledProcessError: Command '['/usr/bin/sudo', '/usr/sbin/chroot', '/home/buildd/build-SNAPBUILD-5660/chroot-autobuild', 'linux64', '/bin/sh', '-c', 'cd /build/ubuntu-core && snapcraft']' returned non-zero exit status 1
Revoking proxy token...
a build log is at https://launchpadlibrarian.net/287056073/buildlog_snap_ubuntu_xenial_s390x_ubuntu-core_BUILDING.txt.gz
as https://code.launchpad.net/~snappy-dev/+snap/ubuntu-core shows all other architectures build fine.
this used to work well with snapcraft 2.17 and before.
Evaluation history
| Date | Model | Scores | Action | Summary |
|---|---|---|---|---|
| stealth/space-bunny-alpha | — | closed resolved | Snapcraft's s390x UTF-8/surrogate failure was fixed by merged PR snapcore/snapcraft#838, adding encoding-aware file handling in pluginhandler (commit 01848ee71). | |
| stealth/space-bunny-alpha | — | closed resolved | s390x ubuntu-core daily build failed with a surrogate/utf-8 encode error. Fixed by snapcore/snapcraft PR #838, merged as commit 01848ee71 "pluginhandler: take the file encoding into account", which made the file encoding explicit instead of defaulting to ascii. | |
| stealth/space-bunny-alpha | — | closed resolved | s390x ubuntu-core builds failed under snapcraft 2.18 with a 'utf-8' codec surrogate error; fixed by snapcraft PR #838 (commit 01848ee71, 'pluginhandler: take the file encoding into account'), which resolved LP bug #1628457. | |
| stealth/space-bunny-alpha | — | closed stale | Closed without a documented fix after nearly 10 years of inactivity; no resolving PR, commit, version, or closing comment was recorded for the Snapcraft 2.18 s390x UTF-8 failure. | |
| qwen/qwen3.6-35b-a3b | — | — | Closed without a fix. The report detailed a UTF-8 encoding error in snapcraft 2.18 causing s390x builds to fail. The issue was abandoned with no code changes or resolution provided. | |
| qwen/qwen3.6-35b-a3b | — | — | Closed without resolution. The UTF-8 encoding error causing snapcraft 2.18 build failures on s390x was not addressed, indicating the issue was abandoned. |
Update history
| Date | Change |
|---|---|
| created |
Related work
-
Likely Fixed By:
snapcore/snapcraft#838
(confidence 99%)
Merged encoding-aware pluginhandler fix explicitly linked from LP #1628457.
Related issues
| Issue | Project | State | Summary | Similarity |
|---|---|---|---|---|
| #1570835 snapcraft 2.8 fails on s390x | snapcraft (launchpad) | closed | Snapcraft 2.8's missing s390x handling was fixed by ubuntu-core/snapcraft PR #461, merged as commit d3c242fa2. | |
| #1699218 The snapcore/snapcraft docker image fails because it's not setting UTF-8 | snapcraft (launchpad) | closed | Fixed by merged snapcore/snapcraft PR #1370 (commit 778e4e234), adding a Dockerfile with the UTF-8 environment required by Snapcraft 2.31. | |
| #1662456 snapcraft fails if desktop file included "ascii" cannot decode byte | snapcraft (launchpad) | closed | Fixed by snapcraft PRs #1304 and #1309: cleanbuild containers use C.UTF-8, and desktop files are explicitly read and written as UTF-8. | |
| #1746100 snapcraft should not dump stacktrace on missing LANG | snapcraft (launchpad) | closed | Snapcraft now defaults to C.UTF-8 when locale variables are unset, preventing the Click ASCII traceback. Fixed by snapcore/snapcraft#1893 in commit 0d5b88a41. |