[go: up one dir, main page]

warp 0.3.0

serve the web at warp speeds
Documentation
name: CI

on:
  pull_request:
  push:
    branches:
      - master

jobs:
  style:
    name: Check Style
    runs-on: ubuntu-latest
    steps:
      - name: Checkout
        uses: actions/checkout@v1

      - name: Install rust
        uses: actions-rs/toolchain@v1
        with:
          toolchain: stable
          components: rustfmt
          profile: minimal
          override: true

      - name: cargo fmt -- --check
        uses: actions-rs/cargo@v1
        with:
          command: fmt
          args: --all -- --check

  test:
    name: Test
    needs: [style]
    runs-on: ubuntu-latest

    strategy:
      matrix:
        build: [stable, beta, nightly, tls, no-default-features, compression]

        include:
          - build: beta
            rust: beta
          - build: nightly
            rust: nightly
            benches: true
          - build: tls
            features: "--features tls"
          - build: no-default-features
            features: "--no-default-features"
          - build: compression
            features: "--features compression"


    steps:
      - name: Checkout
        uses: actions/checkout@v1

      - name: Install rust
        uses: actions-rs/toolchain@v1
        with:
          toolchain: ${{ matrix.rust || 'stable' }}
          profile: minimal
          override: true

      - name: Test
        uses: actions-rs/cargo@v1
        with:
          command: test
          args: ${{ matrix.features }}

      - name: Test all benches
        if: matrix.benches
        uses: actions-rs/cargo@v1
        with:
          command: test
          args: --benches ${{ matrix.features }}

  doc:
    name: Build docs
    needs: [style, test]
    runs-on: ubuntu-latest
    steps:
      - name: Checkout
        uses: actions/checkout@v1

      - name: Install Rust
        uses: actions-rs/toolchain@v1
        with:
          profile: minimal
          toolchain: nightly
          override: true

      - name: cargo doc
        uses: actions-rs/cargo@v1
        with:
          command: rustdoc
          args: -- -D broken_intra_doc_links