Releases: ryanbaldwin/Restivus
Raw Wasn't Raw Enough
What's Fixed?
- Bug #12: When the ResponseType was Raw, the
Acceptheader was still being sent, which is silly, becauseRawrequests shouldn't really care what the client will Accept as a response. Just gimme the data, yo. As such,Acceptheaders are no longer sent onRawrequests.
Breaking Changes
- The only thing broken is my pride.
The Good, The Bad, and the Ugly
- Ever seen me go on a 3 mile run? That, except there's no good.
v0.4.3
The dateDecodingStrategy is fixed for real this time. I promise. Big shoutout to @adealmeida for taking the reigns.
v0.4.2
What's Fixed?
- Bug #8: TFW you create an interface for a feature and then never actually make use of it. The
Restable.dateDecodingStrategyis now actually respected when decoding Dates from a JSON Response. Hooray!
Breaking Changes
- None. I fixed what was broken. I am the coming of a new man.
The Good, The Bad, and the Ugly
- My own lack of organization.
v0.4.1
Summary
v0.4.1 is a simple fix which makes the AnyRestable.submit a @discardableResult such that it's inline with the default Restable.submit implementation.
Breaking Changes
None, I don't think.
Gory Details
None
View build details and download artifacts on buddybuild:
Restivus (iOS, Restivus-macOS)
Restivus (iOS, Restivus-iOS)
Restivus (iOS, Restivus-tvOS)
Restivus (iOS, Restivus-watchOS)
v0.4
Summary
v0.4 provides cross platform support across the Apple spectrum: iOS, macOS, tvOS, and watchOS are all now supported!
Additionally, a new protocol, PreEncoded, now exists, which allows a Restable to provide its own Data (instead of making the request Encodable) to be used in the body of the HTTP request. This can come in handy in, say, an upload queue where you already have a whole bunch of serialized data you wish to upload but don't want to worry about the actual type.
Breaking Changes
The ResultFormat.raw enumeration has been removed, as it was superfluous. Now, when you define typealias ResponseType = Rawyou will no longer be required to specify the result format to also be Raw.
Gory Details
If you haven't ever tried converting an existing iOS Cocoa Touch Framework project to be cross platform, I highly encourage you to try. It's like going out with your friends but way worse.
View build details and download artifacts on buddybuild:
Restivus (iOS, Restivus-iOS)
Restivus (iOS, Restivus-tvOS)
Restivus (iOS, Restivus-macOS)
v0.3
Summary
v0.3 provides a small, but useful (and breaking) change to the data that's returned in an HTTPError (issue #6). Now, whenever possible, the Data returned in the response is included inside the HTTPError, allowing you access to the body of the response. This is helpful if the server you're connecting to returns a 401 response for an invalid request, but also includes further details in the Body as to why the 401 was returned.
Shout out to @aboodmufti for the PR. Much appreciated!
Breaking Changes
- The following
HTTPErrorenums now have the additionalData?field in their contained tuples:unexpectedResponse(URLResponse, Data?)unsuccessfulResponse(HTTPURLResopnse, Data?)other(Error, Data?)
Gory Details
- Edward Gorey was an excellent illustrator, and I literally just now found out he died 17 years ago.
View build details and download artifacts on buddybuild:
Restivus (iOS, Restivus-iOS)
v0.2.1
Summary
There was a bug (Issue #5) wherein an Interceptable request could not specify the Accept header. This was a result from the actual interception occurring too early in the submission process. Interceptables are now "intercepted" immediately before submitting the request.
Breaking Changes
- I broke a bug. The bug no longer works. Everything is right.
Gory Details
- nothing gory, though I do know a Gary. Does that count?
View build details and download artifacts on buddybuild:
Restivus (iOS, Restivus-iOS)
v0.2
Summary
The Authenticating protocol was poorly named. In reality, it's an interceptor prior to sending the request. As such, Authenticating has been renamed to Interceptable, and sign(request:) is now intercept(request:)
Breaking Changes
Authenticatingis nowInterceptablesign(request:)is nowintercept(request:)
Gory Details
At this point I'm just repeating myself.
View build details and download artifacts on buddybuild:
Restivus (iOS, Restivus-iOS)
v0.1.1
Summary
This is simply a Xcode 9.1 bump for Carthage support. If you're using Carthage and Xcode 9.1, then you'll want to reference this version instead of v0.1. This is what happens when you couple a language version tightly to compiler version.
Breaking Changes
If you're on Xcode 9.0, then literally, probably, everything.
Gory Details
Nada
v0.1
Oh yea. The inaugural release. Read up on this new project (which is actually pretty functional) over at the Project's GH Page