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 a ScalarType via MarshallerCapability. A set of standard marshaller capabilities were introduced:

    • DateSupport - Marshaller supports java.util.Date natively.
    • CalendarSupport - Marshaller supports java.util.Calendar natively.
    • BlobSupport - Marshaller supports large binary objects in form of Array[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 via ScalarValueInfo. This can be used, for instance, to represent an Array[Byte] as a clob type instead of blob 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