Skip to content

Commit 693058c

Browse files
committed
chore: update README features and optimize CI for binary builds
- Updated README with CIEDE2000 and Anti-aliasing details - Refactored GitHub Actions to prioritize cross-platform binary production - Added automatic artifact uploading for every build
1 parent 0d0fbc5 commit 693058c

File tree

2 files changed

+40
-25
lines changed

2 files changed

+40
-25
lines changed

.github/workflows/ci.yml

Lines changed: 36 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
name: CI & Release
1+
name: Build & Release
22

33
on:
44
push:
@@ -11,24 +11,8 @@ env:
1111
CARGO_TERM_COLOR: always
1212

1313
jobs:
14-
test:
15-
name: Test on ${{ matrix.os }}
16-
runs-on: ${{ matrix.os }}
17-
strategy:
18-
matrix:
19-
os: [ubuntu-latest, macos-latest, windows-latest]
20-
21-
steps:
22-
- uses: actions/checkout@v4
23-
- name: Build
24-
run: cargo build --verbose
25-
- name: Run tests
26-
run: cargo test --verbose
27-
28-
release:
29-
name: Release Binaries
30-
if: startsWith(github.ref, 'refs/tags/')
31-
needs: test
14+
build:
15+
name: Build on ${{ matrix.os }}
3216
runs-on: ${{ matrix.os }}
3317
strategy:
3418
matrix:
@@ -45,10 +29,40 @@ jobs:
4529

4630
steps:
4731
- uses: actions/checkout@v4
48-
- name: Build release
32+
33+
- name: Install Rust
34+
uses: dtolnay/rust-toolchain@stable
35+
with:
36+
targets: ${{ matrix.target }}
37+
38+
- name: Build Binary
4939
run: cargo build --release --target ${{ matrix.target }}
50-
- name: Upload artifact
40+
41+
- name: Upload Artifact
5142
uses: actions/upload-artifact@v4
5243
with:
5344
name: ${{ matrix.artifact_name }}
54-
path: target/${{ matrix.target }}/release/${{ matrix.os == 'windows-latest' && 'image-diff.exe' || 'image-diff' }}
45+
path: |
46+
target/${{ matrix.target }}/release/image-diff
47+
target/${{ matrix.target }}/release/image-diff.exe
48+
if-no-files-found: ignore
49+
50+
# Optional: Automatic GitHub Release on Tags
51+
release:
52+
name: Create GitHub Release
53+
if: startsWith(github.ref, 'refs/tags/')
54+
needs: build
55+
runs-on: ubuntu-latest
56+
steps:
57+
- name: Download all artifacts
58+
uses: actions/download-artifact@v4
59+
60+
- name: Create Release
61+
uses: softprops/action-gh-release@v1
62+
with:
63+
files: |
64+
image-diff-linux/image-diff
65+
image-diff-macos/image-diff
66+
image-diff-windows.exe/image-diff.exe
67+
env:
68+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

README.md

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -9,11 +9,12 @@
99
## Features
1010

1111
- **Blazing Fast:** Parallel directory processing using Rust's Rayon.
12-
- **Terminal Previews:** View diff heatmaps directly in your terminal using ANSI half-blocks.
13-
- **Dual Metrics:** Reports both raw Pixel Similarity and Structural Similarity (SSIM).
12+
- **High-Res Previews:** Support for Sixel, Kitty, and iTerm2 graphics protocols for near-perfect terminal previews (with automatic ANSI fallback).
13+
- **Perceptual Accuracy:** Uses CIEDE2000 color difference formula for human-centric comparison.
14+
- **Anti-Aliasing Detection:** Intelligent heuristic to ignore sub-pixel rendering artifacts in UI tests.
1415
- **Directory Diffing:** Recursively compare folders of images with summary reporting.
15-
- **CI/CD Ready:** Support for JSON output and semantic exit codes.
1616
- **Interactive Review:** Step through differences and accept/reject changes on the fly.
17+
- **CI/CD Ready:** Support for JSON output and semantic exit codes.
1718

1819
## Installation
1920

0 commit comments

Comments
 (0)