uandere

uandere / semwave

Public

Fast semver bump propagation for your Rust project.

16
1
100% credibility
Found Mar 01, 2026 at 16 stars -- GitGems finds repos before they trend. Get early access to the next one.
Sign Up Free
AI Analysis
Rust
AI Summary

Semwave is a tool that analyzes Rust projects to recommend version bump levels for crates based on propagated changes from dependencies exposed in public APIs.

How It Works

1
🤔 Wondering about updates

You're working on a big software project and changing some parts, but unsure what other pieces need version updates to stay compatible.

2
🔍 Discover semwave

You find semwave, a helpful guide that automatically figures out which updates are needed across your project.

3
📥 Get it ready

Download and set up the tool on your computer—it prepares quickly for your project.

4
🎯 Point to changes

Tell it about the updates you made, either from recent project differences or by naming specific parts directly.

5
🔬 Let it scan

The tool quickly checks how changes affect other parts by looking at what each piece shares publicly—feels fast and smart.

6
📊 Review the lists

Get clear lists of parts needing big updates, medium ones, or small tweaks, plus a tree view showing the connections.

Update confidently

Now you know exactly what to change, release without worries, and keep everything working smoothly for users.

Sign up to see the full architecture

5 more

Sign Up Free

Star Growth

See how this repo grew from 16 to 16 stars Sign Up Free
Repurpose This Repo

Repurpose is a Pro feature

Generate ready-to-use prompts for X threads, LinkedIn posts, blog posts, YouTube scripts, and more -- with full repo context baked in.

Unlock Repurpose
AI-Generated Review

What is semwave?

Semwave is a Rust CLI tool for Cargo workspaces that propagates semver bumps across your project. Feed it initial "seeds" like crates with breaking changes—either via git diff between refs (e.g., main..HEAD) or --direct comma-separated names—and it outputs lists of crates needing major, minor, or patch bumps based on public API exposure. It's static analysis using rustdoc JSON, delivering results in seconds without compiling or testing.

Why is it gaining traction?

Unlike cargo-semver-checks or release-plz, which check single crates, semwave handles transitive propagation: if a deep dep leaks into public APIs via re-exports or types, it cascades bumps correctly, respecting 0.y.z vs >=1.0 schemes. The --tree flag visualizes influence paths, and it flags under-bumps or missing ones for CI fail-fast. Developers love the speed for fast GitHub Actions workflows and hypothetical what-ifs without git.

Who should use this?

Rust workspace maintainers at scale, like tokio-rs or rust-analyzer teams, who manually miss cascading semver needs in deep graphs. CI operators wanting automated bump checks before fast-forward merges or scheduled releases. Anyone bumping deps in monorepos tired of semver guesswork.

Verdict

Try semwave if you manage Rust workspaces—it's a sharp, focused tool with solid docs and examples, despite 15 stars and 1.0% credibility signaling early days. Under active development and nightly-only, so pair with cargo-semver-checks for seeds; expect refinements but use conservatively in prod.

(198 words)

Sign up to read the full AI review Sign Up Free

Similar repos coming soon.