pixel8bit 1.0.2

A Rust library for applying 8-bit pixelation effects with symmetry detection and mirroring.
Documentation
name: CI/CD for pixel8bit

on:
  push:
    branches:
      - main
  pull_request:

permissions:
  contents: write

jobs:
  build:
    name: Build and Test
    runs-on: ubuntu-latest
    steps:
      - name: Checkout code
        uses: actions/checkout@v3

      - name: Install Rust
        uses: actions-rs/toolchain@v1
        with:
          toolchain: stable
          override: true

      - name: Build the project
        run: cargo build --verbose

      - name: Run tests
        run: cargo test --verbose

  release:
    name: Semantic Release and Crates.io Publish
    needs: build
    runs-on: ubuntu-latest
    steps:
      - name: Checkout code
        uses: actions/checkout@v3

      - name: Install Node.js
        uses: actions/setup-node@v3
        with:
          node-version: '18'

      - name: Install Dependencies
        run: npm install -g semantic-release semantic-release-cargo @semantic-release/changelog @semantic-release/git @semantic-release/github @semantic-release/commit-analyzer @semantic-release/release-notes-generator

      - name: Run Semantic Release
        env:
          GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
          CARGO_REGISTRY_TOKEN: ${{ secrets.CRATES_IO_TOKEN }}
        run: npx semantic-release