Both the async and serial cmd/shell steps should initialise their default encoding from config.default_cmd_encoding
.
config.default_cmd_encoding
initialises from the env var DEFAULT_CMD_ENCODING
. It defaults to None.
Async cmds will interpret this None as locale.getpreferredencoding(False)
.
For sync cmds can pass through None to the underlying subprocess API and the python runtime will take care of the using the default system locale.