Finire il pannello dei calendari personali, e metterlo dove un membro può raggiungerlo

Featurekamo-internal
Spegnimento
5 settembre 2026 alle ore 16:14 UTC
Autore
Kamo
Impegno
b46d317

PersonalProviderSezione era impalcatura che nulla ha reso, e non avrebbe ha funzionato se aveva: ha letto GET /member/{id}, un percorso che non esisteva, quindi ha fallito all'aperto; ha offerto un pulsante Aggiungi per Google e Microsoft che POSTed a riga senza credenziali, producendo una connessione che non potrebbe mai sincronizzare; la sua due vie toggle inviato bidirezionaleSync dove la colonna è bidirezionale, quindi la commutato e nulla è stato memorizzato; e aveva un "Unify con l'organizzazione" Interruttore per un campo ContattoIntegrazione non ha, che il servizio ha abbandonato ogni scrittura. Ora elenca ciò che un membro ha collegato con il suo stato di sincronizzazione reale, collega Google e Microsoft attraverso il flusso OAuth, prende un URL e una password per iCloud e server personalizzati, e dice quando una connessione non contiene credenziali -- che gli interruttori da soli non possono, e che è la differenza tra "off" e "non può lavoro". L'interruttore unify è andato piuttosto che falsificato: non c'è posto per memorizzarlo, e un interruttore che silenziosamente persiste nulla è peggio di nessun interruttore. DavOAuthConnect guadagna un campo piuttosto che essere copiato. Tutto duro su di esso -- un richiamo su un'altra origine, un popup che non può segnalare il proprio risultato, il rileggere che è l'unico segnale affidabile -- è identico per un membro e per un'organizzazione, e una seconda copia andrebbe alla deriva esattamente sulle parti nessuno rilegge. Nell'ambito di applicazione del membro si aggiunge ?member=true e il server prende il membro dalla sessione, quindi il pannello non può rivolgersi a nessun altro. Vive nel cassetto delle preferenze del calendario. L'argomento delle impostazioni e-mail è gated su MANAGE EMAIL SETTINGS, quindi mettere i calendari personali ci sarebbe li ha nascosti da quasi tutti i loro calendari. Ultimo nel cassetto e dietro un divisore: ogni altro blocco c'è una preferenza il pannello possiede, mentre questo autorizza una terza parte e può fallire in modi su cui il membro deve agire. I percorsi chiave sono letterali e lo spazio dei nomi è in linea. check-i18n-keys risolve usoTraduzioni(' <literal>') e rinuncia all'usoTraduzioni(SOMETHING) -- e rinunciare significa saltare ogni chiave nel file, non solo uno, quindi un truffatore lì avrebbe lasciato tutti i trenta incontrollati. Raggiungere t attraverso una ref per tenerlo fuori le dipendenze del caricatore nasconde un sito di chiamata dalla guardia allo stesso modo, quindi loader imposta una bandiera e il render lo traduce.

Tutte le modifiche

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