All Versions
49
Latest Version
Avg Release Cycle
60 days
Latest Release
1254 days ago

Changelog History
Page 1

  • v5.3.0 Changes

    October 22, 2020

    โž• Added

    • Ability to modify URLRequests before it's adapted and sent:
    tron.codable
        .request("status")
        .modifyRequest { $0.httpShouldHandleCookies = false }
    

    This feature uses Alamofire.RequestModifier closure, that can also be set without DSL on request instance directly:

    let request : APIRequest<Post,Empty> = tron.codable.request("posts")
    request.requestModifier = { urlRequest in
        urlRequest.httpShouldHandleCookies = false
    }
    
  • v5.2.0 Changes

    August 11, 2020

    โž• Added

    • ๐Ÿ‘ Combine support on supported platforms through publisher() method on APIRequest, UploadAPIRequest, DownloadAPIRequest.
    • APIError.isCancelled property, that tells, whether request, that errored, was cancelled by sender.

    ๐Ÿ”„ Changed

    • Alamofire.ParameterEncoding, JSONEncoding and URLEncoding are now exposed through TRON API and don't require importing Alamofire to use.

    ๐Ÿ—„ Deprecated

    • ๐Ÿ—„ NetworkActivityPlugin is deprecated on iOS 13 and higher, because UIApplication.isNetworkActivityIndicatorVisible property it has been switching is deprecated on iOS 13 and higher.
  • v5.1.0 Changes

    May 04, 2020

    ๐Ÿ”„ Changed

    • ๐Ÿ‘€ Several Alamofire types that are exposed through TRON API's are now implicitly exported to allow using them without needing to write import Alamofire. See Exports.swift file for a list of them.
  • v5.0.3 Changes

    April 06, 2020

    โž• Added

    • FileURLPassthroughResponseSerializer, which can be used as a response serializer for DownloadAPIRequest when you are only interested in URL of downloaded file.

    ๐Ÿ›  Fixed

    • ๐Ÿ”Œ NetworkLoggerPlugin now correctly skips cancelled requests
  • v5.0.2 Changes

    March 19, 2020
    • โž• Added DownloadAPIRequest.perform(withSuccess:failure:) method, similar to APIRequest and UploadAPIRequest methods.
  • v5.0.1 Changes

    March 10, 2020
    • 0๏ธโƒฃ BaseRequest.headers now default to HTTPHeaders.default to allow sending Alamofire default headers such as "Accept-Language", "Accept-Encoding", "User-Agent".
  • v5.0.0 Changes

    June 28, 2019

    โž• Added

    • ๐Ÿ‘Œ Support for per-request Interceptors.
    • ๐Ÿ— Three different behaviors for building URLs: .appendingPathComponent, .relativeToBaseURL and .custom. Those can be set in TRON initializer:

      let tron = TRON(baseURL: "https://www.example.com/", buildingURL: .relativeToBaseURL)

    Or you can change URLBuilder.Behavior on per-request basis, using the new DSL:

    let request: APIRequest\<Int,APIError\> = tron.swiftyJSON .request("status/200") .buildURL(.relativeToBaseURL)
    

    0๏ธโƒฃ Default behavior for TRON is .appendingPathComponent.

    โœ‚ Removed

    • URLBuildable protocol. Please use different behaviors for URLBuilder instead.
  • v5.0.0-rc.1 Changes

    September 06, 2019

    โž• Added

    • ๐Ÿ‘ Better debug prints for NetworkLoggerPlugin when decoding using Codable protocol.
    • ๐Ÿ”ง configure(_:) method for BaseRequest DSL to allow configuring request with several changes at once.

    ๐Ÿ’ฅ Breaking

    • ๐Ÿ”Œ Plugin API that previously was called with Alamofire.Data/DownloadResponse<Model, Error> is now called with Alamofire.Data/DownloadResponse<Model, AFError> due to Alamofire changes to error handling.
    • performCollectingTimeline(withCompletion:) method is now called also with AFError instead of Error.
  • v5.0.0-beta.5 Changes

    June 28, 2019

    โž• Added

    • ๐Ÿ‘Œ Support for per-request Interceptors.
    • ๐Ÿ— Three different behaviors for building URLs: .appendingPathComponent, .relativeToBaseURL and .custom. Those can be set in TRON initializer:
    let tron = TRON(baseURL: "https://www.example.com/", buildingURL: .relativeToBaseURL)
    

    Or you can change URLBuilder.Behavior on per-request basis, using the new DSL:

    let request: APIRequest<Int,APIError> = tron.swiftyJSON
        .request("status/200")
        .buildURL(.relativeToBaseURL)
    

    0๏ธโƒฃ Default behavior for TRON is .appendingPathComponent.

    โœ‚ Removed

    • URLBuildable protocol. Please use different behaviors for URLBuilder instead.
  • v5.0.0-beta.4 Changes

    June 16, 2019

    โž• Added

    • ๐Ÿ‘Œ Support for Swift Package Manager in Xcode 11
    • ๐Ÿ†• New convenient DSL, that allows to convert this code:
    func deleteSession() -> APIRequest<Empty, UnknownError> {
        let request : APIRequest<Empty, UnknownError> = tron.codable.request("session")
        request.method = .delete
        return request
    }
    

    into:

    func deleteSession() -> APIRequest<Empty, UnknownError> {
        return tron.codable.request("session").delete()
    }
    

    ๐Ÿ“„ Read more about other DSL improvements in 5.0 Migration Guide

    ๐Ÿ”„ Changed

    • URLBuilder now resolves URL's using URL(string:relativeTo:) method, thus allowing more flexible url creation.