Запишіть всі три прапори IMAP, і скажімо, чому індекс не може подати список ще
Проведення міграції, тому answered існує і SearchIndexService тепер пише вона поряд з is read і is starred. Індекс записав два з трьох прапори для свого існуван...
Не прочитайте або напишіть answered до його стовпця
Дотримуйтесь спільних змін, які не відповідають поле. Ніщо в розгортанні Шлях тепер доторкається колонки, що KamoInitializer ще не створив. Відстеження індексу...
Відстеження витоку IMAP IDLE на будь-якому підключенні браузера
Передача нитки IDLE не може закінчити IDLE: він припаркований в блокуванні роз'єм читати, що тільки бачить прапорець, коли читання повертається самостійно, до П...
Вихідна половина 1b3553f, яка зробила тільки свої тести
1b3553f схвалив його два нові тестові файли і нічого іншого, тому він висаджував затвердження напляскване Прапори, які ще не існують і не можуть спричинити його...
Зупинити неназв’язаний прапор ІМП від перезапису
ІМП незалежні прапори, тому "знайомитися це читання" не потрібно нічого сказати про зірку. EmailImapService.setFlags завжди приймається наготовлені Booleans і п...
Стоп доставка спільного облікового запису як за замовчуванням
Загальний пароль платформи був запечений у вигляді пада для DB PASSWORD і MINIO ROOT PASSWORD, тому він жив в цьому репо і в вбудованому образі, а також в класт...
Візьміть дзвоник з сеансу, а не з рядка запиту
GET /api/calendar/calendars взяли участь у користуванні кількість у URL-адресі читати будь-які календарі — і тому, що календарі немає організації, в будь-який ч...
Зробіть MKCOL створити книгу, яка насправді може зберігатися
mkCol побудував Контактну книгу, яка не несе організації, ні власника і повернув 201 незалежно від того, щоб створити адресну книгу від CardDAV Клієнт не вдаєть...
CockroachDB-тільки SQL, що PostgreSQL відхиляє
CockroachDB замовляє текстовий тип STRING; PostgreSQL і YugabyteDB використовують TEXT. 25 литих по рідних запитах все ще випромінювалися CAST(x AS STRING) і ::...
Сфера адресних книг для учасника
Зв'язки були об'єднані тільки організацією. Список книг (orgId) ЗнайтиByOrganizationId(orgId), і відкрити список контактів JavaScript licenses API Веб-сайт Go1....
Publish рядки як рядки — нова книга 404-d моменту, яку ви вибрали
CockroachDB унікальний rowid() виробляє 64-розрядні кришки. Реальний від контактів книжок 1200081912680906758; JavaScript's JSON.parse раунди що-небудь минулого...
Запис розмірів повідомлень замість написання нуль
SearchIndexService писав розмірПерекладки = 0 для кожного повідомлення, яке ніколи не індексовано, під коментом «Не доступний з конверту». Він був доступний — к...
Відновити файли 2b23346 знизився, і відповісти на негабаритне надсилання з 413
2b23346 був здійснений за допомогою приватного індексу, який ніколи не був засіяний від ГЕД, Отже, його дерево провів лише три файли, які засвідчили його, і вид...
Стоп-хоплення кожного надсилання в 1МБ, так що минуле зображення дійсно може виходити
Поповнення з минулим зображенням не вдалося затиснути «Не вдалося відправити електронну пошту». Про нас композитор вписує пасту в HTML як базові64 дані URI, яка...
Стоп Хібернате мангал ":" відкидає в рідному SQL
РџРμР»РμР»РμР»РμР»РμР»РμР»РμР»РμР»РμР»РμР»РμР»РμР»РμР»РμР»РμР»РμР»РμР»РμР»РμР»РμР»РμР»РμР»РμР»РμллРμР»РμР»РμР»РμР»РμР»РμллРμллРμллРμллРμллллллл...
Зберігайте переробку споживача індексатора НАТС після розгортання
Розгортання розгортати перекриття подів і виїжджаючи ще міцно Споживач, так що вхідний зв'язок суб'єкта до "email-metadata-indexer" не виходить з [SUB-90012] Сп...
Адаптація індексаторів метаданих для масивних стовпців
Дотримуйтесь зміни кармо-шаред-ліберта, які картують розмови /search index масивні стовпчики, як String[]/UUID[], а не Список<T>, що припинено кожен вказував по...
Підключіть індекс сипучих папок і зупиніть його на структурній недостатності
Несумісна робота з одночасним сеансом, ковтати в тому, що дерево чистий. Об'ємний індекс ходив сторінки з загальнимиPages, встановленими на Integer. MAX VALUE ...
Ніколи не збігаються з власними адресами компанії
A Lead, e-mail якого була встановлена на noreply@kamocrm.com, що відповідає кожному повідомленню про те, що адреса не була відправлена - одна з провідних реєстр...
Сторінка свинцю ковтати до вкритого вікна
Одна фіксована сторінка безшумно втрачена поштова скринька, коли поштова скринька приймала більше pageSize повідомлень між кліщами — лопець, зайнятий спільною п...
Адреса відповідей на відповідь-To, і зупинити витік SMTP винятки до UI
Швидкий відповідь на повідомлення KamoCRM не вдалося з `{"error":"Незаконні адреси"}` Надіслане дієслово в поле відповіді. Цей рядок є власне слово Jakarta Mail...
Стоп класифікує багаточастиновий/пов'язаний корінь HTML як вкладення
Кожна транзакційна електронна пошта ми надішлемо вбудованим логотипом org /повідомлення глядача з правильним предметом і абсолютно порожнім тілом. АуттачментPa...
Сканування спільних репозицій МЗС
MfaEnrollmentService – це сервіс у камо-шред-ліберті, тому дикої картки @ComponentScan("com.kamo") в цьому додатку конструює це чи ні Сервіс має все, щоб зробит...
Злиття дублікати kamo ключ, який збочений Email Service
У CrashLoopBackOff з 16e8a05 — 22 решти, ніколи не почався. snakeyaml піднімає ДублікатиKeyException на повторному рівні ключ, і я додав другий `kamo:` блок для...
Важко завантажити kubectl проти гасіння [скіп ci]
dl.k8s.io над егресом бігуна, що перетинається в середині трансфера: curl: (56) OpenSSL SSL read: розшифрування не вдалося або поганий запис mac не вдається роз...
Додати відсутні кінцеві пункти для /api/email/campaigns
Адреса електронної пошти: м. Київ, вул.Газова, 2 Кампанія (далі – «Послуга») ніколи не була створена — немає @RestController. так кожен виклик 404-d і /маркетин...
Видаліть неоднозначну відмову від підпису
EmailПослуги кріплень двох servlets (MVC DispatcherServlet + Spring-WS ПовідомленняDispatcherServlet в /послуги /*), так що запит на рядку "/api/email/unsubscri...
Стоп послідовний комп'ютерний xoauth2 getter, який зламав MailCredentials кеш
MailCredentials є студентом у Redis (GenericJackson2Json). Додано `isXoauth2()` boolean getter був послідовний як властивість "xoauth2" але не має поля для чита...
Сфера поштова скринька KamoMail/domain listing to the org's власних доменів (cross-tenant leak)
SECURITY:*******************************************************************************************************************************************************...
Підібраний OAuth провайдер на зворотному зв'язку, тому він перестає перевернутися до KamoMail
Увімкнення org до Microsoft 365 (або Google Workspace / Zoho) ніколи не застрягнув: OAuth Callback зберігають токени і тільки згорнув статус на передвиборчому р...
Вирішуйте вітання з логотипом org тема, а не apex
Логотипи заголовка / нижній колонтитул в системах (зварювальник / верифікація) були побудовані як ******** — apex шлях, який існує тільки на Kamo сайт маркетинг...
Постійно-часовий внутрішній секрет порівняння (тимчасове покриття)
Замінити String.equals з повідомленнямDigest.isEqual так відповідача не може витік X-Internal-Auth спільного секрету за допомогоюte-byte. Флотно-широкий ковтанн...
Повернення 422 (не 500) при відсутності поштової скриньки
списокФолдери та інші читані кінцеві пункти провокують незаконний стан MailContext.toMailCredentials() коли учасник не мав облікових записів IMAP наданий, що фі...
Не зберігайте транзакційний режим NoReply надсилайте до папки Sent
NoReply - адреса електронної пошти без поштових скриньок надсилайте спробу IMAP до своєї папки Sent Попередження щодо кожного відправлення. Додати прапорець Sav...
Mailbox список API повертає UI-подібний ***********
GET /api/email/mailboxs повернули сиру суб'єкт (providerStatus, lastSyncedAt, не кількість членів. The Settings UI reads********************************** Стату...
Авторизація доступу поштових скриньок на основі привілеїв для читання + відправлення
вирішитиForMailbox тільки наданий доступ через пряме призначення електронної пошти Учасника, so mailboxes topd через ********************* тюрма NoSuchElementEx...
Збережіть оригінальне ім'я файлу та тип вмісту для завантаження вкладення
The*************************************************************************************************************************************************************...
Sync членів.email при призначенні первинної поштової скриньки або видаленні
Коли поштова скринька була призначена для члена KAMO MAIL org, членів.email ніколи не було оновлено, викликаючи електронну поштуCredentialService, щоб не виріши...
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...
Handle IMAPInputStream в getMessage для запобігання ClassCastException
JavaMail може повернути IMAPInputStream замість декодованого String part.getContent() при вмісті повідомлення не було попередньо фіксовано. Про нас прямо (Strin...
Використовуйте getHasAttachments() щоб відповідати типу обгортки Boolean
****** є Boolean (ваппер), так Ломбок генерує getHasAttachments() не єHasAttachments(). Останні тільки існує для примітивного булеана. Використовуйте Boolean.TR...
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...
Підтримка наданого надавача
Додавання відAddressRequest до електронної поштиSendRequest, так що фронтенд може вказати яку адресу електронної пошти та адресу електронної пошти для відправки...
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...
Коректне ім'я поля та тип в GetFromAddresses відповідь
Backend було відправлено 'email' ключ, але передній очікуваний 'address', і відправлений тип 'shared mailbox' при передній очікуванні 'shared'. Також фіксує has...
Падіння назад до org domains при відсутності електронної пошти provider domains за замовчуванням
KamoMailDomainValidator був важкодоступний з 403 для orgs, які мають DNS-перевірений домен в org domains, але ніколи не додано його в електронну пошту реєстр до...
Зворотній зв'язокДо зміни - smtpService.send приймає вкладення не відповідьTo
Пройдіть відповідьЗа допомогою SMTP відправити замість того, щоб відкинути його
Провідування фільтра стану та автоматичного використання необхідних шаблонів у списку
- EmailTemplateController.list() Тепер приймає ?status= param і фільтри за допомогою існуючої пошукової запити ByOrgIdAndStatus - Автозапчастини потрібні шаблон...
Як ви бачите відправлення?
Кожен з цих оновлень землі в робочому просторі автоматично. Почати вільний час і дивитися його на тиждень після тижня.