1-
21name : Lints-Tests
32
43on :
@@ -13,47 +12,21 @@ permissions:
1312 contents : read
1413
1514env :
16- RUSTFLAGS : -C debuginfo=0 # Do not produce debug symbols to keep memory usage down
15+ RUSTFLAGS : -C debuginfo=0 # Do not produce debug symbols to keep memory usage down
1716
1817jobs :
19- rust-lints-test :
20- runs-on : ubuntu-latest
21- steps :
22- - uses : actions/checkout@v4
23-
24- - name : Set up Rust
25- run : rustup override set stable && rustup update
26-
27- - name : Install clippy
28- run : rustup component add clippy
29-
30- - name : Cache Rust
31- uses : Swatinem/rust-cache@v2
32-
33- - name : Run cargo clippy
34- run : cargo clippy --workspace --all-targets -- -D warnings
35-
36- - run : cargo test
37- env :
38- RUST_BACKTRACE : 1
39-
40-
41- test-os :
18+ test-python :
4219 name : test ${{ matrix.os }}-${{ matrix.python-version }}
4320
4421 strategy :
4522 fail-fast : false
4623 matrix :
47- os : [ubuntu, macos, windows]
48- poetry-version : ["1.5.1"]
49- python-version : ["3.8", "3.9", "3.10", "3.11", "3.12"]
24+ os : [ubuntu, macos]
25+ python-version : ["3.10", "3.11", "3.12"]
5026
5127 runs-on : ${{ matrix.os }}-latest
52- needs : [rust-lints-test]
5328 steps :
5429 - uses : actions/checkout@v4
55- - name : Install poetry
56- run : pipx install poetry==${{ matrix.poetry-version }}
5730
5831 - name : install rust stable
5932 uses : dtolnay/rust-toolchain@stable
@@ -63,77 +36,30 @@ jobs:
6336 with :
6437 key : ${{ matrix.os }}-${{ matrix.python-version }}-v1
6538
66- - name : set up python
67- uses : actions/setup-python@v5
68- with :
69- python-version : ${{ matrix.python-version }}
70- cache : ' poetry'
71-
72- - name : Create virtual environment
73- run : |
74- python -m venv .venv
75- echo "$GITHUB_WORKSPACE/rusty-logger/.venv/bin" >> $GITHUB_PATH
76-
77- - name : Install dependencies
78- run : make setup.project
79-
80- - name : Lints
81- run : make lints.ci
82-
83- - name : Run tests and report coverage
84- run : make test.unit
85-
86- - name : Upload coverage reports to Codecov
87- uses : codecov/codecov-action@v4
88- env :
89- CODECOV_TOKEN : ${{ secrets.CODECOV_TOKEN }}
90-
91- test-ubuntu-pypy :
92- name : test ubuntu-${{ matrix.python-version }}
93-
94- strategy :
95- fail-fast : false
96- matrix :
97- poetry-version : ["1.5.1"]
98- python-version : ["pypy3.8", "pypy3.9", "pypy3.10"]
99-
100- runs-on : ubuntu-latest
101- needs : [rust-lints-test]
102- steps :
103- - uses : actions/checkout@v4
104- - name : Install poetry
105- run : pipx install poetry==${{ matrix.poetry-version }}
106-
107- - name : install rust stable
108- uses : dtolnay/rust-toolchain@stable
109-
110- - name : cache rust
111- uses : Swatinem/rust-cache@v2
39+ - name : Install uv
40+ uses : astral-sh/setup-uv@v4
11241 with :
113- key : ubuntu-${{ matrix.python-version }}-v1
42+ enable-cache : true
11443
11544 - name : set up python
11645 uses : actions/setup-python@v5
11746 with :
11847 python-version : ${{ matrix.python-version }}
119- cache : ' poetry'
12048
12149 - name : Create virtual environment
122- run : |
123- python -m venv .venv
124- echo "$GITHUB_WORKSPACE/rusty-logger/.venv/bin" >> $GITHUB_PATH
125-
126- - name : Install dependencies
127- run : make setup.project
50+ working-directory : ./py-logger
51+ run : make setup.project
12852
12953 - name : Lints
130- run : make lints.ci
131-
54+ working-directory : ./py-logger
55+ run : make lints.ci
56+
13257 - name : Run tests and report coverage
58+ working-directory : ./py-logger
13359 run : make test.unit
13460
13561 test-build :
136- needs : [test-os ]
62+ needs : [test-python ]
13763 name : build - ubuntu - ${{ matrix.manylinux }} - ${{ matrix.target }}
13864 strategy :
13965 fail-fast : false
16086 args : --release --out dist --interpreter 3.11
16187 rust-toolchain : stable
16288 docker-options : -e CI
89+ working-directory : ./py-logger
16390
164- - run : ls -lh dist/
91+ - run : ls -lh ./py-logger/ dist/
16592
166- - run : twine check --strict dist/*
167-
93+ - run : twine check --strict ./py-logger/dist/*
0 commit comments