Falha na migração ao atualizar o plugin de calendário para o último commit

Olá,

Eu uso o Discourse 2.8.8 no Cloudron com o Discourse Calendar (commit FIX: Mobile style fix (#175) · discourse/discourse-calendar@1b9ef81 · GitHub). Quando quero atualizar o plugin para o último commit (FIX: Add translation entry for Indonesia (#319) · discourse/discourse-calendar@d3bcef6 · GitHub). Mas quando a aplicação inicia, recebo este erro:

==> Migrating database
...
ArgumentError: Unknown migration version "7.0"; expected one of "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>'

O código do arquivo: discourse-calendar/db/migrate/20220604200919_create_disabled_holidays.rb at main · discourse/discourse-calendar · GitHub

No fórum, também encontrei esta mensagem:

Mas não sei porquê, não funciona (e não entendo qual é a correção…)

Alguma ideia para corrigir isso?

De acordo com o .discourse-compatibility arquivo você não deve atualizar / não poderá atualizar para esse commit quando estiver na versão estável 2.8.

Você tem um plugin:pull_compatible_all em algum lugar? (Você deveria)

2 curtidas

Obrigado @RGJ. Eu não conhecia esse tipo de arquivo. No futuro, irei verificá-lo.

Você tem um plugin:pull_compatible_all em algum lugar? (Você deveria ter)

Eu não sei o que é. Eu uso uma instância Cloudron para implantar o Discourse. Para atualizar um plugin, tenho que removê-lo e instalá-lo como a documentação explica:

Mas acabei de ver que tenho um arquivo site_settings.yml para adicionar personalizações adicionais. Devo configurar algo aqui com plugin:pull_compatible_all?

Talvez você queira direcionar as pessoas do Cloudron para este tópico, já que eles não parecem ter ido muito além de dizer que é um erro de digitação da sua parte, ou “você está no diretório certo?” :laughing:

Eles precisam atualizar a documentação deles.

1 curtida

Eu nunca perguntei à comunidade Cloudron e abrirei uma discussão no fórum Cloudron.

Por que eles precisam atualizar a documentação?

O problema aqui é que você está usando uma instalação não suportada. Realmente só podemos dar suporte à instalação padrão. Pacotes de terceiros quebram o tempo todo devido a mudanças que ocorrem no próprio Discourse - é por isso que eles não são recomendados.

A versão do plugin de calendário que você está tentando instalar não é compatível com a versão do Discourse no pacote Cloudron. O Cloudron reempacotou o Discourse e, como resultado, não está usando os meios suportados para instalar plugins. A menos que você queira mudar para uma instalação suportável, eles precisarão guiá-lo na correção disso e atualizar sua documentação.

1 curtida

Minhas desculpas. Alguém mais fez exatamente a mesma pergunta / teve o mesmo problema dois dias atrás:

2 curtidas

Ok. Vou participar da discussão no fórum do Cloudron.
Obrigado pelas suas respostas, pois entendi melhor o Discourse para ajudar a comunidade Cloudron e analisar problemas futuros.

1 curtida