Rebuild against gated shared-lib (mlos.intake beans now opt-in; исправление CrashLoop)
Wire mlos-internal-auth (INTERNAL AUTH SECRET) в развертывании
EmailService's InternalAuthFilter Guards /api/email/templates/send + /seed-org on Внутренний.auth.secret, который был закрыт (неудачный 503). Поделитесь существ...
Возврат 422 (не 500), если у участника нет почтового ящика
файлы списков и другие прочитанные конечные точки выкинули из IllegalStateException MailContext.toMailCredentials(), когда у участника не было учетных данных IM...
Не сохраняйте транзакционные NoReply отправляет в папку Sent
NoReply - это адрес только для отправки, без почтового ящика, но с каждой транзакцией. Отправить все еще пытался приложение IMAP к папке Sent, производя шумный ...
Изменения для добавления поддержки изменения пароля к профилям учетных записей
Учетные записи почтового ящика самоисцеления из приложения DB (возвращение дрейфа)
Приложение DB — источник истины, для которого должны существовать почтовые ящики; Учетные записи живут в виртуальных пользователях почтового сервера. Если DB по...
Список почтовых ящиков API возвращает UI-образный ****************
GET/api/email/mailboxes вернула необработанную сущность (providerStatus, lastSyncedAt, Без учета членов. UI настроек читает **************** Статус всегда был н...
Разрешить привилегированный доступ к почтовому ящику для чтения + отправки
разрешает доступ только через прямое назначение MemberMailbox, Почтовые ящики всплывали через **************** Права бросил NoSuchElementException -> "Не удалос...
Migrate to k1m1 (clone+registry+kubeconfig from k1m1, drop k2m1, simple kububl install)
Восстановление для обновления kamo-shared-library (шаблоны электронной почты подписавшего)
Выберите новые канонические шаблоны esign.signer verification + esign.signer invite так что seedForOrg может посеять их при первой отправке.
Wire DomainManager и MailboxProvisioner для всех облачных провайдеров
Замените заглушки UnsupportedOperationException в каждом облачном провайдере Настоящие HTTP-звонки против API администратора каждого бэкэнда: Microsoft 365 → M...
Поддерживаемые IMAP / SMTP отправки, папки и поиск облачных заглушки
Извлеките шаблон делегирования IMAP/SMTP в AbstractImapBackedCloudProvider Zoho, IceWarp, Exchange, Google Workspace и Microsoft 365 расширяются Это. Базовый кл...
MailReader с поддержкой IMAP для облачных заглушки
Zoho, IceWarp, Exchange, Google Workspace и Microsoft 365 раскрывают IMAP. так проводка каждого облачного провайдера методы MailReader через EmailImapService Вм...
Обслуживать встроенные изображения MIME-части и поверхностные метаданные Content-ID
Render <img src="cid:..."> в сообщениях UI путем экспонирования встроенных частей Тело HTML ссылается. - AttachmentInfo получает контентId (без угловых скобок)...
Сохранение оригинального имени файла и типа контента при загрузке вложения
**************** Конечные точки (как личные) и контроллеры с общим почтовым ящиком) выдавали Content-Disposition: вложение без параметра имени файла и Content-T...
Совпадение возможностей для создания рабочих мест, а не развертывание Kubernetes
Конкурентность на уровне рабочего процесса сериализовала весь трубопровод (включая кубектль). выкатки). Переместите группу на работу по сборке только так, чтобы...
Sync members.email, когда основной почтовый ящик назначен, изменен или удален
Когда почтовый ящик был назначен участнику в организации KAMO MAIL, участники.email Он никогда не обновлялся, в результате чего EmailCredentialService не смог р...
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...
Обработка IMAPInputStream в getMessage для предотвращения ClassCastException
JavaMail может вернуть IMAPInputStream вместо декодированной строки Part.getContent() - когда содержание сообщения не было предварительно придумано. The Прямые ...
Используйте getHasAttachments(), чтобы соответствовать типу булевой обертки
**************** — булева (обертка), так что Ломбок Привязка () не является привязкой (). Последний только Существует для примитивного булева. Используйте Boole...
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 в отправке
Добавляет из AddressRequest в EmailSendRequest, чтобы интерфейс мог указать alias/shared/mailbox адрес для отправки. Компания SmtpOnlyProvider использует этот а...
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...
Возврат к org domains, когда не установлен по умолчанию email provider domains
KamoMailDomainValidator был неисправен с 403 для организаций, которые имеют DNS-верифицированный домен в org domains, но никогда не добавлял его в электронную п...
Восстановление для обновления библиотеки с разделением на камо (удалить OrganizationType, добавить isTopLevel)
Revert replyTo change — smtpService.send принимает вложения, не отвечающие
Проводите фильтр состояния и автоматические шаблоны в списке
- EmailTemplateController.list() теперь принимает ?status= param и фильтры используя существующий запрос репозитория findByOrgIdAndStatus - Автосемена требовали...
Добавить валидатор домена KamoMail для блокировки адресов электронной почты перекрестных арендаторов
Вводит компонент KamoMailDomainValidator, который проверяет на уровне обслуживания соответствует ли представленный домен электронной почты проверенному домену п...
Восстановление для обновления камо-общей библиотеки (CREATE CHILD ORG right + apply-to flags)
Вытаскивает новый RoleRightType.CREATE CHILD ORG (id 131), три флага на ChildOrgSecurityModel, две перегрузки службы 13-arg и помощники типа создателя AppliedMo...
Реконструкция для обновления библиотеки kamo-shared (appConfig upsert-only fix)
Вытаскивает затвердевший ****************, который больше не удаляет строки AppConfig, типы услуг которых отсутствуют в полезной нагрузке абонента — предотвраща...
Rebuild for kamo-shared-library update (effective-feature resolver)
Picks up the new AppliedModelEnforcementService methods (computeAvailabilitiesMap, isAppEffectivelyEnabled, getEffectivelyEnabledAppTypes, computeEffectiveFeatu...
Rebuild for kamo-shared-library update (applied-model enforcement + appConfigs + isPrivate)
Triggers a rebuild so this service pulls the updated kamo-shared-library containing AppliedModelEnforcementService, ChildOrgSecurityModelAppConfig entity, Servi...
Rebuild for kamo-shared-library update (runtime force rules + DEFAULT fallback in MemberRightsAppliedService)
Triggers a rebuild so this service picks up the updated **************** that applies template force rules and DEFAULT-template fallbacks on top of the existing...
Rebuild for kamo-shared-library update (master model, default role templates, force-rule resolver)
Triggers a rebuild so this service pulls the new kamo-shared-library revision containing Organization.branchTypeID, Organization.masterModelID, ****************...
Preview uses same auto-vars as sendToUser (org logo + name)
The preview endpoint now injects logoUrl, logoSimpleUrl, and orgName from the org's domain before applying sample content variables, matching the exact variable...
Auto-inject logoUrl, logoSimpleUrl, and orgName variables at send time
EmailTemplateService now merges base variables (logoUrl, logoSimpleUrl, orgName) derived from the org's primary domain before rendering, so all transactional te...
Add resetCode to password reset email, add emailVerifyByCode endpoint, send WELCOME_MEMBER after email verification
Как вы видите судоходство?
Все это приходит в ваше рабочее пространство самостоятельно. Начните с бесплатного плана и прочитайте эту страницу через месяц.
