v0.17.2 : errors as scala3 unions, js sourcemaps
0.17.2
This release is backward binary-compatible with the previous releases from the the 0.17.x lineage.
User-facing features
Scala 3 unions support for operation errors
See #707
In order to render Operation errors as Scala 3 union types, a following metadata flag needs to be added: metadata smithy4sErrorsAsScala3Unions = true
(in any of the smithy files that are used for code generation).
Source-mapping github paths are now automatically added during scala-js compilation
This will make it easier to run front-end debuggers on webpage build with smithy4s-issued clients
See #706
Addition of Transformation.apply utilty method :
it's now possible to invoke transformations more conveniently in polymorhic code, via a method in the Transformation
companion object
See #681
Bug fixes
Static query params are now handled correctly
It is now possible to define static query parameters when using the http trait :
@http(method: "GET", uri: "/foo?bar=baz)
operation Foo {}
Service interfaces now receive the set of all operations tied to resources transitively tied to the service
For instance, when running the code-generator, the Library
interface will now receive a getBook
method, which
wasn't previously the case
service Library {
resources: [Book]
}
resource Book {
read: GetBook
}
@readonly
operation GetBook {
}
New
- Various codegen fixes and improvements by @Baccata in #677
- fix for timestamp format issue for aws tests by @yisraelU in #675
- Make whitespace around colons consistent by @kubukoz in #682
- Update decline to 2.4.1 by @scala-steward in #683
- Add resource operations to generated service by @Baccata in #686
- Fix links to target series/0.17 blob by @lewisjkl in #684
- Add a more convenient Transformation.PartiallyApplied by @kubukoz in #681
- Update cats-effect to 3.4.3 by @scala-steward in #694
- Update mill-main, mill-main-api, ... to 0.10.10 by @scala-steward in #696
- Update cats-effect to 3.4.4 by @scala-steward in #699
- Update jsoniter-scala-core to 2.20.1 by @scala-steward in #695
- fix path segment parsing when suffixed with query by @yisraelU in #689
- Compliancetests fixes improvements by @yisraelU in #680
- restructured timeout call and attemptNarrow by @yisraelU in #708
- Update http4s-circe, http4s-client, ... to 0.22.15 by @scala-steward in #709
- Update sbt, sbt-dependency-tree to 1.8.2 by @scala-steward in #711
- Add scalacOptions for sourcemapping github paths by @zetashift in #706
- Add smithy4sErrorsAsScala3Unions metadata flag by @msosnicki in #707
- Update http4s-circe, http4s-client, ... to 0.23.17 by @scala-steward in #710
- [compliance tests] addresses timeouts on the server side by @yisraelU in #712
- Fix ShapeId.parse not working for valid shapes by @kubukoz in #714
- codegen cli should use a non-zero exit code when failing by @daddykotex in #713
New Contributors
- @msosnicki made their first contribution in #707
Full Changelog: v0.17.1...v0.17.2