You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
PR #2XXX (#2129) shipped http.Agent / https.Agent as a constructible class with a real getName(options) and chainable no-op methods. That unblocks the basic agent-getname test family.
What Perry's Agent does NOT do today:
Socket pooling — http.request({ agent }) opens a fresh reqwest connection every call, ignoring the agent. keepAlive/maxSockets/maxFreeSockets/maxTotalSockets are stored as state but not enforced.
agent.sockets / agent.freeSockets / agent.requests accessors — return undefined (no pool state to expose).
agent.createConnection / agent.createSocket overrides — tests like test-http-agent-close.js rewrite these to inject error paths; Perry stores the assignment but never calls back into it.
These all require a real connection pool wired into the request path (js_http_request / js_https_request). That's a much larger change than the constructor + metadata work in #2129's first PR.
Summary
PR #2XXX (#2129) shipped
http.Agent/https.Agentas a constructible class with a realgetName(options)and chainable no-op methods. That unblocks the basicagent-getnametest family.What Perry's Agent does NOT do today:
http.request({ agent })opens a fresh reqwest connection every call, ignoring the agent.keepAlive/maxSockets/maxFreeSockets/maxTotalSocketsare stored as state but not enforced.agent.sockets/agent.freeSockets/agent.requestsaccessors — return undefined (no pool state to expose).agent.createConnection/agent.createSocketoverrides — tests liketest-http-agent-close.jsrewrite these to inject error paths; Perry stores the assignment but never calls back into it.new http.Agent({ maxTotalSockets: -1 })doesn't throwERR_OUT_OF_RANGE(matchestest-http-agent-maxtotalsockets.js'sassert.throwsexpectations); see also stdlib doesn't throw Node arg-validation errors (ERR_INVALID_ARG_TYPE/EBADF/...) on bad input — ~85 tests across fs/buffer/net/http/crypto/zlib/process #2013 for the broader arg-validation gap.Scope
These all require a real connection pool wired into the request path (
js_http_request/js_https_request). That's a much larger change than the constructor + metadata work in #2129's first PR.Related