sangria v0.6.3 Release Notes
Release Date: 2016-05-01 // almost 8 years ago-
- ๐ Marshaling for Amazon Ion data format is introduced. Amazon Ion is a richly-typed, self-describing, hierarchical data serialization format offering interchangeable binary and text representations.
You need following dependency to use it:
"org.sangria-graphql" %% "sangria-ion" % "0.1.0"
In order to use Ion marshalling, you need an implicit instance of
IonSystem
in scope as well:import sangria.marshalling.ion._ implicit val ionSystem = IonSystemBuilder.standard().build() val result: Future[IonValue] = Executor.execute(schema, query)
- ๐ Marshalling API is updated to v0.2.1. It introduces a minor breaking change. This change introduces performance improvements to scalar value marshalling and gives much more flexibility in terms of the type of marshaled values.
ResultMarshaller
now able to communicate it's natively supported capabilities to aScalarType
viaMarshallerCapability
. A set of standard marshaller capabilities were introduced:DateSupport
- Marshaller supportsjava.util.Date
natively.CalendarSupport
- Marshaller supportsjava.util.Calendar
natively.BlobSupport
- Marshaller supports large binary objects in form ofArray[Byte]
natively.
This still requires you to create a custom scalar types (for dates, blobs, etc.), but it gives you an ability to generically use native features of underlying data format.
ScalarType
now also able to communicate back to marshaller viaScalarValueInfo
. This can be used, for instance, to represent anArray[Byte]
as aclob
type instead ofblob
in formats that support both of them (like Amazon Ion).- Include possible field, argument, type names when validation fails (#126).
- Deepen introspection query from 3 levels to 7 (#128).
- ๐ Improve validation error message when field names conflict (#130).
- Interface hierarchies are not correctly rendered with
SchemaRenderer
(#125). - โก๏ธ Updated parboiled to v2.1.3