name: Checks on: push: branches: - main pull_request: branches: - main jobs: check: runs-on: ubuntu-latest steps: - name: Checkout code uses: actions/checkout@v4 - name: Install openssl run: sudo apt-get update && sudo apt-get install -y openssl - name: Set up Elixir uses: erlef/setup-beam@v1 with: elixir-version: "1.17.x" otp-version: "26.x" rebar3-version: false hexpm-mirrors: | https://builds.hex.pm https://cdn.jsdelivr.net/hex - name: Install dependencies run: mix deps.get - name: Check formatting run: mix format --check-formatted - name: Run Credo run: mix credo --strict - name: Check for compiler warnings run: mix compile --warnings-as-errors - name: Run tests run: mix test - name: Check for unused dependencies run: mix deps.unlock --check-unused