Http4s v1.0.0-M2 Release Notes

Release Date: 2020-06-25 // almost 4 years ago
  • v1.0.0-M2 (2020-06-25)

    ๐Ÿš€ This is the first milestone release in the 1.x series.
    ๐Ÿš€ It is not binary compatible with prior releases.

    Where is M1?

    ๐Ÿš€ Unpublished. The release build from the tag failed, and the fix required a new tag.

    ๐Ÿ’ฅ Breaking changes

    • #3174: Drop http4s-prometheus dependency on http4s-dsl
    • #2615: Model the Server header
    • #3206: Model the Content-Location header
    • ๐Ÿšš #3264: Remove unused EntityEncoder argument in PlayInstances.
    • #3257: Make SameSite cookie attribute optional
    • ๐Ÿšš #3291: Remove unused F[_] parameter from Server
    • ๐Ÿ‘ #3241: Port all macros to blackbox in anticipation of Dotty support
    • ๐Ÿ—„ #3323: Drop deprecated ArbitraryInstances#charsetRangesNoQuality
    • ๐Ÿ—„ #3322: Drop deprecated getAs and prepAs methods from Client
    • #3371: In http4s-metrics, add rootCause field to TerminationType.Abnormal and TerminationType.Error. Add TerminationType.Canceled
    • ๐Ÿšš #3335: Remove unused Bracket instance in Client#translate
    • #3390: Replace org.http4s.util.CaseInsensitiveString with org.typelevel.ci.CIString
    • #3221: Implement a Uri.Path type to replace the type alias for String
    • #3450: Model Accept-Patch header as a NonEmptyList[MediaType]
    • #3463: Model Access-Control-Allow-Credentials header as a nullary case class.
    • ๐Ÿ— #3325: Add a WebSocket builder with a Pipe[F, WebSocketFrame, WebSocketFrame] to unify sending and receiving.
    • #3373: Parameterize ClassLoader for ResourceService and WebjarService. Changes the CacheStrategy's uriPath argument to Uri.Path.
    • ๐Ÿšš #3460: Remove deprecated Service and related aliases
    • #3529: Refresh the MediaTypes constants from the IANA registry. Not source breaking, but shifts constants in a binary breaking way.

    โœจ Enhancements

    • #3320: Reimplement Media#as with F.rethrow

    ๐Ÿ—„ Deprecations

    • ๐Ÿ“ฆ #3359: Deprecate the org.http4s.util.execution package.
    • ๐Ÿ—„ #3422: Deprecate BlazeClientBuilder#withSslContextOption.

    ๐Ÿ“š Documentation

    • ๐Ÿš€ #3374: Add a deployment tutorial, including for GraalVM. See also #3416.
    • #3410: Suggest a global execution context for the argument to BlazeClientBuilder

    ๐Ÿ”จ Internal refactoring

    • ๐Ÿ“œ #3386: Drop internal argonaut parser in favor of jawn's
    • #3266: Replace fs2.compress with fs2.compression

    โšก๏ธ Dependency updates

    • argonaut-6.3.0
    • async-http-client-2.12.1
    • blaze-http-0.14.13
    • play-json-2.9.0
    • simpleclient-0.9.0 (Prometheus)