Released on 2023-03-14.
Swifty now exposes network metrics APIs publically.
Released on 2019-12-30.
Swifty now handles all 2xx responses as valid responses.
Released on 2019-05-27.
Swifty has been upgraded for Swift 5.
Released on 2019-05-25.
Swifty has been upgraded for Swift 4.2.
- Adds the
@objc
attribute to all publicly ObjC accessible classes and methods. - Added ability to specify a custom
sessionMetricsDelegate: URLSessionTaskDelegate
in the Swifty initializer to collectURLSessionTaskMetrics
Released on 2018-08-13.
Swifty now supports attaching multipart form data into requests.
- Adds a new modifier
.multipart()
to attach multipart form data into requests. - The new modifier is can be chained continuously to attach multiple data into requests.
- The encoding of the data is done at the time
.load()
is called, using an internalRequestInterceptor
Released on 2017-12-14.
Swifty now supports the Codable
Protocol, plus adds support response mocking.
- Adds a new
.json(encodable: encoder:)
modifier to attachEncodable
objects into request bodies. - Adds a new method
.loadJSON<T: Decodable>(decodable: decoder:)
to support loadingDecodable
objects from network responses directly. - Adds a new
.mock(withFile: OfType)
modifier to mock responses of requests using files in the main bundle. - Tests for Codable Support & Response Mocking.
- The
creationError
property inNetworkResource
is now public, so that it can be utilized by a user's custom extensions.
Released on 2017-11-17.
- Simpler logic for Query Preservation in
BaseResource
modifiers
Released on 2017-10-31.
- Improved Query Preservation in
BaseResource
modifiers
Released on 2017-10-31.
- Swifty 1.0.0 is now written in Swift 4
- Support for macOS, watchOS & tvOS
- More Tests
BaseResource
modifiers now preserve query params if present
Released on 2017-10-02.
- JSON Parsing Interceptor now also parses the JSON returned in an error response, and puts the results into the NSError's
userInfo
property - Added new Tests for JSON Parsing, Server Error Codes, Empty Response Codes
- Updated Example Project according to Xcode 9 Recommendations
- Response Validation Error now carries over the HTTP Error Code (if available) as it's error code
- Fixed major issue in which the Response Validation logic might fallthrough incorrectly
.loadJSON()
now handles Empty Responses properly
Released on 2017-09-20.
- New
.authorizationHeader()
modifier to add a Basic Hidden HTTPAuthorization
header to a resource - Support for chaning multiple
.query()
methods on a resource - Tests for
WebService
Modifiers
- Bug due to which
NetworkResourceWithBody
methods could not be chained after using aNetworkResource
modifier due to return type ambiguity
Released on 2017-09-13.
- Swifty Inspector's table view reload being called on a background thread
Released on 2017-09-12.
- Initial release of Swifty.