All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
- Fixed a bug in compression middleware which caused empty body to send on retries
- Added
http.request.resend_delay
as a span attribute for the retry handler - Changed the
http.retry_count
span attribute tohttp.request.resend_count
to conform to OpenTelemetry specs.
- Fixed a bug to prevent double request compression by the compression handler.
- Prevent compression if Content-Range header is present.
- Fix bug which leads to a missing Content-Length header.
- Allow custom response handlers to return nil result values.
- Support retry after as a date.
- Fix bug where overriding http.DefaultTransport with an implementation other than http.Transport would result in an interface conversion panic
- Fix bug with headers inspection handler using wrong key.
- Fix bug that resulted in the error "content is empty" being returned instead of HTTP status information if the request returned no content and an unsuccessful status code.
- Added support to override default middleware with function
GetDefaultMiddlewaresWithOptions
.
- Fix bug passing no timeout in client as 0 timeout in context .
- Adds support for XXX status code.
- Changed the code by replacing ioutil.ReadAll and ioutil.NopCloser with io.ReadAll and io.NopCloser, respectively, due to their deprecation.
- Added response headers and status code to returned error in
throwIfFailedResponse
.
- Added headers inspection middleware and option.
- Bug Fix: Update Host for Redirect URL in go client.
- GA Release.
- Adds Response Headers to the ApiError returned on Api requests errors.
- Exit retry handler earlier if context is done.
- Adds exported method
ReplacePathTokens
that can be used to process url replacement logic globally.
- Context deadline for requests defaults to client timeout when not provided.
- Adds ResponseStatusCode to the ApiError returned on Api requests errors.
- Added UrlReplaceHandler that replaces segments of the URL.
- Added implementation methods for backing store.
- Added a method to convert abstract requests to native requests in the request adapter interface.
- Added User Agent handler to add the library information as a product to the header.
- Fixed a bug where retry handling wouldn't rewind the request body before retrying.
- Added support for multi-valued request headers.
- Fixed http.request_content_length attribute name for tracing
- Added support for tracing via OpenTelemetry.
- Fixed bug for http go where response handler was overwritten in context object.
- Added support for constructing a proxy authenticated client.
- Updated reference to abstractions.
- Added support for additional status codes.
- Adds context param in send async methods
- Default 100 secs timeout for all request with a default context.
- Fixed a bug where an error would be returned for a 201 response with described response.
- Adds a chaos handler optional middleware for tests
- Fixed an issue where response error was ignored for Patch calls
- Updated abstractions and yaml dependencies.
- Adds support for enum or enum collections responses
- Fixed a bug where CAE support would leak connections when retrying.
- Adds support for continuous access evaluation.
- Upgraded to abstractions 0.4.0.
- Upgraded to go 18.
- Added support for decoding special characters in query parameters names.
- Initial tagged release of the library.