osauth 0.5.0

Asynchronous OpenStack session and authentication
Documentation
name: Builds and tests
on: [push, pull_request]

jobs:
  test:
    name: Test on ${{ matrix.rust }} (${{ matrix.flags}})
    runs-on: ubuntu-latest
    strategy:
      matrix:
        rust: [stable, nightly, 1.71.0]
        flags:
          - ""
          - "--no-default-features"
          - "--no-default-features --features default-rustls"
    steps:
    - uses: actions/checkout@v4
    - name: Install Rust
      run: |
        rustup update ${{ matrix.rust }} --no-self-update
        rustup default ${{ matrix.rust }}
    - run: cargo test --verbose ${{ matrix.flags }}

  test-derive:
    name: Test derive on ${{ matrix.rust }}
    runs-on: ubuntu-latest
    strategy:
      matrix:
        rust: [stable, nightly, 1.71.0]
    steps:
    - uses: actions/checkout@v4
    - name: Install Rust
      run: |
        rustup update ${{ matrix.rust }} --no-self-update
        rustup default ${{ matrix.rust }}
    - run: |
        cd derive
        cargo test --verbose

  rustfmt:
    name: Formatting
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@v4
    - name: Install Rust
      run: |
        rustup update stable --no-self-update
        rustup default stable
        rustup component add rustfmt
    - run: cargo fmt -- --check

  docs:
    name: Documentation
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - name: Install Rust
        run: |
          rustup update stable --no-self-update
          rustup default stable
      - run: cargo doc --verbose