Registrare tutte e tre le bandiere IMAP e dire perché l'indice non può ancora servire una lista

FixEmailService
Shipped
14 agosto 2026 alle ore 02:57 UTC
Author
Kamo
Commit
5c839bc

La migrazione è in corso, così is answered esiste e SearchIndexService ora scrive accanto a is read e is starred. L'indice ha registrato due dei tre bandiere per tutta la sua esistenza; da qui registra tutti e tre. L'elenco indice-backed rimane spento, e il motivo non è "non è ancora uscito". Il suo controllo stabilisce se l'indice contiene gli stessi messaggi del server. Si'. non può risolvere se detiene le stesse bandiere, e non lo farà mai, perché bandiere muoversi senza cambiare un numero di messaggi o un UIDNEXT. Sarebbe sopravvivenza se qualcosa tenesse le bandiere indicizzate fresche. Niente. MessageIndexer reagisce esattamente a una cosa — un messaggio in arrivo — e scrive il riga una volta, dal messaggio come era in quel momento. Leggilo su un telefono un'ora più tardi e l'indice ancora dice non letto, permanentemente. Una cartella che passa ogni controllo qui sarebbe quindi servito con lo stato letto, recitato e risposto ciascuno ha avuto il giorno in cui è arrivato: una casella di posta che mostra di leggere come non letto, che è peggio di una casella di posta che richiede un altro momento per caricare. La soluzione onesta è quella di prendere bandiere da IMAP e solo buste dall'indice. Che cosa? funziona e vale meno di quanto suona: leggere bandiere significa aprire la cartella, e una volta che è aperto le buste cavalcare lungo nello stesso lotto FETCH. Che cosa è sinistra è la costruzione della busta del server, pesata contro una seconda fonte di verità per la lista dei messaggi — e contro un percorso IMAP che non emette più un per-messaggio giro per il tipo di contenuto e messaggio id. Tenuto piuttosto che cancellato perché la parte costosa stava imparando questo, e la controllo staleness e i suoi test sono corretti e riutilizzabili per qualsiasi versione Sembra che valga la pena avere.

All changes

Come quello che vedi la spedizione?

Ognuno di questi aggiornamenti atterra automaticamente nello spazio di lavoro. Inizia gratis e guardalo crescere settimana dopo settimana.

Inizia gratis per sempreVisualizza il prezzo