Semanti c Управление версиями - обратная совместимость и версия 0.xy - PullRequest
1 голос
/ 10 февраля 2020

Вот выдержка о мэйнфреймах IBM :

Семейство IBM Z поддерживает полную обратную совместимость. Это означает, что современные системы являются прямыми, прямыми потомками System / 360, анонсированной в 1964 году, и System / 370 с 1970-х годов. Многие приложения, написанные для этих систем, все еще могут работать без изменений в новейшей системе IBM Z более пяти десятилетий спустя!

Я уверен, что в заявлении будут оговорки, «если», «но» обратной совместимости. Но, ради аргумента, если бы IBM Z поддерживала semanti c версионирование, было бы это когда-либо выше 0.y.z? И, следовательно, можно ли увеличить основное целое число, если выпущена основная функция и полная версия все еще обратно совместима?

1 Ответ

2 голосов
/ 10 февраля 2020

Я уверен, что будут заявления об отказе, «если», «но» в отношении заявления о обратной совместимости. Но, ради аргумента, если бы IBM Z поддерживал управление версиями semanti c, достиг бы ли он когда-либо больше 0.yz?

Да, но зачем они это делают? Их собственная пропаганда претендует на обратную совместимость, а форма 0.y.z явно не претендует на такие утверждения. Из SemVer 2.0.0 :

[4](https://semver.org/#spec-item-4) Major version zero (0.y.z) is for initial development. Anything MAY change at any time. The public API SHOULD NOT be considered stable.

Не совсем то сообщение, которое IBM передает.

... можно увеличить старшее целое число, если Выпущена основная функция, а полная версия все еще обратно совместима?

Да. В spe c нет ничего, что говорило бы, что вы не можете поднять основную версию по любой произвольной причине. Спектр c говорит, что вы ДОЛЖНЫ поднять его, если вы сделаете критическое изменение, а не то, что оно может быть изменено только по этой причине. 60-х годов. IBM заявляет, что она обратно совместима с теми другими машинами, которые она делала в прошлом. Говоря об истории версий semanti c для разных продуктов, на самом деле не имеет никакого смысла. Они действительно говорят о том, что у каждого из этих более ранних продуктов был интерфейс (машинный язык), который может выполнять современная машина Z.

...