Ошибка миграции при обновлении плагина календаря до последнего коммита

Здравствуйте,

Я использую Discourse 2.8.8 на Cloudron с плагином Discourse Calendar (коммит FIX: Mobile style fix (#175) · discourse/discourse-calendar@1b9ef81 · GitHub). Когда я пытаюсь обновить плагин до последнего коммита (FIX: Add translation entry for Indonesia (#319) · discourse/discourse-calendar@d3bcef6 · GitHub), при запуске приложения возникает следующая ошибка:

==> Миграция базы данных
...
ArgumentError: Неизвестная версия миграции "7.0"; ожидаются версии "4.2", "5.0", "5.1", "5.2", "6.0", "6.1"
...
/app/code/plugins/discourse-calendar/db/migrate/20220604200919_create_disabled_holidays.rb:3:in `<main>'

Код файла: discourse-calendar/db/migrate/20220604200919_create_disabled_holidays.rb at main · discourse/discourse-calendar · GitHub

На форуме я также нашел это сообщение:

Но я не понимаю, почему это не работает (и не знаю, в чем заключается решение…)

Есть ли какие-то идеи, как это исправить?

Согласно файлу .discourse-compatibility, вам не следует обновляться (или вы не сможете обновиться) до этого коммита, если вы используете стабильную версию 2.8.

У вас есть команда plugin:pull_compatible_all где-нибудь? (Она должна быть)

Спасибо, @RGJ. Я не знал о существовании такого рода файлов. В будущем я буду это проверять.

У вас есть где-нибудь plugin:pull_compatible_all? (У вас должен быть)

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

https://docs.cloudron.io/apps/discourse/#installing-plugins

Но я только что заметил, что у меня есть файл site_settings.yml для добавления дополнительных настроек. Мне следует настроить что-то здесь с помощью plugin:pull_compatible_all?

Возможно, стоит направить людей из Cloudron к этой теме, так как они, похоже, не продвинулись дальше того, чтобы сказать, что у вас опечатка, или задать вопрос: «Вы вообще в той директории?» :laughing:

Им нужно обновить свою документацию.

Я никогда не обращался к сообществу Cloudron, но я открою обсуждение на форуме Cloudron.

Почему они должны обновлять документацию?

Проблема здесь в том, что вы используете неподдерживаемую установку. Мы можем поддерживать только стандартную установку. Пакеты сторонних разработчиков часто перестают работать из-за изменений в самом Discourse — именно поэтому они не рекомендуются.

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

Приношу извинения. Два дня назад кто-то другой задал точно такой же вопрос / столкнулся с точно такой же проблемой:

https://forum.cloudron.io/topic/7687/installing-a-discourse-plugin-on-cloudron

Хорошо. Я собираюсь присоединиться к обсуждению на форуме Cloudron.
Спасибо за ваши ответы, теперь я лучше понимаю Discourse, чтобы помогать сообществу Cloudron и анализировать будущие проблемы.