These are chat archives for hseeberger/akka-http-json

20th
Mar 2017
Alexander Semenov
@Tvaroh
Mar 20 2017 05:43
@hseeberger any hope of releasing the fix asap?
Heiko Seeberger
@hseeberger
Mar 20 2017 07:35
Yep, will do it in the next hour.
Heiko Seeberger
@hseeberger
Mar 20 2017 08:36
Released 1.14.0
Alexander Semenov
@Tvaroh
Mar 20 2017 09:13
@hseeberger cool thanks. Maven central is delayed as always?
Heiko Seeberger
@hseeberger
Mar 20 2017 09:48
@Tvaroh probably. You can use resolvers += Resolver.bintrayRepo("hseeberger", "maven").
Alexander Semenov
@Tvaroh
Mar 20 2017 09:50

yep, did that, it works, thank you

Btw, another breaking change is dropping printer from the marshaller signature, previously it was:

  implicit def circeToEntityMarshaller[A](
      implicit encoder: Encoder[A],
      printer: Json => String = Printer.noSpaces.pretty
  ): ToEntityMarshaller[A]

Now to override the printer one needs to sub-class CirceSupport and import it instead. Not sure if it's a good change but I can deal with that.

even not to override (cause printer is final for a reason) but to create own like this
trait CirceSupport extends BaseCirceSupport with FailFastUnmarshaller {
  override val printer: Printer = Printer.noSpaces.copy(dropNullKeys = true)
}
Lomig Mégard
@lomigmegard
Mar 20 2017 19:45
Comment regarding the RootEncoder in #134
Heiko Seeberger
@hseeberger
Mar 20 2017 21:39
@lomigmegard thanks for your comments! I think that correctness is an interesting question, but I'm not sure which is the right answer. Therefore I think that using plain encoders is a good choice, because it makes the users' life easier.