dropbox-sdk 0.19.1

Rust bindings to the Dropbox API, generated by Stone from the official spec.
Documentation
name: Cargo Checks

on: [push, pull_request]

jobs:
  check:
    name: Cargo Checks
    runs-on: ubuntu-latest
    steps:
      - name: Checkout sources
        uses: actions/checkout@v4.2.2
        with:
          submodules: true

      - name: Install nightly toolchain
        run: |
          rustup install nightly --profile minimal
          rustup component add clippy --toolchain nightly
          rustup component add rustfmt --toolchain nightly

      - name: Run rustfmt
        run: |
          find . -path ./src/generated -prune -o -name '*.rs' -print | xargs rustup run nightly rustfmt --edition 2021 --check

      - name: Set up Python
        uses: actions/setup-python@v5.3.0
        with:
          python-version: "3.10"

      - name: Install Python dependencies
        run: |
          python -m pip install --upgrade pip
          pip install packaging ply six

      - name: Run the generator
        run: python generate.py

      - name: Check generated files against repo
        run: if [[ ! -z `git status --porcelain=v1` ]]; then echo "::error::Workspace is dirty after running generator. Did you remember to check in the generated files?"; exit 1; fi

      - name: Install MSRV toolchain
        run: rustup install 1.75.0 --profile minimal

      # remove this once our MSRV is >= 1.84, which has the MSRV-aware resolver
      - name: fix deps for old rustc
        run: |
          rustup run 1.75.0 cargo update litemap --precise 0.7.4
          rustup run 1.75.0 cargo update zerofrom --precise 0.1.5

      - name: Run cargo test
        run: rustup run 1.75.0 cargo test --all-features

      - name: Run clippy
        run: rustup run nightly cargo clippy --all-targets --all-features -- --deny warnings

      - name: Run clippy with minimal features (sync)
        run: rustup run nightly cargo clippy --no-default-features --features sync_routes,dbx_files

      - name: Run clippy with minimal features (async)
        run: rustup run nightly cargo clippy --no-default-features --features default_async_client,dbx_files