ic-memory 0.15.7

Durable stable-memory allocation governance for Internet Computer canisters
Documentation
name: CI

on:
  pull_request:
  push:
    branches:
      - main

jobs:
  test:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - uses: actions/setup-python@v5
        with:
          python-version: '3.12'
      - run: make test-release-flow
      - run: make test-wasm-size
      - name: Read pinned Rust toolchain
        run: |
          python3 - <<'PYTHON' >> "$GITHUB_ENV"
          import tomllib
          from pathlib import Path
          toolchain = tomllib.loads(Path("rust-toolchain.toml").read_text())["toolchain"]
          print(f"RUSTUP_TOOLCHAIN={toolchain['channel']}")
          PYTHON
      - uses: dtolnay/rust-toolchain@master
        with:
          toolchain: ${{ env.RUSTUP_TOOLCHAIN }}
          components: clippy, rustfmt
          targets: wasm32-unknown-unknown
      - run: cargo fmt --check
      - run: cargo clippy --all-targets -- -D warnings
      - run: cargo test -- --test-threads=1
      - run: cargo check --target wasm32-unknown-unknown --tests
      - name: Enforce raw Wasm size budgets
        run: make wasm-size
      - run: cargo package

  msrv:
    runs-on: ubuntu-latest
    env:
      RUSTUP_TOOLCHAIN: 1.88.0
    steps:
      - uses: actions/checkout@v4
      - uses: dtolnay/rust-toolchain@1.88.0
      - run: cargo check --all-targets