corpus.blog
Most cited
Talked about
Blogs
41554 blogs · [ { "id": "01a087c9-2b57-71f4-9d18-13425146e0e4", "title": "Protecting the Rust standard library from accidental breakage", "url": "https://predr.ag/blog/protecting-the-rust-stdlib-from-breakage/", "published_at": "2026-08-15T00:00:00+00:00" }, { "id": "01a087c9-2b58-7241-bcde-e5d19b93eb8e", "title": "The Self-Cancelling Subscription", "url": "https://predr.ag/blog/the-self-cancelling-subscription/", "published_at": "2026-04-01T00:00:00+00:00" }, { "id": "01a087c9-2b58-7241-bcde-e5d19ba3c80e", "title": "Exponential growth continued — cargo-semver-checks 2025 Year in Review", "url": "https://predr.ag/blog/cargo-semver-checks-2025-year-in-review/", "published_at": "2026-01-11T00:00:00+00:00" }, { "id": "01a087c9-2b58-7241-bcde-e5d19bdd7a72", "title": "Ghosts in the Compilation", "url": "https://predr.ag/blog/ghosts-in-the-compilation/", "published_at": "2025-10-31T00:00:00+00:00" }, { "id": "01a087c9-2b58-7241-bcde-e5d19c1c12c7", "title": "Unsoundness and accidental features in the #[target_feature] attribute", "url": "https://predr.ag/blog/unsoundness-and-accidental-features-in-target-feature/", "published_at": "2025-07-05T00:00:00+00:00" }, { "id": "01a087c9-2b58-7241-bcde-e5d19d17db2b", "title": "XORry Not Sorry: The Most Amusing Security Flaws I've Discovered", "url": "https://predr.ag/blog/xorry-not-sorry-most-amusing-security-flaws-ive-discovered/", "published_at": "2025-04-01T00:00:00+00:00" }, { "id": "01a087c9-2b58-7241-bcde-e5d19de19c49", "title": "When is \"this trait can be implemented\" part of the trait's public API?", "url": "https://predr.ag/blog/when-is-trait-can-be-implemented-public-api/", "published_at": "2025-03-08T00:00:00+00:00" }, { "id": "01a087c9-2b58-7241-bcde-e5d19ea5ba66", "title": "\"We never update unless forced to\" — cargo-semver-checks 2024 Year in Review", "url": "https://predr.ag/blog/cargo-semver-checks-2024-year-in-review/", "published_at": "2025-01-21T00:00:00+00:00" }, { "id": "01a087c9-2b58-7241-bcde-e5d19f2e16d5", "title": "Breakage! in the Cargo.toml — How Rust Package Features Work (And Break)", "url": "https://predr.ag/blog/breakage-in-the-cargo-toml-how-rust-package-features-work/", "published_at": "2024-12-04T00:00:00+00:00" }, { "id": "01a087c9-2b58-7241-bcde-e5d19f5027ce", "title": "Is this trait sealed, or not sealed — that is the question", "url": "https://predr.ag/blog/is-this-trait-sealed-or-not-sealed/", "published_at": "2024-09-03T00:00:00+00:00" }, { "id": "01a087c9-2b58-7241-bcde-e5d19f5f422f", "title": "How to Query (Almost) Everything", "url": "https://predr.ag/blog/how-to-query-almost-everything-hytradboi/", "published_at": "2024-07-22T00:00:00+00:00" }, { "id": "01a087c9-2b58-7241-bcde-e5d19ff00771", "title": "The Wi-Fi only works when it's raining", "url": "https://predr.ag/blog/wifi-only-works-when-its-raining/", "published_at": "2024-04-01T00:00:00+00:00" }, { "id": "01a087c9-2b58-7241-bcde-e5d1a0538011", "title": "SemVer in Rust: Tooling, Breakage, and Edge Cases — FOSDEM 2024", "url": "https://predr.ag/blog/semver-in-rust-tooling-breakage-and-edge-cases/", "published_at": "2024-03-18T00:00:00+00:00" }, { "id": "01a087c9-2b58-7241-bcde-e5d1a0c518d8", "title": "Four challenges cargo-semver-checks has yet to tackle", "url": "https://predr.ag/blog/four-challenges-cargo-semver-checks-has-yet-to-tackle/", "published_at": "2024-01-23T00:00:00+00:00" }, { "id": "01a087c9-2b58-7241-bcde-e5d1a1c1efd5", "title": "Highlights of 2023 for cargo-semver-checks", "url": "https://predr.ag/blog/highlights-of-2023-for-cargo-semver-checks/", "published_at": "2024-01-16T00:00:00+00:00" }, { "id": "01a087c9-2b58-7241-bcde-e5d1a2163401", "title": "Checking semver in the presence of doc(hidden) items", "url": "https://predr.ag/blog/checking-semver-for-doc-hidden-items/", "published_at": "2023-11-18T00:00:00+00:00" }, { "id": "01a087c9-2b58-7241-bcde-e5d1a3125f7e", "title": "Semver violations are common, better tooling is the answer", "url": "https://predr.ag/blog/semver-violations-are-common-better-tooling-is-the-answer/", "published_at": "2023-09-07T00:00:00+00:00" }, { "id": "01a087c9-2b58-7241-bcde-e5d1a3f471e4", "title": "Breaking semver in Rust by adding a private type, or by adding an import", "url": "https://predr.ag/blog/breaking-semver-in-rust-by-adding-private-type-or-import/", "published_at": "2023-05-08T00:00:00+00:00" }, { "id": "01a087c9-2b58-7241-bcde-e5d1a4c7a6e9", "title": "A definitive guide to sealed traits in Rust", "url": "https://predr.ag/blog/definitive-guide-to-sealed-traits-in-rust/", "published_at": "2023-04-05T00:00:00+00:00" }, { "id": "01a087c9-2b58-7241-bcde-e5d1a525497a", "title": "Mediocrity can be a sign of excellence, and other stories", "url": "https://predr.ag/blog/mediocrity-can-be-a-sign-of-excellence/", "published_at": "2023-04-01T00:00:00+00:00" }, { "id": "01a087c9-2b58-7241-bcde-e5d1a5d8a144", "title": "Re-exporting an enum with a type alias is breaking, but not major", "url": "https://predr.ag/blog/re-exporting-enum-with-type-alias-breaking-change-not-major/", "published_at": "2023-03-06T00:00:00+00:00" }, { "id": "01a087c9-2b58-7241-bcde-e5d1a6c3f98d", "title": "Speeding up Rust semver-checking by over 2000x", "url": "https://predr.ag/blog/speeding-up-rust-semver-checking-by-over-2000x/", "published_at": "2023-02-07T00:00:00+00:00" }, { "id": "01a087c9-2b58-7241-bcde-e5d1a6d7c2c7", "title": "Moving and re-exporting a Rust type can be a major breaking change", "url": "https://predr.ag/blog/moving-and-reexporting-rust-type-can-be-major-breaking-change/", "published_at": "2023-01-31T00:00:00+00:00" }, { "id": "01a087c9-2b58-7241-bcde-e5d1a73862fc", "title": "Some Rust breaking changes don't require a major version", "url": "https://predr.ag/blog/some-rust-breaking-changes-do-not-require-major-version/", "published_at": "2023-01-26T00:00:00+00:00" }, { "id": "01a087c9-2b58-7241-bcde-e5d1a78b02d1", "title": "Turning a Rust struct into an enum is not always a major breaking change", "url": "https://predr.ag/blog/turning-rust-struct-to-enum-is-not-always-breaking/", "published_at": "2023-01-24T00:00:00+00:00" }, { "id": "01a087c9-2b58-7241-bcde-e5d1a86a3209", "title": "cargo-semver-checks today and in 2023", "url": "https://predr.ag/blog/cargo-semver-checks-today-and-in-2023/", "published_at": "2022-12-23T00:00:00+00:00" }, { "id": "01a087c9-2b58-7241-bcde-e5d1a915fb5b", "title": "Falsehoods programmers believe about undefined behavior", "url": "https://predr.ag/blog/falsehoods-programmers-believe-about-undefined-behavior/", "published_at": "2022-11-27T00:00:00+00:00" }, { "id": "01a087c9-2b58-7241-bcde-e5d1a91eb09b", "title": "My HYTRADBOI'22 Jam", "url": "https://predr.ag/blog/my-hytradboi-22-jam/", "published_at": "2022-10-03T00:00:00+00:00" }, { "id": "01a087c9-2b58-7241-bcde-e5d1a92ba0f4", "title": "Debugging Safari: If at first you succeed, don't try again", "url": "https://predr.ag/blog/debugging-safari-if-at-first-you-succeed/", "published_at": "2022-09-19T00:00:00+00:00" }, { "id": "01a087c9-2b58-7241-bcde-e5d1aa0e77c9", "title": "Toward fearless cargo update", "url": "https://predr.ag/blog/toward-fearless-cargo-update/", "published_at": "2022-08-25T00:00:00+00:00" }, { "id": "01a087c9-2b58-7241-bcde-e5d1ab02e456", "title": "Compiler Adventures, part 3: Value Numbering", "url": "https://predr.ag/blog/compiler-adventures-part3-value-numbering/", "published_at": "2022-05-17T00:00:00+00:00" }, { "id": "01a087c9-2b58-7241-bcde-e5d1abc335cc", "title": "To ace exams, get better at the easy questions", "url": "https://predr.ag/blog/to-ace-exams-get-better-at-the-easy-questions/", "published_at": "2022-04-01T00:00:00+00:00" }, { "id": "01a087c9-2b58-7241-bcde-e5d1acb8277c", "title": "Compiler Adventures, part 2: Constant Propagation", "url": "https://predr.ag/blog/compiler-adventures-part2-constant-propagation/", "published_at": "2022-02-17T00:00:00+00:00" }, { "id": "01a087c9-2b58-7241-bcde-e5d1ad162e58", "title": "Compiler Adventures, part 1: No-op Instructions", "url": "https://predr.ag/blog/compiler-adventures-part1-no-op-instructions/", "published_at": "2022-02-03T00:00:00+00:00" }, { "id": "01a087c9-2b58-7241-bcde-e5d1adb95067", "title": "How Paxos and Two-Phase Commit Differ", "url": "https://predr.ag/blog/paxos-vs-2pc/", "published_at": "2021-01-26T00:00:00+00:00" } ] posts
Claim your blog
Back to obi1kenobi
Blog · corpus.blog/blogs/predr.ag/posts
obi1kenobi
predr.ag
2026
Protecting the Rust standard library from accidental breakage
original ↗
15 Aug 2026
The Self-Cancelling Subscription
original ↗
1 Apr 2026
Exponential growth continued — cargo-semver-checks 2025 Year in Review
original ↗
11 Jan 2026
2025
Ghosts in the Compilation
original ↗
31 Oct 2025
Unsoundness and accidental features in the #[target_feature] attribute
original ↗
5 Jul 2025
XORry Not Sorry: The Most Amusing Security Flaws I've Discovered
original ↗
1 Apr 2025
When is "this trait can be implemented" part of the trait's public API?
original ↗
8 Mar 2025
"We never update unless forced to" — cargo-semver-checks 2024 Year in Review
original ↗
21 Jan 2025
2024
Breakage! in the Cargo.toml — How Rust Package Features Work (And Break)
original ↗
4 Dec 2024
Is this trait sealed, or not sealed — that is the question
original ↗
3 Sept 2024
How to Query (Almost) Everything
original ↗
22 Jul 2024
The Wi-Fi only works when it's raining
original ↗
1 Apr 2024
SemVer in Rust: Tooling, Breakage, and Edge Cases — FOSDEM 2024
original ↗
18 Mar 2024
Four challenges cargo-semver-checks has yet to tackle
original ↗
23 Jan 2024
Highlights of 2023 for cargo-semver-checks
original ↗
16 Jan 2024
2023
Checking semver in the presence of doc(hidden) items
original ↗
18 Nov 2023
Semver violations are common, better tooling is the answer
original ↗
7 Sept 2023
Breaking semver in Rust by adding a private type, or by adding an import
original ↗
8 May 2023
A definitive guide to sealed traits in Rust
original ↗
5 Apr 2023
Mediocrity can be a sign of excellence, and other stories
original ↗
1 Apr 2023
Re-exporting an enum with a type alias is breaking, but not major
original ↗
6 Mar 2023
Speeding up Rust semver-checking by over 2000x
original ↗
7 Feb 2023
Moving and re-exporting a Rust type can be a major breaking change
original ↗
31 Jan 2023
Some Rust breaking changes don't require a major version
original ↗
26 Jan 2023
Turning a Rust struct into an enum is not always a major breaking change
original ↗
24 Jan 2023
2022
cargo-semver-checks today and in 2023
original ↗
23 Dec 2022
Falsehoods programmers believe about undefined behavior
original ↗
27 Nov 2022
My HYTRADBOI'22 Jam
original ↗
3 Oct 2022
Debugging Safari: If at first you succeed, don't try again
original ↗
19 Sept 2022
Toward fearless cargo update
original ↗
25 Aug 2022
Compiler Adventures, part 3: Value Numbering
original ↗
17 May 2022
To ace exams, get better at the easy questions
original ↗
1 Apr 2022
Compiler Adventures, part 2: Constant Propagation
original ↗
17 Feb 2022
Compiler Adventures, part 1: No-op Instructions
original ↗
3 Feb 2022
2021
How Paxos and Two-Phase Commit Differ
original ↗
26 Jan 2021