3.4.0.beta3: Проверка обновлений на странице «Что нового», фильтрация по пользователю в очереди рецензий, потоковая организация в личных сообщениях и групповых чатах и многое другое

Новые функции в версии 3.4.0.beta3

Проверка обновлений на странице «Что нового»

На странице «Что нового» в настройках администратора появилась новая кнопка Проверить обновления. Это позволяет администраторам немедленно проверять наличие новых обновлений для этой страницы.

Фильтрация по пользователю в очереди модерации

Теперь администраторы могут использовать фильтр «Помечено пользователем» в очереди модерации, чтобы просмотреть весь помеченный контент, созданный конкретным пользователем.

Вложенные обсуждения в личных сообщениях и групповых чатах

Функция вложенных обсуждений, ранее доступная в каналах чата, теперь также работает в личных сообщениях и групповых чатах. Включите опцию «Вложенные обсуждения» в настройках чата для личных и групповых сообщений, чтобы каждый ответ на сообщение создавал отдельную ветку обсуждения.

Счетчик упоминаний в ветках чата

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

Упрощенные приглашения

Процесс приглашения пользователей стал более дружелюбным и простым. Создание ссылки для приглашения теперь занимает один клик (опции редактирования ссылки по-прежнему доступны). Узнать больше…

Переработанная страница /about

Страница «О сайте» получила новый дизайн и стала проще в настройке. Через новую страницу администратора, доступную с самой страницы, вы можете добавить баннер, краткое описание сайта и указать предпочтительный способ связи. Активность сайта теперь отображается более наглядно и по желанию может включать статистику посетителей из ЕС. Узнать больше…

Ограничение видимости профиля для пользователей с низким уровнем доверия

Мы внедрили следующие изменения для пользователей с низким уровнем доверия (TL), чтобы предотвратить злоупотребление биографиями профилей и другими полями:

  • Анонимные пользователи, а также пользователи с уровнем TL0 и TL1 не могут просматривать профили пользователей с 0 публикациями, за исключением сотрудников.
  • Анонимные пользователи и пользователи с уровнем TL0 могут просматривать профили только пользователей с уровнем TL1 и выше.

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

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

  • Обход Discourse Connect через другие пути входа, если они включены (CVE-2024-49765)
  • Модераторы могут просматривать отфильтрованные письма, даже если опция «Модераторы видят письма» отключена (CVE-2024-52589)
  • Magnific lightbox уязвим для XSS-атак (CVE-2024-52794)
  • Возможная утечка файла резервной копии через Nginx (CVE-2024-53991)
16 лайков

И не только!

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

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

discourse-activity-pub

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

  • Добавлено действие отклонения подписчика (123)
  • Разрешено изменение предпочтительного имени пользователя актора (124)
  • Добавлен резолвер контекста (98)

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

  • Предотвращение публикации шёпотов (128)
  • Убедитесь, что некорректные активности не вызывают исключений (122)
  • Убедитесь, что JSON без актора не вызывает исключение (119)
  • Убедитесь, что навигация обнаружения правильно отслеживает изменения маршрутов (117)
  • Исправление нестабильного теста перемещения постов (118)

discourse-adplugin

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

  • Обработка onChange в HouseAdsChooser (234)

discourse-ai

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

  • Правильные ссылки на фильтры для помощи в отладке спама (1031)
  • Добавлены периодические проверки проблем для каждой используемой LLM (1020)
  • Недоступное состояние семантического поиска, когда сортировка не по релевантности (1030)
  • Показывать gist-ы везде, кроме предложенных/связанных (995)
  • Добавлено обнаружение спама с помощью ИИ для постов новых пользователей (1004)
  • Полноценная поддержка OpenRouter (1011)
  • Выбор последовательностей остановки из скрипта сортировки (1010)
  • Поддержка Amazon Nova через Bedrock (997)
  • Заполнение тональности постов задним числом. (982)
  • Разрешено обновление артефактов (980)
  • Корректировки в сводках gist (988)
  • Исключение заглушенных категорий из предложения категорий (979)
  • Страница использования ИИ (964)
  • Пропуск сканирования личных сообщений в сортировке LLM по умолчанию (966)
  • Расчет gist-ов также из непопулярных тем (958)
  • Упоминания LLM и автоматическое заглушение (949)
  • Добавлены ссылки на просмотр отфильтрованных эмоций в таблице дашборда эмоций (953)
  • Уточнения в отображении эмоций в дашборде (947)
  • Добавлен промпт определения локали от переводчика (946)
  • Приведение порядка сортировки эмоций /filter в соответствие с таблицей дашборда (939)
  • Включение gist-ов во всех списках тем (922)
  • Таблица метрик активности эмоций (916)
  • Добавлена поддержка моделей Mistral (919)
  • Артефакты ИИ (898)
  • Сортировка по эмоциям на /filter (913)
  • Частичная поддержка вызова инструментов для OpenAI и Anthropic (908)
  • Обрезка подписей ИИ до разумного максимального размера (907)
  • Улучшение поддержки инструментов (904)
  • Расширение обратного заполнения сводок для генерации gist-ов (896)
  • Автоматическое обратное заполнение обычных сводок. (892)
  • Поддержка пользовательских инструкций для потоковой передачи персон (890)
  • Удвоение длины gist до 40 слов (888)
  • Новый эндпоинт для прямого доступа к персоне (876)
  • Ускоренная регенерация gist, когда в популярной теме появляется новый пост (860)
  • Поддержка srv-записей для LLM, совместимых с OpenAI (865)
  • Разрешено ограничение области запросов инструментов Google (852)
  • Лучшее логирование для отчетов автоматизации (853)
  • Улучшение видимости использования ИИ на странице LLM (845)
  • Gist-ы популярных тем теперь опциональны. (846)
  • Генерация gist-ов тем для списка популярных тем. (837)
  • Интеграция с ботом Discord (831)
  • Более умное привязывание персон (832)
  • Индексирование эмбеддингов с использованием битовых векторов (824)
  • Инструменты для моделей от провайдера Ollama (819)
  • Разрешено персоне принудительно вызывать инструменты только в ограниченных ответах (827)
  • Поддержка остановки цепочек и создания загрузок (821)

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

  • Убедитесь, что gist-ам минимум пять минут, прежде чем обновлять их (1029)
  • Получение версии стратегии через vector_rep (1028)
  • Разрешено сканирование удаленных постов и пользователей для тестов (1024)
  • Правило сортировки должно добавлять выбранные теги, а не заменять их (1022)
  • В клиенте вывода Gemini отсутствовал #instance (1019)
  • Убедитесь, что загрузки промптов включаются в промпт при сортировке (1008)
  • Закрытие ссылки в модели общих разговоров (1007)
  • Изменение способа фильтрации даты для эмоций на /filter (1006)
  • Убедитесь, что лимиты обновляются и применяются на каждом шаге (1002)
  • Опечатка в gist темы для escapedExcerpt (1003)
  • Добавлена проверка дайджеста, чтобы избежать многократной генерации эмбеддингов (пакетно) (1001)
  • Более устойчивый запрос обратного заполнения тональности (998)
  • Регрессия, примеры больше не отправляются помощнику ИИ (993)
  • Скрипты автоматизации ИИ были сломаны при использовании seed-моделей (991)
  • Предлагатель тегов предлагает уже назначенные теги (990)
  • Результаты классификации тональности должны быть преобразованы перед сохранением (983)
  • Перемещение логики подсчета в конец для предложений тегов (978)
  • Сохранение кэша данных связанных тем при прокрутке вверх пользователем (976)
  • Несколько параллельных сводок могли приводить к ошибкам индексов pg (973)
  • Меню предложений не отображались на мобильных устройствах (970)
  • Ошибка двойного рендеринга с предложениями миниатюр (968)
  • Исправление порядка обратного заполнения случайных постов эмбеддингами (965)
  • Остановка пула потоков эмбеддингов после обработки (961)
  • Пропуск записей без содержимого для классификации (960)
  • Изменение начальных/конечных дат в отчете дашборда эмоций (951)
  • Правильная регистрация иконки ‘info’ (950)
  • Слишком сложная предварительная загрузка случайно фильтровала некоторые темы. (945)
  • Временно отключена фильтрация ai_summaries (943)
  • Автоматическое обновление кэша для общих ресурсов ИИ (942)
  • Правильное определение периода для сортировки эмоций на /filter (940)
  • Регрессия функциональности отмены (938)
  • Gist-ы не были безопасны для HTML (931)
  • Разные исправления для тональности в админ-дашборде (928)
  • Указание AR, что мы хотим использовать ai_summaries для фильтрации. (927)
  • Уменьшение области включения gist-ов тем. (925)
  • Пропуск gist-ов в списках тем личных сообщений (923)
  • Убедитесь, что артефакты изолированы, даже при прямом посещении (921)
  • Правильное обход CSP для артефактов (920)
  • Перемещение логики эмоций /filter в CTE, чтобы сохранить разумную кардинальность (915)
  • Результаты не сбрасывались при добавлении к параметру запроса (912)
  • Не удалять пустую строку во время потоковой обработки (911)
  • Кнопка регенерации сводки все еще показывает кэшированную сводку (903)
  • Включен скрытый параметр ключа API Gemini для эмбеддингов (902)
  • Указание типа для загрузки Rag (895)
  • Мы должны правильно кодировать объекты перед экранированием (891)
  • Правильное кодирование параметров, возвращаемых LLM (889)
  • Обрезка первого поста для gist-ов, чтобы помочь модели сосредоточиться на последних постах (883)
  • Убедитесь, что ответы никогда не потокопередаются дважды (879)
  • Убедитесь, что gist-ы тем отображаются ТОЛЬКО в списке популярных. (873)
  • Использование present? вместо невалидного exists? (869)
  • Изменение промпта для популярных gist-ов, чтобы избежать повторения заголовка #859 (859)
  • Тестовый инструмент не показывал результаты Rag (867)
  • Селектор LLM / принудительные инструменты / инструмент поиска (862)
  • Базовая очистка подписи ИИ для удаления переносов строк и вертикальных черт (857)
  • Добавлен отсутствующий перевод (849)
  • Разделение манипуляции DOM от SummaryStreamer (844)
  • Не регенерировать актуальные gist-ы (843)
  • Ошибка заголовка ключа API (839)
  • Удаление пропущенного AiPersona.allowed_chat (838)

Изменения UX

  • Использование нового повторно используемого компонента DStatTiles из ядра (1025)
  • Нет админ-заголовка для инструментов редактирования персон или LLM (1021)
  • Улучшение шероховатостей страницы использования ИИ (1014)
  • Улучшение читаемости трендов тональности (1018)
  • Улучшение читаемости трендов тональности в данных временных рядов (1013)
  • Убедитесь, что всплывающее окно композера всегда выше иконок ИИ (1012)
  • Улучшение расположения кнопок inline-редактирования заголовка (1000)
  • Перемещение сводки темы из DMenu в DModal (992)
  • Стиль no-text некорректно добавлялся к предлагателю тегов (987)
  • Исправление стилей помощника ИИ при быстром редактировании (975)
  • Убедитесь, что предложения выровнены по левому краю (971)
  • Добавлен табличный стиль для списка LLM (963)
  • Применение большего количества руководств по UI админки (956)
  • Добавлены эмодзи в таблицу эмоций админ-дашборда (944)
  • Принудительный перенос длинных слов в gist-ах списка тем (936)
  • Убедитесь, что gist-ы занимают всю строку (934)
  • Улучшение стилей артефактов, добавление прямой ссылки для шаринга (930)
  • Обновление стилей переключателя gist (926)
  • Уменьшение размера заголовка списка тем, когда включены gist-ы (910)
  • Увеличение размера gist, и корректировка окружающих элементов для адаптации (900)
  • Добавлена иконка искры к связанным темам для анонимов (897)
  • В шаринге, использование нативных размеров изображения и скрытие имени файла (880)
  • Преобразование раскрытия gist ИИ в переключатель (878)
  • Небольшие оптимизации gist для читаемости (864)
  • Скрытие бота ИИ в seed-LLM (858)
  • Добавление раскрытия для gist-ов списка тем (861)
  • Улучшение страницы редактирования seed-LLM (856)
  • Переключение выхода gist, чтобы избежать значков (855)
  • Корректировка позиции gist, затемнение цвета непрочитанного (854)
  • Избегание вводных фраз и суммирование тем без ответов (848)
  • Удаление переопределения стиля AdminPageSubheader (828)

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

  • Предварительная загрузка только gist-ов при включении сводок в список тем (948)

discourse-assign

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

  • Добавлена опция should_notify в Assigner#assign (604)
  • Добавлен модификатор к количеству назначенных (598)

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

  • Не отправлять уведомления, когда никогда не следует уведомлять о назначении (620)
  • Напоминание Pending_assigns_reminder раскрывало общее количество назначенных тем (617)
  • Неправильный вызов геттера в 0d1045e9887aabb0bbb9316346f688527217da71 (596)
  • Соответствие типов колонок (593)

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

  • N+1, когда включен статус назначений (614)

discourse-authentication-validations

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

  • Сломанный тест (29)
  • Обновление компонента выхода плагина на основе конвертации FormKit ядра (21)

discourse-calendar

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

  • Разрешено пользователям устанавливать пользовательский заголовок для календаря в боковой панели (649)
  • Сохранение приглашенных для повторяющихся событий (632)
  • По умолчанию скрыты кнопки «заинтересован» и «не иду» (621)
  • Разрешено редакторам событий управлять списком пользователей на событии (614)

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

  • Убедитесь, что массовое приглашение работает правильно (666)
  • Рендеринг компонента на всех маршрутах (655)
  • Регрессии от модернизации (642)
  • Настройки категории для календаря были неверными (631)
  • Предотвращение добавления null в наблюдаемых приглашенных (629)
  • Правильная установка ключа предстоящих событий (628)
  • Предотвращение ошибки, если узел поста события не найден (626)
  • Правильное заполнение свойства повторения (625)
  • Отсутствие локализации (624)
  • Правильный рендеринг HTML заголовка события (623)
  • Показ календаря категории на популярных/последних (611)

Изменения UX

  • UI правой боковой панели (657)
  • Рендеринг количества приглашенных (663)
  • Корректировки поста события (660)
  • Редактирования UI событий (641)
  • Принудительная полная высота календаря для предстоящих событий (630)
  • Добавление предстоящих событий из повторения в календарь категории (616)
  • Исправление i18n конструктора событий (613)

discourse-category-experts

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

  • Поддержка исправления пользовательского поля при перемещении поста (183)
  • Добавлены типы событий вебхука Category-Experts (167)

discourse-chat-integration

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

  • Разрешены пользовательские параметры запроса в вебхуках Discord (236)

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

  • Обновление нестабильного теста отображения модального окна ошибки (228)
  • Модальное окно ошибки не показывало данные (225)
  • Сообщение срабатывало при создании темы (222)

discourse-codebytes-plugin

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

  • Обновление ссылок на классы для использования textManipulation (33)

discourse-custom-topic-lists

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

  • Добавлена RSS-лента к пользовательским спискам (29)

discourse-data-explorer

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

  • Добавлен скрипт для регулярной публикации результатов отчетов в теме (328)

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

  • Опциональное преобразование URL-колонок в ссылки на сервере (330)

Изменения UX

  • Уточнение необходимости авторизованного расширения (346)

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

  • Удаление динамического использования <template> (340)

discourse-doc-categories

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

  • Спецификация постоянных ссылок (26)
  • Отсутствие боковой панели документации в панели администратора. (22)
  • Корректный разбор текста из элементов, отличных от TEXT, перед двоеточием (21)
  • Ошибка при обновлении боковой панели документации через message bus (17)

discourse-docs

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

  • Не вызывать ошибку при параметре тегов, не являющемся строкой (180)

discourse-encrypt

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

  • Добавлена функция «расшифровать все ЛС» (347)
  • Пользователям разрешено расшифровывать существующие ЛС (344)
  • Администраторам разрешено отключать создание новых зашифрованных ЛС (339)

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

  • Сообщение об устаревании (362)
  • Использовать базу данных для исходных имен загруженных файлов при расшифровке (349)
  • Расшифровка нескольких загрузок на одной строке сообщения (348)
  • Не повышать темы при расшифровке (346)
  • Расшифровка на сайтах с внешними загрузками (345)
  • Не предупреждать о ответах, когда allow_new_encrypted_pms=false (340)

Изменения интерфейса

  • Избегать отправки уведомлений при расшифровке (350)

discourse-follow

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

  • Использовать разделенные параметры скрытия профиля и присутствия (128)

discourse-gamification

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

  • Добавлено начисление очков за каждую реакцию (95)
  • Добавлено начисление очков за события в чате (96)

discourse-hcaptcha

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

  • Поиск по запросу ‘plugin:discourse-hCaptcha’ в интерфейсе администратора не возвращает результатов и выдает ошибку в логах (11)

Изменения интерфейса

  • Добавлен ID темы-метаданных в метаданные (25)

discourse-openid-connect

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

  • Поддержка PKCE (86)

discourse-perspective-api

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

  • Обеспечена совместимость с шаблонами форм (93)

discourse-policy

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

  • Устранены проблемы с расположением подвала политики на мобильных устройствах (150)

discourse-prometheus

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

  • Настройка postgres_highest_sequence только для столбцов типа int (120)
  • Настройка postgres_highest_sequence только для столбцов типа int (98)

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

  • Более безопасный способ форка демона сборщика (126)
  • Сборщик больше не требует зависимости webrick (125)
  • Откат изменений метрики postgres_highest_sequence (119)
  • Увеличение интервала проверки последовательности, теперь это более медленная проверка (118)

discourse-reactions

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

  • Ошибка «неопределенный метод для nil» в PostSerializer#reactions (314)

Изменения интерфейса

  • Исправлена небольшая проблема выравнивания при использовании меню сообщения Glimmer в мобильном режиме (320)

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

  • Ускорение PostSerializer#reactions путем избегания вложенных циклов (версия 2) (313)
  • Ускорение PostSerializer#reactions путем избегания вложенных циклов (312)

discourse-saml

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

  • Предотвращение атак повторного воспроизведения идентификаторов утверждений (114)

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

  • Включение подписей в запросы, когда ключи определены (107)

discourse-solved

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

  • Добавлен модификатор для обновления счетчика назначенных и исключения решенных тем (312)

discourse-solved-reminders-plugin

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

  • Ссылка на решенное сообщение при отправке поздравительного ЛС (12)

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

  • Не выполнять обычные/запланированные задачи, если плагин не включен (13)

discourse-steam-login

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

  • Добавление /gems в .gitignore (97)

discourse-subscriptions

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

  • Добавлена поддержка валюты PLN (258)
  • Добавлена поддержка валюты CHF (254)

discourse-theme-creator

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

  • Использование новой системы ключей клиента API пользователей в discourse/discourse (100)

discourse-translator

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

  • Добавлен переводчик DiscourseAi (181)
  • Добавлена поддержка самоского (sm) и всех других языков, поддерживаемых Microsoft (186)
  • Добавлена настройка максимального количества символов для перевода (183)

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

  • Удалена дублирующаяся запись языка (191)
  • Также удаляются теги якорей при определении языка (187)
  • Удаляются теги img (эмодзи) при определении языка (182)

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

  • Перенос задачи определения языка для каждого сообщения в пакеты с использованием redis (177)

discourse-unhandled-tagger

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

  • Кнопка «Обработано» стала реагировать на изменения (27)

discourse-whos-online

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

  • Использовать разделенные параметры скрытия профиля и присутствия (110)

discourse-yearly-review

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

  • Обеспечена правильная санитизация SQL-запросов (90)

discourse-zoom

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

  • Исправлен ключ в объекте вебинара, используемый для сопоставления электронной почты хоста Zoom с пользователем Discourse (88)

docker_manager

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

  • Минимизация доступа к базе данных после db:migrate (247)

Изменения интерфейса

  • Небольшие изменения значка статуса (253)
  • Адаптация таблицы для мобильных устройств (244)

Все функции и исправления

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

  • Вкладка настроек для постоянных ссылок (30192)
  • Поддержка причин и удаленного содержимого в очереди проверки (30295)
  • Разрешение приостановки восстановления перед миграцией БД и восстановлением загрузок (30269)
  • Добавлена поддержка фильтра «Помечено» в reviewable (30197)
  • Добавлена возможность блокировать IP-адреса и электронные письма при массовом удалении пользователей (29993)
  • Ограничение видимости профилей пользователей с низким уровнем доверия (29981)
  • Увеличение лимита ЛС с 20 до 50 (30102)
  • Добавлена опция --sql-only для резервного копирования discourse (30009)
  • Отображение времени присвоения значка за сообщение (29696)
  • Добавлены точки расширения плагина в строку родительской категории для десктопа (30002)
  • Передача faqOverridden в точку расширения плагина about-wrapper (29994)
  • Разрешение конечной точки добавления члена группы пропускать приглашения по электронной почте (29962)
  • Разрешение настраивать описания формы регистрации (29959)
  • Разрешение администраторам принудительно обновлять раздел «Что нового?» (29911)
  • Добавлена опция freeze_original в PostMover (29880)
  • Добавлено массовое удаление в списке пользователей администратора (29744)
  • Добавлены массовые действия на страницу /filter (29420)
  • Добавлен модификатор для удаления после слияния (29872)
  • Добавлен трансформер для передачи ID темы в простое создание приглашений (29861)
  • Добавлены сочетания клавиш для перехода к непрочитанным каналам (29734)
  • Добавлена опция пропуска уведомлений при групповом приглашении в тему (29741)
  • Добавлен счетчик упоминаний в ветки (29739)
  • Пагинация категорий, когда их много (29569)
  • Добавлено больше кнопок массового отклонения с подтверждением (29331)
  • Пометка плохих загрузок как :invalid_url (29640)
  • Добавлены ссылки на поисковые поля пользователей в каталоге пользователей и профиле пользователя (29338)
  • Добавлена поддержка заголовков в чате (29552)
  • Добавлены пользовательские поля в чат (канал/сообщение/ветка) (29504)
  • Добавлено поле «Название сообщества» на страницу настроек about (29500)
  • Условное принудительное использование оптимизированного стиля категории (29473)
  • Добавлена ссылка на приглашение в боковую панель (29448)
  • Добавлены ссылки на страницу подкатегорий на странице категории (29474)
  • Включение новой страницы /about для всех (29390)
  • Не вставлять умный список при нажатии SHIFT+Enter (29452)
  • Добавлена пользовательская настройка для отключения умных списков (29434)
  • Разрешение темам определять скриншоты (29079)
  • Внедрен оптимизированный стиль для страницы категории (29239)
  • Обязательные поля для compact-list (29357)
  • Возрождение отчетов о просмотрах страниц в старом стиле (29308)
  • Разрешение администраторам включать анонсированные экспериментальные функции (29244)
  • Поле auto_action_type для флагов (29306)
  • Автоматическое размещение изображений в сетке при загрузке 3 или более изображений (29260)
  • Создание rake для миграции БД в плагинах (29163)
  • Включение оптимизации изображений на iOS >= 18 (29257)
  • Theme_modifiers могут зависеть от настроек темы (плюс serialize_post_user_badges) (29227)
  • Начальная область настроек тем с сеткой (28828)
  • Включение веток в каналах ЛС чата (29170)
  • Добавлена опция trigger_with_pms в триггер автоматизации теги темы изменены (29122)

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

  • Исправлена ошибка off-by-one в списке тем Glimmer (30372)
  • Обработка null this.model при проверке, принадлежит ли компонент текущему пользователю, в CanCheckEmailsHelper (30359)
  • Снятие закрепления тем в списке тем Glimmer (30342)
  • Переработан мониторинг Sidekiq для перезапуска зависших процессов sidekiq (30198)
  • Корректное размещение сообщения модератора при полном перемещении темы с freeze_original (30324)
  • Ограничение перемещения дублирующих таймингов вместе с сообщениями (30311)
  • Использование relations для new_in_category (30313)
  • Имена поисковых полей пользователей не всегда являются целыми числами (30223)
  • Обработка перемещения нерелевантных таймингов (30256)
  • Корректное отображение индикатора непрочитанных сообщений группы в gjs (30302)
  • Добавлено ограничение на стороне сервера для каналов личных сообщений (30300)
  • Разворачивание / сворачивание панели информации о собственном пользователе (30272)
  • Избегание zip-архивации при добавлении пользователей в группы (30263)
  • Передача правильного аргумента в outlet (30159)
  • Отображение ошибки валидации на полях подтверждения пользователя (30232)
  • Замена выпадающего списка на кнопку, если есть только один вариант (30242)
  • Восстановление символа нулевой ширины… (30243)
  • Ссылка на группу не работала в локалях, отличных от английской (30237)
  • Корректные выдержки для details / summary (30229)
  • Обрезка bookmarks.name при переназначении
  • Фоновый цвет для переопределенного фильтра настроек (30221)
  • Регрессия, позволяющая асинхронным вызовам завершаться перед удалением загрузок (30230)
  • При перемещении первых сообщений между темами убедиться, что перемещаются только релевантные тайминги (30217)
  • s3:upload_assets загружал некоторые исходные карты дважды (30216)
  • Позиция редактора на DiscourseHub iOS (30204)
  • Быстрое редактирование с типографским символом
  • При перемещении сообщений между ветками убедиться, что перемещаются только релевантные тайминги (30176)
  • Предотвращение разделения экспериментального значка на новые строки при длинных названиях (30181)
  • Корректная обработка скрытых тегов при проверке конфликтов редактирования
  • Улучшена валидация имени в форме регистрации (30150)
  • Согласованность порядка сортировки каналов чата в боковой панели (30180)
  • Разрешить всем, кто может управлять группами, видеть всплывающую подсказку “Automatic” (30174)
  • Обеспечивает возможность прокрутки sk на iOS в модальном окне (30164)
  • Корректная хлебная крошка для страницы администраторов (30173)
  • Восстановление удаленного пользователем сообщения (30145)
  • Уменьшение минимальной ширины панели ветки (30158)
  • Freeze_original для уведомлений о перемещенном сообщении при перемещении создателем темы, ссылка на целевую тему (30147)
  • Улучшена сортировка каналов чата для личных сообщений (30124)
  • Отбрасывание пустых пакетов для элементов проверки (30121)
  • Перемещение присвоенных значков в конец заголовка сообщения. (30095)
  • Обеспечивает переключение фокуса с триггера на контент (30064)
  • Корректное цитирование видео (30099)
  • Невозможность процитировать видео (30077)
  • Каналы присутствия для шепота (30097)
  • Обновление сообщения о причине флага значением по умолчанию (30026)
  • Проблема санитизации при замене стандартных эмодзи на пользовательские, содержащие символы или ~/Discourse/discourse (30053)
  • Удаление некоторых mandatory_values для reserved_usernames (30089)
  • Использование then/finally в history-store (30061)
  • Миграция переназначения Font Awesome не должна удалять неразмеченные имена из svg_icon_subset (30058)
  • Улучшенная обработка конфликтов редактирования (29789)
  • Попытка упростить отступы в навигационной панели чата (30054)
  • Ограничение частоты запросов при перемещении сообщений с опцией freeze (30041)
  • Настройка стиля ссылок в блоках кода (30036)
  • Виртуальная клавиатура для полноэкранной регистрации/входа (29543)
  • Редактирование сообщения во время ответа (29985)
  • Удаление дубликатов CSS в письмах (30003)
  • Перенос слов для длинных непрерывных названий веток (30007)
  • Увеличение лимита длины названия ветки чата (30006)
  • Заголовок ветки не должен выглядеть кликабельным (30005)
  • Отображение значка срочности для упоминаний в ветках личных сообщений (29821)
  • Сброс likeAction при обновлении кэшированного сообщения из JSON-данных (29971)
  • Ошибка с причиной редактирования на iOS (29987)
  • Сначала отфильтровывать защищенные категории (29916)
  • Локализация для пользовательских описаний формы регистрации (29982)
  • Корректное переключение флажков массового выбора для обычных пользователей (29984)
  • Перерисовка компонента Chart при изменении конфигурации (29955)
  • Отсутствующие переводы для пустой области конфигурации (29966)
  • Количество сообщений в теме для события webhook post_destroyed (29853)
  • Триггер TopicTagsChanged не работал с несколькими тегами (29961)
  • Упрощение поведения десктопных уведомлений (29957)
  • Не игнорировать редиректы, содержащие “/login” в пути (29960)
  • Решение проблем с нестабильными тестами в PostMover (29943)
  • Сохранение истории при маршрутизации к маршруту /filter (29929)
  • Удаление дублирующегося id (29939)
  • Корректное уничтожение меню/всплывающей подсказки при удалении из DOM
  • Опрос: убедиться, что невозможно проголосовать со всеми воздержавшимися в Ranked Choice (29601)
  • Пустой пакет элемента проверки сообщения вызывал ошибки на клиенте (29932)
  • Скрытие сломанных URL “О теме”/лицензии темы (29930)
  • Обработка нескольких In-Reply-To Message-ID в групповом почтовом ящике (29912)
  • Триггеры styleguide для Tooltip не отображали опции (29926)
  • Исправления Discourse Connect для полноэкранного входа (29915)
  • Защищенные загрузки без расширения (29914)
  • Не защищать изображение баннера “О нас” (29889)
  • Корректная ссылка на настройки в полноэкранном режиме (29913)
  • Permalink.create больше не работал как ожидалось (29895)
  • Делает теги реактивными с закрепленным заголовком (29894)
  • Скрытие кнопки чата в карточке пользователя (29887)
  • Корректное закрытие меню поиска по Escape (29848)
  • Использование FinalDestination::HTTP для отправки уведомлений (29858)
  • Настройка поведения сочетаний клавиш для непрочитанных каналов (29874)
  • Улучшение надежности сочетаний клавиш для непрочитанных каналов (29814)
  • СерIALIZация взаимодействия для личных сообщений (29844)
  • CLI Migrations-tooling больше не работал (29777)
  • Упрощение расчета max-height для редактора чата (29822)
  • Исправление сломанной ссылки на настройки в хлебных крошках администратора эмодзи (29818)
  • Обеспечивает, чтобы строка категории не была фокусируемой (29803)
  • Не включать группы с секретным членством при сериализации других пользователей (29799)
  • Удаление aria-hidden у category-status (29800)
  • Порядок табов и описания полей регистрации (29772)
  • Перехват ActiveRecord::ReadOnlyError при создании поля темы (29776)
  • Ошибка резервного копирования администратора из-за S3 dualstack (29775)
  • Ошибка с социальными входами и полноэкранной регистрацией (29761)
  • Ошибки styleguide и добавление smoke-теста для страниц компонентов (29747)
  • Закладки чата в режиме выдвижной панели (29757)
  • Отметка непрочитанных сообщений в подкатегориях (29671)
  • Использование абсолютной стратегии на ipad (29754)
  • Корректное динамическое изменение @disabled (29738)
  • Иконка переключения присутствия скрыта наоборот (29737)
  • Корректная загрузка модели приглашений при использовании полноэкранного входа (29713)
  • Восстановление и устаревание параметра :type для uploads#create (29736)
  • Корректная поддержка перетаскивания изображений (29733)
  • Нестабильный spec системных флагов (29694)
  • Обеспечение анонимизации normalized_email (29719)
  • Фильтруемые логи персонала для флагов (29695)
  • Нестабильность из-за изображений с нулевой шириной/высотой (29700)
  • Миграции должны быть завершены для сброса кэша флагов (29693)
  • Удаление header-icons из styleguide (29670)
  • Сломанное сообщение в styleguide (29669)
  • Поддержка escape-последовательностей в чате (29659)
  • Возврат опции создания приглашения без отправки письма (29641)
  • Корректный учет высоты редактора в PWA (29656)
  • Пользовательский endpoint S3 несовместим с dualstack (29654)
  • Корректный рендеринг Unicode в заголовке страницы канала (29653)
  • Обеспечение закрытия панели ветки по Escape (29651)
  • Возобновление редактирования при переходе через /new-message (29637)
  • Использование endpoint S3 dualstack для прямых загрузок (29611)
  • Передача темы+категории в поиск пользователей по @-упоминанию (29620)
  • Изменение настройки create_post_for_category_and_tag_changes на использование шепота вместо малых действий (29602)
  • Не пытаться сериализовать ассоциации в PostRevisionSerializer
  • Настройка с db:create db:migrate (29609)
  • Корректная передача типа загрузки в uploads#create (29600)
  • Корректное отображение названия категории в модальном окне замены текста (29612)
  • Странная медленная автопрокрутка на iOS (29598)
  • Использование правильных стилей на страницах категорий (29588)
  • Неверная ссылка в TopicListHeaderColumn (29593)
  • Загрузки чата чрезмерно защищены в некоторых ситуациях (29586)
  • Результаты опроса Ranked Choice не отображались при первом голосе (28542)
  • Расширение списка голосующих в Ranked Choice должно добавлять дополнительных голосующих (28432)
  • Учет боковых панелей без основных ссылок при добавлении ссылки-приглашения (29535)
  • Всплывающие подсказки на панели администратора не работали на мобильных устройствах (29538)
  • Разрешение атрибута target в переопределениях переводов (29503)
  • Дублирование тем в дайджестах / сводках (29517)
  • Отображение уведомлений о ветках чата для каналов личных сообщений (29414)
  • Пустой отчет “Legacy Pageviews” не показывал данные (29502)
  • Пропущено слово ‘done’ (29447)
  • Отсутствующие действия фокуса в списке тем Glimmer на мобильных устройствах (29421)
  • Копирование при выходе из системы (29462)
  • Использование контактного пользователя сайта + группы для действия проверки Revise… (29271)
  • Удаление избыточной блокировки прокрутки body (29395)
  • Пропуск проверки CSRF для POST /categories/search (29392)
  • Включение событий прокрутки в модальных окнах для IOS (29393)
  • Удаление событий прокрутки для мобильных модальных окон (29391)
  • Перефразирование поля типа автодействия для флагов (29361)
  • Неверный синтаксис raise (29364)
  • Визуальная регрессия для новых функций (29359)
  • Отображение последней отрендеренной подсказки пользователя (29346)
  • Предотвращение отображения ‘NaN’ путем скрытия статистики посетителей на /about до их готовности (29334)
  • Восстановление резервной копии могло завершиться ошибкой из-за отсутствия discourse_functions (29332)
  • Возврат страницы с требованием входа для полноэкранного входа (29316)
  • Избегание дублирования проблемных уведомлений администратора (29329)
  • Нестабильный spec флагов после рефакторинга (29325)
  • Статистика участвующих пользователей… (29293)
  • Режим только для персонала блокирует сброс пароля администратора (29289)
  • Не вызывать ошибку при пустой настройке reserved_usernames (29305)
  • Обеспечение работы уникального ограничения трекера проблем на PG13 (29272)
  • Не вызывать ошибку при вложенном параметре периода топик (29275)
  • Установка нового пароля должна сбрасывать password_expired_at (29296)
  • Увеличение количества возвращаемых svg-иконок до первых 500 (29286)
  • Create-invite-uploader с учетом изменений миксина uppy-upload (29278)
  • Не вызывать ошибку при вложенном параметре id показа темы (29274)
  • Не вызывать ошибку при вложенном параметре страницы индекса категорий (29273)
  • Отображение лайтбокса для маленьких изображений (29140)
  • Не переопределять триггер, если он равен 0 (29269)
  • Делает страницу подкатегорий более похожей на категории (29240)
  • Возврат случайно удаленного плагин-аутлета пользовательского поля (29247)
  • _uploadDropTargetOptions теперь публичен (29246)
  • Поддержка add_directory_column в переключателе заголовка таблицы Glimmer (29231)
  • Предотвращение смены фокуса при навигации по каталогу пользователей (29209)
  • Применение полного класса к полю (29190)
  • Ошибка просмотра ветки удаленного канала (29192)
  • Разрешение пользователю войти в другой аккаунт с того же устройства (client_id) (29121)
  • Уведомление подписчиков почтовой рассылки при изменении категории (28811)
  • Ошибка загрузки JS плагина ломала интерфейс администратора (29139)
  • Импорт сообщений чата только с загрузками (29162)
  • Unicorn master и Sidekiq открывали логи одновременно (29137)
  • Не переопределять другие панели боковой панели при открытии/закрытии выдвижной панели чата (29144)
  • Корректировки боковой панели администратора после недавних изменений стилей основной боковой панели (29138)
  • Возврат на главную страницу из боковой панели администратора (29125)
  • Добавление post_quote как плейсхолдера (29083)
  • Разрешение использования атрибута open с details (29116)
  • Нестабильный spec системы флагов (29039)
  • Использование полного имени колонки для предотвращения неоднозначного запроса (29111)
  • Отображение кнопки закрытия уведомления администратора только для администраторов (29103)
  • Поддержка идемпотентного закрытия уведомления администратора (29099)

Изменения UX

  • Применение таблицы администратора к странице настроек Автоматизации (30341)
  • Исправление маски пароля при сбросе пароля (30347)
  • Настройка размера шрифта дисклеймера (30346)
  • Улучшение баланса на страницах входа и регистрации (30330)
  • Исправление границы вокруг индикатора ответа (30343)
  • Рефакторинг стилей приглашений (30329)
  • Переход на минимальный макет (30327)
  • Отображение правильного сообщения, когда создание тем отключено тегом (30328)
  • Рефакторинг страницы сброса пароля (30323)
  • Переход на иконку для маскирования пароля (30321)
  • Применение таблицы администратора к вебхукам (30317)
  • Возможность сворачивания AdminConfigAreaCard (30310)
  • Отображение ссылки на группы в боковой панели администратора (30291)
  • Исправление активных и неактивных каналов (30308)
  • Добавление мета-тега color-scheme в _head (30245)
  • Введение <DStкомпонент atTiles />` (30238)
  • Увеличение размеров кнопок и временной шкалы (30240)
  • Переименование «личных» в «личные сообщения» в интерфейсе (29679)
  • Скрытие заголовка администратора для редактирования/создания вебхука (30194)
  • Настройка радиокнопок с учетом акцентного цвета форума (30235)
  • Исправление макета редактирования заголовка ЛС (30233)
  • Настройка флажков с учетом акцентного цвета форума (30231)
  • Добавление слота header-categories-wrapper (30214)
  • Исправление ширины заголовка боковой панели администратора (30226)
  • Текст для переключателя ленты функций (30196)
  • Возможность скрыть заголовок администратора (30175)
  • Перемещение ссылки «Что нового?» в боковой панели администратора в корневой раздел (30144)
  • Показ подсказки для автоматических групп только администраторам (30155)
  • Исправление стиля названия канала для непрочитанных тем (30152)
  • Исправление макета карты тем в ЛС (30135)
  • Небольшое исправление ссылки «Что нового?» в админ-панели (30143)
  • Изменение ссылки «Что нового в Discourse?» (30140)
  • Перемещение статуса отозванных API-ключей в отдельный столбец (30125)
  • Жирное выделение названия канала для непрочитанных тем (30127)
  • Рефакторинг CSS редактирования заголовка для улучшения макета (30109)
  • Исправление отступов карты тем в ситуациях с малым количеством контента (30101)
  • Улучшение сообщения об ошибке при попытке редактировать глобально скрытую настройку (30092)
  • Настройка выравнивания заголовка текста в мобильном чате (30065)
  • Добавление обертки user-badge-buttons только при наличии значков (30060)
  • Обновление описания настройки сайта allow_index_in_robots_txt (29901)
  • Добавление стилей для строки фильтра в админ-панели (30057)
  • Удаление многострочных комментариев в GitHub oneboxes (30040)
  • Отключение прокрутки при открытом модальном окне на настольных компьютерах (30035)
  • Страница пользователей в админ-панели соответствует руководству по UX для администраторов (29873)
  • Упрощение заголовка потока чата (29998)
  • Улучшение поведения слайдера загрузки (29995)
  • Отказ от подсветки фона поста при навигации (29986)
  • Скрытие канала с видимой панелью на узких экранах (29541)
  • Обновление minwidth для боковой панели чата + улучшенная функция переноса слов в заголовке (29954)
  • Удаление категории Lounge из описания значка (29927)
  • Попытка уменьшить скачкообразную прокрутку тем в Firefox (29941)
  • Исправление расчета ширины эффекта наведения на выдвижную панель чата (29910)
  • Улучшенное состояние/взаимодействие свернутой панели (29850)
  • Множество исправлений для блоков кода (29898)
  • Правки блоков кода (29893)
  • Исправление текста для заголовков уведомлений (29860)
  • Обновление текста атрибута title для кнопки приглашения в боковой панели (29875)
  • Слияние эксперимента с блоками кода (29870)
  • Добавление компонента AdminConfigAreaEmptyList (29816)
  • Единообразная страница флагов (29798)
  • Центрирование ячеек; прямое применение класса overview к элементам td (29813)
  • Добавление заголовка и корректировка изображения dnd (29812)
  • Увеличение контрастности заголовков разделов в админ-панели (29790)
  • Перемещение кнопки CTA для флагов из подзаголовка в заголовок (29781)
  • Обновление метки кнопки CTA на «Добавить эмодзи» для ясности (29774)
  • Исправление позиции ответа в Android Firefox Mobile (29751)
  • Предотвращение уменьшения значка непрочитанных сообщений для длинных названий каналов ЛС (29756)
  • Переработка страницы постоянных ссылок в админ-панели (29634)
  • Снижение порога отображения карты тем внизу, с защитными механизмами (29665)
  • Разделение пользовательской опции hide_profile_and_presence (29632)
  • Исправление цвета фона заголовка модального окна в webview (29717)
  • Исправление ссылки на демонстрацию Highlight JS (29701)
  • Изменение цвета кнопки авторизации на основной (29666)
  • Обновление сортировки каналов чата с включением непрочитанных тем (29617)
  • Снижение min_post_count для отображения карты тем внизу (29649)
  • Удаление иконок, указывающих время, в статусе пользователя, закладках, таймере темы (29635)
  • Не скрывать редактор тем в мобильном чате (29633)
  • Применение классов таблиц админ-панели для единообразного мобильной стилизации на странице API-ключей (29630)
  • Новые экспериментальные функции должны быть четко обозначены (29622)
  • Замена сломанного SVG-изображения ссылки на новое имя Font Awesome 6 (29623)
  • Улучшение работы эмодзи в таблице страницы администратора на мобильных устройствах (29619)
  • Обновление create_post_for_category_and_tag_changes с указанием необходимости включения шепота для работы (29618)
  • Исправление видимости выпадающих списков модального окна выдачи значков (29613)
  • Добавление роли заголовка в диалог закрытия редактора (29590)
  • Добавление отсутствующего атрибута role (29591)
  • Кнопки блоков кода теперь «плоские» (29603)
  • Удаление лишнего отступа у небольших действий в ЛС (29571)
  • Разрешение анонимным пользователям скачивать календарь (29551)
  • Выравнивание иконки ЛС при редактировании заголовка, разрешение сжатия до размера (29570)
  • Логирование при уничтожении автоматизации (29565)
  • Использование правильного регистра для кнопки «Добавить флаг» (29505)
  • Дополнительные улучшения форм входа/регистрации (29417)
  • Исправление кнопки «Нет» в очереди проверки на мобильных устройствах (29485)
  • Перемещение BackButton за пределы admin-config-area для предотвращения непреднамеренного переноса (29457)
  • Исправление выравнивания эмодзи в статусе пользователей участников чата (29466)
  • Удаление кнопки меню администратора из развернутой мобильной временной шкалы (29464)
  • Снижение z-index ссылки «Копировать» (29458)
  • Изменения внешнего вида и ощущений (29245)
  • Добавление карточки области конфигурации описания (29418)
  • Выделение пулов с ранжированным выбором отличительными маркерами в превью (29439)
  • Ограничение фокусного кольца карточки пользователя только для настольных компьютеров (29435)
  • Обновление текста страницы конфигурации /about (29387)
  • Визуальные корректировки форм входа/регистрации (28680)
  • Единообразная стилизация таблиц админ-панели на мобильных устройствах (29360)
  • Упрощение и сокращение нового потока скриптов для автоматизаций (29178)
  • Добавление ссылки на /about на странице конфигурации about (29345)
  • Перемещение пользовательской подсказки «наблюдение за темой» на другую кнопку (29323)
  • Исправление сноски, вызывающей горизонтальную прокрутку на узких экранах (29328)
  • Резервный max-height для стиля модального окна (29321)
  • Добавление ручки и min-height в модальное окно DMenu (29309)
  • Улучшение макета таблиц админ-панели на мобильных устройствах (29320)
  • Упрощение модального окна приглашения (28974)
  • Стили по умолчанию для кнопок списка DMenu (29250)
  • Обеспечение минимального размера шрифта ios 16px с помощью функции max() (29270)
  • Исправление стилей боковой панели на планшетах (29248)
  • Множество исправлений рендеринга карточек тем (29225)
  • Единообразный формат даты сообщений в чате (29232)
  • Добавление опции использования полных страниц для входа и регистрации (29034)
  • Предотвращение сжатия индикатора непрочитанных сообщений в flexbox (29207)
  • Увеличение лимита удаления сообщений в чате (29202)
  • Изменение кнопки потока в навигации чата на использование btn-transparent (29186)
  • Проблемы с flex в индексе чата (29157)
  • Исправление отсутствующей многоточия при переполнении текста на страницах индекса чата (29150)
  • Изменение AdminPageSubheader на H2 (29149)
  • Установка единой ширины для основного контента в области конфигурации UI администратора (29147)
  • Исправление переполнения на страницах индекса потоков (мобильные устройства) (29126)
  • Новый стиль боковой панели (29119)
  • Автоматическое свертывание кнопок заголовка страницы администратора на мобильных устройствах (29040)
  • Добавление нижнего отступа к списку индекса чата (29096)

Изменения безопасности

  • При включении разрешать только вход через Discourse Connect
  • Очистка заголовков для предотвращения доступа к файлам через nginx
  • Модераторы не могут видеть электронные почты пользователей.
  • Сохраненный XSS в подписи изображения

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

  • Кэширование запросов public extra-locales в nginx (30340)
  • Не выполнять команду git каждый раз при регистрации строки лога (30177)
  • Выполнять diff HTML / Markdown только при необходимости (30014)
  • Оптимизация запроса для поиска пользователей с непрочитанными сообщениями в чате (29964)
  • Патч исправления утечки памяти в tracked-built-ins (29944)
  • Удаление динамических вызовов <template> (29942)
  • Оптимизация очистки членства пользователей в чате при удалении одного пользователя (29833)
  • Автоматическое присоединение и выход из каналов чата (29193)
  • Замена медленных селекторов :has на классы body (29581)
  • Обновление maybeContinueList для предотвращения замены всего поста (29416)
  • Более быстрый расчет места на диске на экземплярах с интенсивной загрузкой (28307)
  • Оптимизация задачи themes:update (29290)

Доступность

  • Отображение изменения состояния при фокусе на якорях постов (30334)
  • Удаление избыточного альтернативного текста из GitHub oneboxes (30083)
  • Настройка навигации с клавиатуры для загрузчика изображений uppy (29807)
  • Преобразование заголовков сортируемого списка тем в правильные кнопки (29808)
  • Разрешение закрытия модального окна отброса черновиков с клавиатуры (29802)
  • Обновление кликабельных подсказок выпадающего списка поиска до кнопок (29762)
  • Ссылки в списке тем не должны быть заголовками (#27700)" (29520)
  • Исправление и улучшение доступности карточки пользователя (29399)
  • Добавление разметки для скринридеров для палитр цветов категорий (29351)
  • Подписи кнопок настроек сайта (29348)
  • Добавление aria-labels к кнопкам футера боковой панели (29347)
7 лайков