WordPress 4.9.6, Semantic Versioning, and Why it Matters
Over on Thoughtful Code, I spilled a bunch of words about semantic version numbers. WordPress 4.9.6 is imminent, and it got me to thinking about why semantic version numbers are so important to me. And because WordPress matters a lot to me, I think a lot about the (weird) way WordPress does version numbers.
On the topic of 4.9.6 in particular, here’s what I say:
So why, in May of 2018, is WordPress releasing 4.9.6 as a “major” version? Because, for political reasons, BDFL Matt Mullenweg is holding WordPress 5.0 to be the release where the new visual editor “Gutenberg” is added. This means that if the WordPress team want to release something before 5.0, they must release a 4.x. And because in WordPress we’ve never seen version numbers like 4.10.0, we’re stuck with a major set of new features coming out in 4.9.6.
I think it’s great that WordPress is getting GDPR-compliance-based changes. I think it’s great that Gutenberg isn’t stopping all forward-progress on the rest of WordPress. But I really don’t like that 4.9.6 isn’t as safe and simple a release as 4.9.1 or 4.9.5. No one will know that from version number alone either.
I’m really excited about the future of WordPress, with Gutenberg on the horizon. But WordPress’s steadfast refusal to acknowledge that semantic versioning is a useful and worth practice continues to grind my gears. Now that it’s undeniable the Gutenberg hasn’t made the (artificial, silly) April deadline, we’re officially in the time of silly and counter-productive holding pattern because of a feature that’s delaying a release. It’s not the end of the world, but it sure is silly.