Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
108 changes: 17 additions & 91 deletions .github/workflows/lint-testing.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,3 @@

name: Lints-Tests

on:
Expand All @@ -13,47 +12,21 @@ permissions:
contents: read

env:
RUSTFLAGS: -C debuginfo=0 # Do not produce debug symbols to keep memory usage down
RUSTFLAGS: -C debuginfo=0 # Do not produce debug symbols to keep memory usage down

jobs:
rust-lints-test:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4

- name: Set up Rust
run: rustup override set stable && rustup update

- name: Install clippy
run: rustup component add clippy

- name: Cache Rust
uses: Swatinem/rust-cache@v2

- name: Run cargo clippy
run: cargo clippy --workspace --all-targets -- -D warnings

- run: cargo test
env:
RUST_BACKTRACE: 1


test-os:
test-python:
name: test ${{ matrix.os }}-${{ matrix.python-version }}

strategy:
fail-fast: false
matrix:
os: [ubuntu, macos, windows]
poetry-version: ["1.5.1"]
python-version: ["3.8", "3.9", "3.10", "3.11", "3.12"]
os: [ubuntu, macos]
python-version: ["3.10", "3.11", "3.12"]

runs-on: ${{ matrix.os }}-latest
needs: [rust-lints-test]
steps:
- uses: actions/checkout@v4
- name: Install poetry
run: pipx install poetry==${{ matrix.poetry-version }}

- name: install rust stable
uses: dtolnay/rust-toolchain@stable
Expand All @@ -63,77 +36,30 @@ jobs:
with:
key: ${{ matrix.os }}-${{ matrix.python-version }}-v1

- name: set up python
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
cache: 'poetry'

- name: Create virtual environment
run: |
python -m venv .venv
echo "$GITHUB_WORKSPACE/rusty-logger/.venv/bin" >> $GITHUB_PATH

- name: Install dependencies
run : make setup.project

- name: Lints
run : make lints.ci

- name: Run tests and report coverage
run: make test.unit

- name: Upload coverage reports to Codecov
uses: codecov/codecov-action@v4
env:
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}

test-ubuntu-pypy:
name: test ubuntu-${{ matrix.python-version }}

strategy:
fail-fast: false
matrix:
poetry-version: ["1.5.1"]
python-version: ["pypy3.8", "pypy3.9", "pypy3.10"]

runs-on: ubuntu-latest
needs: [rust-lints-test]
steps:
- uses: actions/checkout@v4
- name: Install poetry
run: pipx install poetry==${{ matrix.poetry-version }}

- name: install rust stable
uses: dtolnay/rust-toolchain@stable

- name: cache rust
uses: Swatinem/rust-cache@v2
- name: Install uv
uses: astral-sh/setup-uv@v4
with:
key: ubuntu-${{ matrix.python-version }}-v1
enable-cache: true

- name: set up python
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
cache: 'poetry'

- name: Create virtual environment
run: |
python -m venv .venv
echo "$GITHUB_WORKSPACE/rusty-logger/.venv/bin" >> $GITHUB_PATH

- name: Install dependencies
run : make setup.project
working-directory: ./py-logger
run: make setup.project

- name: Lints
run : make lints.ci

working-directory: ./py-logger
run: make lints.ci

- name: Run tests and report coverage
working-directory: ./py-logger
run: make test.unit

test-build:
needs: [test-os]
needs: [test-python]
name: build - ubuntu - ${{ matrix.manylinux }} - ${{ matrix.target }}
strategy:
fail-fast: false
Expand All @@ -160,8 +86,8 @@ jobs:
args: --release --out dist --interpreter 3.11
rust-toolchain: stable
docker-options: -e CI
working-directory: ./py-logger

- run: ls -lh dist/
- run: ls -lh ./py-logger/dist/

- run: twine check --strict dist/*

- run: twine check --strict ./py-logger/dist/*
Loading
Loading