Skip to content

4.0.0

Choose a tag to compare

@plajdo plajdo released this 15 Aug 09:10
· 32 commits to main since this release
781e523

What's Changed

  • Swift 6.2 & GoodNetworking 4.0 by @plajdo in #42

Full Changelog: 3.3.1...4.0.0

Migration guide

  • Removeimport Alamofire and @preconcurrency import Alamofire
  • Replace BaseUrlProvider with URLConvertible
  • Replace func resolveBaseUrl() async -> String? -> func resolveUrl() async -> URL? (in URL providers)
  • Replace func url(on baseUrl: String) throws -> URL in Endpoints with func url(on baseUrl: any URLConvertible) async -> URL? or remove the function completely where default implementation is sufficient. Replace throw-s with return nil.
  • Replace var path: String { with var path: URLConvertible { and import GoodNetworking where required. Take care not to replace unrelated implementations.
  • Wrap string return values returning URLs in URL(string:) or URL(_:) (if optionals are accepted).
  • Replace Alamofire implementation of AuthenticatorInterceptors with new, simpler Authenticator protocol
  • Adapters, Retriers and Interceptors are now from local package (API is similar, but will require manual migration)
  • Simplified error handling to only 3 cases in NetworkError: local (network failure), remote (Invalid HTTP status code, server errors) and decoding (decoding failures).
  • GoodLogger dependency removed and replaced with local logging protocol