1.0.0
Initial release of Kuang — a small, protocol-oriented networking layer for Swift (iOS 15+, macOS 12+).
- Endpoint-driven — describe an API as an
enumconforming toEndpointProtocol;HTTPClientbuilds and executes theURLRequestwithasync/await - Typed responses — decoded with a configurable
JSONDecoder; transport and HTTP failures map to a singleNetworkErrortype - Pluggable authorization —
.none/.bearerToken/.custom(_:)per endpoint;BearerTokenAuthorizationProviderreads the token lazily on each request - Interceptors —
adapt/retryhooks viaNetworkInterceptorProtocol, with a built-inRetryInterceptorfor transient failures - Pluggable logging —
NetworkLoggingProtocol, shippingConsoleNetworkLoggerandDisabledNetworkLogger - Server error messages —
ErrorMessageParsingProtocolextracts them intolocalizedDescription; error strings localized in English and Brazilian Portuguese - Testable without the network — inject a fake session through the client's session protocol