v0.22.0-M1
Pre-release
Pre-release
rossabaker
released this
25 Jan 01:23
·
2886 commits
to series/0.22
since this release
This is a new series, forked from main before Cats-Effect 3 support was merged. It is binary incompatible with 0.21, but contains several changes that will be necessary for Scala 3 (Dotty) support. It builds on all the changes from v1.0.0-M1 through v1.0.0-M10, which are not echoed here.
The headline change is that all parboiled2 parsers have been replaced with cats-parse.
Should I switch?
- Users who had been tracking the 1.0 series, but are not prepared for Cats Effect 3, should switch to this series.
- Users who wish to remain on the bleeding edge, including Cats Effect 3, should continue track the 1.0 series.
- Users who need a stable release should remain on the 0.21 series for now.
http4s-core
Breaking changes
- #3855: All parboiled2 parsers are replaced by cats-parse. parboiled2 was not part of the public API, nor are our cats-parse parsers. Users may observe a difference in the error messages and subtle semantic changes. We've attempted to minimize them, but this is a significant underlying change. See also: #3897, #3901, #3954, #3958, #3995, #4023, #4001, #4013, #4042, #3982, #4071, #4017, #4132, #4154, #4200, #4202, #4206, #4201, #4208, #4235, #4147, #4238 #4238
- #4070: No longer publish a
scala.annotations.nowarn
annotation in the 2.12 build. This is provided in the standard library in 2.12.13, and isn't necessary at runtime in any version. - #4138: Replace boolean with
Weakness
sum type inEntityTag
model - #4148: Lift
ETag.EntityTag
out of header and into theorg.http4s
package - #4164: Removal of several deprecated interfaces. Most were non-public binary compatibility shims, or explicit cats instances that had been superseded by new implicits. Some exceptions:
- #4145: Port macros in
org.http4s.syntax.literals
to Scala 3. Deprecated macros that were on various companion objects will not be in the Scala 3 releases.
Bugfixes
- #4017: Render a final
-
in a byte ranges without an end value
http4s-laws
Breaking changes
- #4144: Add
LawsAdapter
to createPropF
for effectful properties. Restate various Entity codec laws in terms of it. - #4164: Removed arbitrary instances for
CIString
. These are provided by case-insensitive.
http4s-server
Breaking changes
- #4164: Removed deprecated
SSLConfig
,KeyStoreBits
,SSLContextBits
, andSSLBits
.
http4s-testing
Breaking changes
- #4164: No longer a publicly published package. All public API was previously deprecated.
Dependency upgrades
- async-http-client-2.12.2
- cats-parse-0.3.0
- circe-0.14.0-M3
- jackson-databind-2.12.1
- jawn-1.0.3
- log4cats-1.2.0-RC1 (now under
org.typelevel
) - log4s-1.0.0-M4
- okio-2.10.0
- vault-2.1.0-M14 (now under
org.typelevel
)