ppp 2.3.0

A Proxy Protocol Parser written in Rust. See HAProxy for the protocol specification.
Documentation
name: Linters

on: [ push, workflow_dispatch ]

env:
  CARGO_TERM_COLOR: always

jobs:
  lint:
    name: Lint & Format
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v2
      - uses: actions-rs/toolchain@v1
        with:
          toolchain: stable
          components: rustfmt, clippy
          override: true
      - name: Cache Cargo
        uses: Swatinem/rust-cache@v1.3.0
      - name: Lint
        uses: actions-rs/cargo@v1
        with:
          command: fix
          args: --all-features
      - name: Format
        uses: actions-rs/cargo@v1
        with:
          command: fmt
      - name: Upload formatting and lint fixes
        run: |
          if [ -n "$(git status --porcelain)" ]
          then
            git config user.name "Upload lint fixes from CI"
            git config user.email ""
            git add .
            git commit -m "Automically fix lint failures and format code."
            git push
          fi