Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
36 changes: 36 additions & 0 deletions .github/workflows/rust.yml
Original file line number Diff line number Diff line change
Expand Up @@ -48,6 +48,42 @@ jobs:
- name: Run cargo test
run: cargo test --verbose --workspace

coverage:
name: coverage (llvm-cov)
runs-on: ubuntu-latest
needs: build
env:
COVERAGE_LINES_MIN: "80"
steps:
- uses: actions/checkout@v4

- name: Install Rust 1.90 + llvm-tools
uses: actions-rs/toolchain@v1
with:
toolchain: "1.90"
override: true
components: llvm-tools-preview

- name: Install cargo-llvm-cov
uses: taiki-e/install-action@cargo-llvm-cov
with:
version: "0.6.12"

- name: Rust Cache
uses: Swatinem/rust-cache@v2
with:
key: ${{ runner.os }}-${{ runner.arch }}-cargo-${{ hashFiles('**/Cargo.toml') }}-coverage
cache-on-failure: false

- name: Run coverage
run: cargo llvm-cov --workspace --lcov --output-path lcov.info --fail-under-lines "$COVERAGE_LINES_MIN"

- name: Upload coverage report
uses: actions/upload-artifact@v4
with:
name: coverage-lcov
path: lcov.info

e2e-s3:
name: e2e (s3 via LocalStack)
runs-on: ubuntu-latest
Expand Down
2 changes: 2 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -12,4 +12,6 @@ __pycache__
node_modules
dist

lcov.info

.DS_Store
23 changes: 23 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -110,6 +110,29 @@ See [docs/overview.md](./docs/overview.md) for the full design.
- **API Reference**: [docs.rs/tonbo](https://docs.rs/tonbo): full Rust API documentation
- **RFCs**: [docs/rfcs/](./docs/rfcs/): design documents for contributors

## Development

### Coverage

Install coverage tooling once:

```bash
rustup component add llvm-tools-preview
cargo install cargo-llvm-cov --version 0.6.12 --locked
```

Run coverage locally:

```bash
cargo llvm-cov --workspace --lcov --output-path lcov.info --summary
```

Generate an HTML report:

```bash
cargo llvm-cov --workspace --html
```

### Project status

Tonbo is currently in **alpha**. APIs may change, and we're actively iterating based on feedback.
Expand Down
Loading