datafusion-ethers 53.0.2

Ethereum RPC bridge for Apache Datafusion
Documentation
name: build
on:
  push:
    paths-ignore:
      - "**.md"
  workflow_dispatch: { }
env:
  RUST_LOG: "info,datafusion_ethers=debug"
  RUST_LOG_SPAN_EVENTS: "new,close"
  RUST_BACKTRACE: "1"
jobs:
  lint_fmt:
    name: Lint / Code
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v5
      - uses: actions-rs/toolchain@v1
        with:
          components: rustfmt, clippy
      - uses: swatinem/rust-cache@v2
        with:
          cache-on-failure: true
      - name: cargo fmt --check
        uses: actions-rs/cargo@v1
        with:
          command: fmt
          args: --check --all
      - name: clippy
        uses: actions-rs/cargo@v1
        with:
          command: clippy
          args: --workspace --all-targets -- -D warnings

  lint_deps:
    name: Lint / Dependencies
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v5
      - uses: actions-rs/toolchain@v1
      - uses: cargo-bins/cargo-binstall@main
      - run: cargo binstall cargo-deny -y
      - run: cargo deny check --hide-inclusion-graph

  test_linux:
    name: Test / Linux
    runs-on: ubuntu-latest
    env:
      CARGO_FLAGS: ""
    steps:
      - uses: actions/checkout@v5
      - uses: actions-rs/toolchain@v1
      - uses: swatinem/rust-cache@v2
        with:
          cache-on-failure: true
      - name: Install foundry
        uses: foundry-rs/foundry-toolchain@v1
      - name: Build contracts
        working-directory: tests/contracts
        run: |
          npm ci
          forge build
      - name: Build
        run: cargo test ${{ env.CARGO_FLAGS }} --no-run
      - name: Run tests
        run: cargo test ${{ env.CARGO_FLAGS }}
      - name: Check git diff
        run: git diff && git diff-index --quiet HEAD