Bot releases are visible (Hide)
Published by github-actions[bot] 9 months ago
logback-classic
and scala-logging
from some Tapir modules. This may affect your project, if it is accidentally relying on transitive dependencies. Affected backends are tapir-jdkhttp-server
and Netty-based backends.Published by github-actions[bot] 10 months ago
Published by github-actions[bot] 10 months ago
Published by github-actions[bot] 11 months ago
All Netty backends now support restricting maximum request body length. This per-endpoint protection ensures that no more bytes are loaded from body than given limit. Exceeding the limit results in HTTP 413 Payload Too Large response. For details see https://tapir.softwaremill.com/en/latest/endpoint/security.html#limiting-request-body-length for details.
More backends will support this feature in upcoming versions.
NettyConfig.maxContentLength
setting, it's no longer available. Please switch to the new per-endpoint annotation.NettyConfig.defaultNoStreaming
has been removed, use NettyConfig.default
Tapir integrations for zio
, zio-json
, zio-http
, etc. are now available only for ZIO 2.x
Published by github-actions[bot] 11 months ago
Recently Tapir switched its Play modules to version 3. This versions brings support to Play 2.9. Please read the new docs to learn how to configure the dependencies: https://tapir.softwaremill.com/en/latest/server/play.html
Note that tapir-play29-server
works only for Scala 2.13, but tapir-play29-client
and tapir-json-play29
are available for Scala 2.12, 2.13, and 3.
Published by github-actions[bot] 11 months ago
Published by github-actions[bot] 11 months ago
Published by github-actions[bot] 12 months ago
Backends based on Loom (Java virtual threads) have been migrated from the tapir-loom project, and are now a part of the main distribution. They require JDK 21. Read more:
DecodeFailureHandler
has become DecodeFailureHandler[F]
to allow effectful error handling. If you're using custom handlers, update them to the new apply
signature:
trait DecodeFailureHandler[F[_]] {
def apply(ctx: DecodeFailureContext)(implicit monad: MonadError[F]): F[Option[ValuedEndpointOutput[_]]]
}
RejectHandler.apply
no longer takes a Failure
, but a RejectContext
, which encapsulates the failure, and the ServerRequest
as well, allowing using more information for your rejection handling.
trait RejectHandler[F[_]] {
def apply(ctx: RejectContext)(implicit monad: MonadError[F]): F[Option[ValuedEndpointOutput[_]]]
}
Published by github-actions[bot] 12 months ago
Published by github-actions[bot] 12 months ago
Published by github-actions[bot] 12 months ago
Published by github-actions[bot] about 1 year ago
Published by github-actions[bot] about 1 year ago
Published by github-actions[bot] about 1 year ago
Published by github-actions[bot] about 1 year ago
Published by github-actions[bot] about 1 year ago
Published by github-actions[bot] about 1 year ago
Published by github-actions[bot] about 1 year ago
Published by github-actions[bot] about 1 year ago
Published by github-actions[bot] about 1 year ago