5 ms·
Are there examples of widely used, mature projects that have gone the opposite way?
by hyperpape 10y ago
Are there examples of widely used, mature projects that have gone the opposite way?
- progval 10y agoweb browsers? I'm thinking particularly of Firefox, with all these extensions that do not work with the latest versions.
- Animats 10y agoThat's been coming for years. XUL addons have never worked on mobile Firefox.
- rockdoe 10y agoFirefox used to do the infrequent large change thing, then moved to frequent small breakage. Specific to add-ons: every release has broken some and the XUL depreciation is to some extent to deal with that problem better. Note that users hate both options proposed in the article passionately, it just seems that break early break often results in fewer users voting with their feet.
- mbroncano 10y agoSwift ?
- hyperpape 10y agoI think they aren't a reasonable comparison because they're very young and warned up front that they'd break compatibility several times in the early years.
- tedunangst 10y agoOpenBSD, llvm, and go all have six month cadences.
- hyperpape 10y agoAnd do the same sorts of breaking changes get made, just distributed in smaller chunks through those six month releases?
- tedunangst 10y agoExactly.
- mixedCase 10y agoI don't know about OpenBSD and LLVM, but Go has made good on the Go 1 compatibility promise, with only a few minor changes being disputed as wether they break it or not. Go 2.0 will probably be a different story, assuming it ever comes out, but I have a hard time believing the devs will release anything that won't be fixable using the "go fix" tool.
- tbrock 10y agoAnd ubuntu and gnome and fedora and...
- hp 10y agoYep. it works well. https://wiki.gnome.org/ReleasePlanning/TimeBased https://wiki.gnome.org/ReleasePlanning/TimeBased
- usernam 10y agoI can only comment on the specific llvm case, but I cannot say "it works" without listing the fact that I have to keep ~5-6 versions of llvm around _exactly_ for that reason. You cannot compare an OS, or in general any product which is "complete by itself" (browsers), with a compiler which is then used to _make_ the end product. Your source depends on it, and as it grows it just becomes increasingly hard to keep up. Rolling releases are /also/ a tradeoff. I'm not particularly pleased with llvm in this case. I genuinely prefer semantic releases, and yes, even the python2->3 strategy in this context.
- SatvikBeri 10y agoNot sure if Scala counts (it's 12 years old) but it continues to have (usually minor) breaking changes on each release.
- premium-concern 10y agoDo you have an example of what broke between 2.11.7 and 2.11.8?
- SatvikBeri 10y agoSorry, by release I meant e.g. 2.11 -> 2.12 . I don't recall any breakages in recent memory on smaller versions.
- gbrown_ 10y agoHere's a presentation from Theo de Raadt on how OpenBSD does its releases, https://www.youtube.com/watch?v=i7pkyDUX5uM https://www.youtube.com/watch?v=i7pkyDUX5uM.