Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Generate ISL from Smithy IDL #19

Open
mwfpope opened this issue Jun 9, 2020 · 2 comments
Open

Generate ISL from Smithy IDL #19

mwfpope opened this issue Jun 9, 2020 · 2 comments
Labels
tool Feature requests for a new tool or library that doesn't exist yet

Comments

@mwfpope
Copy link
Contributor

mwfpope commented Jun 9, 2020

Smithy is a framework that allows you to write a service definition once and get generated Typescript, Go, OpenAPI etc. based on your service definition.

Being able to generate ISL from Smithy would allow someone to write a schema once as Smithy IDL and generate both ISL and corresponding POJOs (or equivalent structures in other languages).

This could also be a way of solving ion-schema-kotlin #146, albeit in a bit of a round-about way.

@mwfpope
Copy link
Contributor Author

mwfpope commented Jun 11, 2020

While researching something else, I found this comment in ion-schema-kotlin #35 where someone was asking for a flattened view of types that use inheritance and also some automatically generated documentation. Generating ISL from Smithy IDL could also solve this person's problem (again, in a slightly roundabout way) by taking advantage of Smithy's existing tools for generating documentation.

I've realized that what I envision as a solution to this feature request is not really an enhancement in this github project, but rather a separate project that would be a Smithy code generator targeting ISL. If this feature request is too off-topic for this github project, feel free to close this issue and let me know a better place to bring this up for discussion.

@pbcornell
Copy link

Hi Matthew, this is a fine location for your feature request at this time, and thank you for submitting it. I agree with your observations, and this sounds like a useful feature/tool.

It also appears that Smithy has some level of JSON Schema support (see smithy-jsonschema) although to what extent I haven't checked. Makes me wonder if there's a possibility of using ISL directly with Smithy, rather than requiring a conversion step...?

@pbcornell pbcornell added the enhancement New feature or enhancement for the Ion Schema _specification_ label Jun 16, 2020
@popematt popematt added tool Feature requests for a new tool or library that doesn't exist yet and removed enhancement New feature or enhancement for the Ion Schema _specification_ labels Dec 14, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
tool Feature requests for a new tool or library that doesn't exist yet
Projects
None yet
Development

No branches or pull requests

3 participants