vadimpiven
node_reqwest
Blog
Docs
Changelog
Blog
Docs
Changelog
Overview
Branches
Benchmarks
Runs
Performance History
Latest Results
fix(node): bind Dispatcher methods so Agent survives undici.compose() (#155) Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
main
14 hours ago
fix(node): bind Dispatcher methods so Agent survives undici.compose() (#155) Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
main
2 days ago
chore(deps): update all dependencies
renovate/all-dependencies
2 days ago
fix(node): bind Dispatcher methods so Agent survives undici.compose() (#155) Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
main
2 days ago
fix(node): address PR feedback — dispatch-through-proxy test, drop README requirements - Add regression test exercising a full request via `composed.dispatch()` through the undici compose Proxy (greptile P2). undici's `compose()` already short-circuits `dispatch` to the closure, so the brand check can't bite there today — but the constructor binds `dispatch` defensively and this test guards against future undici trap changes. - Drop the README Requirements section. Source of truth is `package.json` (engines, peerDependencies). Keeps the README from drifting on every undici/Node bump and resolves the gemini/greptile "undocumented breaking change" feedback by removing the duplicated docs entirely. The Gemini suggestion to use `Object.assign` to bind the methods is a false positive — `tsc --noEmit` is clean with the direct assignments. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
fix/agent-compose-private-field
2 days ago
fix(node): bind Dispatcher methods so Agent survives undici.compose() undici's `Dispatcher.compose()` returns a `Proxy` whose `get` trap forwards lookups to the wrapped dispatcher, so `composed.destroy()` ends up invoking `Agent#destroy` with `this === proxy`. The proxy doesn't carry the class's private-field brand, and the first `this.#destroyed = true` throws: TypeError: Cannot write private member #a to an object whose class did not declare it Bind `dispatch`, `close`, and `destroy` in the constructor so they re-route to the real Agent regardless of how they're invoked. Reported by a downstream integration (@milaboratories/pl-client) that calls `agent.compose(interceptors.retry()).destroy()` on a normal lifecycle path. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
fix/agent-compose-private-field
2 days ago
refactor: code-quality pass — crate split, undici 8 parity, benches (#154) Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
main
2 days ago
fix: PR review — mitmproxy CI, abort-end race, path normalization - docker-compose.proxied.yaml: mitmweb defaulted to connection_strategy=eager, which makes mitmproxy resolve and connect to the upstream during the CONNECT handshake. echo.lan does not resolve, so the CONNECT failed with "tunnel error: unsuccessful" before the addon's request() handler could short-circuit. Set connection_strategy=lazy so upstream contact is deferred until the inner request is read; the addon then sets flow.response and the upstream is never touched. Verified end-to-end with curl on the internal_net. - node/export/agent.ts #dispatchOnResponseEnd: when abort raced with a fully-processed response (Rust queues start→data→end via channel.send before JS observes the abort), the handler was permanently unsettled. Deliver controller.reason via #safeOnResponseError instead of dropping silently. - node/export/agent.ts dispatch: prefix options.path with `/` when missing. Rust concatenates origin+path verbatim, so an empty or relative path would yield a malformed URL. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
refactor/code-quality-pass
2 days ago
Latest Branches
CodSpeed Performance Gauge
+23%
chore(deps): update all dependencies
#124
2 days ago
2db6f60
renovate/all-dependencies
CodSpeed Performance Gauge
-1%
fix(node): bind Dispatcher methods so Agent survives undici.compose()
#155
2 days ago
35ed433
fix/agent-compose-private-field
CodSpeed Performance Gauge
N/A
refactor: code-quality pass — crate split, undici 8 parity, benches
#154
2 days ago
e0e49f5
refactor/code-quality-pass
© 2026 CodSpeed Technology
Home
Terms
Privacy
Docs