manasight-parser 0.3.0

MTG Arena log file parser — reads Player.log and emits typed game events
Documentation
name: CI

on:
  push:
    branches: [main]
  pull_request:
    types: [opened, synchronize, ready_for_review, reopened]

permissions:
  contents: read

concurrency:
  group: ${{ github.workflow }}-${{ github.ref }}
  cancel-in-progress: true

jobs:
  check:
    name: Lint & Test
    runs-on: ubuntu-latest

    steps:
      - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2

      - name: Install Rust toolchain
        uses: actions-rust-lang/setup-rust-toolchain@2b1f5e9b395427c92ee4e3331786ca3c37afe2d7 # v1

      - name: Pre-commit checks
        run: make -j precommit

  test-no-default-features:
    name: Test (--no-default-features)
    runs-on: ubuntu-latest

    steps:
      - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2

      - name: Install Rust toolchain
        uses: actions-rust-lang/setup-rust-toolchain@2b1f5e9b395427c92ee4e3331786ca3c37afe2d7 # v1

      # Exercises the feature-off rollback path so it cannot bit-rot.
      # The `brace_depth_flush` feature is default-on; this job protects
      # the fallback "flush on next header" behavior that ships if the
      # feature is disabled (issue #193 reversibility insurance).
      - name: Run tests with default features disabled
        run: cargo test --no-default-features

  deny:
    name: cargo deny
    runs-on: ubuntu-latest

    steps:
      - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2

      - name: Check licenses and advisories
        uses: EmbarkStudios/cargo-deny-action@91bf2b620e09e18d6eb78b92e7861937469acedb # v2