Не прошло и месяца с выхода WordPress 7.0, как контрибьюторы запустили специальную аутрич-программу по всестороннему тестированию функционала совместного редактирования (RTC). Он должен войти в версию 7.1.
Энн Маккарти, спонсируемая Automattic, объявила об этой инициативе в среду в блоге Make WordPress Core, призвав первых пользователей присоединиться к новому каналу #collaborative-editing-outreach в WordPress Slack и протестировать RTC на реальных сайтах в релиз-цикле 7.1.
В сопутствующей публикации в блоге Make WordPress Hosting координатор релизов Эми Камала побудила хостинг-провайдеров привлечь к процессу тестирования различных участников, особенно профессиональные команды: редакции новостных сайтов, некоммерческие организации и малый бизнес.
Аутрич-программа смоделирована по образцу инициативы Full Site Editing Outreach Program, связанной с разработкой блочного редактора. По словам Маккарти, такой формат позволил установить более тесную обратную связь между тестировщиками и разработчиками.
«Для функционала, требующего совместной работы, необходим именно такой подход к тестированию», — написала Маккарти. «В цикле 7.0 много времени и усилий было потрачено на тестирование со стороны разработчиков, тестирование на корпоративном уровне и детерминированное тестирование со стороны хостингов. Все это помогло привлечь увлеченных пользователей, работающих с различными средами хостинга и имеющих разный опыт».
Цель состоит в том, чтобы собрать ценные отзывы перед выпуском первой бета-версии WordPress 7.1, что запланировано на 15 июля. Первый релиз-кандидат должен появиться 5 августа. Финальный релиз 7.1 запланирован на 19 августа на конференции WordCamp US в Финиксе.
Тестирование в плагине Gutenberg
Тестирование будет проводиться в плагине Gutenberg, где совместное редактирование можно включить в разделе Settings > Writing. Отдельный плагин для RTC рассматривался, но был отклонен после обсуждения в канале #feature-realtime-collaboration в WordPress Slack на прошлой неделе.
По словам Маккарти, предоставление RTC в качестве отдельного плагина без необходимости использования Gutenberg означало бы форк и замену основных пакетов, таких как core-data, editor и block-editor, что привело бы к их устареванию по мере развития функционала в Gutenberg, появлению обманчивых баг-репортов и болезненному слиянию, когда код в конечном итоге вернется в ядро.
Контрибьюторы рассматривали альтернативные варианты, включая привязку плагина к Gutenberg 7.0 с переносом только критически важных исправлений, а также более компактный плагин, который просто включал бы RTC внутри Gutenberg. Но ни один из подходов не решил основную проблему тестирования функционала независимо от редактора.
«Я не думаю, что мы будем создавать отдельный плагин. Это кажется совершенно бессмысленным», — написала Маккарти после обсуждения.
Независимый разработчик ядра Аарон Джорбин спросил, можно ли создать билд Gutenberg, который включал бы только фрагменты, относящиеся к RTC, что позволило бы не выносить код за пределы плагина и обеспечило бы более целенаправленное тестирование. Эта идея не получила поддержки в ходе обсуждения, но и не была исключена.
Джеффри Пол, контрибьютор, спонсируемый Fueled, который в прошлом месяце опубликовал призыв к волонтерам для версии 7.1, поддержал идею остаться в рамках Gutenberg, сославшись на сжатые сроки. «Время пролетит быстро, поэтому тратить его на воспроизведение того, что уже выполнимо с Gutenberg, кажется нерациональным шагом», — написал он.
Подход к использованию БД пока не определен
Один из вопросов, который еще предстоит решить, — какую архитектуру хранения данных будет использовать RTC. Проблемы с производительностью этого функционала во время цикла разработки 7.0 — впервые задокументированные Питером Уилсоном, — были связаны с зависимостью RTC от метаданных записей для синхронизации информации, что вело к фактическому отключению постоянного кэша запросов к записям WordPress всякий раз, когда редактор был открыт.
Еще до исключения RTC из версии 7.0 Маккарти публиковала результаты тестов производительности RTC в хостинг-средах с использованием четырех подходов к хранению данных. Гибридный вариант, сочетающий произвольную таблицу БД с awareness-данными, хранящимися в объектном кэше, выиграл в тестах, оказавшись примерно на 52% быстрее, чем базовый вариант с метаданными записей. Однако решение о том, какой подход выбрать, еще не принято.
Камала подняла этот вопрос в обсуждении в Slack, отметив, что текущая сборка Gutenberg не включает ни одной из реализаций таблиц БД, протестированных во время цикла 7.0.
Маккарти заявила, что, по ее мнению, данных, полученных в ходе тестирования с хостингами, достаточно для дальнейшего продвижения проекта, и попросила его руководителей — Матиаса Вентуру и Мэри Хаббард — поспособствовать принятию этого решения.
Хостинги откликнулись на призыв
Что касается хостингов, Скотт Кингсли Кларк из GoDaddy заявил, что компания готова протестировать функцию на своей платформе управляемого хостинга с привлечением внутренних сотрудников. В обсуждении в Slack Маккарти сказала, что аутрич-программа выходит за рамки детерминированного, ориентированного на производительность тестирования, которое проводилось на хостингах во время цикла 7.0.
«Здесь мы подразумеваем скорее повседневное использование в реальных условиях… а не детерминированное тестирование», — написала она в Slack. «…нам нужен не просто отлов багов. Мы хотим радовать пользователей, знать их пожелания, понимать, что нужно улучшить в работе функционала и так далее».
В своем посте Камала сформулировала просьбу в практическом ключе: привлечение разных клиентов для тестирования RTC в их отдельных инфраструктурах поможет убедиться в корректной работе функционала на множестве платформ, а также создаст прямую обратную связь с разработчиками. В конце цикла участникам будут вручены значки и награды.
Источник: https://www.therepository.email
