iced-window-chrome 0.1.0

Native-only window chrome patches for iced on Windows, macOS, and Linux
Documentation
name: CI

on:
  push:
  pull_request:

permissions:
  contents: read

jobs:
  check:
    name: ${{ matrix.os }}
    runs-on: ${{ matrix.os }}
    strategy:
      fail-fast: false
      matrix:
        os:
          - ubuntu-latest
          - windows-latest
          - macos-latest

    steps:
      - uses: actions/checkout@v4

      - name: Show toolchain
        run: |
          rustc --version
          cargo --version
          rustup --version

      - uses: Swatinem/rust-cache@v2

      - name: Format
        if: matrix.os == 'ubuntu-latest'
        run: cargo fmt --all --check

      - name: Clippy
        run: cargo clippy --all-targets -- -D warnings

      - name: Check
        run: cargo check --all-targets

      - name: Publish dry run
        if: matrix.os == 'ubuntu-latest'
        run: cargo publish --dry-run --locked

  publish:
    name: Publish
    needs: check
    if: github.event_name == 'push' && startsWith(github.ref, 'refs/tags/v')
    runs-on: ubuntu-latest
    env:
      CARGO_REGISTRY_TOKEN: ${{ secrets.CARGO_REGISTRY_TOKEN }}

    steps:
      - uses: actions/checkout@v4

      - uses: Swatinem/rust-cache@v2

      - name: Publish crate
        run: cargo publish --locked