- Shipped
- 30 de agosto de 2026 às 18:57 UTC
- Author
- Kamo
- Commit
- 9e2e78d
Reportado por um membro: chats passados não podem ser identificados ou verificados pelo data em que foram enviados ou recebidos — apenas uma hora está presente. A sua própria história corre de volta para abril, então todas as nove mensagens que enviaram hoje leram como um "3:33" sem nada na tela para resolvê-lo; a mensagem lista desenha nenhum separador de dia também, então o selo é a única coisa que podia levar a data e nunca o fez. O instante nunca foi o problema — 'ts' é epoch milis off `dateCriated' e tem sido correto desde a correção de análise LocalDateTime. Cada selo era simplesmente renderizado com `fmt.time()`, que forma uma hora do dia e nada se a mensagem tem cinco minutos ou quatro meses. `formatDayAwareTimeInZone` é a regra que o membro pediu: o tempo sozinho enquanto o instante ainda é de hoje, `formatDateTime InZone na frente dele uma vez que não seja. Hoje é um dia CALENDÁRIO na zona do membro em vez de 24 horas decorridos — às 00:10 uma mensagem de 23:50 tem vinte minutos de idade e pertence a ontem, e essa é precisamente a mensagem cujo dia ninguém pode fornecimento de memória. Ele lê o relógio por chamada em vez de capturá-lo, então uma conversa deixada aberta durante as datas da meia-noite ontem à noite Próxima renderização. Nenhuma chave nova do dicionário: a data vem de Intl no locale do membro, então nada aqui precisa de 21 traduções. Aplicado aos quatro selos que estavam errados: o cabeçalho da mensagem, o A dica "editada", os recibos por membro e a bolha de conversação social. A página SMS tinha uma versão laminada à mão da mesma ideia que pediu `getFullYear()` — calendário do navegador, não do membro — e respondeu com um dia de semana nu, que deixa de identificar qualquer coisa após sete dias; Agora passa pelo mesmo ajudante. serverTime's Intl formatters são memorandos no caminho passado. Construindo um medidas ~180us contra ~3us para usar, e um selo dia-consciente pede para dois dias chaves por linha, então abrir um histórico de 200 mensagens teria gasto ~70ms A construção formata imediatamente descartada. Eles são imutáveis, então um por (locale, zone, options) é bytes idênticos a um por chamada — o mesmo argumento, e a mesma medida, como o uso cacheFormatters já Continua.