Releases: softwaremill/tapir
v1.10.9
What’s Changed
- Fix some occasionally failing tests (#3847) @kciesielski
- Add Endpoint serverLogicSuccessPure and serverLogicErrorPure (#3837) @geirolz
- Iron: Support MinLength, MaxLength, Not[Empty] for Iterables (#3843) @kciesielski
- Refined: Treat fields with NonEmpty or MinSize(>0) as required (#3839) @kciesielski
- Play: Optimize usages of
route
(#3842) @kciesielski - Improve PlayServerInterpreter.toRoutes (#3838) @dmtran-g
- Fix handling of WS Close frame in Netty backends (#3826) @kciesielski
- Fix hidden schema visible in OpenAPI generated yml (#3820) @micossow
- Netty servers: handle requestTimeout properly, add idleTimeout (#3815) @kciesielski
- Update jsoniter-scala-core, ... to 2.30.1 (#3814) @softwaremill-ci
- Iron: add validator for Pure constraint (#3818) @shubbush
- Pickler: add transientNone for optional fields (#3816) @kciesielski
- Update tethys version and add scala 3 support for tethys-json module. (#3819) @Grryum
- Tapir tutorials: basics, docs, json (#3797) @adamw
- Fix WebSocket frame concatenation for Netty (#3801) @kciesielski
- Update jsoniter-scala-core, ... to 2.29.0 (#3798) @softwaremill-ci
- Update cats-core, cats-laws to 2.12.0 (#3799) @softwaremill-ci
- Don't include a 'invalid value for: body' response for a simple stringBody (#3796) @adamw
- Fixes for iron derivation for GreaterEqual, LessEqual, In (#3790) @kciesielski
Dependency updates
- Update scala-java-time, ... to 2.6.0 (#3831) @softwaremill-ci
- Update armeria to 1.29.0 (#3840) @softwaremill-ci
- Update netty-all to 4.1.111.Final (#3836) @softwaremill-ci
- Update zio, zio-streams, zio-test, ... to 2.1.2 (#3822) @softwaremill-ci
- Update sbt-scala-native to 0.5.3 (#3824) @softwaremill-ci
- Update classgraph to 4.8.173 (#3823) @softwaremill-ci
- Update java-dogstatsd-client to 4.4.2 (#3821) @softwaremill-ci
- Update zio-prelude to 1.0.0-RC27 (#3811) @softwaremill-ci
- Update sbt-scala-native to 0.5.2 (#3805) @softwaremill-ci
- Update java-dogstatsd-client to 4.4.1 (#3809) @softwaremill-ci
- Update swagger-ui to 5.17.14 (#3810) @softwaremill-ci
- Update zio-json to 0.7.0 (#3817) @softwaremill-ci
- Update refined to 0.11.2 (#3813) @softwaremill-ci
- Update zio-http to 3.0.0-RC8 (#3804) @softwaremill-ci
- Update swagger-ui to 5.17.11 (#3783) @softwaremill-ci
- Update shared:akka, shared:armeria, ... to 1.3.19 (#3792) @softwaremill-ci
v1.10.8
What’s Changed
- Move Id alias to core. Add serverLogicSync & other variants to Endpoint. (#3789) @adamw
- remove validation on body for NoContent/NotModified (#3785) @ShahOdin
- chore: Upgrade zio-http to version 3.0.0-RC7 (#3784) @jakubjanecek
- Optimize byte array operations in Http4sRequestBody (#3772) @kciesielski
- Update doc/flake.nix (#3766) @kciesielski
- Updated conversion from CodecWithInfo into asyncapi.Message. (#3757) @kamilkloch
Dependency updates
- Update model:core to 1.7.11 (#3791) @softwaremill-ci
- Update vertx-web to 4.5.8 (#3787) @softwaremill-ci
- Update upickle to 3.3.1 (#3773) @softwaremill-ci
- Update discipline-scalatest to 2.3.0 (#3788) @softwaremill-ci
- Update java-dogstatsd-client to 4.4.0 (#3786) @softwaremill-ci
- Update prometheus-metrics-core, ... to 1.3.1 (#3782) @softwaremill-ci
- Update magnolia to 1.3.7 (#3781) @softwaremill-ci
- Update magnolia to 1.1.10 (#3780) @softwaremill-ci
- Update netty-all to 4.1.110.Final (#3779) @softwaremill-ci
- Update gatling-test-framework to 3.11.3 (#3777) @softwaremill-ci
- Update gatling-charts-highcharts to 3.11.3 (#3778) @softwaremill-ci
- Update client3:async-http-client-backend-cats, ... to 3.9.7 (#3775) @softwaremill-ci
- Update prometheus-metrics-core, ... to 1.3.0 (#3769) @softwaremill-ci
- Update zio-prelude to 1.0.0-RC26 (#3762) @softwaremill-ci
- Update zio, zio-streams, zio-test, ... to 2.1.1 (#3761) @softwaremill-ci
- Update opentelemetry-api, ... to 1.38.0 (#3760) @softwaremill-ci
v1.10.7
What’s Changed
- Separate creation & usage of OxDispatcher (#3759) @adamw
- add zio-json support to openapi-codegen (#3728) @oker1
- [bugfix] Ensure cancelation of WS pipeline forks (#3755) @kciesielski
- Pin scala3-library_sjs1 to 3.3.x for Scala Steward (#3752) @kciesielski
- Rework Gatling tests (#3746) @kciesielski
- Update sbt, sbt-dependency-tree to 1.10.0 (#3745) @softwaremill-ci
- Update circe-core, circe-generic, ... to 0.14.7 (#3730) @softwaremill-ci
- Update jsoniter-scala-core, ... to 2.28.5 (#3738) @softwaremill-ci
- Update scala-library, scala-reflect to 2.13.14 (#3736) @softwaremill-ci
Dependency updates
- Update play, play-akka-http-server, ... to 2.9.3 (#3748) @softwaremill-ci
- Update zio-prelude to 1.0.0-RC25 (#3749) @softwaremill-ci
- Update scala3-library_sjs1 to 3.4.1 (#3751) @softwaremill-ci
- Update play, play-netty-server, ... to 3.0.3 (#3750) @softwaremill-ci
- Update armeria to 1.28.4 (#3731) @softwaremill-ci
- Update jackson-module-scala to 2.17.1 (#3741) @softwaremill-ci
- Update client3:akka-http-backend, ... to 3.9.6 (#3732) @softwaremill-ci
- Update jwt-circe to 10.0.1 (#3744) @softwaremill-ci
- Update play-ahc-ws-standalone to 3.0.3 (#3743) @softwaremill-ci
- Update play-ahc-ws-standalone to 2.2.7 (#3742) @softwaremill-ci
- Update http4s-circe, http4s-core, ... to 0.23.27 (#3740) @softwaremill-ci
- Update finatra-http-server, inject-app, ... to 24.2.0 (#3739) @softwaremill-ci
- Update play-json to 3.0.3 (#3735) @softwaremill-ci
- Update armeria to 1.28.3 (#3729) @softwaremill-ci
v1.10.6
After the recent release of Scala Native 0.5.1 the Scala ecosystem is adapting and gradually more and more libraries are released with 0.5.1 support, often as the only supported native version. Tapir needed to update some dependencies like sttp-shared
, sttp-model
and some external dependencies like upickle
, which makes it incompatible with scala-native 0.4. Since we can't switch to 0.5 until other dependencies are available, native support is temporarily suspended. We will work on restoring it, starting with core
, as soon as transitive dependencies are released. See the description of #3692 for more details.
What’s Changed
- Handle Vert.X flaky Web Socket tests (#3727) @kciesielski
- ZIO HTTP Server should not fold multiple Set-Cookie headers (#3723) @mkubala
- Update ox to 0.1.0 (#3714) @kciesielski
- Generate
anyOf
schema foroneOfVariant
s with the same status code and content-type (#3703) @susliko
Dependency updates
- Update shared:akka, shared:armeria, ... to 1.3.18 (#3718) @softwaremill-ci
- Update swagger-ui to 5.17.2 (#3726) @softwaremill-ci
- Update tagging to 2.3.5 (#3715) @softwaremill-ci
- Update gatling-sbt to 4.9.0 (#3720) @softwaremill-ci
- Update sbt-scala-native to 0.5.1 (#3692) @softwaremill-ci
- Update sbt-twirl to 2.0.5 (#3725) @softwaremill-ci
- Update zio-prelude to 1.0.0-RC24 (#3719) @softwaremill-ci
- Update swagger-ui to 5.17.0 (#3713) @softwaremill-ci
- Update gatling-test-framework to 3.10.5 (#3708) @softwaremill-ci
- Update scalatags to 0.13.1 (#3706) @softwaremill-ci
- Update classgraph to 4.8.172 (#3710) @softwaremill-ci
- Update gatling-charts-highcharts to 3.10.5 (#3709) @softwaremill-ci
v1.10.5
What’s Changed
- Fix version numbers in migrating.md (#3705) @kciesielski
- Rename netty-server-loom to netty-server-sync (#3704) @kciesielski
- codegen: Semiauto schema derivation (#3671) @hughsimpson
- Web Sockets for netty-loom (#3675) @kciesielski
- [WIP] Disable pong-related tests for vertx-zio and vertx-future (#3699) @kciesielski
- Fix flaky web socket tests (#3676) @kciesielski
- [FIX]
errorOutVariantsPrepend
should try to match passed variants before falling back to the default one (#3698) @mkubala - sttp-apispec 0.9.0 (#3677) @ghik
- Renamed NettyId to NettySync (#3689) @Pask423
- Removed scalajs-securerandom dependency (#3684) @Pask423
- Moved Intersection & Union mirrors to iron integration (#3683) @Pask423
- Add schema for uri (#3672) @fmeriaux
- Using RequestHeader that without context for WebSocket handling (#3669) @GreyPlane
- Temporarily restore previous Web Socket tests (#3653) @kciesielski
- codegen: Remove dead comments (#3647) @hughsimpson
- Codegen: serialize empty arrays and require them (jsoniter fix) (#3655) @hughsimpson
- Remove log4s usage in http4s-server integration (#3663) @hygt
Dependency updates
- Update armeria to 1.28.2 (#3700) @softwaremill-ci
- Update logback-classic to 1.5.6 (#3695) @softwaremill-ci
- Update scalacheck to 1.17.1 (#3696) @softwaremill-ci
- Update swagger-ui to 5.15.2-1 (#3697) @softwaremill-ci
- Update netty-all to 4.1.109.Final (#3687) @softwaremill-ci
- Update scala-collection-compat to 2.12.0 (#3688) @softwaremill-ci
- Update armeria to 1.28.1 (#3686) @softwaremill-ci
- Update logback-classic to 1.5.5 (#3678) @softwaremill-ci
- Update slf4j-api to 2.0.13 (#3681) @softwaremill-ci
- Update zio, zio-streams, zio-test, ... to 2.0.22 (#3680) @softwaremill-ci
- Update armeria to 1.28.0 (#3679) @softwaremill-ci
- Update swagger-ui to 5.15.1 (#3674) @softwaremill-ci
- Update swagger-ui to 5.15.0 (#3670) @softwaremill-ci
- Update logback-classic to 1.5.4 (#3667) @softwaremill-ci
- Update opentelemetry-api, ... to 1.37.0 (#3665) @softwaremill-ci
v1.10.4
What’s Changed
- Update
zio-http
to v3.0.0-RC6 (#3661) @lvitaly - [CI] Fix squash and more checkout updates (#3659) @kciesielski
- [CI] update checkout and setup-java actions (#3658) @kciesielski
Dependency updates
- Update prometheus-metrics-core, ... to 1.2.1 (#3657) @softwaremill-ci
v1.10.3
Note on skipped version
Due to issues with Sonatype Central repository, releases 1.10.1 and 1.10.2 failed with incosistent state, so 1.10.3 is the next version number after 1.10.0.
What’s Changed
- Don't publish artifacts for tests (#3652) @kciesielski
- Update scalafmt-core to 3.8.1 (#3649) @softwaremill-ci
- WebSockets for netty-cats (#3628) @kciesielski
- codegen: implement oneOf support (#3624) @hughsimpson
- Fix tapir on scala 3.4.0: an incorrect form of a tuple type being generated (#3643) @jchyb
- Making sure scala 2.13 is used when importing to IntelliJ (#3640) @ghik
- Lazy InputStream over Netty HttpContent Publisher (#3637) @ghik
- Codegen: Generate attributes on endpoints for any specification extensions defined on path or operation objects (#3599) @hughsimpson
- Simplified and refactored Netty-ReactiveStreams integration (#3636) @ghik
- Graceful Netty server shutdown in case of startup errors (#3558) @goawash
- codegen: Support default values in schema objects (#3614) @hughsimpson
- codegen: Jsoniter support (#840) (#3610) @hughsimpson
- Fix small wording issue in netty.md (#3619) @cptwunderlich
- Allow setting Server header in Netty config (#3615) @kciesielski
- Clear compilation warnings (#3618) @kciesielski
- Performance tests for loom-based backends (#3611) @kciesielski
- Added missing Schema/Codec for cats NonEmptyVector to integration module (#3612) @kastoestoramadus
Dependency updates
- Update swagger-ui to 5.13.0 (#3650) @softwaremill-ci
- Update gatling-sbt to 4.8.2 (#3648) @softwaremill-ci
- Update vertx-web to 4.5.7 (#3641) @softwaremill-ci
- Update fs2-reactive-streams to 3.10.2 (#3646) @softwaremill-ci
- Update armeria to 1.27.3 (#3638) @softwaremill-ci
- Update swagger-ui to 5.12.2 (#3639) @softwaremill-ci
- Update fs2-reactive-streams to 3.10.1 (#3635) @softwaremill-ci
- Update prometheus-metrics-core, ... to 1.2.0 (#3633) @softwaremill-ci
- Update netty-all to 4.1.108.Final (#3631) @softwaremill-ci
- Update vertx-web to 4.5.6 (#3632) @softwaremill-ci
- Update aws-lambda-java-runtime-interface-client to 2.5.0 (#3629) @softwaremill-ci
- Update sbt-buildinfo to 0.12.0 (#3630) @softwaremill-ci
- Update client3:akka-http-backend, ... to 3.9.5 (#3626) @softwaremill-ci
- Update sbt-scalajs, scalajs-compiler, ... to 1.16.0 (#3627) @softwaremill-ci
- Update model:core to 1.7.9 (#3621) @softwaremill-ci
- Update fs2-reactive-streams to 3.10.0 (#3620) @softwaremill-ci
- Update swagger-ui to 5.12.0 (#3622) @softwaremill-ci
- Update model:core to 1.7.8 (#3616) @softwaremill-ci
v1.10.0
You might notice some changes in your generated schemas - all components will now include a title
field, which should fix some rendering issues (more specifically fixing how coproducts are displayed) with newer Swagger UI versions - that's covered in #3593.
Moreover, we're using a new sttp-apispec
release (#3604), which includes a small but binary-incompatible change - adding the uniqueItems
property, making Set
s properly represented in schemas. Not that the incompatibility is only for the sttp-apispec project, it does not affect tapir's core
, only the documentation generation module.
What’s Changed
- codegen: support enum query params (#3602) @hughsimpson
- Schema screaming snake case (#3607) @kamilkloch
- Adding
uniqueItems
property to Set schemas (#3604) @ghik - Codegen: Add new
useHeadTagForObjectNames
flag to permit splitting generated endpoint objects by tag (#3594) @hughsimpson - Better codegen errors (#3601) @hughsimpson
- Automatic propagation of schema name as schema title (#3593) @ghik
- Updated Vertx Cats WebSocket (#3573) @DybekK
- Improve showShort to avoid parsing Uri (#3590) @kciesielski
- Use async-profiler as a recommended tool (#3591) @kciesielski
- Add a delimiter attribute to properly represent delimited values in examples/defaults (#3589) @adamw
- Optimize SimpleSubscriber for Netty (#3583) @kciesielski
- Simplify tapir schema -> openapi schema conversion (#3584) @adamw
- Optimize parsing headers for pekko-http and akka-http (#3575) @kciesielski
- disable connection linger timeout by default (#3576) @fwbrasil
- Remove Netty's SO_TIMEOUT setting (#3579) @kciesielski
Dependency updates
- Update vertx-web to 4.5.5 (#3609) @softwaremill-ci
- Update sbt-assembly to 2.2.0 (#3608) @softwaremill-ci
- Update jackson-module-scala to 2.17.0 (#3603) @softwaremill-ci
- Update play-ahc-ws-standalone to 3.0.2 (#3597) @softwaremill-ci
- Update swagger-ui to 5.11.10 (#3598) @softwaremill-ci
- Update play-ahc-ws-standalone to 2.2.6 (#3595) @softwaremill-ci
- Update jackson-module-scala to 2.16.2 (#3588) @softwaremill-ci
- Update opentelemetry-api, ... to 1.36.0 (#3587) @softwaremill-ci
- Update classgraph to 4.8.168 (#3586) @softwaremill-ci
- Update jsoniter-scala-core, ... to 2.28.4 (#3585) @softwaremill-ci
- Update client3:akka-http-backend, ... to 3.9.4 (#3580) @softwaremill-ci
v1.9.11
What’s Changed
- Add .sbt to .gitignore (#3574) @kciesielski
- optimize path input decoding to avoid allocations (#3554) @fwbrasil
- Add benchmarking blogs to docs (#3572) @kciesielski
- Optimize server request .uri for pekko-http and akka-http (#3566) @kciesielski
- optimize channel closing to avoid allocations when flushing pending responses (#3553) @fwbrasil
- avoid allocation in Validator.All.contramap (#3555) @fwbrasil
- Optimize Http4sServerRequest.uri (#3543) @kciesielski
- Make some Endpoint method lazy vals (#3551) @kciesielski
- Update sbt, sbt-dependency-tree to 1.9.9 (#3532) @softwaremill-ci
- Record HdrHistogram for standard REST perf tests (#3533) @kciesielski
- Fix exposing both WS and REST endpoints in http4s perf tests (#3531) @kciesielski
- Perf test: WebSockets (Vert.X) (#3527) @kciesielski
Dependency updates
- Update cats-effect to 3.5.4 (#3571) @softwaremill-ci
- Update classgraph to 4.8.167 (#3569) @softwaremill-ci
- Update http4s-circe, http4s-core, ... to 0.23.26 (#3570) @softwaremill-ci
- Update model:core to 1.7.7 (#3568) @softwaremill-ci
- Update logback-classic to 1.5.3 (#3567) @softwaremill-ci
- Update iron to 2.5.0 (#3564) @softwaremill-ci
- Update logback-classic to 1.5.2 (#3563) @softwaremill-ci
- Update play, play-akka-http-server, ... to 2.9.2 (#3561) @softwaremill-ci
- Update jsoniter-scala-core, ... to 2.28.3 (#3560) @softwaremill-ci
- Update play, play-netty-server, ... to 3.0.2 (#3562) @softwaremill-ci
- Update sbt-projectmatrix to 0.10.0 (#3559) @softwaremill-ci
- Update scala3-library, ... to 3.3.3 (#3556) @softwaremill-ci
- Update aws-lambda-java-runtime-interface-client to 2.4.2 (#3542) @softwaremill-ci
- Update logback-classic to 1.5.1 (#3541) @softwaremill-ci
- Update scala-library, scala-reflect to 2.13.13 (#3537) @softwaremill-ci
- Update sbt-twirl to 2.0.4 (#3538) @softwaremill-ci
- Update armeria to 1.27.2 (#3534) @softwaremill-ci
- Update scala-library, scala-reflect to 2.12.19 (#3536) @softwaremill-ci
- Update sbt-softwaremill-browser-test-js, ... to 2.0.19 (#3535) @softwaremill-ci
- Update vertx-web to 4.5.4 (#3530) @softwaremill-ci
v1.9.10
What’s Changed
- Avoid generic type in Netty's RunAsync (#3529) @fwbrasil
- Perf test: WebSockets (pekko-http) (#3526) @kciesielski
- Perf test: WebSockets (http4s) (#3520) @kciesielski
- Codegen multipart body support (#3519) @markussammallahti
- Pin scopt 3.7.1 (#3517) @kciesielski
- Allow running performance test server and simulations separately (#3514) @kciesielski
- Allow to retrieve schema type parameters full name (#3500) @yakivy
- Improve CSV reports for perf tests (#3505) @kciesielski
Dependency updates
- Update gatling-charts-highcharts to 3.10.4 (#3523) @softwaremill-ci
- Update gatling-test-framework to 3.10.4 (#3522) @softwaremill-ci
- Update logback-classic to 1.5.0 (#3521) @softwaremill-ci
- Update netty-all to 4.1.107.Final (#3518) @softwaremill-ci
- Update scopt to 4.1.0 (#3516) @softwaremill-ci
- Update jsoniter-scala-core, ... to 2.28.2 (#3513) @softwaremill-ci
- Update gatling-sbt to 4.8.1 (#3511) @softwaremill-ci
- Update opentelemetry-api, ... to 1.35.0 (#3512) @softwaremill-ci
- Update client3:akka-http-backend, ... to 3.9.3 (#3509) @softwaremill-ci
- Update pekko-http to 1.0.1 (#3510) @softwaremill-ci
- Update armeria to 1.27.1 (#3506) @softwaremill-ci
- Update scalacheck-1-17 to 3.2.18.0 (#3508) @softwaremill-ci
- Update scalatest to 3.2.18 (#3507) @softwaremill-ci
- Update zio-prelude to 1.0.0-RC23 (#3503) @softwaremill-ci
- Update vertx-web to 4.5.3 (#3504) @softwaremill-ci
- Update slf4j-api to 2.0.12 (#3501) @softwaremill-ci
- Update jsoniter-scala-core, ... to 2.28.1 (#3499) @softwaremill-ci
- Update gatling-sbt to 4.8.0 (#3498) @softwaremill-ci