Repository navigation
feat: add the SQLClean engine, command and Python custom Rules #10
Workflow file for this run
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: Verify | |
| on: | |
| pull_request: | |
| workflow_dispatch: | |
| permissions: | |
| contents: read | |
| concurrency: | |
| group: verify-${{ github.workflow }}-${{ github.ref }} | |
| cancel-in-progress: true | |
| jobs: | |
| verify: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: dtolnay/rust-toolchain@master | |
| with: | |
| toolchain: 1.95.0 | |
| components: rustfmt, clippy | |
| - uses: Swatinem/rust-cache@v2 | |
| - uses: astral-sh/setup-uv@v6 | |
| with: | |
| enable-cache: true | |
| - run: uv python install 3.12 | |
| - run: uv sync --locked --all-groups | |
| - run: make verify | |
| rust: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: dtolnay/rust-toolchain@master | |
| with: | |
| toolchain: 1.95.0 | |
| components: rustfmt, clippy | |
| - uses: Swatinem/rust-cache@v2 | |
| - uses: astral-sh/setup-uv@v6 | |
| - run: uv python install 3.12 | |
| - run: uv sync --locked --all-groups | |
| - run: make check-rust | |
| - run: make test-rust | |
| minimum-rust: | |
| name: Minimum supported Rust (1.88) | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: dtolnay/rust-toolchain@master | |
| with: | |
| toolchain: 1.88.0 | |
| - uses: Swatinem/rust-cache@v2 | |
| - run: cargo +1.88.0 check --workspace --all-targets --locked | |
| windows: | |
| runs-on: windows-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: dtolnay/rust-toolchain@master | |
| with: | |
| toolchain: 1.95.0 | |
| - uses: Swatinem/rust-cache@v2 | |
| - uses: astral-sh/setup-uv@v6 | |
| with: | |
| enable-cache: true | |
| - run: uv python install 3.12 | |
| - run: uv sync --locked --all-groups | |
| - run: cargo test --workspace --locked | |
| - run: uv run pytest tests -q -n auto | |
| native-package-smoke: | |
| strategy: | |
| matrix: | |
| os: [ubuntu-latest, macos-latest, windows-latest] | |
| runs-on: ${{ matrix.os }} | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: dtolnay/rust-toolchain@master | |
| with: | |
| toolchain: 1.95.0 | |
| - uses: Swatinem/rust-cache@v2 | |
| - uses: astral-sh/setup-uv@v6 | |
| - run: uv python install 3.12 | |
| - run: uv sync --locked --all-groups | |
| - run: uv run sqlclean --version | |
| - run: uv run pytest tests/e2e -q | |
| source-build: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: dtolnay/rust-toolchain@master | |
| with: | |
| toolchain: 1.95.0 | |
| - uses: Swatinem/rust-cache@v2 | |
| - uses: astral-sh/setup-uv@v6 | |
| - run: uv python install 3.12 | |
| - run: uv build --sdist --out-dir dist | |
| - run: uvx maturin sdist --out ../../dist | |
| working-directory: packages/sqlclean-cli | |
| - run: uv venv .source-venv --python 3.12 | |
| - run: uv pip install --python .source-venv/bin/python --no-deps dist/*.tar.gz | |
| - run: .source-venv/bin/sqlclean --version |