Skip to content

Releases: kubukoz/smithy-playground

v0.5.3 - plugin interface improvements

08 Nov 19:29
984552c
Compare
Choose a tag to compare

This release includes a change for plugin authors: it makes the plugin interface more flexible, in which you don't necessarily need to use SimpleProtocolBuilder to implement your client. Only a specific shape of client methods is necessary ((service, http4s client) => smithy4s alg), so it should be possible to implement even if you don't inherit from the built-in builder type.

The old plugin interface is now deprecated and shall be removed in 0.6.0.

What's Changed

Full Changelog: v0.5.2...v0.5.3

v0.5.2

17 Oct 17:01
5204415
Compare
Choose a tag to compare

User-facing changes

Add "restart server" command in #118

Adds a new command in the client that allows restarting the server. Note: it doesn't take into account any workspace setting changes that are read by the client, such as the server version string or debug/tracing flags.

Available since the extension's 0.2.10 release.

image

Support colon field separators in #121

This changes the default key/value separator from = to :. For the foreseeable future, both will work, but the tooling will prefer : and support for the = syntax will eventually be removed.

Before:

image

After:

image

Unify experience for parse errors in #125

This slightly improves error reporting in cases where the code doesn't parse.

Before:

image

After:

image

Internal changes

New Contributors

Full Changelog: v0.5.1...v0.5.2

v0.5.1

09 Oct 18:36
2503fd6
Compare
Choose a tag to compare

What's Changed

Full Changelog: v0.5.0...v0.5.1

v0.5.0

07 Oct 23:26
a9de6b9
Compare
Choose a tag to compare

This release brings support to Smithy4s 0.16.

As part of changes in the upstream project, some issues with mixins and apply have been fixed, and the performance of (re)loading a workspace has vastly improved - this release has been tested against a codebase with over 250 operations and they load almost instantly.

What's Changed

Full Changelog: v0.4.1...v0.5.0

v0.4.1

31 Aug 15:49
67290fa
Compare
Choose a tag to compare

What's Changed

Encode enums by name #89

Changes the encoding of enums in responses: now the name of the enum value will be used, making it consistent with how the values are being parsed on the request side.

Full Changelog: v0.4.0...v0.4.1

v0.4.0

24 Aug 18:56
Compare
Choose a tag to compare

This release adds proper support for Smithy 2.0.

It's not considered binary compatible with 0.3.x releases due to the binary breakage in Smithy4s.

What's Changed

Full Changelog: v0.3.9...v0.4.0

v0.3.9

16 Aug 13:36
Compare
Choose a tag to compare

What's Changed

Add support for validation traits #84

This adds support for validations whenever @length, @range or @pattern are provided. They'll be checked during the typechecking process (just like missing fields, type mismatches etc.).

Here's an example for a string marked with @length(min: 1):

image

Support for custom validations is planned and will likely come soon after smithy4s 0.15.

Full Changelog: v0.3.8...v0.3.9

v0.3.10 - broken release, don't use

18 Aug 16:11
2fdcfef
Compare
Choose a tag to compare

Broken release

This release brings in Smithy4s 0.15.0, which supports Smithy 2.0, but the dynamic module doesn't. Because of this, the LSP server is unable to load any Smithy model at runtime. A fix is planned and a future release will resolve the issue.

You can track the progress of the fix in disneystreaming/smithy4s#406.

If you're affected

If, for some reason, Coursier decides to run Playground 0.3.10 on your machine (although it shouldn't - by some miracle, 0.3.9 was tagged later so it's a more recent release), you can force an older version to be used by setting the following workspace/user setting:

image

What's Changed

Update to smithy4s 0.15.x #62

This is not expected to have a lot of impact for users, but should enable support for Smithy specs using the 2.0 version of the Smithy language.

So far no 2.0-specific features have been implemented, but support for new enums & @default is planned.

Support specifying service at operation name #82

This enables the following syntax for SmithyQL: playground.std#Random.NextUUID {} - without a use clause. Completions will still only insert a use clause instead of a qualified operation reference like in this example. A use clause and a qualified operation reference cannot be used at the same time.

Full Changelog: v0.3.9...v0.3.10

v0.3.8

13 Aug 20:43
a7e67a7
Compare
Choose a tag to compare

New features, bugfixes

Support referencing services by aws name #78

This means that instead of com.amazonaws.kinesis#Kinesis_20131202, you can say com.amazonaws.kinesis#Kinesis.

image

Improvements to useClause #74

Adds completions on use clauses, and sorting on the list of available services.

image

Add generic compilation error message in runner #79

Running a query that doesn't compile (via command) will show a generic message instead of the compilation failures. These can still be seen in the actual file's diagnostics.

image

Deprecations: operation/useClause #80

Deprecated services/operations will now show as such in your files. Previously, they would only be marked as deprecated in the completions.

image

image

Support longs, shorts, bytes... and null #81

Adds support for all the remaining Smithy shapes (mostly numbers) - this should make it possible to call virtually any @simpleRestJson operation, as well as some (until now) unsupported AWS operations.

image

image

Technical details

Full Changelog: v0.3.7...v0.3.8

v0.3.7

11 Aug 14:09
5b3393c
Compare
Choose a tag to compare

What's Changed

Full Changelog: v0.3.6...v0.3.7