Как узнать версию движка форума Discourse из пользовательской среды (например, из веб-браузера)

Привет!

Я прочитал пост Writing an effective bug report.
Мне показалось странным, что при сообщении об ошибках не указывают версию движка форума, работающего на сайте.

На этом сайте я нашёл возможный способ это сделать: открыть DevTools браузера, перейти на вкладку Console и получить данные из:

globalThis.Discourse.application.APP.version
//'2.8.0.beta8 510219a0daef50056420762f446aac4c88c90ba1'

Однако, когда я открыл другие сайты:
https://forum.manjaro.org/
https://forum.garudalinux.org/
https://discourse.ardour.org/
https://discourse.omnigroup.com/
с движком форума Discourse, мне не удалось найти там версию форума:

globalThis.Discourse.application
// undefined

Вопросы следующие:

  1. Почему версия движка форума не требуется при сообщении об ошибках? Будто неважно, какая именно версия используется — всё обрабатывается одинаково, что, очевидно, неверно.
  2. Почему на ресурсе https://meta.discourse.org версия доступна, а на (всех?) остальных — нет?
  3. Как узнать версию приложения на сайте форума Discourse?
  4. Всегда ли фронтенд- и бэкенд-части движка форума Discourse совпадают (строго связаны друг с другом)?

Спасибо!

В теге head документа есть метка генератора с текущей версией.

Вы можете легко проверить это с помощью:

curl https://meta.discourse.org -s 2>&1 | grep generator

Или, открыв инструменты разработчика в браузере (нажав F12), найти этот же тег.

Проще попросить ссылки, а затем мы сами проверим версию, посмотрев HTML-код по ссылке. Здесь много нетехнических пользователей.

Да.

Отлично.
Или через запрос DOM с помощью JS из консоли страницы:

document.head.querySelector('meta[name=generator]').content

Почти на все ответили, но остаётся вопрос:

Возможно, вы знаете и это?

У всех остальных есть тег генератора. Это официальный и единственный поддерживаемый способ получения версии.

Однако разница, которую вы видите в объекте Discourse.application.APP.version, обусловлена тем, что новые установки по умолчанию будут использовать сборки Ember CLI в Production. Meta уже работает в этом режиме, но для более старых сайтов это будет внедрено только через несколько недель.