Skip to content

Common Errors

See the Error reference for a complete list of API error codes. The most common ones in practice:

The compiler exited with an error. Read the compile.log messages — they contain the full compiler output. Common causes:

  • TypeScript type errors — Pure does not type-check, but the underlying Rust compiler may reject code that depends on evaluated types at compile time.
  • Missing or incompatible dependency — a package imports something that doesn’t work in Pure.
  • Out of memory — the compile job exceeded the 2 GiB memory limit. Try reducing the size of your dependency tree.
  • Timeout — the compile job exceeded 20 minutes. This is unusual for standard projects; contact support if it happens consistently.
  • --libc glibc targeting a glibc version below 2.29 — Pure’s own runtime requires glibc ≥ 2.29 to link (undefined symbol: posix_spawn_file_actions_addchdir_np is this failure). 2.29 is both the default and the enforced floor (server-side), so this shouldn’t be reachable in normal use — if you see it, contact support.

The tarball was not fully uploaded within 120 seconds. Causes:

  • Network throttling or a slow connection.
  • A bug in client code that does not send compile.upload.done after the last binary frame.
  • A very large tarball (> 20 MB uncompressed). Try excluding node_modules from the tarball and using pre_command: "npm ci" to reinstall them on the worker.

These are transient infrastructure errors. Retry after a few seconds. If they persist for more than a few minutes, check the Pure status page.


The CLI is not on your PATH. If you installed via npm:

Terminal window
# Check where npm global packages are installed
npm root -g
# Add it to PATH if needed
export PATH="$(npm root -g)/../bin:$PATH"

Your stored key (OS keychain, or ~/.config/pure/credentials as a fallback — see Log in) is invalid or has been revoked. Run pure login again to sign in and mint a fresh one:

Terminal window
pure login

Or set PURE_API_KEY in the environment to override the stored key.


npm ERR! 404 Not Found — https://registry.pure.dev/...

Section titled “npm ERR! 404 Not Found — https://registry.pure.dev/...”

The package does not exist in the Pure registry and could not be fetched from npmjs. Possible causes:

  • Typo in the package name.
  • The package exists on npmjs but has never been requested through the Pure registry. Try again — the registry will proxy it on first request.
  • The package is private and not published to Pure’s registry.

Your registry auth token is missing or invalid. Check your ~/.npmrc for //registry.pure.dev/:_authToken=.... See Configure npm for setup instructions.


error while loading shared libraries: libm.so.6

Section titled “error while loading shared libraries: libm.so.6”

You built with --libc glibc and are running the binary on a musl-based system (Alpine Linux) — the default build (musl, fully static) doesn’t have this problem. Either rebuild without --libc glibc, or install gcompat on the target host:

Terminal window
apk add gcompat

See OS support for details.

This is a bug — please report it. Include the binary, the source code, and the steps to reproduce. See Support.