git-smash 0.1.2

Smash staged changes into previous commits
---
name: CI

on:
  push:
  pull_request:
    branches: [main]
  schedule:
    - cron: '0 0 * * *'  # once a day

env:
  CARGO_TERM_COLOR: always

jobs:
  build:
    name: CI with ${{ matrix.rust }} on ${{ matrix.os }} for ${{ matrix.arch }}
    runs-on: ${{ matrix.os }}
    strategy:
      fail-fast: false
      matrix:
        os: [ubuntu-latest]
        rust: [stable, beta, nightly]
        arch:
          - x86_64-unknown-linux-gnu
          - x86_64-unknown-linux-musl
          - i686-unknown-linux-musl
          - armv5te-unknown-linux-gnueabi
          - armv7-unknown-linux-gnueabihf
          - aarch64-unknown-linux-gnu
          - powerpc64le-unknown-linux-gnu
          - s390x-unknown-linux-gnu
          - riscv64gc-unknown-linux-gnu

    steps:
      - uses: actions/checkout@v3

      - uses: actions-rs/toolchain@v1
        with:
          toolchain: ${{ matrix.rust }}
          target: ${{ matrix.arch }}
          override: true
          components: rustfmt, clippy

      - uses: actions-rs/cargo@v1
        with:
          use-cross: true
          command: build
          args: --target ${{ matrix.arch }}

      - uses: actions-rs/cargo@v1
        with:
          use-cross: true
          command: test
          args: --target ${{ matrix.arch }}

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

      - name: cargo clippy
        uses: actions-rs/cargo@v1
        with:
          command: clippy
          args: -- -D warnings

  cargo-deny:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v3
      - uses: EmbarkStudios/cargo-deny-action@v1