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

Create jsii-transpile tool #11

Closed
eladb opened this issue Apr 21, 2021 · 2 comments
Closed

Create jsii-transpile tool #11

eladb opened this issue Apr 21, 2021 · 2 comments
Labels
effort/large About 5 days p3 We will be happy to implement it but nothing will happen if we don't risk/medium

Comments

@eladb
Copy link
Contributor

eladb commented Apr 21, 2021

Goal: given a jsii-enabled package (e.g: the npm tgz for the package), install the package & dependencies into a working directory, compile & transliterate all code examples therein into select target languages, then produce a transliterated .jsii assembly file as a result.
How: jsii-rosetta provides the functionality to perform the transliteration, however it does not bother with the dependency management (it is intended to run at build time, not against packaged libraries), and produces a rosetta tablet file instead of a transliterated jsii assembly document.


The jsii-transpile tool would consume a .jsii assembly file, and leverage jsii-rosetta APIs to create one <lang>.jsii file per configured target language, with all APIs renamed to the correct language representation, and sample code trans-literated to the correct language where possible.

@eladb
Copy link
Contributor Author

eladb commented Apr 21, 2021

NOTE: It's important that it will be possible to run this tool in parallel (i.e. each language in a separate job)

@RomainMuller RomainMuller added this to the Back-End milestone May 26, 2021
@addihorowitz addihorowitz added p3 We will be happy to implement it but nothing will happen if we don't and removed p1 labels May 26, 2021
@RomainMuller
Copy link
Contributor

Implemented a jsii-rosetta transliterate tool instead. This doesn't do exactly the same job (it only does the transliteration, and the dependency resolution, etc... is left to the user, who's more likely to know exactly how to make this happen).

This issue was closed.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
effort/large About 5 days p3 We will be happy to implement it but nothing will happen if we don't risk/medium
Projects
None yet
Development

No branches or pull requests

3 participants