Releases: zio/zio-http
Releases · zio/zio-http
v3.11.0
Changes
- Update zio, zio-streams, zio-test to 2.1.25 @987Nabil (#4098)
- Update tapir-http4s-server, tapir-json-circe to 1.13.16 @987Nabil (#4099)
- chore: bump Datastar version to 1.0.0 @987Nabil (#4095)
- fix(ci): update Mima check to JDK 25 @987Nabil (#4097)
- fix(openapi): produce binary schema for non-multipart
outStream[Byte]@shuch3ng (#4092) - fix(ci): replace EOL GraalVM 17/21 with GraalVM 25 @987Nabil (#4096)
- feat(endpoint): add renderUrl method to Endpoint (#3162) @987Nabil (#4067)
- Update scalafmt-dynamic to 3.11.0 @zio-scala-steward[bot] (#4090)
- Update sbt-scalafmt to 2.6.0 @zio-scala-steward[bot] (#4089)
- Update jwt-core, jwt-zio-json to 11.0.4 @zio-scala-steward[bot] (#4078)
- Update sbt, scripted-plugin to 1.12.9 @zio-scala-steward[bot] (#4079)
- chore(deps): bump lodash from 4.17.23 to 4.18.1 in /website @dependabot[bot] (#4081)
- fix(website): fix visualization problem of key feature section @khajavi (#4086)
- feat(website): add tabbed code snippet section to homepage @khajavi (#4084)
- feat(website): mobile-optimized hero banner layout @khajavi (#4083)
- feat(website): add hero banner to homepage @khajavi (#4082)
- feat: add composable methods with #| operator (#3842) @987Nabil (#4072)
- feat(ssl): add key password support for client cert config (#3871) @987Nabil (#4066)
- Update zio-json-yaml to 0.9.1 @zio-scala-steward[bot] (#4077)
- Update sbt-scalajs, scalajs-compiler, ... to 1.21.0 @zio-scala-steward[bot] (#4075)
- Fix hanging request streaming under concurrent load @davidlar (#4069)
- Update tapir-http4s-server, ... to 1.13.14 @zio-scala-steward[bot] (#4073)
- Update brotli4j to 1.22.0 @zio-scala-steward[bot] (#4071)
- Update brotli4j to 1.21.0 @zio-scala-steward[bot] (#4068)
- Update netty-codec-http, ... to 4.2.12.Final @zio-scala-steward[bot] (#4065)
- chore(deps): bump undici from 6.23.0 to 6.24.1 in /website @dependabot[bot] (#4032)
- build(deps): bump svgo from 2.8.0 to 2.8.2 in /website @dependabot[bot] (#3996)
- chore(deps): bump release-drafter/release-drafter from 6 to 7 @dependabot[bot] (#4035)
- perf: bypass java.net.URI for relative URL parsing @987Nabil (#4058)
- docs: document AuthType default 404 unauthorized status @987Nabil (#4059)
- Update sbt, scripted-plugin to 1.12.8 @zio-scala-steward[bot] (#4061)
- Update netty-codec-http, ... to 4.2.11.Final @zio-scala-steward[bot] (#4060)
- refactor(client): rename ZClient.requiringConfig to fromConfig @987Nabil (#4057)
- Added ZClient.requiringConfig, which has consistent types across platforms @Kalin-Rudnicki (#3727)
- fix: prevent hashCode recomputation when computed value is 0 in SegmentCodec @guizmaii (#3985)
- Extracted
ServerSentEvent.rawEventLinesfromServerSentEvent.binaryCodec@Kalin-Rudnicki (#3841) - chore: update sbt-scalafix 0.14.6, coursier/setup-action v3, regenerate workflows @987Nabil (#4056)
- chore: remove .sisyphus directory accidentally committed @987Nabil (#4054)
- Update sbt, scripted-plugin to 1.12.7 @zio-scala-steward[bot] (#4055)
- feat(codec): add form-urlencoded HttpContentCodec for Endpoint API (#3163) @987Nabil (#4050)
- fix(netty): correct stale Scaladoc on sortAddresses @987Nabil (#4053)
- Implement HappyEyeballs for NettyConnectionPool (#1996) @987Nabil (#3876)
- feat: add zio-http-metrics module for Prometheus endpoint (#1490) @987Nabil (#4051)
- Update tapir-http4s-server, ... to 1.13.13 @zio-scala-steward[bot] (#4043)
- Update protobuf-java to 4.34.1 @zio-scala-steward[bot] (#4048)
- docs: add static file server with compression example (#2430) @987Nabil (#4047)
- docs: improve graceful shutdown example (#1505) @987Nabil (#4046)
- feat(body): add Body.asForm[A] for form-encoded body decoding (#3513) @987Nabil (#4036)
- perf: skip Netty header validation in headers encoding (#1063) @987Nabil (#4045)
- feat(server): add descriptive compile error for unhandled route errors (#3336) @987Nabil (#4037)
- fix(httpgen): handle all schema types in queryVariables without crashing (#3267) @987Nabil (#4038)
- Update tapir-http4s-server, ... to 1.13.12 @zio-scala-steward[bot] (#4039)
- Update sbt, scripted-plugin to 1.12.6 @zio-scala-steward[bot] (#4040)
- Update zio-config, zio-config-magnolia, ... to 4.0.7 @zio-scala-steward[bot] (#4042)
v3.10.1
Changes
- fix: escape single quotes in astToExpression string values @987Nabil (#4029)
- fix: use set() by default for header encoding, add() only for multi-valued headers @987Nabil (#4033)
- fix: Signal.ref race condition from unsynchronized mutable var (#4023) @987Nabil (#4028)
- fix: add missing Always and Never values to DatastarRetry @987Nabil (#4027)
- fix: readSignals reads GET signals from query parameter instead of header (#4020) @987Nabil (#4026)
- fix: use lowercase enum values for DatastarRequestCancellation (#4022) @987Nabil (#4030)
- Don't log unhandled errors failures of type response @davidlar (#4017)
- perf: use Scheme.unsafe.decode in URL parsing hot path @987Nabil (#4015)
- Update tapir-http4s-server, ... to 1.13.11 @zio-scala-steward[bot] (#4018)
v3.10.0
Changes
- fix: escape </script> in Datastar executeScript SSE rendering @987Nabil (#4013)
- chore: update zio-schema 1.8.3 @987Nabil (#4012)
- Update zio-schema, zio-schema-json, ... to 1.8.3 @zio-scala-steward[bot] (#4014)
- feat(datastar): add dispatchEvent for firing custom DOM events from backend @987Nabil (#4011)
- feat(headers): support multiple CSP directives and CSP-Report-Only header @987Nabil (#4008)
- feat(middleware): add tracing middleware for OpenTelemetry integration @987Nabil (#4010)
- feat(middleware): add response-derived labels to metric middleware @987Nabil (#4007)
- feat(http): expose Body materialized content without internal class matching @987Nabil (#4005)
- feat(endpoint): add outError overloads with media type parameter @987Nabil (#4006)
- fix: use batched instead of deprecated request in StaticFileServerSpec @987Nabil (#4009)
- feat(codec): add PathCodec[Unit].toPath and Path.toPathCodec convenience methods @987Nabil (#4004)
- fix: Flag ZClient.request as deprecated @andresctirado (#3931)
- fix: RFC-compliant header dedup in Netty encoding @987Nabil (#4003)
- feat(datastar): Update SDK from RC6 to RC8 with full feature parity @987Nabil (#4001)
- perf: reduce per-request heap allocations in HTTP hot path @987Nabil (#3997)
- feat: configurable auth failure response status (#3235) @987Nabil (#3998)
- Use dataInit over dataOn.load in hello world example @illegalprime (#4000)
v3.9.0
Changes
- Update tapir-http4s-server, ... to 1.13.10 @zio-scala-steward[bot] (#3995)
- fix: prevent response header interleaving on keep-alive connections (#3395) @987Nabil (#3994)
- feat: Add AuthType.Custom and AuthType.Or support to OpenAPI spec generation @seveneves (#3991)
- perf: cache headerType on Header.Custom via null-init field @guizmaii (#3983)
- fix: Handle nested sealed trait hierarchies in TextBinaryCodec and JsonSchema (#3801, #3946) @987Nabil (#3972)
- perf: pre-build fixed CORS headers at construction time @guizmaii (#3986)
- Update sbt-ide-settings to 1.1.4 @zio-scala-steward[bot] (#3993)
- perf: use ZIO.suspend to avoid flatMap in NettyFutureExecutor @guizmaii (#3990)
- perf: avoid per-response HttpResponseStatus allocation in statusToNetty @guizmaii (#3976)
- perf: pre-build CORS allowed headers Set at construction time @guizmaii (#3984)
- perf: skip allocations in removeDotSegments for paths without dot segments @guizmaii (#3977)
- perf: replace double map lookup with single .get in SegmentSubtree @guizmaii (#3982)
- perf: hoist metrics request labels to aspect-construction time @guizmaii (#3980)
- fix: remove accidental println from forwardHeaders middleware @guizmaii (#3978)
- fix: log server startup failure before orDie (#3440) @987Nabil (#3973)
- fix: Stop retrying permanently failing DNS hosts (#3950) @987Nabil (#3962)
- Update sbt, scripted-plugin to 1.12.5 @zio-scala-steward[bot] (#3975)
- test: add regression test for response examples in OpenAPI (#3259) @987Nabil (#3974)
- feat: Add Route#handleErrorRequestZIO for symmetry (#3159) @987Nabil (#3961)
- fix: Preserve duplicate headers in Netty encoding (#3590) @987Nabil (#3954)
- fix: Preserve defects in handleError/handleErrorZIO for downstream handlers (#3432) @987Nabil (#3956)
- fix: Handle race condition in NettyConnectionPool channel refresh @987Nabil (#3959)
- fix: Replace external URLs in ClientHttpsSpec with local HTTPS server @987Nabil (#3960)
- feat: Add Strict-Transport-Security header support (#3171) @987Nabil (#3963)
- Update zio-schema, zio-schema-json, ... to 1.8.1 @zio-scala-steward[bot] (#3968)
- Update zio-sbt-website to 0.5.0 @zio-scala-steward[bot] (#3967)
- Update protobuf-java to 4.34.0 @zio-scala-steward[bot] (#3966)
- fix: Ensure JsonSchema.fromZSchema respects SchemaStyle.Inline for nested schemas (#3168) @987Nabil (#3955)
- fix: Unknown mode string now falls back to Prod instead of Dev (#3848) @987Nabil (#3957)
- fix: Replace external URLs in JSClientSpec with local Node.js HTTP server @987Nabil (#3964)
- Update dependencies to latest compatible versions @guizmaii (#3952)
- fix: CachingResolver falls back to stale addresses when refresh fails @guizmaii (#3949)
- Update protobuf-java to 4.33.5 @zio-scala-steward[bot] (#3939)
- Update tapir-http4s-server, ... to 1.13.6 @zio-scala-steward[bot] (#3942)
- Update sbt, scripted-plugin to 1.12.1 @zio-scala-steward[bot] (#3943)
- Update parsers to 4.14.7 @zio-scala-steward[bot] (#3944)
v3.8.1
What's Changed
- Update sbt-scoverage to 2.4.4 by @zio-scala-steward[bot] in #3911
- Update sbt, scripted-plugin to 1.12.0 by @zio-scala-steward[bot] in #3909
- Update parsers to 4.14.5 by @zio-scala-steward[bot] in #3910
- Update zio-json-yaml to 0.8.0 by @zio-scala-steward[bot] in #3904
- Update protobuf-java to 4.33.4 by @zio-scala-steward[bot] in #3900
- Update Scala 2.13 to 2.13.18 by @guizmaii in #3916
- Fix Routes.transform() to allow catchAllDefect to intercept defects by @987Nabil in #3899
- fixing OpenAPIGen crash by @kurgansoft in #3915
- Documentation of Template2 by @khajavi in #3839
- Update sbt-scalajs, scalajs-compiler, ... to 1.20.2 by @zio-scala-steward[bot] in #3908
- Update zio-sbt-website to 0.4.10 by @zio-scala-steward[bot] in #3906
- Update zio-metrics-connectors, ... to 2.5.5 by @zio-scala-steward[bot] in #3905
- Update tapir-http4s-server, ... to 1.13.5 by @zio-scala-steward[bot] in #3901
- Update zio-cli to 0.7.5 by @zio-scala-steward[bot] in #3903
- Bump lodash from 4.17.21 to 4.17.23 in /website by @dependabot[bot] in #3912
- Bump node-forge from 1.3.1 to 1.3.3 in /website by @dependabot[bot] in #3880
- Fix hardcoded Scala 2.13.10 in CI workflow jobs by @guizmaii in #3918
- Bump undici from 6.21.3 to 6.23.0 in /website by @dependabot[bot] in #3888
- Update netty-codec-http, ... to 4.2.9.Final by @zio-scala-steward[bot] in #3865
- Add Datastar real-time chat example project by @987Nabil in #3921
- Add date/time format to OpenAPI schema generation by @987Nabil in #3924
- Fix URL double encoding when parsing from URI by @987Nabil in #3922
- fix: Generate correct example format for text/plain media type by @andresctirado in #3863
- fix: Add discriminator property to case schemas in OpenAPI generation by @987Nabil in #3926
- fix: Support array query parameters in OpenAPI endpoint generation by @987Nabil in #3928
- fix: Accept header content negotiation for multiple output codecs by @987Nabil in #3929
- fix: Handle NoContent and NotModified status codes as empty body in client by @987Nabil in #3930
- fix: Embedded route should not match root path (#3609) by @987Nabil in #3932
- fix: Formatting Root route pattern returns empty path (#3760) by @987Nabil in #3933
- fix: Encode colons in query params for form-urlencoded compatibility by @987Nabil in #3936
- fix: internalize new OpenAPI example methods to avoid public API change by @987Nabil in #3938
New Contributors
- @kurgansoft made their first contribution in #3915
- @andresctirado made their first contribution in #3863
Full Changelog: v3.8.0...v3.8.1
v3.8.0
What's Changed
- Update tapir-http4s-server, ... to 1.12.6 by @zio-scala-steward[bot] in #3834
- Update scala-library, scala-reflect to 2.12.21 by @zio-scala-steward[bot] in #3852
- Optimise
RequestStorecode by @guizmaii in #3878 - Revert "Revert "JSON Schema gen"" by @987Nabil in #3837
- Documentation of Ensure Header Middleware by @khajavi in #3840
- Allow : and @ unescaped in URL path and query by @QuinnHarris in #3870
- [CI] Avoid running each "Build and Test" job twice by @guizmaii in #3885
- Improve client timeout options (#2383) by @987Nabil in #3844
- Ensure internally handled errors are logged (#2491) by @987Nabil in #3891
- Add tests for outStream[Byte] error handling (#3207) by @987Nabil in #3892
- Fix CORS middleware to reject non-OPTIONS requests from disallowed or… by @987Nabil in #3890
- Fix flaky WebSpec test by resetting ErrorResponseConfig before each test by @987Nabil in #3894
- Fix optional content codec to handle empty request body as None by @987Nabil in #3896
- Add HTTP Range header support for static file serving by @987Nabil in #3897
- Configure TLS protocol versions in SSLConfig by @antonstamov in #3806
- Add Smithy IDL code generator (#1522) by @987Nabil in #3898
New Contributors
- @antonstamov made their first contribution in #3806
Full Changelog: v3.7.4...v3.8.0
v3.7.4
Changes
- Abort fetch requests when scope is complete @Kalin-Rudnicki (#3866)
- Fix rendering of data attributes and modifiers in Datastar @987Nabil (#3857)
- Update sbt-scalafix to 0.14.5 @zio-scala-steward[bot] (#3855)
v3.7.3
Changes
- Fix various issues with datastar rendering of names and updates @987Nabil (#3854)
- Update protobuf-java to 4.33.2 @zio-scala-steward[bot] (#3849)
- Update sbt-scoverage to 2.4.3 @zio-scala-steward[bot] (#3853)
v3.7.2
v3.7.1
Changes
- Fix
DatastarEvent.PatchElementsrendering for multiline elements @987Nabil (#3833) - Http conformance spec (#3083) @987Nabil (#3803)
- Update parsers to 4.14.2 @zio-scala-steward[bot] (#3826)
- Update tapir-http4s-server, ... to 1.12.5 @zio-scala-steward[bot] (#3828)
- Update zio, zio-streams, zio-test, ... to 2.1.23 @zio-scala-steward[bot] (#3829)