← Timeline
Avatar
Shmuel Leib Melamud
Moera node и client 0.15.0-beta1

Новые фичи

Прямая отдача картинок. Для ускорения выдачи картинок клиенту появилась возможность сконфигурировать сервер так, чтобы веб-сервер отдавал картинки прямо из локальной файловой системы, без обращения к ноде. (В случае, если вы используете отдельный веб-сервер в качестве reverse proxy.) Приватные картинки при этом получают случайный идентификатор, который периодически меняется, чтобы избежать неавторизованного доступа к ним. Это также позволило исключить аутентификацию при непосредственном обращении к картинкам и избавиться от связанных с этим ошибок: когда картинки переставали загружаться, например, при переключении с Wi-Fi на мобильную связь.

Сортировка уведомлений по важности. Теперь более важные уведомления (комментарии, упоминания) будут показываться в списке выше, чем менее важные (лайки). Это касается только уведомлений, которые ещё не просмотрены. Как только уведомление просмотрено, оно больше перемещаться не будет. Это поведение можно выключить в настройках. (спасибо Дракониха за идею и Orbb_1974 за замечания)

Замораживание неактивных нод. Ноды, на которые их владелец не заходил ни разу за последний год, теперь замораживаются. Это означает, что уведомления на них отправляются другими нодами в последнюю очередь и не обрабатываются самой нодой, а только записываются в базу данных. Если нода остаётся неактивной, старые записи о уведомлениях стираются без обработки. Таким образом, нода перестаёт формировать ленту новостей и освобождает другие ноды от лишней работы. При этом свой контент замороженная нода продолжает выдавать как обычно. В момент, когда администратор заходит на замороженную ноду, она размораживается, все записанные уведомления обрабатываются и лента новостей формируется в ускоренном режиме.

FCM relay. Уведомления для мобильных клиентов теперь могут отправляться через релей, который является посредником между сетью Moera и централизованными системами доставки сообщений. Первый такой релей сделан для Firebase Cloud Messaging (FCM), который используется в Android. Подробнее читайте в описании релея.

Запросы на удаление аккаунта. Добавлен механизм отправки провайдеру просьбы об удалении аккаунта (то есть ноды). Наличие этой возможности является требованием Google Play и законодательства некоторых стран.

Другие изменения

  • Отладочный лог теперь содержит больше информации, что позволяет отследить процесс и скорость выполнения каждого отдельного запроса. Добавлена также статистика по скорости выполнения запросов за всё время работы сервера.
  • Оптимизированы запросы к базе данных, многие запросы стали выполняться быстрее.
  • Добавлено кэширование информации о картинках, прикреплённых к посту или комментарию.
  • Часть кода проекта Novacrypto перенесена в moera-node в связи со смертью репозитория этого проекта.
  • Исправлены ошибки в генерации sitemap и ускорена отдача sitemap клиенту, что улучшило индексацию поисковиками.
  • Исключены из индексирования поисковиками дублирующиеся страницы (имеющие несколько адресов) и ленты. Оставлены только посты, комментарии и общая информация о блоге.
  • Реализован универсальный механизм выполнения асинхронных задач с сохранением состояния, восстановлением после сбоев и перезагрузки сервера, обработкой ошибок и разными вариантами реагирования на ошибки. Все асинхронные задачи теперь используют этот механизм.
  • При группировке нескольких уведомлений о комментариях в одно, ссылка теперь ведёт на первый из этих комментариев, а не на последний.
  • Уведомления о комментариях больше не группируются с уже прочитанными.
  • Не просмотренные уведомления о реакциях и комментариях теперь группируются, даже если между ними прошло много времени.
  • Лента новостей теперь хранится в памяти клиента всё время, что позволяет быстро в неё вернуться.
  • Реализован универсальный механизм управления всплывающими диалогами и выпадающими меню, что позволяет закрывать их по одному в порядке открытия - по клику за пределами диалога, кнопке Esc и кнопке "Назад" на мобильном устройстве.
  • Добавлен service worker для кэширования кода клиента, часто используемых картинок и информации от сервера имён. Клиент теперь стартует быстро даже при плохой связи.
  • В ленте добавлена кнопка, позволяющая быстро пропустить все прикреплённые посты и перейти к первому не прикреплённому. (спасибо Tigra за идею)
  • Исправлена ошибка, не позволявшая скрывать под спойлером несколько абзацев текста.
  • При вставке текста, скопированного из Facebook, хэштеги теперь превращаются в обычный текст.
  • При вставке текста, скопированного из Facebook, теперь корректно обрабатываются эмодзи, состоящие из нескольких символов.
  • В диалог логина добавлена кнопка регистрации.
  • Исправлена ошибка с показом чужих аватарок в комментариях в Web UI.
  • Исправлена ошибка с исчезновением курсора при выборе имени из списка.
  • Везде в API слово complain заменено на complaint.
😍👍4
To react or comment  View in Web Client
Comments (2)
Avatar

а что была за ошибка со спойлером?

Avatar

Он не считался блочным элементом (block-level element) при валидации тегов.

👍1
To react or comment  View in Web Client