Предварительный просмотр списков тем (TLP)

Привет, иконка превью не отображается, в HTML она тоже не рендерится. Я также попробовал стандартную тему Discourse.

1 лайк

Кажется, вам понадобится фрилансер, чтобы внимательнее разобраться в ситуации.

Других сообщений у меня не было. Очень странно.

Спасибо, для меня это не совсем обязательно. Я просто отключу это, я спросил здесь, потому что думал, что упустил что-то еще.

2 лайка

Прежде чем я перейду дальше, не могли бы вы предоставить консоль из этого представления? Есть ли какие-либо предупреждения или что-то красное?

Для ясности: компонент темы предоставляет интерфейс выбора миниатюр, но он активируется только в том случае, если обнаружен плагин.

1 лайк

Вот все предупреждения в моих логах, сейчас ничего красного нет.

Уведомление о устаревании: `SiteSetting.min_trust_to_flag_posts` устарело. Пожалуйста, используйте `SiteSetting.flag_post_allowed_groups` вместо этого. (удаление в Discourse 3.3) В /var/www/discourse/lib/site_set

10:19

Уведомление о устаревании: `SiteSetting.min_trust_level_to_allow_user_card_background` устарело. Пожалуйста, используйте `SiteSetting.user_card_background_allowed_groups` вместо этого. (удаление в Discourse 3.3) А

10:19

Уведомление о устаревании: `SiteSetting.min_trust_level_to_allow_ignore` устарело. Пожалуйста, используйте `SiteSetting.ignore_allowed_groups` вместо этого. (удаление в Discourse 3.3) В /var/www/discourse/lib/sit

10:19

Уведомление о устаревании: `SiteSetting.min_trust_level_to_allow_ignore` устарело. Пожалуйста, используйте `SiteSetting.ignore_allowed_groups` вместо этого. (удаление в Discourse 3.3) В /var/www/discourse/lib/gua

15:59

Уведомление о устаревании: `SiteSetting.min_trust_to_edit_post` устарело. Пожалуйста, используйте `SiteSetting.edit_post_allowed_groups` вместо этого. (удаление в Discourse 3.3) В /var/www/discourse/lib/guardian/
2 лайка

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

1 лайк

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

Пока мне это не удалось.

1 лайк

Я тоже не могу воспроизвести это на своей стороне. Это странно. Судя по коду, всё должно работать, пока включены компонент TLP и плагин. :thinking:

2 лайка

Аналогично, я получаю два разных предупреждения.

Вот первое:

Сообщение

Уведомление об устаревании: `SiteSetting.min_trust_to_edit_post` устарел. Пожалуйста, используйте `SiteSetting.edit_post_allowed_groups` вместо этого. (удаление в Discourse 3.3)
В /var/www/discourse/app/models/concerns/limited_edit.rb:19:in `trusted_with_edits?`

Трассировка стека

/var/www/discourse/lib/discourse.rb:1035:in `deprecate'
/var/www/discourse/lib/site_settings/deprecated_settings.rb:128:in `block (2 levels) in setup_deprecated_methods'
/var/www/discourse/app/models/concerns/limited_edit.rb:19:in `trusted_with_edits?'
/var/www/discourse/app/models/concerns/limited_edit.rb:7:in `edit_time_limit_expired?'
/var/www/discourse/lib/guardian/post_guardian.rb:177:in `can_edit_post?'
/var/www/discourse/lib/guardian.rb:670:in `public_send'
/var/www/discourse/lib/guardian.rb:670:in `can_do?'
/var/www/discourse/lib/guardian.rb:208:in `can_edit?'
/var/www/discourse/app/serializers/post_serializer.rb:165:in `can_edit'
(eval):34:in `_fast_attributes'

А вот второе:

Сообщение (2 копии)

Уведомление об устаревании: `SiteSetting.min_trust_level_to_allow_ignore` устарел. Пожалуйста, используйте `SiteSetting.ignore_allowed_groups` вместо этого. (удаление в Discourse 3.3)
В /var/www/discourse/lib/guardian.rb:560:in `can_ignore_users?`

Трассировка стека

/var/www/discourse/lib/discourse.rb:1035:in `deprecate'
/var/www/discourse/lib/site_settings/deprecated_settings.rb:128:in `block (2 levels) in setup_deprecated_methods'
/var/www/discourse/lib/guardian.rb:560:in `can_ignore_users?'
/var/www/discourse/lib/guardian.rb:555:in `can_ignore_user?'
/var/www/discourse/app/serializers/user_card_serializer.rb:134:in `can_ignore_user'
(eval):15:in `_fast_attributes'
active_model_serializers-0.8.4/lib/active_model/serializer.rb:456:in `attributes'
active_model_serializers-0.8.4/lib/active_model/serializer.rb:480:in `_serializable_hash'
active_model_serializers-0.8.4/lib/active_model/serializer.rb:359:in `serializable_hash'
active_model_serializers-0.8.4/lib/active_model/serializer.rb:343:in `as_json'

Не могли бы вы подробнее объяснить, как это связано с предпросмотром списков тем?

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

1 лайк

Можете ли вы воспроизвести проблему этого пользователя с TLP?

Наконец-то я выпустил исправление для этого (для сайдкора):

Теперь, когда установлено значение topic_list_enable_thumbnail_recreation_on_post_rebuild, обычные изображения тем не должны исчезать :slight_smile: (изображение никогда не удалялось, исчезало только его оптимизированное представление, которое можно восстановить при повторной сборке).

Эта функция была предназначена для поддержки восстановления миниатюр для вставок YouTube, чтобы устранить поля (letterbox).

(Временным решением было отключить эту настройку — в любом случае она была помечена как «экспериментальная»).

Извините, что пришлось ждать так долго, это было в моём списке задач!

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

@STORMS @Jagster

3 лайка

Ещё одно исправление к сведению: представление доминирующего цвета было некорректным, когда один из элементов RGB-цвета был равен нулю — теперь это исправлено :sweat_smile: :

2 лайка

Да, включайте это только на короткое время, когда оно нужно, пересоберите нужный пост в теме, а затем сразу же выключите. Это довольно хлопотно, и, вероятно, должно быть управление через интерфейс в самом посте темы, но это значительно улучшает вид, когда у видео на YouTube нет чёрных рамок.

3 лайка

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

Однако мы столкнулись с проблемами производительности из-за этого плагина. Когда мы его отключили, нагрузка на процессор снизилась с 100 % (при этом возникали проблемы с загрузкой страницы) до примерно 55 %.

Подскажите, пожалуйста, как можно оставить плагин включённым, избежав при этом серьёзных потерь производительности?

1 лайк

Можете рассказать, как вы настроили компонент? Это может помочь понять контекст.

Заметили ли вы скачок нагрузки на процессор при первой установке этого компонента?

2 лайка

К сожалению, я не помню, каким было использование процессора сразу после установки.

Настройки компонента, которые я изменил:

  • плитки списка тем: список тем (убрал все выделения)
  • миниатюры списка тем: категории — добавил 6 категорий, для которых нужны превью
  • отрывки списка тем: список тем (убрал все выделения)
  • действия списка тем: список тем (убрал все выделения)
  • тип фильтра портфолио списка тем: категория
  • параметр фильтра портфолио списка тем: категория «скрипты»

Кажется, у плагина нет изменённых настроек, кроме того, что мы пока его отключили.

1 лайк

Речь о ЦП вашего сервера? Можете поделиться его характеристиками?

Предполагаю, вы имеете в виду ситуацию с установленным плагином sidecar?

Я проверил сайт с этим плагином, запущенным на Raspberry Pi :sweat_smile: в Chrome, и не смог выявить каких-либо конкретных проблем с производительностью локально на стороне клиента.

У меня есть VPS с 4 ГБ памяти, на котором работают и плагин, и компонент темы. При обновлении страницы нагрузка на одно ядро кратковременно возрастает до 25%, но не более того.

2 лайка

Мы используем второй по величине тарифный план DO Basic Droplet с премиальными процессорами AMD.

Я временно включу предпросмотр списков тем на 24 часа, чтобы проверить, не вызовет ли это снова скачок нагрузки на процессор.

1 лайк