[DEP0111] deprecation warning from restify's dependency on node 16

Author: pcwiekCreated May 19, 2021Updated Jun 1, 2025
  • Used appropriate template for the issue type
  • Searched both open and closed issues for duplicates of this issue
  • Title adequately and concisely reflects the feature or the bug

Restify Version: 8.5.1 Node.js Version: 16.1.0

Expected behaviour

No node deprecation warnings. This is mostly important in the longer term, because if the subsequent LTS version drops the deprecated functionality, that means that restify will be incompatible with node 18.

Actual behaviour

When starting the server:

(node:1751) [DEP0111] DeprecationWarning: Access to process.binding('http_parser') is deprecated.
    at process.binding (node:internal/bootstrap/loaders:133:17)
    at Object.<anonymous> (/dist/node_modules/http-deceiver/lib/deceiver.js:22:24)
    // cut short

Repro case

Installing restify 8.5.1 and spinning up a restify server on node 16 seems to be enough to trigger the warning.

Cause

Dependency chain: restify -> spdy -> http-deceiver

Are you willing and able to fix this?

I don't think I'm able to. The core functionality that accesses process.binding lives in the http-deceiver package, which is part of spdy. Unless the behavior can be changed there, or the whole dependency can be replaced, I'm not sure what else can be done.