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
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
Huge thanks to @rerun.io and @ernerfeldt.bsky.social for sponsoring my work on cargo-semver-checks 🙏

To celebrate, I'll write 5 new lints today ✨
December 10, 2024 at 3:27 PM
In #rustlang, Cargo.toml changes that seem innocuous can break your users!

As of today, cargo-semver-checks has you covered 😇 Here's how 👇
predr.ag/blog/breakag...
December 5, 2024 at 2:28 PM
Gotta love it when you're writing two different programs at the same time, and they have to rhyme.

do_stuff() is 10 lines long in the actual code, and this structure repeats half a dozen times in the same function.
November 27, 2024 at 4:55 PM
Only if there are no accidental breaking changes in any of the upgraded versions!

As the talk shows, accidental breakage is quite common and happens ~all the time even to expert maintainers.
November 20, 2024 at 6:02 PM
That's certainly a new way to spell my name. Innovation strikes again!
November 19, 2024 at 9:16 PM
Congrats to all #rustlang Google Summer of Code students on completing their projects!

Max knocked his cargo-semver-checks project out of the park 🚀
blog.rust-lang.org/2024/11/07/g...
November 7, 2024 at 4:42 PM