Представлен регламент подготовки новых релизов PHP

Для обсуждения представлен финальный вариант документа, определяющего стратегию подготовки и выпуска новых релизов языка программирования PHP. Документ будет окончательно утвержден после завершения голосования среди разработчиков PHP. Основная цель создания документа - переход от спонтанного выпуска релизов к их плановой подготовке с выпуском через фиксированные промежутки времени. Кроме того, сделан шаг к увеличению прозрачности принятия решений - сформирован регламент утверждения планируемых нововведений, при котором для каждого из намеченных нововведений будет введена практика оформления и утверждения отдельных RFC-документов.

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

После выпуска основного релиза, например, 5.4.0, все последующие корректирующие выпуски 5.4.x будут содержать только исправления, новшества будут представлены только в следующей ветке 5.5. Не влияющие на другие системы самодостаточные нововведения или дополнительные SAPI-вызовы могут быть добавлены в корректирующий выпуск, но только после утверждения каждого отдельного случая. В рамках основной ветки (например, 5.x) обязательно будет соблюдаться полная обратная совместимость релизов и сохранение совместимости API, т.е. выпуск 5.6 будет полностью совместим с 5.2. Тем не менее в функциональных выпусках (5.4, 5.5, 5.6) возможно нарушение бинарной совместимости и вынос расширений из базовой поставки в архив PECL.

Между корректирующими выпусками недопускается нарушение бинарной совместимости, изменение API или удаление из поставки дополнений (т.е. версии 5.4.x будут бинарно совместимыми, а 5.x - не обязательно). Изменение основного номера версии (например, с 5.x на 6.x) возможно при нарушении обратной совместимости или при необходимости нарушения API. Дополнительно вводится фаза тестирования пререлизов, используя которые разработчики могут познакомиться с ожидающими их нововведениями. Также планируется выпускать ознакомительные релизы в которые будут включены возможности, которые уже готовы, но требуют расширенного тестирования и рецензирования, перед их окончательным принятием.

В соответствии с приблизительным планом, релиз 5.4 может быть выпущен уже в середине текущего года, в начале 2012 года начнется тестирование PHP 5.6, релиз которого выйдет в середине следующего года. Выпуск PHP 6.0 по одному из вариантов может увидеть свет в середине 2014 года, а по другому варианту, подразумевающему возможность параллельного развития нескольких первичных веток, в середине 2012 года (одновременно с PHP 5.6).

©  OpenNet