-
Notifications
You must be signed in to change notification settings - Fork 21
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
enable cross-platform testing for NAPI native modules #410
Comments
OmarTawfik
added a commit
that referenced
this issue
Apr 15, 2023
## In this PR - add support for publishing npm packages for slang. - add ability to cross-build native NAPI modules for 9 targets. - replace Hermit's `rust` package with `rustup` to allow installing multiple targets. - now CI will check to make sure TypeScript sources are up to date and pass tests on every push. - fill NPM packages metadata, including platform-specific ones. - removed yarn since it is no longer needed. standardizing on npm everywhere. - following publishing, moved directory structure to `solidity/outputs/cargo` and `solidity/outputs/npm`, and within each, three sub-folders: `build`, `crate`, and `tests`. That separation makes sure our internal codegen crates are not propagated to product crates. ## Changes to dev scripts So far we have relied on cargo workspace commands (`scripts/cargo/check.sh` and `scripts/cargo/test.sh`). Each crate uses its own `build.rs` to define specific build steps that need to happen. With this PR, adding NPM publishing, we do the same with the root `package.json`. Each package will define custom tasks in its own `package.json`, and we will run all of them through `scripts/npm/build.sh` and `scripts/npm/test.sh`. For example, the NAPI packages in `crates/solidity/outputs/npm` will call NAPI specific scripts defined in `scripts/npm/napi` to build/test/publish. ## Limitations - Actual publishing is still disabled in CI. Once we figure out final package names, will update the source and re-enable it. - #410 as NPM testing is only local for now (linux on devcontainer).
OmarTawfik
changed the title
enable cross-testing for NAPI native modules
enable cross-platform testing for NAPI native modules
Jun 12, 2023
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Right now, we only test the architecture of the dev container (linux).
The text was updated successfully, but these errors were encountered: