Problema
O método Journal.add_mission() chama Language.get(code2=lang_code), que lança DoesNotExist se a linguagem não existir no banco:
collection.models.Language.DoesNotExist: Language matching query does not exist.
Não há nenhuma etapa no fluxo de setup (task_start, task_setup, documentação) que popule os objetos Language. Em um banco novo, todos os periódicos que possuem missão falham silenciosamente nesse ponto.
Arquivo afetado: journal/models.py:456
# atual — lança DoesNotExist se a linguagem não existir
language=Language.get(code2=lang_code),
# alternativa — criar se não existir
language=Language.get_or_create(code2=lang_code, user=user),
Impacto
- Afeta as branches
rc e main
- Em qualquer banco novo, a missão (resumo) dos periódicos não é importada
- O erro é logado como
ERROR mas não interrompe a task — passa despercebido
Solução sugerida
Uma das alternativas:
- Substituir
Language.get() por Language.get_or_create() em add_mission()
- Incluir a criação das linguagens básicas (
pt, en, es, etc.) como etapa de task_start ou task_setup
Problema
O método
Journal.add_mission()chamaLanguage.get(code2=lang_code), que lançaDoesNotExistse a linguagem não existir no banco:Não há nenhuma etapa no fluxo de setup (
task_start,task_setup, documentação) que popule os objetosLanguage. Em um banco novo, todos os periódicos que possuem missão falham silenciosamente nesse ponto.Arquivo afetado:
journal/models.py:456Impacto
rcemainERRORmas não interrompe a task — passa despercebidoSolução sugerida
Uma das alternativas:
Language.get()porLanguage.get_or_create()emadd_mission()pt,en,es, etc.) como etapa detask_startoutask_setup