Repository navigation
feat(sql): add catalog list and paid query sessions #164
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: 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 |