What's Changed
- Fix OAuth1 double-encoding of RFC 3986 special characters in URL paths by @Copilot in #2341
- Fix pipe char encoding issue by @alexeyzimarev in #2345
- Fix default parameter merging bugs, add MergedParameters to RestResponse by @alexeyzimarev in #2349
- Fix ResponseUri incorrect when FollowRedirects=false by @alexeyzimarev in #2350
- Document Timeout property behavior for RestClientOptions and RestRequest by @Copilot in #2331
- Restore 2-param AddCookie(name, value) overload by @alexeyzimarev in #2351
- Surface root cause in ErrorMessage for wrapped exceptions by @alexeyzimarev in #2352
- Fix credential property order on HttpClientHandler by @alexeyzimarev in #2353
- Use InvariantCulture for parameter value formatting by @alexeyzimarev in #2354
- Use descriptive ErrorMessage for timed out requests by @alexeyzimarev in #2356
- Quote multipart form parameter names by default (RFC 7578) by @alexeyzimarev in #2357
- Update CLAUDE.md with project guidance by @alexeyzimarev in #2358
- Implement custom redirect handling to fix lost Set-Cookie on redirects by @alexeyzimarev in #2360
- Stop modifying HttpClient.DefaultRequestHeaders by @alexeyzimarev in #2363
- Add OAuth2 token lifecycle authenticators (#2361) by @alexeyzimarev in #2362
- Add missing ConfigureAwait(false) to prevent deadlocks by @alexeyzimarev in #2367
- Add v114 documentation and Docusaurus version snapshot by @alexeyzimarev in #2368
Full Changelog: 113.1.0...114.0.0