RFC: Новая стратегия версионирования для Discourse

This discussion doesn’t look good. I can see a decision from the development team to embrace a new versioning system that make sense for them, and others who suddenly seem to consider that Discourse version was following semantic versioning… which it was not. It’s always been a rolling release, at least since 1.0, or?

But the arguments on all sides of the debate seem flawed:

  • “industry standard”: Linux is using even majors for stable, and odd majors for developing.
  • “earth orbiting around the Sun”: well, if you convert to Islam, you’ll get into trouble because you’ll drop versions and no, it won’t match the Sun revolution anymore, but the Moon cycles. Here, you now understand that by choosing YYYY.Y.Z versioning scheme over X.Y.Z, you enforced a dominant culture.
  • Minor release remains unclear: you mention “assuming a monthly cadence”, but it could be as well 3 weeks or 7, depending on the functionality, in which case counting Y from 0 makes sense, or are you actually aiming to release monthly, in which case counting M from 1 would make more sense?

The main change I see is that by adopting a monthly pace, the Discourse team is setting expectations and moving away from release targets, embracing regular releases instead.

LTS for 8 months does not really sound “long”. NodeJS is moving too fast, but they keep LTS support over 30 months and a few current versions at once, while Ubuntu keeps LTS over years. Although I understand that Discourse is neither a language nor an OS, it seems to announce that new functionality will ship at quite fast a pace, which brings another issue to mind: since new admin settings are introduced every now and then, we’ll soon get into the Wordpress hell with infinite options and unfathomable complication for site administration, aka bloatware: it becomes important then to clarify how you go from existing releases with targets to regular releases, and how do you choose which targets to drop (or postpone) for a release, etc. (which may already be documented, but I missed that one.)

Would you be so kind to share your rationale between the pace of development / versioning, and what do you have in mind to avoid admins drowning under too many settings and a heightened learning curve?

:heart: :discourse:

1 лайк