WordPress отказывается от React, Gutenberg будет переписан на основе другой библиотеки
На днях Мэтт Мулленвег объявил в своем блоге о том, что WordPress откажется от React в результате проблем с патентной лицензией BSD + Patents. Разработчики Gutenberg перепишут новый редактор на другом JavaScript фреймворке, и Automattic также планирует переписать и Calypso:
«У нас планировалась к публикации длинная статья о том, насколько крут React и как мы приняли его в WordPress. Мы хотели подтолкнуть разработчиков плагинов к переходу на этот фреймворк. Я надеялся, что проблема с патентами будет решена, причем решена так, чтобы наши пользователи выиграли от этого.
В итоге эта статья не будет опубликована, и вместо этого я должен сказать, что команда Gutenberg сделает шаг назад и перепишет Gutenberg с помощью другой библиотеки. Это, скорее всего, несколько задержит новый редактор (как минимум на несколько недель), и потому релиз, наверно, стоит ждать уже в следующем году».
Мулленвег пояснил, что компании Automattic нравился React, и что главный юрисконсульт компании считает, что они вряд ли когда-либо столкнулись бы с патентными спорами. Мэтт также поблагодарил Facebook за то, что они являются «одними из лучших вкладчиков в open source проекты» и за то, что они постарались разъяснить свои намерения. Мэтт в итоге решил, что ему не очень удобно работать с патентами, учитывая размеры сообщества WordPress:
Automattic также будет использовать новую библиотеку и для Calypso – это займет довольно много времени, и у Automattic не было проблем с патентами, но долгосрочная согласованность с ядром стоит больше, чем кратковременный удар по бизнесу Automattic от переписывания компонентов. Обновления ядра WordPress охватывают более четверти всех сайтов, и все они наследуют патентные права, а это мне не слишком нравится».
После того как Apache Software Foundation добавили лицензию Facebook BSD+Patents в список неподдерживаемых лицензий Category X, многие лидеры open source проектов обратились к Facebook с просьбой рассмотреть возможность релицензирования React, поскольку многие проекты на этом фреймворке пришлось бы переписывать. Facebook отказались это сделать, указав, что положение о патентах помогает им защитить свои собственные интересы, признавая при этом, что они могут потерять некоторых крупных участников сообщества React.
В прошлом Мэтт откровенно говорил о том, как Automattic целиком положились на React. Многие в сообществе считали, что решение перейти к React является предрешенным, учитывая, что на React работали Calypso и новый администраторский интерфейс Jetpack, а также новый редактор WordPress Gutenberg. Принимая дорогостоящее решение поставить Gutenberg и продукты Automattic на новый фреймворк, Мэтт показал, что он готов придерживаться максимально удобного направления для сообщества WordPress по использованию и расширению программ.
«Решение о том, какую библиотеку использовать в будущем, появится в моем блоге; это будет прежде всего техническое решение», – отметил Мэтт. – «Мы будем искать что-то, что имеет большинство преимуществ React, но без багажа в виде патентного условия, которое только сбивает с толку людей. Спасибо всем, кто нашел время поделиться своими мыслями и дать обратную связь по этим вопросам – мы все услышали».
Gutenberg, безусловно, теперь может дорабатываться дольше, и, возможно, к нему возникнет интерес и других участников, учитывая, что изучение новой библиотеки вряд ли будет настолько сложным, как в случае с React.
В конце мая разработчики ядра WordPress сузили список подходящих JavaScript фреймворков до React и Vue. Похоже, что Vue по-прежнему остается довольно сильным соперником. После того, как комментатор к посту Мэтта предложил ему переключиться на Vue, Мэтт ответил, что ему часто предлагают такой подход, и его команда уже встретилась с ведущим разработчиком фреймворка Эваном Ю.
Когда мы раньше брали интервью у Эвана, он отмечал, что он не слишком хорошо знает ядро WordPress, чтобы дать объективные рекомендации, однако он предложил обратную связь по некоторым техническим вопросам, обсуждаемым в то время. Он также развеял некоторые распространенные заблуждения касательно Vue, которые сторонники React нередко использовали в качестве аргументов против использования его фреймворка.
Мэтт также подтвердил, что Preact – еще одна библиотека, которая в данный момент рассматривается командой. Preact.js – это легкая альтернатива React, использующая то же самое API, но при этом выпускаемая под лицензией MIT. Некоторые разработчики стали спекулировать по поводу того, что в качестве замены будет выбран именно Preact, поскольку Gutenberg уже имеет тестовый бранч для Preact.
Также комментарий Мэтта по поводу того, что решение «может задержать выход Gutenberg как минимум на несколько недель, и оно появится в следующем году» возможно лишь в том случае, если команда перепишет его с использованием Preact.
Публичные отзывы о том, что WordPress планирует отойти от React, до сих пор были в целом положительными. Многие благодарны тому, что Мэтт принял трудное решение изменить курс и выбрать другую библиотеку после столь интенсивного инвестирования в React.
Дискуссия о новом фреймворке продолжается за закрытыми дверями и не является достоянием общественности, хотя pull-запрос на использование Preact в Gutenberg открыт в репозитории проекта на GitHub, и некоторые публичные обсуждения касательно выбора библиотеки ведутся именно там.
Источник: wptavern.com