programmer's definition of "breaking change" for semver purposes: "whatever is breaking my personal use case"
Conversation
Notices
-
Embed this notice
✧✦Catherine✦✧ (whitequark@mastodon.social)'s status on Saturday, 12-Jul-2025 01:55:02 JST
✧✦Catherine✦✧
- Haelwenn /элвэн/ :triskell: likes this.
-
Embed this notice
mcc (mcc@mastodon.social)'s status on Saturday, 12-Jul-2025 01:56:31 JST
mcc
@whitequark *thinks*
Is there a more apt definition?
Rich Felker repeated this. -
Embed this notice
✧✦Catherine✦✧ (whitequark@mastodon.social)'s status on Saturday, 12-Jul-2025 01:58:22 JST
✧✦Catherine✦✧
@mcc you could write down an interface specification before you write the program, and then check adherence to this interface specification
most programmers don't bother doing that! but even those who do, don't get very far, because without machine-checkable interface specifications it's trivially easy to ship a semver-breaking change without noticing. this isn't a great thing!
Haelwenn /элвэн/ :triskell: likes this. -
Embed this notice
✧✦Catherine✦✧ (whitequark@mastodon.social)'s status on Saturday, 12-Jul-2025 01:59:32 JST
✧✦Catherine✦✧
@mcc also without strong encapsulation, good luck enforcing that your clients actually stick to the interface specification you wrote
-
Embed this notice
✧✦Catherine✦✧ (whitequark@mastodon.social)'s status on Saturday, 12-Jul-2025 02:06:51 JST
✧✦Catherine✦✧
@simon @mcc cargo-semver is the closest i've seen anybody come to making semver a technically useful concept rather than just a ritualistic one, but i haven't used it and it also seems _very_ incomplete (no detection of breaking type changes? that is ... usefulness-limited)
-
Embed this notice
Simon Sapin (simon@tutut.delire.party)'s status on Saturday, 12-Jul-2025 02:06:53 JST
Simon Sapin
@whitequark @mcc do you have thoughts on https://github.com/obi1kenobi/cargo-semver-checks/ ? it tries to do the machine-checking part
-
Embed this notice
Glyph (glyph@mastodon.social)'s status on Saturday, 12-Jul-2025 02:08:14 JST
Glyph
@whitequark @mcc preach
In conversation permalink -
Embed this notice
James Widman (jameswidman@mastodon.social)'s status on Saturday, 12-Jul-2025 02:10:21 JST
James Widman
@whitequark @mcc this is reminding me that i should probably learn the ATS language someday
In conversation permalink -
Embed this notice
tef (tef@mastodon.social)'s status on Saturday, 12-Jul-2025 02:11:12 JST
tef
@whitequark see also hyrum's law
In conversation permalink -
Embed this notice
✧✦Catherine✦✧ (whitequark@mastodon.social)'s status on Saturday, 12-Jul-2025 02:11:30 JST
✧✦Catherine✦✧
@glyph @mcc brb, becoming a type of weirdo who puts the entire python module into a big function body and finishes each file with
__dict__.update(f()); del f
In conversation permalink -
Embed this notice
✧✦Catherine✦✧ (whitequark@mastodon.social)'s status on Saturday, 12-Jul-2025 02:11:36 JST
✧✦Catherine✦✧
@tef yeah
In conversation permalink -
Embed this notice
Glyph (glyph@mastodon.social)'s status on Saturday, 12-Jul-2025 02:24:51 JST
Glyph
@whitequark @mcc beat you to it https://pypi.org/project/publication/
In conversation permalink Attachments
-
Embed this notice
Rich Felker (dalias@hachyderm.io)'s status on Saturday, 12-Jul-2025 02:26:49 JST
Rich Felker
@whitequark @mcc I mean if they don't, I consider it someone else's problem. 🤷 🙃
In conversation permalink -
Embed this notice
✧✦Catherine✦✧ (whitequark@mastodon.social)'s status on Saturday, 12-Jul-2025 02:36:10 JST
✧✦Catherine✦✧
@glyph @mcc oh this is excellent
i'm probably going to use it for amaranth
In conversation permalink -
Embed this notice
Glyph (glyph@mastodon.social)'s status on Saturday, 12-Jul-2025 02:38:23 JST
Glyph
@whitequark @mcc perhaps you can motivate me to do the stubgen integration and whatnot (remember to like & subscribe)
In conversation permalink -
Embed this notice
✧✦Catherine✦✧ (whitequark@mastodon.social)'s status on Saturday, 12-Jul-2025 02:38:25 JST
✧✦Catherine✦✧
In conversation permalink -
Embed this notice
✧✦Catherine✦✧ (whitequark@mastodon.social)'s status on Saturday, 12-Jul-2025 02:40:11 JST
✧✦Catherine✦✧
@glyph @mcc https://github.com/amaranth-lang/amaranth/issues/1614
amaranth doesn't ship type stubs (and mostly doesn't use types) though, so it's probably fine as-is
does it break sphinx?
In conversation permalink Attachments
-
Embed this notice
dram🎀 (dramforever@mastodon.social)'s status on Saturday, 12-Jul-2025 05:19:28 JST
dram🎀
@whitequark i hate it when people complain about a patch release breaking things that aren't even following semver and aren't even libraries
In conversation permalink -
Embed this notice
Timothée Mazzucotelli :python: (pawamoy@fosstodon.org)'s status on Saturday, 12-Jul-2025 08:44:17 JST
Timothée Mazzucotelli :python:
@diazona @glyph @whitequark @mcc oh I wanted to share this one too: modul, from Frost Ming, PDM author :)
In conversation permalink Attachments
-
Embed this notice
David Zaslavsky (diazona@techhub.social)'s status on Saturday, 12-Jul-2025 08:44:18 JST
David Zaslavsky
@glyph @whitequark @mcc There really is a #Python package for everything lol
In conversation permalink ✧✦Catherine✦✧ repeated this. -
Embed this notice
dram🎀 (dramforever@mastodon.social)'s status on Monday, 21-Jul-2025 10:41:22 JST
dram🎀
@whitequark "personal use case" is wild. i just saw an ancient reddit post complaining about linux breaking userspace because they removed shift+page{up,down} to scroll fbcon. my dear reddit rantor you cannot have picked a worse example of userspace...
In conversation permalink