Discourse Retort

Кнопка «реакция» не работает после последнего обновления.

При нажатии на эмодзи-иконку d-icon в консоли ошибок не обнаруживается. С моими ограниченными знаниями о том, как это реализовано, я не могу найти причину сбоя. Надеюсь, кто-то поможет :smiley: … (Я пытался просмотреть репозиторий, но ничего не заметил — учитывая мои ограниченные знания о создании плагинов для Discourse (!))

3 лайка

Та же проблема. На моём сайте нельзя кликнуть.

2 лайка

Я могу подтвердить, что этот баг действительно существует. После нажатия ничего не происходит.

2 лайка

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

2 лайка

Пока добавляю #plugin:broken-plugin. Дайте знать, когда будет исправлено.

2 лайка

Удалось ли кому-нибудь выяснить, в чём может быть проблема? В коде плагина давно ничего не менялось, поэтому я предполагаю, что что-то изменилось в коде Discourse, что и вызывает эту ситуацию (хотя я не видел никаких очевидных изменений, которые могли бы на это повлиять…).

1 лайк

В этом плагине требуется обновить несколько версий Discourse.

Я подготовил PR, который может служить временным решением. Возможно, за такой способ исправления меня отправят в огненные преисподние Тартара, но это может стать временной мерой, @gdpelican.

@Jite, вы, кажется, полны энтузиазма. Хотите немного узнать о разработке для Discourse и о том, как работает этот плагин, чтобы помочь его поддерживать? Я могу помочь вам разобраться во всех тонкостях кодовой базы Discourse.

8 лайков

Я с радостью принял бы ваше предложение, но на данный момент у меня слишком много дел. Я уже создал несколько небольших плагинов, но мой опыт работы с Ruby настолько мал, что я пока не мог глубоко погрузиться во внутренние механизмы, хе-хе.
Однако я останусь здесь, и если у меня появится больше времени, я с удовольствием сообщу вам об этом! :slight_smile:

Я также взгляну на исправление, так как сервер, на котором я использую плагин, действительно его одобряет :smiley:

4 лайка

Кстати, я очень удивляюсь, как я не заметил это слияние в логах — я же читал их вчера, как книгу! Это было плохо с моей стороны ;D

3 лайка

Дайте знать :slight_smile: Я с удовольствием помогу вам быстро освоить Discourse.

5 лайков

:sob:
Я обожаю этот плагин, жаль, что его больше не поддерживают. На самом деле, я думаю, что его следовало бы интегрировать в сам Discourse…

7 лайков

Итак, я попробовал использовать вашу ветку с временным исправлением: если не используется ограниченный набор, открывается пикер эмодзи, и он зависает. Кроме того, нельзя закрыть окно пикера. Это также ломает пикер эмодзи в окне редактирования по умолчанию (он появляется слишком далеко справа на экране и зависает). Пикер с ограниченным набором эмодзи остаётся статичным на странице при прокрутке, поэтому он «застревает» там, где появился, но в остальном он работает. Я пробовал это в последних версиях Chrome и Firefox на macOS.

Я бегло посмотрел ваш код, но ничего очевидного не нашёл. Однако я не знаком с фреймворком Discourse. Моё предположение — проблема связана с изменениями, касающимися onShow, но я не занимаюсь фронтенд-разработкой постоянно. Возможно, я займусь этим глубже, если у меня будет время, и если что-то найду — обязательно сообщу об этом.

1 лайк

Да, у меня была та же проблема. При нажатии кнопки «Реакция» окно открывается, но ничего не загружается, и для меня оно фактически зависает.

3 лайка

Та же проблема, что и у @leighno5: это расширение замораживает страницы, приходится его удалять.

@angus Я видел, что ваше исправление было принято, но, как сообщалось выше, оно не работает. Не могли бы вы, пожалуйста, посмотреть на это?

Всем привет, просто заметка: Джеймс предоставил мне права на запись в репозиторий Retort, поэтому я буду:

  • полностью решать эту проблему совместимости в ближайшие несколько дней
  • добавить файл .discourse_compatibility здесь, чтобы плагин можно было зафиксировать на ветке stable
  • добавить плагин в публичную тестовую инстанцию Павильона: try.thepavilion.io
  • ежемесячно обновлять информацию о совместимости плагина (фиксация на stable и совместимость с tests-passed).

Держитесь!

13 лайков

Хорошо, я обновил плагин для корректной поддержки нового селектора эмодзи в Discourse :tada:

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

https://try.thepavilion.io/t/heres-something-to-react-to/571

Этот сайт автоматически пересобирается каждые 24 часа (что обновляет его до последней версии Discourse). Поэтому, если вы находитесь на ветке tests-passed (ветка по умолчанию), рекомендуется протестировать любые используемые вами пользовательские плагины там перед обновлением.

Я также добавил файл .discourse_compatibility в плагин:

Add .discourse_compatibility · gdpelican/retort@35aaad5 · GitHub.

Это означает, что если вы используете ветку stable Discourse, вы можете продолжать обновляться как обычно, и этот плагин останется зафиксированным на коммите, совместимом с последним стабильным выпуском. Подробнее об этом здесь:

Introducing .discourse-compatibility: pinned plugin/theme versions for older Discourse versions.

В данном случае последний стабильный выпуск Discourse (2.5.1) вышел 2 недели назад, а рефакторинг селектора эмодзи, который сломал Retort — 10 дней назад. Поэтому стабильный коммит для этого плагина — Gobals are being loaded later · gdpelican/retort@92738f0 · GitHub, который я создал ещё в июне (протестирован и работает со стабильной версией 2.5.1).

17 лайков

Спасибо, @angus! У нас на экземпляре Discourse всё работает!!

3 лайка

@sam Можете переместить это обратно в #plugin? Спасибо.

4 лайка

Огромное спасибо за это!

Одна вещь, которую я заметил (кроме того, что всё работает, ура): когда вы нажимаете кнопку ответа, страница сдвигается так, что выбор эмодзи оказывается вверху (последняя версия Chrome, macOS). Затем, если прокрутить страницу, выбор эмодзи перемещается в какие-то странные места. Просто хотел сообщить об этом.

3 лайка