No entanto, isso traz alguns efeitos colaterais indesejados.
Em instâncias que não têm os plugins solved ou assign instalados, os tipos de evento são exibidos, mas a tradução está faltando e (obviamente) os eventos não estão disponíveis, embora sejam mostrados.
Os plugins solved e assign estão atualmente quebrados em novas instalações estáveis e beta porque estão faltando os seeds.
Minha ideia inicial foi pedir que você fizesse o backport dos seeds para a versão estável para corrigir o #2, mas como há um bug adicional (#1), talvez seja melhor deixar o código de seeding no próprio plugin e apenas reservar os IDs no código do núcleo.
Resumindo, acho que seria melhor mover o código
WebHookEventType.seed do |b|
b.id = WebHookEventType::SOLVED
b.name = "solved"
end
Não estou vendo nenhum problema ao executar a versão estável (2.4.1) localmente com as versões mais recentes dos plugins discourse-assign e discourse-solved.
Você poderia fornecer algumas informações sobre como posso replicar os problemas que você está enfrentando?
Uma instalação nova na versão estável com a versão mais recente do plugin “solved” não terá os IDs na tabela web_hook_event_type, impedindo que o tipo de webhook seja exibido.
Isso está acontecendo porque o código que popula os IDs foi removido do plugin “solved” e ainda não está presente na versão estável/beta.
Sites instalados anteriormente que tinham uma versão mais antiga do plugin “solved” já possuem os dados de seed e não terão esse problema.
Portanto, o passo de replicação é simples: crie uma instalação totalmente nova na versão estável.
Instalação nova e limpa na versão 2.4.1 com o plugin “solved”: nenhum webhook disponível.
Ok, você está totalmente certo, peço desculpas por não ter sido claro. Eu estava confundindo ‘quebrado’ com ‘não disponível’, e como se trata de um recurso novo, de fato nada está quebrado.
Ainda assim, parece um pouco estranho que o código de seed de um plugin tenha sido movido para o núcleo. Entendo que você queira reservar os IDs, mas acho que seria mais limpo deixar a seed no plugin. Mas isso é apenas minha opinião pessoal