Skip to content

Releases: pureharm/pureharm-rest

0.5.0-M3

20 Sep 10:16
4dad691

Choose a tag to compare

0.5.0-M3 Pre-release
Pre-release

dependency upgrades

0.5.0-M2

16 Sep 15:01
334582e

Choose a tag to compare

0.5.0-M2 Pre-release
Pre-release

First release with CE3 support!

dependency upgrades

For cats-effect 3 compatible modules:

  • tapir 0.19.0-M8 — with the downstream break in source compat due to
    tapir.
  • http4s 0.23.3

For cats-effect 2 compatible modules:

  • tapir 0.18.3 — with the downstream break in source compat due to
    tapir.
  • http4s 0.22.4

0.5.0-M1

03 Sep 08:57
a3582b8

Choose a tag to compare

0.5.0-M1 Pre-release
Pre-release

⚠️ breaking changes :warning

remodularize everything

Mostly source compatible, depending on all modules should allow you to use
the library as before.

  • "com.busymachines" %% "pureharm-endpoint-tapir"
    • now contains everything tapir related needed to define Endpoints, sans dependency on http4s
  • "com.busymachines" %% "pureharm-endpoint-docs-tapir"
    • contains a simple helper method to print out YAML representation of OpenAPI
  • "com.busymachines" %% "pureharm-route-http4s-tapir"
    • contains everything http4s related, and required to transform tapir endpoints into http4s routes
  • "com.busymachines" %% "pureharm-server-http4s"
    • depends on http4s-blaze-server, contains helpers to run the server and bind ports, etc.

source changes

  • remove PureharmHttp4sCirceInstances.pureharmHttps4sEntityJsonDecoder, and drop dependency on http4s-circe because it was essentially unused.
  • remove Http4sRoutes, RestDefs from PureharmRouteTypeAliases (formerly PureharmRestHttp4sTypeAliases), see deprecations section

deprecations

  • deprecate PureharmRestHttp4sTypeAliases in favor of PureharmRouteTypeAliases
  • deprecate RestDefs in favor of Http4sRoutes, they are source compatible.

new features

  • add PureharmRouteAllImplicits trait to pureharm-route-http4s-tapir
  • add fromEnpoint helper function in RestDefs
  • add PureharmEndpointAllTypeAliases, PureharmEndpointAllImplicits mixin traits to pureharm-endpoint-tapir

internals

  • bump scalafmt to 3.0.1
  • bump sbt to 1.5.5
  • bump sbt-spiewak to 0.22.0
  • bump sbt-scalafmt to 2.4.3
  • bump sbt-scalajs-crossproject to 1.1.0
  • bump sbt-scalajs to 1.7.0

0.4.0

11 Apr 08:46
7751cea

Choose a tag to compare

dependency upgrades

0.3.0

05 Apr 10:52
5210261

Choose a tag to compare

0.2.0

23 Mar 08:01
15f83fa

Choose a tag to compare

Binary imcompatible w/ version 0.1.0 when using the sprout codecs.

  • add implicit resolution for tapir PlainCodecs for Sprout, and SproutRefinedThrow types.
    previously these have been removed because compilation was exponentially bad, and inference bad
    as well. Turns out, the trick was to put the NewType instance first in the implicit parameter list,
    not second to greatly improve type inference. Which makes sense, there is only one such instance,
    while there could be many other PlainCodec ones.

      implicit def pureharmSproutTypeGenericPlainCodec[Old, New](implicit
      p: NewType[Old, New], // here
      c: tapir.Codec.PlainCodec[Old], //not here
    ): tapir.Codec.PlainCodec[New] = c.map[New](p.newType _)(p.oldType)

Version upgrades:

  • bump pureharm-json-circe to 0.1.1

0.1.0

19 Mar 14:01
8d57ebb

Choose a tag to compare

Split out from pureharm as of version 0.0.7.

Upgrades:

  • upgrade tapir to 0.17.19
  • upgrade to pureharm 0.1.0 series + drop phantom type support.