Releases: drewag/Decree
Swift 5.1, KeyValueEncoder customization, and base URL override
- Support Swift 5.1 and Xcode 11.
- Allow customizing the date and array encoding strategy for URL query, Form URL Encoded, and Form Data inputs.
- Allow overriding a particular endpoint's base URL
Also, we removed support for CocoaPods because of the effort involved in its maintenance and the ease of using Swift Package Manager moving forward, even for app projects.
4.2.0 – Progress and Downloads
Progress
You can now optionally provide an onProgress
callback to get regular updates about the progress of your request.
Only available on iOS 11+, macOS10.13+, and tvOS11+
Downloads
New makeDownoadRequest
methods on OutEndpoints and InOutEndpoints that will download the output to a temporary file instead of holding it in memory.
Mocking
Added the ability to do custom validation on the endpoint's path.
4.0.0 – Mocking and more
Mocking
Now allows mocking requests to specific web services as well as custom handling of raw URLRequests to all instances of a web service.
Better Backend Support
Don't require coding protocols for Input and Outputs until you actually try to make a request to it. This is because for a backend the coding protocol requirements would be reversed (decodable for input and encodable for output). Now the encodable input and decodable requirements have been moved to the makeRequest extension methods.
Other
other(String)
HTTP method as a catch all- Support for plain text output
- Improved inline documentation and tests
DecreeErrorDescribable
protocol to help better format your own custom errors when thrown during web requests.
Bug Fixes
- Encoding errors now returned on the correct dispatch queue
3.2.0
3.0.0 – Improved Error Reporting
- Drastically improved error reporting with a new DecreeError type
- Improved documentation both in the README and especially the Wiki