task:
  name: rust 1.69 on freebsd 13
  freebsd_instance:
    image: freebsd-13-1-release-amd64
  setup_script:
    - curl https://sh.rustup.rs -sSf --output rustup.sh
    - sh rustup.sh -y --profile=minimal --default-toolchain=1.69
    - . $HOME/.cargo/env
    - rustup --version
    - rustup component add clippy
  test_script:
    - . $HOME/.cargo/env
    - cargo check
    - cargo check --no-default-features
    - cargo clippy -- -D warnings
    - cargo check --example simple
    - FREEBSD_CI=1 cargo test -j1
    - FREEBSD_CI=1 cargo test --lib -j1 -- --ignored

task:
  name: rust nightly on freebsd 13
  freebsd_instance:
    image: freebsd-13-1-release-amd64
  setup_script:
    - curl https://sh.rustup.rs -sSf --output rustup.sh
    - sh rustup.sh -y --profile=minimal --default-toolchain=nightly
    - . $HOME/.cargo/env
    - rustup --version
    - rustup component add clippy
  test_script:
    - . $HOME/.cargo/env
    - cargo check
    - cargo check --no-default-features
    - cargo clippy -- -D warnings
    - cargo check --example simple
    - FREEBSD_CI=1 cargo test -j1
    - FREEBSD_CI=1 cargo test --lib -j1 -- --ignored

task:
  name: rust 1.69 on mac m1
  macos_instance:
    image: ghcr.io/cirruslabs/macos-monterey-base:latest
  setup_script:
    - brew update
    - brew install curl
    - curl https://sh.rustup.rs -sSf --output rustup.sh
    - sh rustup.sh -y --profile=minimal --default-toolchain=1.69
    - source $HOME/.cargo/env
    - rustup --version
    - rustup component add clippy
  test_script:
    - source $HOME/.cargo/env
    - cargo check
    - cargo check --no-default-features
    - cargo check --no-default-features --features apple-sandbox
    - cargo clippy -- -D warnings
    - cargo check --example simple
    - APPLE_CI=1 cargo test -j1
    - APPLE_CI=1 cargo test --lib -j1 -- --ignored
