Fuso horário de usuário inválido causa problemas no e-mail

Se o fuso horário de um usuário for inválido, pelo menos um job do sidekiq lançará uma exceção em vez de usar um padrão razoável:

Neste caso, o fuso horário do usuário foi definido como "" (string vazia).

Não deveríamos permitir que isso aconteça em primeiro lugar e, se acontecer, escolher um fallback razoável (UTC).

3 curtidas

Estávamos considerando fusos horários nil nesses e-mails, mas não valores \"\".

Há um problema em outro lugar com esta instância que tem fusos horários para os usuários definidos como \"\", dito isso, devemos garantir que os e-mails não falhem em um fuso horário inválido.

Adicionei um PR para isso aqui: FIX: Ensure invalid timezone does not block critical emails by pmusaraj · Pull Request #26607 · discourse/discourse · GitHub

também meta:

[1] pry(main)> UserOption.where(timezone: '').count
=> 17

e (outro site):

[1] pry(main)> UserOption.where(timezone: '').count
=> 6