All Versions
58
Latest Version
Avg Release Cycle
23 days
Latest Release
1237 days ago

Changelog History
Page 1

  • v1.0.0-M8 Changes

    November 26, 2020

    💥 Breaking changes

    http4s-client

    • #3903: Method apply syntax (e.g., POST(body, uri)) returns a Request[F] instead of F[Request[F]]
  • v1.0.0-M7 Changes

    November 20, 2020

    💥 Breaking changes

    http4s-dsl

    • 👍 #3876: Replace dsl.Http4sDsl.Path with core.Uri.Path. The new Path in 1.0 is rich enough to support the DSL's routing needs, and this eliminates a conversion between models on every -> extractor. This change is source compatible in typical extractions.

    ⚡️ Dependency updates

    • argonaut-6.3.2
  • v1.0.0-M6 Changes

    November 11, 2020

    💥 Breaking changes

    • 🔨 #3758: Refactor query param infix operators for deprecations in Scala 2.13. Not source breaking.
    • 👻 #3366: Add Method and Uri to UnexpectedStatus exception to improve client error handling. Not source breaking in most common usages.
  • v1.0.0-M5 Changes

    October 16, 2020

    🛠 Bugfixes

    • #3714: Use correct prefix when composing with Router
    • #3738: In PrometheusExportService, correctly match the /metrics endpoint

    💥 Breaking changes

    • #3649: Make QueryParam a subclass of QueryParamLike
    • #3440: Simplify Method model. Drop PermitsBody, NoBody, and Semantics mixins. No longer a case class.

    ✨ Enhancements

    • #3638: Model Access-Control-Expose-Headers
    • #3735: Add preferGzipped parameter to WebjarServiceBuilder

    ⚡️ Dependency updates

    • argonaut-6.3.1
  • v1.0.0-M4 Changes

    August 09, 2020

    🔀 This milestone merges the changes in 0.21.7.
    It is not binary compatible with 1.0.0-M3

    💥 Breaking changes

    • #3577: Add a model of the Max-Forwards header.
    • #3567: Add a model of the Content-Language header.
    • 0️⃣ #3555: Support for UTF-8 basic authentication, per RFC7617. Attempt to decode Basic auth credentials as UTF-8, falling back to ISO-8859-1. Provide a charset to BasicCredentials that allows encoding with an arbitrary charset, defaulting to UTF-8.
    • 🔧 #3583: Allow configuration of CirceInstances to permit duplicate keys
    • #3587: Model Access-Control-Allow-Headers header

    📚 Documentation

    • 🗄 #3571: Fix comments in deprecated AgentToken, AgentComment, and AgentProduct.

    ⚡️ Dependency updates

    • ⬇️ dropwizard-metrics-4.1.12
  • v1.0.0-M3 Changes

    June 28, 2020

    🔀 This milestone merges the changes in 0.21.6.
    It is binary compatible with 0.21.0-M2.

  • v1.0.0-M2 Changes

    June 25, 2020

    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)
  • v1.0.0-M1

    June 25, 2020
  • v0.21.13 Changes

    November 25, 2020

    🛠 Bugfixes

    Most modules

    #3932: Fix NoClassDefFoundError regression. An example:

    [info] java.lang.NoClassDefFoundError: cats/effect/ResourceLike
    [info] at org.http4s.client.Client$.$anonfun$fromHttpApp$2(Client.scala:246)
    

    ⬇️ A test dependency upgrade evicted our declared cats-effect-2.2.0 dependency, so we built against a newer version than we advertise in our POM. Fixed by downgrading the test dependency and inspecting the classpath. Tooling will be added to avoid repeat failures.

  • v0.21.12 Changes

    November 25, 2020

    🛠 Bugfixes

    http4s-core

    • 👍 #3911: Support raw query strings. Formerly, all query strings were stored as a vector of key-value pairs, which was lossy in the percent-encoding of sub-delimiter characters (e.g., '+' vs '%2B'). Queries constructed with .fromString will be rendered as-is, for APIs that assign special meaning to sub-delimiters.
    • #3921: Fix rendering of URIs with colons. This was a regression in v0.21.9.

    http4s-circe

    • #3906: Fix streamed encoder for empty stream. It was not rendering the {.

    ✨ Enhancements

    http4s-core

    • #3902: Add Hash and BoundedEnumerable instances for HttpVersion
    • #3909: Add Order instance for Header and Headers

    ⬆️ Dependency upgrades

    • fs2-2.4.6
    • jetty-9.4.35.v20201120