Post details
We’re introducing calendar-based versioning for our REST API, so we can keep evolving our API, whilst still giving integrators a smooth migration path and plenty of time to update their integrations.

We’re introducing calendar-based versioning for our REST API, so we can keep evolving our API, whilst still giving integrators a smooth migration path and plenty of time to update their integrations.
I've been bitten by pinning to latest versions before and definitely agree that where possible we should make sure that things are pinned exactly.
Then we can use tools like Whitesource Renovate / Dependabot to manage updates automatically.
Recommended read: Just say no to `:latest` - Platformers https://platformers.dev/log/2022-03-02-latest-literally-kills-puppies/
Recommended read: Version Variants — brandur.org https://brandur.org/version-variants
Recommended read: Java LTS - perspective of a library author https://emmanuelbernard.com/blog/2021/11/15/java-lts/
Recommended read: Never update anything | blog.kronis.dev https://blog.kronis.dev/articles/never-update-anything
Recommended read: Musings on backwards compatibility) · Alex Gaynor https://alexgaynor.net/2021/oct/07/whats-in-a-version-number/
Recommended read: A Lifecycle Approach to API Versioning | Nordic APIs | https://nordicapis.com/a-lifecycle-approach-to-api-versioning/
Recommended read: API Versioning Do’s and Don’ts https://blog.bitsrc.io/api-versioning-dos-and-don-ts-4bd9db073f2a?gi=b650a5b29ce1
a fun detail is that just about all programs written against that libcurl release can still be used unmodified with the latest libcurl release...
Daniel 🥌 Stenberg (@bagder)Sat, 21 Aug 2021 14:40 +0000
Best explanation of SemVer I've seen yet: FAILS.FEATURES.BUGS
Post details
Absolutely. The thing about semver major version numbers are that they don't mean new stuff, they're a permanent reminder of how many times you got the API wrong. Semver doesn't mean MAJOR.MINOR.PATCH, it means FAILS.FEATURES.BUGS
Will McGugan (@willmcgugan)Fri, 06 Aug 2021 16:13 +0000
Simon Willison (@simonw)Fri, 06 Aug 2021 16:21 +0000
Absolutely. The thing about semver major version numbers are that they don't mean new stuff, they're a permanent reminder of how many times you got the API wrong. Semver doesn't mean MAJOR.MINOR.PATCH, it means FAILS.FEATURES.BUGS
Will McGugan (@willmcgugan)Fri, 06 Aug 2021 16:13 +0000
Recommended read: Semantic Versioning Will Not Save You https://hynek.me/articles/semver-will-not-save-you/
Recommended read: Calendar Versioning — CalVer https://calver.org/
Why I Consistently Reach for Server-Driven Content Negotiation (For Versioning) (5 mins read).
Why I use server-driven content negotiation for APIs to allow for versioning and allowing different representations of APIs.
Recommended read: Why Backwards Compatibility is Critical — Developer Musings https://joshghent.com/backwards-compatible/
Recommended read: API Versioning Has No "Right Way" | APIs You Won't Hate - A community that cares about API design and development. https://apisyouwonthate.com/blog/api-versioning-has-no-right-way
Recommended read: APIs as infrastructure: future-proofing Stripe with versioning https://stripe.com/blog/api-versioning
You're currently viewing page 1 of 1, of 25 posts.