Tüm üç IMAP bayraklarını kayıt edin ve indeksin henüz bir liste hizmet edemeyeceğini söyleyin
Göç çalışır, bu yüzden answered var ve SearchIndexService şimdi yazıyor Bunun yanı sıra read ve starred. Index, üç tane kaydetti. Tüm varlığı için bayraklar; bu...
Okumayın ya da yazma, sütunun var olduğundan önce cevaplanır
Paylaşılan-library alanını bozmayı takip edin. Dağılışta hiçbir şey yok Yol şimdi KamoInitializer'in henüz yaratılmadığı bir sütuna dokunuyor. İndüklenen liste...
Her tarayıcıdaki bir IMAP IDLE bağlantısını sızdırmayı bırak
IDLE threadinin bir IDLE bitemez: Bir engellemede park edilir soket, sadece bayrakı bir kez okumanın kendi başına geri döndüğünü görür, yukarı ton Dovecot'un bo...
1b3553f'ün kaynağı, sadece testlerini yapan
1b3553f, iki yeni test dosyalarını ve başka hiçbir şeyi sahneledi, bu yüzden bir şey iddia etti Şaşırtıcı KaterManager.set Henüz mevcut olmayan Bayraklar ve onu...
Yazmadan bir isimsiz IMAP bayrağını durdurun
IMAP bayrakları bağımsızdır, bu yüzden "Bu okumayı söyle" yıldız hakkında hiçbir şey söylememelidir. E-postaImapService.setFlags her zaman Booleans aldı ve atla...
Bir yapılandırma varsayılan varsayılan varsayılan olarak paylaşılan bir haç göndermeyi bırak
Platform'un paylaşılan şifresi, DB PASSWORD ve geri dönüş olarak pişirildi. MINIO ROOT PASSWORD, bu yüzden bu repo'da ve yerleşik görüntüde de yaşadı. kümede or...
Oturumdan gelen çağrıyı alın, sorgu dizesinden değil
GET /api/calendar/calendars bir istek parametresi olarak kullanıcıId aldı, bu yüzden değişen URL'de bir numara herkesin takvimlerini okudu - ve çünkü takvimler ...
MKCOL aslında depolanabilir bir kitap yaratır
mkCol, ne bir organizasyon ne de bir sahibi taşıyan bir ContactBook inşa etti Ve 201'e ne olursa olsun, bu yüzden bir kartDAV'dan bir adres kitabı oluşturmak Mü...
CockroachDB-sadece PostgreSQL'in reddettiği SQL
CockroachDB metin türü STRING; PostgreSQL ve YugabayDB TEXT kullanır. Yerel sorguların 25'i hala CAST (x AS STRING) ve ::STRING, 'tip dizesi ile başarısız olan ...
Scope address books to the member who owns them
İletişim yalnızca organizasyon tarafından ele alındı. ListeBooks (orgId) idi OrganizasyonId (orgId) tarafından bulunun ve temas listesi sorgu açıldı WHERE c. co...
Publish row ids as strings - yeni bir kitap 404'd the moment you selected it
CockroachDB eşsiz rowid() 64-bit ids üretir. İletişim kitaplardan gerçek bir tanesi 1200081912680906758; JavaScript'in JSON.parse turu geçmiş bir şey geçmiş Say...
Sıfır yazma yerine kayıt mesajı boyutları
SearchIndexService, indekslenen her mesaj için boyutBytes = 0 yazdı, Yorum altında " zarftan mevcut değil". Bu mevcuttu - getiriyor Profil sadece bunu asla sorm...
Dosyaları 2b23346 geri yükleyin ve 413 ile uzun bir gönderiye cevap verin
2b23346, HEAD'dan asla tohumlanmamış özel bir indeksle işlendi. Bu yüzden ağacı sadece üç dosyayı içine koydu ve iş silindi Diğer 231. İşçi ağacı asla dokunmadı...
Her göndermeyi 1MB'de bırakın, bu yüzden geçmiş bir görüntü aslında dışarı çıkabiliyor
Geçmişten gelen bir görüntü ile birlikte, çıplak bir "posta göndermek için özür diledi". The The The The The The The The besteci, yapıştırmayı vücut HTML'ye bir...
Hibernate mangling the ":" castings in the native SQL
Hibernate'un yerli-kırıklığı “:” kaçan bir koloni olarak davranır ve ileriye doğru ilerler Tek ":" CockroachDB aldı ************ ARRAY[]: Metin[], ') Ve bunu ...
Bir dağıtmadan sonra indeksleyicinin dayanıklı NATS tüketicisini yeniden denemeye devam edin
Bir yuvarlanma dağınıkları pods ve giden kişi hala dayanıklı tutar tüketici, bu yüzden gelen pod'un "email-metadata-indexer" ile bağlantısı başarısız oldu [SUB-...
Metadata indeksleyicilerini dizi tip sütunlara uyarlayın
Kamo-shared-library haritaların konuşmaları/search index'in değiştiğini takip edin Dizi sütunları String[]/UUUUID[] Listeden ziyade <T>, hangi durdu? Her indeks...
Büyük klasör indeksini açın ve yapısal başarısızlık üzerinde dur
Eş zamanlı bir seanstan işe yaramaz, o yüzden ağaç temiz. Büyük indeks, Integer'e ayarlanmış toplamPages ile sayfaları yürüdü. MAX VALUE ve hayır tavan, böylec...
Hiçbir zaman şirketin kendi adreslerine karşı bir liderlik asla
E-postanın hiçbirreply@kamocrm.com'a ayarlandığı bir lider, her mesajı bu şekilde eşleştirdi adresi hiç göndermemişti – bir lider rekor, şirketin tüm çıkışına u...
Sayfa pencere kaplı olana kadar süpürücü süpürüyor
Bir posta kutusu ne zaman bir posta kutusu daha fazla aldığında tek sabit bir sayfa sessizce kayboldu SayfaGruplar arasındaki mesajlar - bir bülten patlama, yoğ...
Cevaplar Yanıt-To, ve SMTP istisnalarını UIP'ye bırakma
KamoCRM bildirimine hızlı bir cevap, “{"error" ile başarısız oldu: "Invalid Addresses" Cevap kutusunda fiilatim verdi. Bu dize Jakarta Mail'nin kendi kelime çev...
Bir multipart / ilgili HTML kökünü bir ek olarak sınıflandırmayı bırakın
Inlined veyag logo ile gönderdiğimiz her işlemsel e-posta kendi başına geldi /mesajlar doğru bir konu ve tamamen boş bir vücut ile görünür. AttachmentPart(), b...
Paylaşılan MFA repositories
MfaEnrollmentService, kamo-shared-library'de @Hizmettir, bu yüzden vahşi kartpostal @ComponentScan("com.kamo) Bu uygulamada bunu bu ya da bu değil mi inşa ediyo...
Merge, kazara e-posta hizmetinin anahtarını tekrarladı
Yeni E-posta servisi pod, 16e8a05'ten bu yana CrashLoopBack'ta olmuştur - 22 yeniden başlar, Asla bir kez başlamadı. yılanya ml, tekrarlanan üst düzey bir üst d...
Harden the kubectl download against flaky egress [skip ci]
dl.k8s.io, koşucunun egress intermittly damla orta devre dışı bırakıyor: curl: (56) OpenSSL SSL read: decryption başarısız ya da kötü kayıt mac Bu, aksi takdird...
Kayıp Kampanya Kontrolüler REST uç noktaları /api / e-posta /campaigns
Toplu e-posta çalışma alanı/editor GET/POST /api/email/campaigns vs., ancak sadece sadece sadece sadece sadece Kampanya hizmetleri ( @Service) hiç yaratıldı - @...
Kaldır ambiguous unsubscribe requestMatcher that crashed startup
E-posta servisi iki koruyucu (MVC DispatcherServlet + Bahar-WS MesajDispatcherServlet in /services/*), bu yüzden boş bir dize istekMatchers((() "/api/email/unsu...
MailCredentials Redis önbelli kırdı xoauth2 hesaplamayı durdurun
MailCredentials Redis (GenericJackson2Json). Ayrıca "isXoauth2()" boolean getter bir "xoauth2" mülk olarak serileştirildi, ancak okumak için bir alana sahip değ...
Kapsam KamoMail posta kutusu / alan listesi org'in kendi domainlerine (çoğunlukla sızdırılan sızıntı)
SECURITY: **************** run 'SELECT email from virtual users' (and **************************** “Asıl domains’in scopingi ile SELECT adı, bu yüzden posta kut...
Persist, OAuth sağlayıcıyı geri çağırmak için seçti, böylece KamoMail'e geri çekilmeyi durduruyor
Microsoft 365'e bir veyag geçmek (veya Google Workspace / Zoho) asla sıkışıp kalmamıştır: OAuth callback depolanmış jetonlar ve sadece önceden mevcut bir sağlay...
Resolve org tema host'dan gelen e-posta logosunu hoş karşılar, apex değil
Sistem e-postalarında Header/footer logolar (welcome/verification) olarak inşa edildi **************** - sadece Kamo'da var olan bir apex yolu pazarlama sitesi,...
Constant-time internal-auth secret karşılaştırma (timing oracle)
String.equals'ı MesajDigest.isEqual ile değiştirin, bu yüzden geçkisi geçemez X-Internal-Auth tarafından paylaşılan sırı -by-bay. Filo çapında süpürücü kopya-pa...
Return 422 (500 değil) üyenin posta kutusu olmadığı zaman
listeFolders ve diğer okuma uç noktaları IllegalStateException'ı MailContext.toMailCredentials(), bir üyenin IMAP kimlikleri olmadığı zaman Verilen, kontrolörün...
İşlemsel NoReply bir Sent klasörüne göndermiyor
NoReply, posta kutusu ile yalnızca bir adres değil, her işlemsel olarak Hala kendi Sent klasörüne IMAP uygulaması yapmaya çalıştı, gürültülü bir ses çıkarmak AU...
Mailbox listesi API, UI- şekilli ************************
GET /api / e-posta kutuları ham varlık geri döndü (providerStatus, sonSyncedIn, Üye sayısı yok. Tools UI, ************'i okur, bu yüzden Durum her zaman tanımla...
Okunma için ayrıcalık tabanlı posta kutusu erişimini yazar
çözümForMailbox sadece doğrudan ÜyeMailbox ataması ile erişim sağladı, Bu nedenle posta kutuları ************ ile yüzeylendi Haklar NoSuchElementException -> "F...
Orijinal dosya adı ve içerik türü ek indirme
The ************ endpoints (hem kişisel kişisel ve paylaşılan e-posta kutusu kontrolörleri, İçerik-Disposition: eks Hiçbir dosya adı parametresi ve Content-Type...
Ad posta kutusu atandığında, değiştirilmiş veya kaldırıldı
Bir posta kutusu KAMO MAIL veyag'de bir üyeye verildiğinde, üyeler.EU Asla güncellenmedi, IMAPredentialService'ın IMAP'ı çözmesine neden oldu Bu üyeler için kim...
Mark-as-read for shared and member mailboxes
EmailController.setFlags now accepts an optional mailboxId query param and routes through resolveProviderWithMailbox so member-mailbox flags are set against the...
SınıfCastException'ı önlemek için IMAPInputStream'ı ele alalım
JavaMail, kodlanmış bir String yerine IMAPInputStream'ı geri döndürebilir Bölüm.getContent() mesaj içeriği önceden düşünülmediğinde. The The The The The The The...
Use getHasAttachments() to match Boolean turnper type
************ bir Boolean (wrapper), bu yüzden Lombok HamsAttachments(),HasAttachments() değildir. İkincisi sadece ilkel boolean için var. Boolean.TRUE.equals()'...
Reset stale hasAttachments on sync and accumulate correctly
- Reset has_attachments=false at start of bulk sync so stale true values from old false-positive MIME detection are cleared before re-indexing - Accumulate ha...
Address override'den destek
Ads fromAddressRequest to EmailSendRequest so the frontend can specify Hangi alias/shared/mailbox adresini göndermek için. SmtpOnlyProvider şimdi Şu andan itiba...
Fix attachment parsing and hasAttachment false positives
Three fixes to EmailImapService: 1. toEnvelope: narrow multipart check to multipart/mixed only — plain HTML+text emails (multipart/alternative) no longer sh...
Add com.kamo.z.shared.commerce to EnableJpaRepositories scan
**************** (required by **************** in the shared library) lives under com.kamo.z.shared.commerce but was not included in the JPA repository scan, ca...
Correct field name and type in getFromAddresses response
Backend was sending 'email' key but frontend expected 'address', and sent type 'shared_mailbox' when frontend expected 'shared'. Also fixes hasMailboxes flag wh...
E-provider domains varsayılan ayarlandığında org domains geri dönün
KamoMailDomainValidator, 403 ile orgs için zor bir şeydi DNS-verified domain in org domains but never add it to the email sağlayıcı domain kayıt. İlk aktif kull...
Wire up status filtre ve otomatik olarak gerekli şablonlar liste üzerinde listelendi
- EmailTemplateController.list() şimdi kabul ediyor?status= param ve filtreler Mevcut findByOrgIdAndStatus repository query - Auto-seeds ilk tohumlamayı kaçıran...
Kargoyu gördüğünüz gibi?
İş alanınızda bu güncellemelerden her biri otomatik olarak. Ücretsiz başlayın ve haftadan sonra büyümesini izleyin.