Релиз v2025.11.0: улучшения AI-перевода, поиск в чате, новая очередь рецензирования и доработки для постов с изображениями

И даже больше!

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

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

discourse-akismet

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

  • Обновление интерфейса ReviewableAkismetPost (186)

discourse-anon-usernames

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

  • Валидация применялась к группам (чего не должно происходить) (4)

discourse-antivirus

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

  • Добавлена поддержка обновлённого интерфейса проверки (93)

discourse-fontawesome-pro

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

  • Удаление discourse-bell-one из дополнительных замен (97)
  • Выбор обычных иконок не приводил к изменениям (96)

discourse-page-visits

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

  • Загрузка csrf при загрузке страницы при необходимости, чтобы гарантировать его мгновенную доступность для sendBeacon (30)
  • Исправления для анонимных пользователей и Safari (29)
  • Улучшение отслеживания посещений страниц (28)

discourse-rewind

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

  • Добавлено семь новых метрик в отчёты Discourse Rewind (26)

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

  • Различные ошибки из rewind 2024 года (29)
  • Переименование «Избранные теги/категории» в «Самые просматриваемые теги/категории» и исправления isRewindActive (27)

Изменения пользовательского интерфейса

  • Возврат к рубашкам карточек с эмодзи (30)
  • Рестайлинг для 2025 года (28)

discourse-saml

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

  • Корректная поддержка пустых значений в отображаемых полях (137)

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

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

  • Логирование ошибок при включении discourse id (36110)
  • Поддержка Opus 4.5 (36216)
  • Автоматическое добавление пункта меню «Добавить перевод» при включённой локализации контента (36210)
  • Новый преобразователь composer-force-editor-mode (36201)
  • Возможность цитирования изображения из лайтбокса (36156)
  • Возможность для авторов постов локализовать свои собственные посты (36178)
  • Использование выпадающего списка для переключателя предстоящих изменений (36091)
  • Добавлен фильтр «принято» в очередь проверки, сделано назначение более заметным (36090)
  • Улучшена производительность отчёта об использовании LLM (36177)
  • Добавлена кнопка администратора темы для планирования переводов непереведённых постов (36172)
  • Поддержка сетки изображений и автоматического формирования сетки в расширенном редакторе (35951)
  • Предоставление локализованного контента на языке по умолчанию сайта, если язык пользователя не поддерживается (36160)
  • Добавлена поддержка отслеживания токенов записи, кэширования Anthropic и Gemini Pro 3 (36113)
  • Добавлен поиск по IP в интерфейс проверки (36130)
  • Обновление предконфигурированных моделей (36095)
  • Добавлена автоматизация удаления загрузок из удалённых постов (36020)
  • Добавлены инструменты генерации изображений (35946)
  • Использование evals для сравнения промптов LLM и Персон (36027)
  • Улучшение инструментов для Github (36075)
  • Поддержка сводки размышлений в API ответов (36013)
  • Поддержка номеров строк для помощника Github (36058)
  • Покрытие всех функций LLM тестами (evals) (35693)
  • Разделение писем из чата на обычные письма (36018)
  • Добавлена настройка calendar_upcoming_events_default_view (36014)
  • Поддержка аутентификации на основе ролей AWS для AWS Bedrock (35872)
  • Добавлена поддержка загрузок в переведённых постах (35871)
  • Настройка сайта для предоставления локализованного контента поисковым роботам сделана публичной (35965)
  • Отображение деталей отскока для писем с отскоком, имеющих ключи отскока (35957)
  • Снижение уровня доступа помощника ИИ по умолчанию до уровня доверия 1 (35943)
  • Отображение локализованных аннотаций при поиске (35873)
  • Добавлен плагин after-chat-channel-username в групповой чат (35920)
  • Снижение уровня доступа к сводкам по умолчанию до уровня доверия 1 (35874)
  • Добавлен множитель для максимального количества токенов, обычно используемый для различных настроек LLM, таких как рассуждения (35859)
  • Добавлены индикаторы присутствия для перевода постов (35857)
  • Включение поиска в чате по умолчанию (35799)
  • Приветственный баннер не должен говорить «добро пожаловать обратно» новым пользователям (35777)
  • Добавлена кнопка для переключения информации об изображении в лайтбоксе (35762)
  • Отключение clean_up_inactive_users_after_days по умолчанию (35702)
  • Обновление интерфейса ReviewablePostVotingComment (35675)
  • Предстоящие изменения, часть 1 (34617)
  • Преобразование watched_precedence_over_muted в настройку сайта по умолчанию (35671)
  • Поддержка группового запроса в фильтре created-by (/filter) (35692)
  • Отключение реакции outlooks через электронную почту (35674)
  • Добавлена новая, объединённая настройка сайта image_quality (35467)
  • Обновление интерфейса ReviewableUser для обновления очереди проверки (35515)
  • Добавлены метрики Prometheus для вызовов API LLM (35636)

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

  • Использование overflow hidden body на iOS (36248)
  • Предотвращение краша приложения из-за scroll-lock (36246)
  • Анонимизация большего количества данных при анонимизации пользователя (36242)
  • Отображение выпадающего списка категорий для групп пользователей в lazy_load_categories_groups (36218)
  • Сохранение расширения при цитировании изображений (36240)
  • Размышления могли просачиваться в темы при автоматизации (36239)
  • redis.setex() ожидает параметр в секундах, а не DateTime (36238)
  • Тихий сбой, когда наблюдаемые слова содержат некорректное регулярное выражение (36132)
  • Отключение кода smtp_should_reject
  • Удаление cookie destination_url, когда он используется для установки параметра origin при перенаправлении на социальную аутентификацию (36194)
  • Отсутствие перевода при использовании placeholder optional_* в теле сообщения (36023)
  • Кнопка «просмотреть последние темы» в новых подвкладках «новые темы» / «ответы» (36136)
  • Удаление блокировки прокрутки body для композитора (36219)
  • Счётчик реакций при наличии устаревших закладок (36138)
  • I18n ключ для планирования перевода (36215)
  • Данные поста на слайде лайтбокса в production (36214)
  • Список удалённых постов должен отображаться корректно (36103)
  • Не выполнять join по имени LLM, это вызывает дублирующиеся записи в отчёте (36206)
  • Проблема с отступами участников личных сообщений (36170)
  • Улучшение скриптов миграции баннера поиска (36192)
  • Обновление ссылки на настройки сводки чата в письме (36189)
  • Вид /my/notifications/reactions-received (36163)
  • Предотвращение утечки скрытых тегов в сводках ИИ (36167)
  • Использование PostRevisor с контекстом темы при редактировании постов из удалённых тем (36168)
  • Предотвращение прокрутки при фокусе при автофокусе (36164)
  • Настройка Type object не перенаправляла при сохранении (36150)
  • Автодополнение пользователей должно работать, даже если не предоставлен callback onRender (36161)
  • IOS26 и композиторы
  • Также обновлять заголовок html-страницы при отображении локализованных заголовков (36139)
  • Автодополнение эмодзи не должно срабатывать, если в курсоре добавлен пробел (36131)
  • Более специфичный класс для выбранной в пакетном режиме темы (36141)
  • Уведомления могут не иметь тем (36143)
  • Разрешить пользователю выбрать, хочет ли он редактировать локализованный или оригинальный заголовок (36099)
  • Улучшение миграции настроек из баннера поиска в приветственный баннер (36135)
  • Предотвращение всплытия событий в photoswipe при нажатии Escape (36134)
  • Исправление неожиданного масштабирования в лайтбоксе при отсутствии высоты/ширины (35616)
  • Стоимость кредита за функцию не всегда работала (36111)
  • Ошибка создания темы при включённой модерации категорий (36094)
  • Проблемы миграции с кредитами ИИ (36089)
  • Улучшения страницы категории (36062)
  • Ограничение назначенных групповых личных сообщений видимостью участников (36073)
  • Предотвращение ложного предупреждения о несохранённых изменениях (36059)
  • Сохранение структуры цитаты при вставке цитат, начинающихся со списков (36038)
  • Отсутствие имени пользователя в цитате при импорте
  • Отсутствие/некорректная причина флага в письмах account_deleted (34955)
  • Фильтр подкатегорий должен быть всегда виден на странице просмотра категории (36050)
  • Учёт show_original для результатов поиска (36042)
  • Укрепление трекера потоковой передачи JSON для массивов объектов (36047)
  • Предотвращение перезаписи препреда topic_view.posts discourse_reactions (36041)
  • Автодополнение в пикере эмодзи в чате заменяло весь черновик (36017)
  • Ошибка оптимизации изображений при перекодировании в JPEG (36039)
  • Гарантия установки retry_count при проверке повторной попытки выполнения задачи (36034)
  • Использование проверки blank? для валидации role_arn (36009)
  • Валидация при переключении флажка (35996)
  • Смещение при наведении для прозрачных кнопок (36011)
  • Исправление высоты чата (36019)
  • Выравнивание z-index для модальных окон помощника ИИ (35966)
  • Не очищать напоминание при удалении закладок (35987)
  • Обработка граничного случая в UserPostsStream#findItems при загрузке (35952)
  • Не добавлять причину редактирования при проверке списка (35985)
  • Использование oEmbed для oneboxing YouTube (35959)
  • Удаление лишнего «a» в переводе (35977)
  • Не логировать временные ошибки доставки электронной почты (35975)
  • Включение причины молчания для автоматически замолчанных пользователей (35898)
  • Видимость группы назначенного фильтра (35726)
  • Разрешение общения в скрытом режиме, если у исходного пользователя есть разрешение (35961)
  • Не менять язык для вошедшего пользователя, если присутствует tl (35942)
  • Режим выдвижной панели чата не сохранялся после перезагрузки requiresRefresh
  • Импорт CSV не учитывал регистр для групп тегов (35837)
  • Нестабильные тесты прокрутки постов (35938)
  • Редактор в плагине автоматизации не отображался в расширенном режиме (35937)
  • «Добавить в календарь» не предоставлял корректный ics (35886)
  • Заменяемые параметры запроса для закладок (35935)
  • Исправление запланированных целевых проверок проблем (35696)
  • Поиск закладок с : приводил к ошибке (35850)
  • Ошибка с доступом к группе styleguide (35912)
  • Гарантия корректного отображения счётчиков значков пользователя (35895)
  • Загрузка дополнительных реакций на странице уведомлений пользователя (35913)
  • Предотвращение автоматического отбрасования в редакторе переводов (35887)
  • Очистка выпадающего списка поиска и исправление ошибки повторного открытия (35876)
  • Неправильный пользователь на странице журнала действий (35842)
  • Поддержка эвристики позиционирования callout для iOS до версии 26 (35907)
  • Сохранение времени часового пояса между переходами летнего/зимнего времени (35833)
  • Гарантия полной высоты календаря (35906)
  • Включение кредитов в сериализатор только при включённой системе кредитов (35903)
  • Перемещение post_migration в миграцию, чтобы гарантировать создание monthly_usage (35902)
  • Валидация локали пользователя в методе effective_locale (35870)
  • Не показывать кэшированный пост после переключения «Показать оригинальный пост» и прокрутки за 21-й пост (35868)
  • Элемент управления закладками должен отслеживать изменение модели темы (35867)
  • Также убедиться, что квота применяется к обнаружению (35838)
  • Эмодзи должны вставляться сразу после знаков препинания корректно (35830)
  • Установка приглашённых пользователей личных сообщений в режим наблюдения, чтобы они получали уведомления (35722)
  • Сброс выбора клавиатурой при входе в новые темы (35851)
  • Временное хакерское решение для модальных окон iOS (35719)
  • Улучшение промпта и проверка соответствия возвращаемого значения стандарту (35763)
  • Не менять имя автоматической группы, если оно уже занято пользователем (35826)
  • Иконка хэштега для style_type=icon не отображалась в расширенном редакторе (35786)
  • Предотвращение кэширования nil значения в client_settings_json при ошибках (35781)
  • Фактическое отключение SMTP starttls, если пользователь пытается его отключить
  • Удаление проверки валидации при использовании SMTP TLS-on-connect
  • Восстановление редактирования постов в новом интерфейсе проверки (35784)
  • Возможный нулевой столбец для миграции watched precedence over muted (35815)
  • Стили редактора переводов больше не применялись (35804)
  • Изображения в чате с лайтбоксом не имели мета-селектора (35792)
  • Обновление заголовка закладки сообщения в чате (35788)
  • Текст после точки должен быть с заглавной буквы (35757)
  • Сообщение личного сообщения (35760)
  • Перезагрузка настроек сайта перед заполнением контента при восстановлении
  • Удаление неподдерживаемого SQL из дампа БД при восстановлении
  • Черновики с глубоко вложенным HTML (35678)
  • Предотвращение удаления пользовательских цветовых палитр при установке тем (35754)
  • Лайки не были видны при отклонении личных сообщений (35753)
  • Не требовать перезагрузки для работы первого значка флага с пользовательским флагом (35733)
  • Скрытие родительского значка категории с предками (35734)
  • Интерфейс показывал неверное сообщение об ошибке при удалении модератора (35496)
  • Логирование исполнителя действия отключения темы в rake (35732)
  • Продолжение перевода при сбое постобработки (35725)
  • Видимость группы при фильтрации по created-by (35712)
  • Исключение постов, превышающих максимальную длину, из прогресса перевода (35723)
  • Отображение миниатюры для видео YouTube с классическим onebox (35715)
  • Добавление выхода, если настройка сайта не найдена (35709)
  • Проблема линтинга (35713)
  • Список пользователей с политикой «не принято» не работал (35502)
  • Не применять обратные вызовы от отключённых плагинов (35630)
  • Улучшение скрипта миграции из расширенного поиска в обновления приветственного баннера (35699)
  • Уменьшение redemption_count при уничтожении приглашённого пользователя (35695)
  • Установка опций напоминания при рендеринге меню (35694)
  • Ошибка JS в styleguide (35682)
  • Бесконечная прокрутка на страницах уведомлений пользователя; модернизация контроллера (35677)
  • Не искать hidden_settings в цикле (35649)
  • Нажатие на ссылки в поиске discovery должно закрывать быстрый поиск (35660)
  • Остановка усечения FoldContent от разделения эмодзи с несколькими кодовыми точками (35658)
  • Избегание обработки вставки ProseMirror при отсутствии авторизации (35640)
  • (только Safari) избегание дублирования изображений при перетаскивании между окнами в расширенный редактор (35643)
  • Ссылка предварительного просмотра сетки тем администратора не содержала путь к подпапке (35645)
  • Загрузки без расширения вызывали ошибку в процессоре сообщений (35656)
  • Отображение предупреждения о видимости значков при создании скрытых групп с иконками или загруженными изображениями (35517)

Изменения пользовательского интерфейса

  • Предотвращение переноса счётчика лайтбокса (36245)
  • Мастер в один шаг (36082)
  • Улучшение макета таблицы использования ИИ на пользователя (36225)
  • Переключение списков пользователей на /about на автозаполнение (36228)
  • Стилизация футера политики относительно ширины контейнера политики (36112)
  • Выравнивание имени чата с эмодзи (36217)
  • Деление макета таблицы использования ИИ более гибким (36207)
  • Удаление неиспользуемого CSS, вызывающего проблему выравнивания (36205)
  • Согласованное положение кнопки регистрации для мобильных и настольных устройств (36088)
  • Улучшение читаемости иконки закладки на мобильных устройствах (36096)
  • Исправление переполнения кнопки отчётов администратора (36173)
  • Настройка max-width для текста в баннере (36152)
  • Отключение автофокуса на OTP на iOS (36083)
  • Добавление быстрой ссылки на редактирование собственного профиля из карточки пользователя (36048)
  • Отображение кнопки поиска на вкладках ЛС и Нити (36133)
  • Улучшение иконок загрузок в чате (36128)
  • Улучшение анимации модального окна сводки ИИ (36108)
  • Добавление области конфигурации администратора для приветственного баннера (36022)
  • Разрешение клика по элементу темы для пакетного выбора (36102)
  • Не экранировать выдержки ЛС в обновлении очереди проверки, украшать HTML (36084)
  • Использование ссылок Meta для ресурсов помощи по проверке (36079)
  • Отображение кнопки поиска на списке каналов в выдвижной панели (36080)
  • Отключение отрисовки onebox в проверяемых постах в очереди (36036)
  • Закрытие поиска в чате по Escape (36056)
  • Улучшение фильтрации шаблонов с учётом количества использований и сохранением тегов (35881)
  • Различные улучшения d-otp (35993)
  • Добавление кнопки фильтра в карточку пользователя деактивированного аккаунта (36024)
  • Перенаправление на главную страницу после завершения мастера (36002)
  • Скрытие кнопки темы на странице управления аккаунтом (35721)
  • Исправление предыдущего исправления (36001)
  • Добавление CSS-переменных для границ для стилей кнопок (35875)
  • Добавление исключения для размера индикатора заголовка (36000)
  • Улучшение встроенного композитора для проверки, очистка согласованности кнопок (35997)
  • Отображение индикатора чата на мобильных устройствах (35973)
  • Предотвращение перезагрузки страницы при поиске в группах администратора (35960)
  • Переключение вкладки обновления проверяемого по умолчанию на временную шкалу, корректировка отступов (35945)
  • Исправление высоты страницы индекса чата на мобильных устройствах после удаления sidebar-wrapper (35967)
  • Миграция основного меню действий поста «лайки» для отображения лайков с DMenu (34265)
  • Изменение текста для отчёта о просмотрах страниц (35958)
  • Горячая клавиша композитора открывает создание нового сообщения из вида /messages (35941)
  • Стилизация модели категории (35889)
  • Улучшения дизайна и функциональности обновления проверяемого (35841)
  • Разрешение фильтрации постов по пользователю в карточке пользователя со скрытым профилем (35908)
  • Исправление фокуса ввода для 2FA (35922)
  • Исправление всплывающих подсказок, содержащих несколько элементов (35915)
  • Добавление отсутствующего класса btn-default к различным кнопкам в области администратора (35916)
  • Лучший контраст SVG-иконок для элементов управления лайтбоксом (35862)
  • Добавление поддержки RTL для нового лайтбокса (35866)
  • Изменение текста для переключения описания неиндексированных (35893)
  • Редактирование текста приветственного баннера для цвета текста (35891)
  • Корректировки горизонтального баннера (35894)
  • Скрытие представлений списка тем и постеров менее агрессивно на маленьких экранах (35852)
  • Отображение кнопки информации только когда в лайтбоксе есть детали изображения (35863)
  • Обновление стиля деталей изображения в лайтбоксе (35831)
  • Улучшение логики для действий композитора новой темы и нового ЛС (35834)
  • Уточнение, что поле автора встраиваемого хоста переопределяет мета-теги (35806)
  • Изображение лайтбокса за заголовком при закрытии (35790)
  • Реализация обновлённого проверяемого для сообщений чата (35812)
  • Улучшения редактора переводов (35805)
  • Исправление разрыва и очистка предупреждения has-topics (35779)
  • Улучшение стилей для утверждения в обновлении проверяемого (35802)
  • Улучшения анимации модальных окон (35740)
  • Плавный переход для кнопки расширения лайтбокса (35765)
  • Незначительные корректировки макета нового проверяемого (35776)
  • Добавление опции действия создания ЛС в режиме новой темы композитора (35764)
  • Обновление стиля нового проверяемого, добавление пермалинка, навигации, ссылок на посты (35768)
  • Глобальная стилизация предупреждения has-topics + консолидация CSS (35642)
  • Улучшение стилей и маркировки элементов нового проверяемого (35741)
  • Скрытие гистов ИИ на маршрутах, где нет переключателя (35717)
  • Делание индекса проверяемого полноширинным, делая фильтры горизонтальными (35729)
  • Корректировки стилизации для новой объединённой навигации (35670)
  • Изменение способа применения отступов к list-controls (35661)
  • Отображение 100% для завершения перевода ИИ только когда действительно 100% (35724)
  • Удаление курсора на полосе кредитов ИИ (35714)
  • Корректировки для размещения новых проверяемых в более узком пространстве (35681)
  • Обновление макета карточки темы для режима пакетного выбора (35644)
  • Повторное использование кэша автодополнения хэштегов при применении в расширенном редакторе (35532)

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

  • DirectoryItem.refresh! daily может занимать чрезвычайно много времени (35860)
  • includespreload для topic_vote_count в discourse-topic-voting (35896)
  • Ускорение TopicQuery#filter_by_tags с match_all_tags (35787)

Доступность

  • Добавление aria-label к автоматически генерируемым якорным ссылкам заголовков в постах (36232)
  • Скрытие ссылки аватара из tabindex, когда она aria-hidden (36227)
  • Делание заголовков компонента user-info необязательными (36209)
  • Добавление заголовка к разделу пользовательских ссылок (36198)
  • Делание id ariaDescribedBy значков условными (36204)
  • Улучшение доступности в потоке постов; исправление навигации (35730)
6 лайков