Расширения Markdown для Discourse не работают после последнего обновления Discourse

  • Эта проблема возникла сразу после последнего обновления до версии v3.3.0.beta1-dev — ac53e5a962 — Ember v5.5.0.
  • Ссылка на правило расширения markdown моего пользовательского плагина: Files · master · Text Blaze / Discourse Snippets · GitLab (не менялось почти год).
  • Старые посты с этим расширением по-прежнему отображаются корректно. Однако выполнение «Пересборки HTML» для любого старого поста приводит к сбою.
  • Ссылка на пример поста с проблемой: ссылка
  • Я полагаю, что проблема не связана с плагином, так как он не менялся, и расширение работает корректно при черновике поста.
  • Есть ли что-то конкретное в этом последнем обновлении Discourse, что может вызывать эту проблему?

Описание: У меня есть пользовательский плагин, использующий расширения markdown (как описано здесь). Плагин работает при создании поста/темы — показывается HTML-предпросмотр. Но после публикации поста/темы плагин не оказывает никакого эффекта. Исходное содержимое поста сохраняется в неизменном виде.

Скриншот: работает при черновике

Скриншот: исходный код после публикации

В DevTools или в эндпоинте /logs форума нет (релевантных) ошибок.

Привет @merefield, спасибо за ваш ответ. Извините за запутанную формулировку в моей первоначальной теме. Проблема связана с моим пользовательским плагином, который использует расширения Markdown Discourse. Я уже отредактировал свой первоначальный пост, чтобы это отразить.

Ах! Вероятно, я тоже неправильно понял, спасибо за уточнение!

Этот плагин может иметь несколько проблем.

Вот те, которые появляются в консоли:

Одна из них касается удаления в 2.7.0!!

Вы являетесь разработчиком этого плагина? Если да, то, похоже, вам предстоит немного поработать :slight_smile:

Да, я являюсь сопровождающим проекта :slightly_smiling_face: Однако я не считаю, что эти два предупреждения связаны с текущей проблемой. Метод whiteList по-прежнему доступен в последней версии Discourse. А другое предупреждение об устаревании касается элемента панели инструментов в графическом интерфейсе, а не самого расширения Markdown. По крайней мере, так я думаю.

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

Но оно всё ещё работает?

Похоже, что отсутствует любой CSS для его стилизации?

image

Спасибо за отчет @GaurangBlaze. Похоже, недавний рефакторинг нарушил поддержку файлов .js.es6 при серверной обработке Markdown. Мы исправим это в ближайшие несколько дней.

Пока что удаление расширения .es6 из ваших JS-файлов должно решить проблему. В любом случае это хорошая практика — в этом больше нет необходимости, а использование стандартного .js обеспечивает гораздо лучшую поддержку в IDE/редакторах.

Да, это должно было произойти совсем недавно (в последние 4 дня!). Только что обновил свою среду разработки и наконец смог воспроизвести проблему… приношу извинения!

Да, я думаю, что это, скорее всего, DEV: Remove sprockets from plugin 'extra js' pipeline (#25502) · discourse/discourse@1757a68 · GitHub (4 дня назад)

Спасибо @david и @merefield за помощь! Действительно, это была моя проблема, и теперь всё работает :slightly_smiling_face:

Основное поведение исправлено в FIX: Restore support for `.js.es6` files in PrettyText (#25588) · discourse/discourse@dea753a · GitHub

(но всё же я рекомендую оставлять расширение .js. В конечном итоге мы устраним использование .es6)

Спасибо. Я не нашел упоминания о прекращении поддержки .es6 на странице /logs нашего сообщества. Планируете ли вы добавить туда это уведомление (а также другие аналогичные уведомления о прекращении поддержки)?

Мы ещё не объявили это устаревшим, так что эта проблема была ошибкой. Но да, если/когда мы объявим это устаревшим, сообщение появится в /logs :+1: