Releases: mutablelogic/go-client
v1.4.3
v1.4.2
v1.4.1
v1.4.0
v1.3.8
Full Changelog: v1.3.7...v1.3.8
v1.3.7
Full Changelog: v1.3.6...v1.3.7
v1.3.6
v1.3.5
What's Changed
Core Client Enhancements and Testing:
- Added streaming multipart payloads for large file upload support (without loading the file into memory)
- Added tests for multipart payloads, including scenarios for large files, partial reads, and proper resource cleanup (
payload_test.go).
Documentation Updates:
- Updated the
README.mdto document the newclient.NewStreamingMultipartRequestmethod, including usage recommendations for large file uploads. - Removed the third-party dependencies section and associated license clarifications from the
README.md, streamlining the documentation.
Cleanup:
- Removed the entire
pkg/newsapidirectory, including all source files - Removed the WeatherAPI client implementation (
pkg/weatherapi/client.go). - Removed references to the NewsAPI and WeatherAPI clients from the main
README.md.
Full Changelog: v1.3.4...v1.3.5
v1.3.4
What's Changed
Error handling improvements: Replaced usage of custom error types (e.g., ErrBadParameter, ErrUnexpectedResponse) with standardized errors from the httpresponse package throughout client.go, resulting in more consistent and HTTP-aware error reporting. [1] [2] [3] [4] [5]
Redirects: Implemented manual redirect handling in the do function: follows up to 10 redirects, preserves method and headers for GET/HEAD, and strips sensitive headers (Authorization, Cookie) when redirecting to a different host for improved security. [1] [2]
Tracing and observability: Updated tracing logic to use the otel package instead of pkgotel, ensuring spans are created and finished correctly for each HTTP request and redirect. [1] [2] [3]
Content type and unmarshaling: Enhanced content type validation and error reporting, returning specific HTTP errors when unsupported media types are encountered. Improved custom unmarshaler handling to fall back to default decoding if "not implemented" is returned. [1] [2] [3]
Full Changelog: v1.3.3...v1.3.4