Соглашения в области стабильности пакетов Cabal - PullRequest
15 голосов
/ 01 октября 2010

Кабал допускает произвольную форму Стабильность Поле :

Стабильность: Свободная форма

Уровень стабильности пакета, например alpha, experimental, provisional, stable.

Каковы соглашения сообщества об этих значениях стабильности?Что считается experimental, а что provisional?Я вижу только несколько пакетов, объявленных как stable.К какой стабильности это относится, стабильность открытого API или полное безошибочное состояние программного обеспечения?

Ответы [ 3 ]

11 голосов
/ 03 октября 2010

Поле больше не существует и не должно использоваться.Как сказал Макс, в будущем это, вероятно, будет заменено чем-то значимым.

Если вас интересует история, поле возникло в проектном предложении для первого набора Иерархических библиотек Хаскеля .Этот документ описывает первоначальные предполагаемые значения значений.

5 голосов
/ 02 октября 2010

В настоящее время это поле является очень плохим руководством по стабильности библиотеки, поэтому в основном игнорируется.Дункан Коуттс (один из главных разработчиков Cabal и Hackage) сказал, что в конечном итоге он планирует полностью заменить это поле чем-то вроде системы социального голосования в Hackage.просто всегда опускайте поле стабильности.Учитывая, что он уйдет, вероятно, не стоит терять сон из-за того, что в него положить.

4 голосов
/ 10 сентября 2014

Первоначально предполагалось:

  • эксперимент : API неустойчив .Это может измениться в любое время, то есть: любое изменение номера версии;
  • предварительное : API движется к стабильности .Он может изменяться при каждой незначительной ревизии, но должен предоставлять устаревшие версии функций;
  • стабильный : API является стабильным .Только дополнения должны быть сделаны в незначительных выпусках.После изменений в API устаревшие функции должны быть сохранены как минимум в одном основном выпуске.

Как указывалось в других ответах, сообщество , а не выглядит следующим этих рекомендаций больше.

Как указывает Саймон Марлоу , это описано в проектном предложении для первого набора Иерархических библиотек Haskell.Оригинальная ссылка не работает, но вы можете найти копию на обратном пути машины .

...