v3.7.1: `options.encoding = 'utf8'` must not touch original options