Node 22.7 Broke Character Encoding

CI/CD
Jul 8, 2025
Dan Manges
Node 22.7 Broke Character Encoding

We regularly update all of our dependencies via dependabot, Renovate, or our own automation on RWX to open PRs.

Quickly adopting security and bug fixes is a good engineering practice. It's also helpful to identify potential issues with upgrades as soon as possible.

Noticing a Character Encoding Issue

Last August, we noticed an encoding issue in our logs. Note the funky question mark characters towards the bottom of the logs.

Kyle notices an encoding issue

Node 22.7 Buffer Issues

Earlier that day, we had upgraded from Node 22.6.0 to Node 22.7.0. It turns out, that version of Node introduced several encoding issues.

Hi! v22.7.0 has a few known buffer issues

Minor Versions Matter

Minor versions of runtimes can introduce bugs. We've also previously run into an issue due to an inconsistency in a patch version.

As a best practice, ensure a consistent version is used across all environments. Especially be sure to test against the version that you'll use in production. Pin to a specific version rather than "22.x"

Tool Versions

.tool-versions is a common file used for configuring dependencies. It works with asdf, mise, other runtime version managers.

.tool-versions
nodejs 22.17.0

You can easily use the .tool-versions file in your RWX workflows with the rwx/tool-versions package.

.rwx/ci.yml
tasks:
- key: code
call: git/clone 1.6.7
with:
repository: ...
- key: tool-versions
use: code
call: rwx/tool-versions 1.0.4
filter: [.tool-versions]
- key: node
call: nodejs/install 1.1.7
with:
node-version: ${{ tasks.tool-versions.values.nodejs }}

Never miss an update

Get the latest releases and news about RWX and our ecosystem with our newsletter.

Share this post

Enjoyed this post? Pleas share it on your favorite social network!

Related posts

Read more on updates and advice from the RWX engineering team

See all posts
Using an MCP Server to Fix Tests that Failed on CI
CI/CD

Using an MCP Server to Fix Tests that Failed on CI

We shipped an MCP Server via the RWX CLI. Use it to have AI fix tests that failed on CI, powered by RWX tracking test failures as a semantic output.

Aug 8, 2025
Read now
tmpfs for Super Fast Writes
CI/CD

tmpfs for Super Fast Writes

To accelerate performance in high iops scenarios like an npm install, we built support for running tasks using tmpfs.

Aug 6, 2025
Read now
RWX July 2025 Recap: ARM runners, VS Code Extension, and more
CI/CD

RWX July 2025 Recap: ARM runners, VS Code Extension, and more

In July we released ARM runners, a VS Code Extension, and an option to start runs manually. Stay tuned for progress on a new way to build container images.

Aug 4, 2025
Read now