From 4608564fc3674808ec0c126276506dea15b3af0d Mon Sep 17 00:00:00 2001 From: Konsti Wohlwend Date: Thu, 11 Jun 2026 09:53:18 -0700 Subject: [PATCH] Increase SMTP password max length from 70 to 256 (#1579) --- packages/shared/src/schema-fields.ts | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/packages/shared/src/schema-fields.ts b/packages/shared/src/schema-fields.ts index 1f9910232..805887474 100644 --- a/packages/shared/src/schema-fields.ts +++ b/packages/shared/src/schema-fields.ts @@ -612,7 +612,10 @@ export const emailHostSchema = yupString().meta({ openapiField: { description: ' export const emailPortSchema = yupNumber().min(0).max(65535).meta({ openapiField: { description: 'Email port. Needs to be specified when using type="standard"', exampleValue: 587 } }); export const emailUsernameSchema = yupString().meta({ openapiField: { description: 'Email username. Needs to be specified when using type="standard"', exampleValue: 'smtp-email' } }); export const emailSenderEmailSchema = emailSchema.meta({ openapiField: { description: 'Email sender email. Needs to be specified when using type="standard"', exampleValue: 'example@your-domain.com' } }); -export const emailPasswordSchema = passwordSchema.meta({ openapiField: { description: 'Email password. Needs to be specified when using type="standard"', exampleValue: 'your-email-password' } }); +// SMTP credentials are stored encrypted (not bcrypt-hashed like user passwords), so they don't +// need the 70-char bcrypt limit from passwordSchema. Some providers (e.g. ZeptoMail) generate +// passwords well over 100 chars. +export const emailPasswordSchema = yupString().max(256).meta({ openapiField: { description: 'Email password. Needs to be specified when using type="standard"', exampleValue: 'your-email-password' } }); // Project domain config export const handlerPathSchema = yupString().test('is-handler-path', 'Handler path must start with /', (value) => value?.startsWith('/')).meta({ openapiField: { description: 'Handler path. If you did not setup a custom handler path, it should be "/handler" by default. It needs to start with /', exampleValue: '/handler' } }); // Project email theme config