Skip to content

Node.js 26 support: native build fails (NAN vs new V8 GetAlignedPointerFromInternalField) #1145

Description

@wouter-leistra

Environment

  • node-rdkafka: 3.6.1 (latest)
  • Node.js: 26.4.0 (V8 14.x)
  • OS: Linux (Ubuntu, GitHub Actions ubuntu-latest) and macOS
  • node-gyp: 11.4.2

Problem

node-rdkafka@3.6.1 fails to compile from source on Node.js 26. Node 26's V8 changed the signature of GetAlignedPointerFromInternalField (it now takes additional arguments), and the bundled NAN-based bindings don't compile against it:

/home/runner/.cache/node-gyp/26.4.0/include/node/v8-object.h:558:26:
  note: candidate expects 3 arguments, 1 provided
...
make: *** [node-librdkafka.target.mk:129: Release/obj.target/node-librdkafka/src/binding.o] Error 1
gyp ERR! build error
gyp ERR! stack Error: `make` failed with exit code: 2
gyp ERR! node -v v26.4.0
gyp ERR! node-gyp -v v11.4.2
gyp ERR! not ok

There is also no prebuilt binary published for Node 26 (ABI 137), so installs fall back to a source build and fail.

Impact

Any project on Node 26 (the current release; Active LTS on 2026-10-28) cannot npm/yarn install node-rdkafka, which blocks CI, container base images, and runtime.

Ask

Could node-rdkafka add Node.js 26 support — either by updating/replacing the NAN usage (NAN is the root cause here; migrating the bindings to Node-API / node-addon-api would be forward-compatible across V8 changes) and/or publishing Node 26 prebuilds?

Related upstream context on the same NAN/V8 break: nodejs/node#61174.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions