Выпуск №18 — RFC

Что такое RFC в мире PHP? https://wiki.php.net/rfc

Всем привет!

Вы слушаете «Пятиминутку PHP», выпуск номер 18 — еженедельный подкаст о новостях из мира PHP, интересных постах в блогах и современных подходах к разработке.

В этом выпуске поговорим о RFC.

Аббревиатура RFC расшифровывается как Request for Comments — это некая процедура, которую нужно пройти, чтобы добавить новую или изменить существующую функциональность в PHP.

Допустим, вы придумали новый оператор, новую функцию или синтаксис, который считаете полезным для всего PHP сообщества. Сначала вы пишете письмо с общей концепцией своего предложения в лист рассылки internals@lists.php.net, чтобы оценить реакцию. Если вас не закидали помидорами, то создаёте документ по специальному шаблону, описывающий предлагаемые изменения и публикуете его в wiki на сайте php.net. На самом деле, чтобы опубликовать RFC страницу в wiki нужно обладать доступом на запись к репозиторию исходных кодов PHP, либо иметь определённый уровень «кармы» на wiki-аккаунте. Набрать карму можно опять же листе рассылки.

Некоторое время ваш RFC находится в статусе Draft — вы работаете, дополняете документ. Когда вы считаете его завершенным, то переводите в статус “Under Discussion” и сообщаете об этом в лист рассылки. Начинается бурление комментариев, по ходу которых вы обновляете и дополняете RFC страницу.

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

По итогам голосования возможны три варианта:
1. RFC принят, он переходит в статус Accepted. Как только реализация будет влита в основную ветку исходных кодов, в RFC также отмечается номер версии PHP в которой планируется релиз, добавляется ссылка на коммит и страницу документации относительно новой фичи.

2. RFC отклонён

3. Нашлась какая-то серьёзная проблема в RFC и он возвращается в статус “Under Discussion”

Чтобы RFC был принят на голосовании, нужно набрать 2/3 голосов для серьёзных изменений в самом языке (например, для изменения синтаксиса) или 50% + 1 голос для прочих, не столь радикальных изменений.

Если RFC отклонили, то выставить его на голосование повторно можно либо минимум через 6 месяцев, либо после серьёзной переработки.

Подробное описание этой процедуры есть на сайте https://wiki.php.net/rfc

На сегодняшний день один RFC находится в статусе голосования — улучшения в обработке сессий.

52 RFC в статусе Under Discussion — есть над чем подискутировать!

Ещё 21 RFC в статусе Draft — есть над чем подумать!

5 RFC в статус Accepted, но ещё не реализованы — есть над чем поработать!

И ещё 5 RFC приянты, реализованы и ожидаются к релизу в PHP 7.1.

Как видите, после релиза PHP 7 движуха только началась. Много изменений, в том числе изменения в синтаксисе ждут нас в ближайшем будущем.
Оставайтесь на связи или присоединяйтесь к разработке!

  • «еженедельный» 😀

    • Да, такие вот затяжные трудовые недели 🙂

  • Zhuykov

    УРА! Расшифровка делается вручную? Кстати рсс у сайта не работает…

    • Расшифровка вручную. На самом деле сначала готовлю подробный план/черновик речи, потом этот черновик плавно превращается в расшифровку. «RSS не работает» — это тот, который по ссылке «Audio RSS» слева? В каком RSS клиенте наблюдается проблема?

      • Zhuykov

        http://5minphp.ru/feed/ вот эта не пашет. Клиент у меня встроен в браузер «rss feed reader» — сам ищет ленты на странице — это та, к которой я подписан.