Skip to content

v0.17.2 : errors as scala3 unions, js sourcemaps

Compare
Choose a tag to compare
@Baccata Baccata released this 10 Jan 11:57
· 489 commits to series/0.17 since this release

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

New Contributors

Full Changelog: v0.17.1...v0.17.2