Live data from Hacker News

Smithy: A language for defining services and SDKs

awslabs.github.io

1–10 of 77 posts

Re: Smithy: A language for defining services and SDKs

#4
post #3

Is 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

#5
post #3

Is 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

#9

How 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.

Post reply on HN