Smithy: A language for defining services and SDKs
awslabs.github.io
Smithy: A language for defining services and SDKs
1–10 of 77 posts
Re: Smithy: A language for defining services and SDKs
#2AWS' new Rust SDK[0] is generated using Smithy models.
Re: Smithy: A language for defining services and SDKs
#3Is this how the Python `aws` CLI and boto is implemented?
Re: Smithy: A language for defining services and SDKs
#4Is this how the Python `aws` CLI and boto is implemented?
Pretty much all APIs at Amazon , internal and external, are either defined using this or its precursor and then per-language clients and server stub implementations are autogenerated based on the model. That’s true of boto3. Not sure how much the of CLI is autogenerated, but the CLI uses boto(core) under the hood so it’s involved one way or the other.
Re: Smithy: A language for defining services and SDKs
#5Is this how the Python `aws` CLI and boto is implemented?
Kind of. The AWS CLI uses an Amazon internal modeling format used to define services that's based on another Amazon internal modeling format that has been in use for about 15 years (and it's based on another internal model etc..). Smithy is basically the open source v2 of both, but with a public spec and tooling. Eventually all the AWS SDKs and the AWS CLI will adopt Smithy. (I work on the AWS SDKs and created Smithy)
Re: Smithy: A language for defining services and SDKs
#6How does this compare to Google’s protocol buffers? [0] It looks like smithy has a broader set of applications.
Re: Smithy: A language for defining services and SDKs
#7I gotta say this is really neat. Definitely going to take it for a spin. I’ve always felt like a lot of these tools have too much ceremony - this feels light and simple.
Re: Smithy: A language for defining services and SDKs
#8I gotta say this is really neat. Definitely going to take it for a spin. I’ve always felt like a lot of these tools have too much ceremony - this feels light and simple.
It’s elegant. It doesn’t overreach.
Re: Smithy: A language for defining services and SDKs
#9How does this compare to Google’s protocol buffers? [0] It looks like smithy has a broader set of applications. [0] https://developers.google.com/protocol-buffers
To me it seems like protocol buffers are a serialisation format while Smithy is just an idl used to describe services.
The services are free to serialize the data in any way be it json, XML or even protocol buffers.
So Smithy is more comparable to OpenApi than Protocal buffers.
Re: Smithy: A language for defining services and SDKs
#10Starting a project like this from scratch must have been a bold move for the team involved. I imagine that, in a pitch, the outcome of this tool seemed too good to be true and they actually delivered it. Well done!