Существует ли стандарт для именования версий плагинов
Мы с моим деловым партнером разрабатываем несколько плагинов, и мы хотим знать, существует ли стандарт для номера версии плагина при наличии обновлений, т.Е. Версии 1.0, версии 1.2, версии 1.2.3 и т. Д.?
Спасибо за любые советы.
2 answers
Нет, стандарта не существует. Вы даже можете использовать имена, римские цифры или что-то еще, но я бы не рекомендовал этого.
Большинство авторов используют Семантическое управление версиями: Major.Minor.Patch
.
У этого есть несколько недостатков:
- Пользователи боятся "больших перемен". Обновления для новой версии с изменением в первой части (
Major
) часто задерживаются, или пользователи ждут первого "пакета обновления" (2.0.1). - Разработчики иногда не уверены, когда и какую часть менять. Что такое майор? Большое изменение кода может оказать незначительное влияние на пользовательский интерфейс.
- Длина номера версии непредсказуема.
1.2.3
против2.12.123
. Ничего особенного, но и не идеально.
На практике Семантическое управление версиями не является таким уж семантическим.
Я предпочитаю дату в качестве номера версии: 2012.11.19
- Изменения в первом номере, очевидно, не связаны с "большими изменениями" в программе.
- Нет
0
в конце. Никогда. :) - Всегда одинаковой длины (за исключением случаев, когда у вас более одной версии в день).
- Совместим с
version_compare()
– это можно рассматривать как стандарт .
Рекомендуемое чтение:
- Обмен стеками программистов: Дата в качестве номера версии программного обеспечения.
- Джефф Этвуд: В Любом Случае, Что В Номере Версии? и Бесконечная версия.
Обе схемы работают. Разница в основном заключается в пользовательском опыте.
Стандарт для номеров версий в PHP работает следующим образом:
БОЛЬШАЯ точка, МАЛАЯ точка, ПЕРЕСМОТР
Каждый из них является целым числом и независимым от остальных. Это не десятичное число. Это важно из-за того, как работает version_compare.
MAJOR - это основная версия. Вы бы обновили этот номер после серьезных изменений в коде, например, полностью изменив способ работы кода.
МИНОР - это минорная версия. Вы бы обновили это число после незначительного изменения кода, такого как добавление новой функции.
РЕДАКЦИЯ - это номер редакции. Вы бы обновили это после изменения существующей второстепенной версии, например исправления ошибок.
Теперь снова версии - это целые числа, разделенные точками. Таким образом, из-за этого версия 1.1 = 1.01; оба этих номера версий идентичны, основная версия равна 1, младшая версия равна 1.
В другом примере версия 1.9 меньше версии 1.10; младшая версия изменилась с девяти до десяти.
Поскольку WordPress использует функцию version_compare PHP, вы должны следовать этим методам для нумерации версий.
Обратите внимание, что WordPress сам по себе является незначительным исключением, поскольку ядро изменяется с 2.9 до 3.0. Это наследие, и именно так они всегда делали нумерацию. Он совместим с функцией version_compare, но, вообще говоря, следует перейти с 2.9 на 2.10, если нет существенной переписки, чтобы оправдать основную версия bump.