Skip to content

feat(sql): add catalog list and paid query sessions #164

feat(sql): add catalog list and paid query sessions

feat(sql): add catalog list and paid query sessions #164

Workflow file for this run

name: CI
on:
pull_request:
push:
branches: [main]
jobs:
rust:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: dtolnay/rust-toolchain@stable
with:
components: clippy, rustfmt
- uses: Swatinem/rust-cache@v2
- name: cargo fmt
run: cargo fmt --all -- --check
- name: cargo check
run: cargo check --workspace
- name: cargo clippy
run: cargo clippy --workspace --lib --tests -- -D warnings
- name: cargo test
run: cargo test -p quicknode-sdk --lib
# Payment lanes are feature-gated and add crypto deps + #[cfg]'d types, so
# each combo must build and test independently, plus a features-off build to
# prove the base crate is unaffected.
payment-features:
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
features:
- "" # features-off baseline
- "payments"
- "payments-svm"
- "payments-tempo"
- "payments,payments-svm,payments-tempo"
steps:
- uses: actions/checkout@v4
- uses: dtolnay/rust-toolchain@stable
with:
components: clippy
- uses: Swatinem/rust-cache@v2
- name: cargo clippy (features="${{ matrix.features }}")
run: |
if [ -z "${{ matrix.features }}" ]; then
cargo clippy -p quicknode-sdk --lib --tests -- -D warnings
else
cargo clippy -p quicknode-sdk --lib --tests --features "${{ matrix.features }}" -- -D warnings
fi
- name: cargo test (features="${{ matrix.features }}")
run: |
if [ -z "${{ matrix.features }}" ]; then
cargo test -p quicknode-sdk --lib
else
cargo test -p quicknode-sdk --lib --features "${{ matrix.features }}"
fi
python:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: dtolnay/rust-toolchain@stable
- uses: Swatinem/rust-cache@v2
- uses: actions/setup-python@v5
with:
python-version: '3.11'
- uses: astral-sh/setup-uv@v3
- name: Build Python bindings
run: |
uv venv
source .venv/bin/activate
uv pip install maturin
maturin develop
cargo run -p sdk-python-stubs
node:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: dtolnay/rust-toolchain@stable
- uses: Swatinem/rust-cache@v2
- uses: actions/setup-node@v4
with:
node-version: '20'
- name: Install dependencies
working-directory: npm
run: npm ci
- name: Build native module
working-directory: npm
run: npm run build
- name: Run tests
working-directory: npm
run: npm test
ruby:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: dtolnay/rust-toolchain@stable
- uses: Swatinem/rust-cache@v2
- uses: ruby/setup-ruby@v1
with:
ruby-version: '3.3'
- name: Build Ruby native extension
run: cargo build -p sdk-ruby --release