Support XWasser 0.8.0 (#52) #163
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Build and test | |
on: | |
push: | |
tags: | |
- "v*" | |
branches: | |
- main | |
pull_request: | |
env: | |
CARGO_TERM_COLOR: always | |
jobs: | |
build-and-test: | |
runs-on: ubuntu-24.04 | |
steps: | |
- uses: actions/checkout@v4 | |
with: | |
submodules: recursive | |
- uses: dtolnay/[email protected] | |
- name: get-cmake | |
uses: lukka/get-cmake@latest | |
- uses: jetli/[email protected] | |
with: | |
version: "v0.12.1" | |
- uses: pnpm/action-setup@v4 | |
- name: Check | |
run: | | |
rustup component add clippy | |
cargo clippy --no-deps | |
- name: npm dependencies | |
run: pnpm install | |
- name: Build | |
run: cargo build --features schema,trace,builder --release | |
- name: Test Rust | |
run: cargo test --features schema,trace,builder | |
- name: Build WASM | |
run: | | |
wasm-pack build --release --target nodejs --reference-types --features wasm,builder --no-default-features | |
cp target/schemas/out/*.xsdb pkg/xwasser-v080.xsdb.bin | |
cp crates/codelists/public/V0_8_0/codelist.json pkg/codelist.json | |
cp package.tmp.json pkg/package.json | |
pnpm tsup --format esm,cjs | |
- name: Test WASM | |
run: pnpm test | |
- name: Archive NPM package | |
uses: actions/upload-artifact@v4 | |
with: | |
name: xoev-xwasser-pkg | |
path: ./pkg | |
- name: Build WASM Web | |
run: | | |
wasm-pack build --release --target web --reference-types --features wasm,builder --no-default-features | |
cp target/schemas/out/*.xsdb pkg/xwasser-v080.xsdb.bin | |
cp crates/codelists/public/V0_8_0/codelist.json pkg/codelist.json | |
cp package.tmp.web.json pkg/package.json | |
- name: Build utils web package | |
run: pnpm tsup --format esm,cjs | |
- name: Archive NPM web package | |
uses: actions/upload-artifact@v4 | |
with: | |
name: xoev-xwasser-pkg-web | |
path: ./pkg | |
publish: | |
if: startsWith( github.ref, 'refs/tags/v' ) | |
uses: ./.github/workflows/publish.yaml | |
needs: build-and-test | |
secrets: inherit |