1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
name: CI
on:
push:
branches:
pull_request:
branches:
schedule:
# Run CI daily at 2 AM UTC
- cron: '0 2 * * *'
env:
CARGO_TERM_COLOR: always
RUST_BACKTRACE: 1
jobs:
# All jobs disabled to reduce GitHub Actions usage
# Uncomment jobs below when ready to re-enable CI
placeholder:
name: CI Disabled
runs-on: ubuntu-latest
if: false # This job will never run
steps:
- name: Placeholder
run: echo "CI is disabled"
# test:
# name: Test Suite
# runs-on: ${{ matrix.os }}
# strategy:
# matrix:
# os: [windows-latest]
# rust: [stable, beta, 1.85.0] # MSRV
#
# steps:
# - name: Checkout code
# uses: actions/checkout@v4
#
# - name: Install Rust toolchain
# uses: dtolnay/rust-toolchain@master
# with:
# toolchain: ${{ matrix.rust }}
# components: rustfmt, clippy
#
# - name: Cache dependencies
# uses: Swatinem/rust-cache@v2
# with:
# key: ${{ matrix.os }}-${{ matrix.rust }}
#
# - name: Check formatting
# if: matrix.rust == 'stable' && matrix.os == 'windows-latest'
# run: cargo fmt --all -- --check
#
# - name: Run clippy
# if: matrix.rust == 'stable'
# run: cargo clippy --all-targets --all-features -- -D warnings
#
# - name: Build
# run: cargo build --verbose --all-features
#
# - name: Run tests
# run: cargo test --verbose --all-features
#
# - name: Run examples
# if: matrix.rust == 'stable'
# run: |
# cargo run --example basic_box
# cargo run --example color_demo
# cargo run --example custom_styles
#
# - name: Test documentation
# if: matrix.rust == 'stable' && matrix.os == 'windows-latest'
# run: cargo doc --no-deps --all-features
# coverage:
# name: Code Coverage
# runs-on: windows-latest
# if: github.event_name == 'push' || github.event_name == 'pull_request'
#
# steps:
# - name: Checkout code
# uses: actions/checkout@v4
#
# - name: Install Rust toolchain
# uses: dtolnay/rust-toolchain@stable
#
# - name: Cache dependencies
# uses: Swatinem/rust-cache@v2
#
# - name: Install cargo-tarpaulin
# run: cargo install cargo-tarpaulin
#
# - name: Generate code coverage
# run: cargo tarpaulin --verbose --all-features --workspace --timeout 120 --out xml
#
# - name: Upload coverage to Codecov
# uses: codecov/codecov-action@v4
# with:
# file: ./cobertura.xml
# fail_ci_if_error: false
# check-dependencies:
# name: Check Dependencies
# runs-on: windows-latest
#
# steps:
# - name: Checkout code
# uses: actions/checkout@v4
#
# - name: Install Rust toolchain
# uses: dtolnay/rust-toolchain@stable
#
# - name: Cache dependencies
# uses: Swatinem/rust-cache@v2
#
# - name: Check for unused dependencies
# run: |
# cargo install cargo-machete
# cargo machete
#
# - name: Check dependency tree
# run: cargo tree --duplicates
# msrv-check:
# name: MSRV Check
# runs-on: windows-latest
#
# steps:
# - name: Checkout code
# uses: actions/checkout@v4
#
# - name: Install MSRV toolchain
# uses: dtolnay/rust-toolchain@stable
#
# - name: Cache dependencies
# uses: Swatinem/rust-cache@v2
#
# - name: Check MSRV compatibility
# run: cargo check --all-features