Predrag Gruevski
predr.ag
Predrag Gruevski
@predr.ag
Author of cargo-semver-checks & Trustfall // https://github.com/sponsors/obi1kenobi // https://predr.ag/blog // ex Principal Eng @Kensho // MIT alum // https://hachyderm.io/@predrag // not from around here 🇲🇰 // he-him
Shout-outs to the kind folks who make this work possible by funding cargo-semver-checks 🙏
January 11, 2026 at 8:21 PM
I also propose a change in how we measure success going forward.

I hate gameable metrics. Let's build what's most valuable for the community, not what's easiest to quantify and brag about.
January 11, 2026 at 8:16 PM
Here's everything you'll find in the post above!

If you're a regular reader, some of these sections may be familiar. There are links so you can skip ahead!
January 11, 2026 at 8:16 PM
SemVer is tricky in all languages. But in #rustlang it's easier than ever before!

By the end of 2024, cargo-semver-checks' capabilities were growing exponentially: 30 -> 57 -> 120 lints. We now end 2025 with 242 lints — 122 new lints were merged this calendar year 🎉

The exponential continues!
December 30, 2025 at 5:14 PM
On behalf of the cargo-semver-checks project, it's my pleasure to recognize @jyn.dev's irreplaceable and tireless work in the #rustlang community 🦀

I'll share just one anecdote; you can click on the GitHub Sponsors link at the end of the thread to see more 🧵
November 30, 2025 at 3:51 PM
Here's the code in question. Strange, right?
November 29, 2025 at 1:00 AM
I have a paper for you to read:
people.csail.mit.edu/nickolai/pap...
September 24, 2025 at 3:16 PM
Here's the animation (but do check out the release notes too!)
September 21, 2025 at 4:10 PM
cargo-semver-checks v0.44.0 is live — we've hit 200 lints ✨

Don't miss this *adorable* animation in the release notes, courtesy of the amazingly talented @dekirisu.com

Check it out here:
github.com/obi1kenobi/c...

#rust #rustlang #semver
September 21, 2025 at 4:07 PM
Sometimes when I work on #rustlang cargo-semver-checks, I feel I need "Look What You Made Me Do" playing in the background.

Here's a legal type and function signature I wrote today to test some upcoming lints 👇
September 5, 2025 at 3:09 AM
70% of security vulnerabilities are memory safety related, across a variety of studies in mature, well-maintained codebases.

Looking specifically at critical security vulnerabilities, the number goes up to 94%.

From @david-sankel.bsky.social's talk at @rustforgeconf.com
August 28, 2025 at 9:47 PM
Who else is going to be at Rust Forge btw?

Look at this stacked list of speakers and topics. I'm really looking forward to meeting all these folks in person!
rustforgeconf.com
August 10, 2025 at 3:29 PM
✨ cargo-semver-checks v0.43.0 is out ✨

This release cycle focused on making it a joy to use and build. We improved performance on large crates, cut down our CI time, tackled a large rustdoc JSON format migration, and paid down technical debt.

Enjoy!
August 10, 2025 at 3:16 PM
Experienced #rustlang engineers never break SemVer. Nobody needs cargo-semver-checks — just be more careful

I even *had left myself a note* that the next release needs to be a major bump. Too bad I only saw the note after cargo-semver-checks stopped the publish job!
June 7, 2025 at 2:59 PM
Update on the Rust Vision Doc, by @nikomatsakis.com, @timclicks.dev, and Jack Huey

Day 2 of #RustWeek closing strong!
May 14, 2025 at 3:40 PM
Excited for day 1 of #RustWeek! So many good talks coming up 🤩

If you like cargo-semver-checks (and especially if you fund it on GitHub Sponsors!), find me in the hallway — I have something for you 👀
May 13, 2025 at 5:41 AM
New cargo-semver-checks just dropped, enjoy!

And if you're enjoying, please support the project on GitHub Sponsors 😍
github.com/obi1kenobi/c...
April 22, 2025 at 6:12 PM
I think I found something weird & scary with `#[target_feature]` in #rustlang. Is this expected?

This feels like it should *at minimum* trigger a lint. How am I supposed to know whether trait impls added extra safety preconditions — especially when using `dyn/impl Trait` and/or an unsealed trait?
April 4, 2025 at 1:16 AM
✨ cargo-semver-checks v0.40 is out ✨

github.com/obi1kenobi/c...
March 8, 2025 at 4:58 PM
Hey, look at that! Number go up, and it's a round number again!
February 26, 2025 at 5:07 AM
"When can a trait be implemented without touching `#[doc(hidden)]` items?"

Simple question, extremely complex answer! Most intense 2000 lines I've written in a long time!

Still needs cleanup & refactoring, but it's passing tests!
github.com/obi1kenobi/t...
January 31, 2025 at 12:36 AM
Happy "new cargo-semver-checks release" day!

✨ 20 new lints ✨
January 28, 2025 at 4:15 PM
I like to play "Where's Waldo" as much as the next person, but not during code review.

Let's have more tools that point out things humans might miss!
January 9, 2025 at 3:20 PM
cargo-semver-checks found the problem in this change, saving the project from breaking SemVer. Manifest linting for the win! 🔥

Do you see the breaking change?

#rust #rustlang #semver
January 9, 2025 at 3:09 PM
cargo-semver-checks v0.38 is live, enjoy 🦀🔥

@orhun.dev and I live-streamed writing one of these new lints last weekend, if you want to see how the proverbial #rustlang sausage gets made!
December 11, 2024 at 6:06 PM