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 Description
This PR ports the complete custom DNS lookup and httpclient
proxy/interceptor module design from 3.x to the next branch.
Key changes:
Implements createTransparentProxy utility for lazy, mm()-compatible
httpClient instantiation.
Refactors app.httpClient to use the proxy, enabling plugins to modify
config before real client creation.
Adds support for config.httpclient.interceptors (undici dispatcher
interceptors) and applies them in httpclient constructor.
Provides full unit tests for proxy and interceptor logic.
Ensures all changes are TypeScript, ESM, and monorepo compatible.
All tests pass except for known unrelated flaky cases.
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
* **New Features**
* Add middleware-style HTTP client interceptors via configuration to
modify outgoing requests.
* HTTP client now lazily initializes on first use (deferred
construction).
* Public utility for creating transparent/lazy proxies (with
configurable binding) is now exposed from the package entrypoint.
* **Tests**
* New test suites and app fixtures validating interceptor behavior,
proxy semantics, lazy initialization, and compatibility with mocking
utilities.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
---------
Co-authored-by: MK (fengmk2) <fengmk2@gmail.com>
0 commit comments