sled 0.34.7

Lightweight high-performance pure-rust transactional embedded database.
Documentation
name: Rust

on:
  pull_request:
    branches:
    - master

jobs:
  clippy_check:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v1
      - uses: actions-rs/toolchain@v1
        with:
            toolchain: nightly
            components: clippy
            override: true
      - run: rustup component add clippy
      - uses: actions-rs/clippy-check@v1
        with:
          token: ${{ secrets.GITHUB_TOKEN }}
          args: --all-features
  default:
    name: Cargo Test on ${{ matrix.os }}
    runs-on: ${{ matrix.os }}
    strategy:
      fail-fast: false
      matrix:
        os: [ubuntu-latest, macos-latest, windows-latest]
    steps:
    - uses: actions/checkout@v1
    - name: Cache target
      uses: actions/cache@v1
      env:
        cache-name: cache-target
      with:
        path: target
        key: ${{ runner.os }}-${{ env.cache-name }}
        restore-keys: |
          ${{ runner.os }}-
    - name: cargo test
      run: |
        rustup update --no-self-update
        cargo test --release --no-default-features --features=testing -- --nocapture
  examples:
    name: Example Tests
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@v1
    - name: Cache target
      uses: actions/cache@v1
      env:
        cache-name: cache-target
      with:
        path: target
        key: ${{ runner.os }}-${{ env.cache-name }}
        restore-keys: |
          ${{ runner.os }}-
    - name: example tests
      run: |
        rustup update --no-self-update
        cargo run --example playground
        cargo run --example structured
  cross-compile:
    name: Cross Compile
    runs-on: macos-latest
    steps:
    - uses: actions/checkout@v1
    - name: cross compile
      run: |
        set -eo pipefail
        echo "cross build"
        echo "https://github.com/rust-lang/cargo/issues/4753"
        scripts/cross_compile.sh
  burn-in:
    name: Burn In
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@v1
    - name: Cache target
      uses: actions/cache@v1
      env:
        cache-name: cache-target
      with:
        path: target
        key: ${{ runner.os }}-${{ env.cache-name }}
        restore-keys: |
          ${{ runner.os }}-
    - name: burn in
      run: |
        set -eo pipefail
        pushd benchmarks/stress2
        cargo run --release -- --duration=60
        rm -rf default.sled
  sanitizers:
    name: Sanitizers
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@v1
    - name: Cache rustup
      uses: actions/cache@v1
      env:
        cache-name: cache-target
      with:
        path: ~/.rustup
        key: ${{ runner.os }}-${{ env.cache-name }}
        restore-keys: |
          ${{ runner.os }}-
    - name: sanitizers
      run: |
        set -eo pipefail
        scripts/sanitizers.sh