Заметки к выпуску Discourse 2.5.0.beta2

Новые функции в версии 2.5.0.beta2

Различие между ЛС и темами в результатах поиска

Пользователи могут использовать фильтр поиска in:all, введенный в Discourse 2.4, для одновременного поиска как публичных тем, так и личных сообщений. В результатах поиска теперь отображается конверт ЛС, если результат является личным сообщением, что визуально отличает темы от ЛС.

Компоненты дочерних тем

Система тем Discourse невероятно мощная и гибкая. Мы видели удивительные темы и компоненты, разработанные нашим сообществом. Ознакомьтесь с ними сами в канале #theme.

Разработчики тем теперь могут указывать «компоненты дочерних тем» в файле about.json темы верхнего уровня. Компоненты дочерних тем будут автоматически устанавливаться и добавляться к установленной теме в момент установки. Обратите внимание, что компоненты дочерних тем не устанавливаются при обновлении темы.

Улучшение безопасного режима

Безопасный режим позволяет пользователям просматривать сайт без запуска тем, официальных и/или неофициальных плагинов. Это полезно, если тема или плагин вызывают проблемы с интерфейсом и требуют отключения, или для проверки, вызвана ли ошибка темой, плагином или ядром Discourse.

Ранее страница безопасного режима, используемая для активации безопасного режима, могла зависеть от тем, что мешало пользователям его включить. Теперь пользовательские настройки сайта всегда отключены на странице безопасного режима, что гарантирует возможность его включения без проблем.

Автоматическое архивирование групповых сообщений при закрытии

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

32 лайка

Ещё больше!

Но подождите, есть ещё! Мы делаем всё возможное, чтобы выделить для вас новые функции и изменения, но их всегда слишком много, чтобы описать подробно. Для полного списка новых функций, исправлений ошибок, улучшений UX и прочего обязательно ознакомьтесь с разделом «Дополнительные функции и исправления», приведённым ниже.

Обновления безопасности

Эта бета-версия включает 2 исправления безопасности для проблем, сообщённых нашим сообществом и HackerOne.

  • Добавлены дополнительные ограничения на электронные письма для приглашений
  • Обеспечено соответствие JSON API приглашений UX

Улучшения плагинов

Code Review

  • Рефакторинг и другие внутренние улучшения

Group Tracker

  • Исправление ошибки

Cakeday

  • Исправление тестов для високосного года

Discourse Docker

  • Исправление ошибки

Graphviz

  • По умолчанию режим SVG

Policy

  • Исправления ошибок

Calendar

  • Исправления ошибок
  • Удаление пользовательского поля timezone — используйте UserOption.timezone

Assign

  • Удаление кода обратной совместимости, так как версия 2.4 выпущена в стабильной ветке

Дополнительные функции и исправления

Нажмите, чтобы развернуть

Новые функции

  • Экспериментально: обработка /go/ как серверного маршрута
  • Возможность добавления ссылки с описанием к отчёту
  • Включение Service Worker в iOS PWA
  • Безусловное пропускание индексации в контроллере поиска

Исправления ошибок

  • Запрет на очистку корзины загрузок, пока она включена
  • Использование destroy_all вместо delete_all для общих черновиков
  • Не генерировать ошибку при выполнении поиска in:all анонимным пользователем
  • Перезапись файлов плагинов при запуске вызывает проблемы
  • Не оптимизировать иконки во время db:migrate при восстановлении резервной копии
  • Возможность выбора действия при согласии с наказанием
  • При миграции загрузок на S3 могли быть пропущены файлы
  • При одновременном использовании запуск Rails мог вызывать повреждение плагинов
  • Использование полного URL для защищённых вложений при включённом защищённом медиа
  • Прекращение бесконечного поиска URL для видео/аудио на странице
  • Необходимо пропускать пользователей с связанными объектами проверки при их автоматическом одобрении
  • Разрешить пользователям создавать опросы в личных сообщениях с не-человеческими пользователями
  • Добавление aria-label для элементов списка тем
  • Темы должны учитывать автоматическое закрытие при публикации в категории
  • Предотвращение всплытия клика по заголовку sk
  • Восстановление с disable_emails: false больше не работало
  • Скрейпер Google Groups не мог войти в систему
  • Работа FooterNav с PWA на iPadOS
  • Обеспечение построения URL категории в выпадающем меню категории с использованием слага и id
  • Синхронизация формата ключей предзагрузки для списков тем категорий
  • Игнорирование защищённых медиа-загрузок для miniprofiler
  • Prettier для компонента iframed-html
  • При добавлении тегов к сообщениям в ограниченной категории необходимо передавать id категории, иначе это не сработает
  • Предотвращение отображения загрузки во время дедлайнинга
  • Массовое награждение бейджами должно работать даже если в CSV есть значения nil
  • Пропуск обучающего материала по опросам, если пользователь не может создавать опросы
  • Предотвращение перехвата события клика по строке событием фильтрации ввода
  • Пропуск небольшого действия «приглашён», если пользователь состоит в приглашённой группе
  • Полифил Promise для IE11
  • Неправильная замена URL загруженных изображений в сыром тексте поста

Изменения UX

  • Настройки ввода для модального окна настроек категории (вкладка «Теги»)
  • Попытки увеличения зоны нажатия всплывающего меню на мобильных устройствах
  • Корректное использование множественного числа для уведомлений «слишком мало тем и сообщений»
  • Предотвращение подёргивания при отображении голосующих в опросе

Производительность

  • Возможность предзагрузки «времени чтения за последнее время» для пользователя
  • Возможность использования сериализатора пользователя для предзагруженных пользовательских полей
  • Возможность передачи существующего списка id полей пользователя при загрузке
  • Улучшение производительности списка тем категории
22 лайка