Skip to content

Releases: mattpolzin/JSONAPI

Removed `Result` dependency entirely

06 Dec 06:07
Compare
Choose a tag to compare
Pre-release

I switched to a super stripped down Result type that is internally scoped. This reduces friction with code that integrates this library, especially given that the Result type was not ever being used for part of the public API of this library.

Support all major features of JSON API Spec v1.0

06 Dec 02:36
Compare
Choose a tag to compare

This library now hits all the major points for encoding/decoding JSON API Spec compliant documents. Definitely still room for improvement, and I think I will wait until I have used the library a bit more before I call it v1.0.

Fix Playground sources

04 Dec 03:10
Compare
Choose a tag to compare
Pre-release
0.7.1

Add some missing initializers for Entity and fix Playground sources.

Add `Meta` and `Links` to `Entity` (i.e. Resource Objects)

04 Dec 02:57
Compare
Choose a tag to compare
0.7.0

Update linuxmain

Make `SingleResourceBody` explicitly optional or not.

01 Dec 09:17
Compare
Choose a tag to compare

In previous versions, the PrimaryResource inside a SingleResourceBody was always optional. Now you can get that behavior by explicitly calling it optional, or you can specify that the PrimaryResource should be .some or else the document should fail to parse.

Little key improvements

30 Nov 04:24
Compare
Choose a tag to compare
Pre-release
  • Better TestLib literal expressibility support.
  • Remove silly typealias JSONAPIDocument.BodyData which pointed to JSONAPIDocument.Body.Data
  • Expose initializer for JSONAPIDocument.Body.Data (most useful for testing purposes).
  • Add ReversibleTransformer (most useful for testing purposes).
  • Add ability to differentiate between EntityType and EntityProxy, the latter of which is intended to allow you to create clientside values that act like EntityType without accidentally calling those values "Entities," which is a word more or less reserved by this library to refer to values that are persisted between the server and client.

Let there be LEGIT `Id`s

29 Nov 05:17
Compare
Choose a tag to compare
Pre-release

Huge breaking change: I was able to get the Id type wrangled such that it specializes on EntityType rather than EntityDescription.

This was always the goal but the Swift compiler gets mad about cyclic dependency unless things are done in juuuust the right way. I didn't know it was possible, but I found that right way tonight.

Expose Entity properties on EntityType protocol

28 Nov 02:59
Compare
Choose a tag to compare
0.4.4

Expose Entity properties on EntityType protocol.

Ids are now Hashable

28 Nov 02:40
Compare
Choose a tag to compare
Ids are now Hashable Pre-release
Pre-release
0.4.3

Ids are now Hashable

Easier access to important types under JSONAPIDocument

28 Nov 02:20
Compare
Choose a tag to compare
0.4.2

A little renaming and easier access to important types under the JSON…