Releases: nodejs/undici
Releases · nodejs/undici
v3.3.5
4.0 Alpha - Dispatcher API & WASM Parser
This release contains multiple breaking changes. These should not affect the majority of users but it is recommended to consider the full change list.
Improvements
- Improved global API ergonomics (#740)
- Removed
--insecure-http-parser
support (3d1027f) - Pass headers as
Buffer
(#696) - Simplify api (#695)
- Accept callbacks in
Agent
close and destroy (d1a406f) - Added
closed
anddestroyed
properties onAgent
(#634) - Allow overriding timeouts per requests (#679)
- Update deps (#675, 8158def)
- Add undici mocking support (#587)
- Unify
Client
,Pool
&Agent
underDispatcher
(#544, #606, #620) - Add
connectTimeout
(#619) - Follow redirects (#603) (#769)
- Client lifecycle diagram (#567)
- Docs improvements and site (undici.nodejs.org) (#550, #565, #567, #582, #585, #596, 5095a2b, #627)
- Reuse tls sessions across clients of a connection pool (#588)
- Add
strictContentLength
option to treat request content length mismatch as warning (#586) - Connecting through a proxy (#568)
- Agent connect/disconnect events (#558)
- Use llhttp WASM build for http parsing (#564, #611, #642, #648, #680)
- Only append non empty search to path (e8ece2a)
- Add factory arg to
Pool
andAgent
(761738a) - Use husky (#605)
- Add pr and issue templates (#608)
- Allow process to exit when no requests are pending (#772)
- Add
data
to parser errors (7a750ba) - Try to re-use timer when possible (#729)
- Make request errors explicit (#777)
Fixes
- Don't emit
'disconnect'
without preceding'connect'
(#771) - Don't fail when response ends before request body (#709)
- Don't
headersTimeout
while writing request body (#646) - Emit
'disconnect'
afterdestroy()
(#665) - Refresh timeout timer on parser resume (#653)
Agent
deep copy options (#636)- Kill socket on request abort (#689)
- Add more strict check for streams in
util.isStream()
(#628) - Remove Node 10 support (#623)
- Remove the esm wrapper, rely on commonjs auto detection (#599)
- Always detach socket on upgrade (252b676)
- Invoke
onUpgrade
after detach (641e018) - Missing client arg (#555)
- Reduce
queueMicrotask
scope (#572) - Wait for queued handlers to run before onError (#548)
- Add
BodyTimeoutError
to error types (#546) - Omit
path
inundici.request
opts (ts) (#559) - Don't queue if destroyed (3d002c1)
Agent.dispatch
catch error (8c0051f)
v3.3.3
v3.3.2
v3.3.1
v3.3.0
v3.2.0 - Agent
Improvements:
- Agent and global methods (#508).
v3.1.0
📚 PR:
- fix: throw if passed keepAlive
- doc: fix grammar
- fix: don't fail socket if onComplete throws
- fix: throw if passed requestTimeout
- fix: improve not support arg error message
- fix: types
- perf: check aborted earlier
- perf: avoid closure capture
- Fix capitalization of 'errors' in types (#503)
- Two small grammar nits (#505)
- feat(pool): forward connect and disconnect events (#510)
- fix(types): Pool URL (#507)
- Do not run .mjs in test. Add npm test to CI. (#511)
v3.0.0
Fixes:
- Replace
socketTimeout
withbodyTimeout
(#460). - Replace
keepAlive
option withpipelining: 0
(#459). - Rename
idleTimeout
option tokeepAliveTimeout
(#461). - Retry
idempotent
with original body (#471). - Add
writableNeedDrain
support toClient.stream
(#442). - Free parser when detaching.
- Throw if passed
maxKeepAliveTimeout
,idleTimeout
, orsocketTimeout
.
Improvements:
- Add trailers support to
Client.request
(#493). - Misc refactoring.