Re: Bikeshed Major Version updates (v6 and v7) and Python min version update (3.12)

RE v6, I've run a battery of tests comparing outcomes involving fatal errors in the newest version, as an FYI to anyone wondering if their documents may be affected.

The following pass with v5 and fail with v7 (and presumably v6), due to issues with markup:

https://github.com/w3c/reporting/blob/main/network-reporting.bs
https://github.com/WebBluetoothCG/web-bluetooth/blob/main/scanning.bs
https://github.com/WICG/background-sync/blob/main/spec/index.bs
https://github.com/WICG/file-system-access/blob/main/index.bs
https://github.com/WICG/get-installed-related-apps/blob/main/spec/index.bs
https://github.com/WICG/nav-speculation/blob/main/prefetch.bs
https://github.com/WICG/signature-based-sri/blob/main/index.bs
https://github.com/w3c/webappsec-clear-site-data/blob/main/index.src.html
https://github.com/w3c/webappsec-csp/blob/main/index.bs
https://github.com/w3c/csswg-drafts/blob/main/css-anchor-position-1/Overview.bs
https://github.com/w3c/csswg-drafts/blob/main/css-color-4/Overview.bs
https://github.com/w3c/csswg-drafts/blob/main/css-color-hdr-1/Overview.bs
https://github.com/w3c/csswg-drafts/blob/main/css-fonts-4/Overview.bs
https://github.com/w3c/csswg-drafts/blob/main/css-highlight-api-1/Overview.bs
https://github.com/w3c/csswg-drafts/blob/main/css-overflow-3/Overview.bs
https://github.com/w3c/csswg-drafts/blob/main/css-overflow-4/Overview.bs
https://github.com/w3c/csswg-drafts/blob/main/css-scrollbars-1/Overview.bs *
https://github.com/w3c/csswg-drafts/blob/main/css-text-3/Overview.bs *
https://github.com/w3c/csswg-drafts/blob/main/css-text-4/Overview.bs *
https://github.com/w3c/csswg-drafts/blob/main/css-ui-3/Overview.bs
https://github.com/w3c/csswg-drafts/blob/main/css-view-transitions-1/Overview.bs
https://github.com/w3c/csswg-drafts/blob/main/css-view-transitions-2/Overview.bs
https://github.com/w3c/sensors/blob/main/index.bs
https://github.com/w3c/media-capabilities/blob/main/index.bs
https://github.com/w3c/csswg-drafts/blob/main/mediaqueries-4/Overview.bs
https://github.com/w3c/csswg-drafts/blob/main/mediaqueries-5/Overview.bs
https://github.com/w3c/orientation-sensor/blob/main/index.bs
https://github.com/w3c/trusted-types/blob/main/spec/index.bs
https://github.com/w3c/csswg-drafts/blob/main/web-animations-1/Overview.bs
https://github.com/w3c/csswg-drafts/blob/main/web-animations-2/Overview.bs
https://github.com/w3c/webauthn/blob/main/index.bs
https://github.com/w3c/webcodecs/blob/main/index.src.html
https://github.com/webmachinelearning/webnn/blob/main/index.bs
https://github.com/immersive-web/depth-sensing/blob/main/index.bs

Entries with * seem to fail due to a bs-line-number attribute not present in their own document, but within the W3C Patent Policy:

https://github.com/w3c/patent-policy/blob/main/index.html#L8

The above list may not be comprehensive, as there may be documents that already failed with v5 (or that my script failed to pick up due to e.g. moved documents) that may have unique markup-related failures in the newer versions.


RE v7's increased Python version requirement:

Any GitHub workflows that happened to use anything prior to ubuntu-24.04 (the current ubuntu-latest) with Bikeshed will need to be updated in order to run v7. ubuntu-22.04 ships with Python 3.10.

Anyone who happens to be using Bikeshed on Debian 12 (Bookworm) may be interested in this repo which installs python3.12 alongside the system's 3.11:

https://github.com/pascallj/python3.12-backport

--Ken

On Friday, December 5, 2025 5:17:16 PM EST Tab Atkins Jr. wrote:
> Yesterday, I published Bikeshed version 6.0.0, a potentially (but very
> likely not actually!) breaking change in Bikeshed, where I redid a lot
> of the underlying parser structure. This *should* be a pretty
> invisible change; at worst, you might notice Bikeshed telling you
> about markup errors in your document that previously got silently
> corrected in some arbitrary way. The new stuff should also be a bit
> faster; running my entire test suite of 400ish specs takes 40% less
> time now (from 5min and change to 3min and change on my laptop!) I
> spent a *lot* of time and effort making it as invisible of a change as
> possible, but it's still possible that I missed something; if you
> notice something being broken please file an issue at
> <https://github.com/speced/bikeshed/issues/new> asap.
> 
> Today I published Bikeshed version 7.0.0, a slightly more likely
> breaking version, which bumps the minimum supported Python version to
> 3.12, because it turns out the previous minimum version, 3.9, hit EOL
> in October and is no longer receiving security fixes. 3.12 jumps a few
> versions forward so I won't have to bump like this again for a bit,
> and also appears to be supported relatively widely as a default
> install version across modern OS installs.
> 
> Unlike last time I did a Python version bump, this time I
> intentionally published a "broken" version that still claims 3.9
> support (but will fail on startup), so if your CI is set up to use an
> OS version that doesn't come with a sufficiently modern Python, you'll
> get the broken version and see an error message asking you to upgrade
> your Python. (Last time I didn't know to do this dance, so people on
> old Pythons just got stuck on an old Bikeshed, too, and didn't know it
> until I updated datafiles in a way that broke the old version).
> 
> (I'm pretty excited to get to use the new features from 3.10 through 3.12!)
> 
> ~TJ
> 
> 

Received on Monday, 8 December 2025 19:09:47 UTC