lzf-sys 0.1.1

FFI bindings for lzf
Documentation
name: CI

on:
  push:
    branches:
      - main
  pull_request:
    branches:
      - main
  schedule:
    - cron: '0 18 * * *'

env:
  CARGO_TERM_COLOR: always
  RUSTFLAGS: -D warnings

jobs:
  lint:
    name: lint + linux
    runs-on: ubuntu-latest
    strategy:
      fail-fast: false
    steps:
      - name: Checkout repository
        uses: actions/checkout@v7
      - name: Install Rust
        uses: actions-rs/toolchain@v1
        with: {profile: minimal, toolchain: stable, override: true, components: 'rustfmt, clippy'}
      - name: Run cargo fmt
        run: cargo fmt -- --check
      - name: Run clippy
        run: cargo clippy --features static
      - name: Build and test
        run: cargo test --features static,paranoid

  brew:
    name: brew
    runs-on: macos-latest
    strategy:
      fail-fast: false
    steps:
      - name: Checkout repository
        uses: actions/checkout@v7
        with: {submodules: true}
      - name: Install Rust
        uses: actions-rs/toolchain@v1
        with: {toolchain: stable, profile: minimal, override: true}
      - name: Install liblzf
        run: brew install liblzf
      - name: Build and test (system)
        run: cargo test --no-default-features
      - name: Build and test (static)
        run: cargo test
      - name: Build and test (static,paranoid)
        run: cargo test --features paranoid
      - name: Build and test (system)
        run: cargo clippy --no-default-features
      - name: Build and test (system,paranoid)
        run: cargo test --no-default-features --features paranoid

  windows:
    name: windows
    runs-on: windows-latest
    steps:
      - name: Checkout repository
        uses: actions/checkout@v7
        with: {submodules: true}
      - name: Install Rust
        uses: actions-rs/toolchain@v1
        with: {toolchain: stable, profile: minimal, override: true}
      - name: Build and test (static)
        run: cargo test