РелизВерсия v3.92.1Важное
Payload CMS 3.92.1: валидация пароля и исправления загрузок
Патч устраняет обход пользовательской валидации пароля при сбросе и несколько ошибок, из-за которых обработанные загрузки сохранялись некорректно.
Payload CMS выпустила версию 3.92.1 27 октября 2026 года. Релиз сосредоточен на исправлениях аутентификации, миграций PostgreSQL, схемы GraphQL и клиентских загрузок в облачные хранилища.
Сброс пароля учитывает правила коллекции
Операция сброса пароля теперь запускает валидацию поля password так же, как создание и обновление записи. Ранее переопределённые для коллекции ограничения — например, minLength или собственная функция validate — не применялись при сбросе, поэтому пользователь мог установить пароль, который эти правила обычно отклоняют.
Исправление относится к коллекциям с аутентификацией и пользовательской конфигурацией поля password. Оно не добавляет новую политику паролей, а обеспечивает одинаковое применение уже заданных правил.
Исправлены обработанные загрузки
Для прямых клиентских загрузок Payload хранит файл на диске, а после обработки новые байты находятся во временном файле. Ряд адаптеров раньше обращался к пустому буферу в памяти: Vercel Blob, Google Cloud Storage, R2 и UploadThing могли сохранить объект нулевого размера, хотя документ содержал размер обработанного файла. Теперь адаптеры читают данные из временного файла.
Плагин облачного хранилища также корректно сохраняет результат обрезки и исправления MIME-типа. В адаптере Vercel Blob устранены две ошибки режима addRandomSuffix: основное изображение и производные размеры получают собственные имена, а обработанный файл заменяет исходную загрузку вместо создания лишнего объекта. До исправления ссылки на размеры изображения могли возвращать 404.
PostgreSQL и GraphQL
Миграция localizeStatus для PostgreSQL переведена на корректную сигнатуру db.execute и правильную проверку массива rows. В схеме GraphQL виртуальные поля теперь допускают null, что согласует их описание с фактическим поведением полей.
В release notes нет новых требований к окружению или объявленных breaking changes. Это точечный патч ветки 3.92.x; требования Node.js, введённые в версии 3.92.0, остаются отдельным изменением предыдущего выпуска.