Gunakan query asli untuk MarkConversationRead untuk menyelesaikan tipe Hibernate 6.2 tidak cocok
CURRENT _ TIMESTAMP di JPQL mengembalikan javas.sql. Penanda waktu yang tidak cocok Instant- mengetik updateAt field. Pertanyaan asli dengan NOW () melewati ini...
Gunakan database- tingkat penanda waktu daripada Instant.now ()
Ganti semua @ Builder.Default Instant.now () dan @ PreUpdate metode dengan @ CreationTime stamp (source = DB) dan @ UpdateTimecap (source = DB) Jadi database ad...
Migrate JPA entities and repos to kamo-shared-library
Entities and repositories moved to **************** in the shared library. All imports updated to reference shared lib.
Tambahkan entitas metadata email dan repositori
Migrasi entitas JPA dan repos dari EmailService ke perpustakaan terbagi Jadi KamoInitializerService dapat mengelola semua skema melalui ddl- auto.
Use native query for PostgreSQL text[] column in ConversationRepository
MEMBER OF is not supported by Hibernate for @JdbcTypeCode(ARRAY) fields. Switch to native SQL with ANY() for folder_ids array lookup.
Add search UI, virtual scrolling, IndexedDB caching, and offline mode
- Add SearchBar with operator autocomplete, saved/recent search suggestions - Add AdvancedSearchPanel with structured field-based query builder - Add VirtualMes...
Add IMAP connection pool, search intelligence, and delta sync endpoints
- Add Apache Commons Pool2 keyed connection pool for IMAP Store reuse (3/account, 500 total, 10min idle eviction) - Migrate EmailImapService from ConcurrentHash...
Add enterprise email organization — labels, filters, shortcuts, quick actions
Plans 2-3: conversation threading views, email API layer with zustand store, label picker, filter rule builder, smart folder modal, keyboard shortcuts with help...
Add enterprise email metadata services — labels, filters, smart folders, batch ops
Plans 1-3: metadata schema, JPA entities, repositories, conversation threading, label CRUD, filter rule engine with async retroactive apply, smart folder criter...
Add email HTML sanitization and CSS isolation via Shadow DOM
Replace raw dangerouslySetInnerHTML in MessageBrowser with a sanitized email renderer that uses DOMPurify + css-tree for HTML/CSS filtering and a closed Shadow ...
Use StringRedisTemplate to read OTK/session values stored as plain strings
The Next.js app stores OTK and *** values as plain strings in Redis. The default RedisTemplate uses JSON serializer which fails to parse them.
Seperti apa yang Anda lihat pengiriman?
Semua pembaruan ini secara otomatis mendarat di ruang kerja Anda. Mulai bebas dan menontonnya tumbuh minggu demi minggu.