feat(core): introduce PySessionContext
and the API for the available function list
#121
Workflow file for this run
This file contains 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: Rust | |
on: | |
pull_request: | |
paths: | |
- 'wren-core/**' | |
concurrency: | |
group: ${{ github.workflow }}-${{ github.event.number }} | |
cancel-in-progress: true | |
defaults: | |
run: | |
working-directory: wren-core | |
jobs: | |
# Check crate compiles | |
linux-build-lib: | |
name: cargo check | |
runs-on: ubuntu-latest | |
container: | |
image: amd64/rust | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Setup Rust toolchain | |
uses: ./.github/actions/rust/setup-builder | |
with: | |
rust-version: stable | |
- name: Cache Cargo | |
uses: actions/cache@v4 | |
with: | |
path: | | |
~/.cargo/bin/ | |
~/.cargo/registry/index/ | |
~/.cargo/registry/cache/ | |
~/.cargo/git/db/ | |
./wren-core/target/ | |
# this key equals the ones on `linux-build-lib` for re-use | |
key: cargo-cache-benchmark-${{ hashFiles('wren-core/Cargo.toml') }} | |
- name: Check datafusion-common without default features | |
run: cargo check --all-targets | |
# Run tests | |
linux-test: | |
name: cargo test (amd64) | |
needs: [ linux-build-lib ] | |
runs-on: ubuntu-latest | |
container: | |
image: amd64/rust | |
steps: | |
- uses: actions/checkout@v4 | |
with: | |
submodules: true | |
- name: Setup Rust toolchain | |
uses: ./.github/actions/rust/setup-builder | |
with: | |
rust-version: stable | |
- name: Run tests (excluding doctests) | |
run: cargo test --lib --tests --bins | |
- name: Verify Working Directory Clean | |
run: git diff --exit-code | |
windows: | |
name: cargo test (win64) | |
runs-on: windows-latest | |
steps: | |
- uses: actions/checkout@v4 | |
with: | |
submodules: true | |
- name: Setup Rust toolchain | |
uses: ./.github/actions/rust/setup-windows-builder | |
- name: Run tests (excluding doctests) | |
shell: bash | |
run: | | |
cargo test --lib --tests --bins | |
macos: | |
name: cargo test (macos) | |
runs-on: macos-latest | |
steps: | |
- uses: actions/checkout@v4 | |
with: | |
submodules: true | |
- name: Setup Rust toolchain | |
uses: ./.github/actions/rust/setup-macos-builder | |
- name: Run tests (excluding doctests) | |
shell: bash | |
run: cargo test --lib --tests --bins | |
macos-aarch64: | |
name: cargo test (macos-aarch64) | |
runs-on: macos-14 | |
steps: | |
- uses: actions/checkout@v4 | |
with: | |
submodules: true | |
- name: Setup Rust toolchain | |
uses: ./.github/actions/rust/setup-macos-aarch64-builder | |
- name: Run tests (excluding doctests) | |
shell: bash | |
run: cargo test --lib --tests --bins | |
check-fmt: | |
name: Check cargo fmt | |
runs-on: ubuntu-latest | |
container: | |
image: amd64/rust | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Setup Rust toolchain | |
uses: ./.github/actions/rust/setup-builder | |
with: | |
rust-version: stable | |
- name: Run | |
run: cargo fmt --all -- --check | |
clippy: | |
name: clippy | |
needs: [ linux-build-lib ] | |
runs-on: ubuntu-latest | |
container: | |
image: amd64/rust | |
steps: | |
- uses: actions/checkout@v4 | |
with: | |
submodules: true | |
- name: Setup Rust toolchain | |
uses: ./.github/actions/rust/setup-builder | |
with: | |
rust-version: stable | |
- name: Install Clippy | |
run: rustup component add clippy | |
- name: Run clippy | |
run: cargo clippy --all-targets --all-features -- -D warnings | |
cargo-toml-formatting-checks: | |
name: check Cargo.toml formatting | |
needs: [ linux-build-lib ] | |
runs-on: ubuntu-latest | |
container: | |
image: amd64/rust | |
steps: | |
- uses: actions/checkout@v4 | |
with: | |
submodules: true | |
- name: Setup Rust toolchain | |
uses: ./.github/actions/rust/setup-builder | |
with: | |
rust-version: stable | |
- name: Install taplo | |
run: cargo +stable install taplo-cli --version ^0.9 --locked | |
# if you encounter an error, try running 'taplo format' to fix the formatting automatically. | |
- name: Check Cargo.toml formatting | |
run: taplo format --check |