TL;DR
PayloadCMS v3.0.0-beta.103 brings several important bug fixes and a new feature. This release addresses issues with file uploads supporting non-Latin characters, fixes UI problems in the rich text editor, improves Next.js authentication flow, and enhances PostgreSQL database querying. It also adds a new custom components example to help developers understand how to extend the CMS interface.
Highlight of the Release
- Added a new custom components example to help developers extend the CMS interface
- Fixed file upload handling for non-Latin characters by setting UTF-8 as the default character set
- Improved PostgreSQL database querying for arrays within relationship fields
- Enhanced Next.js authentication flow by setting user data before redirect after login
- Fixed UI issues with the hover style of the button to remove blocks in the rich text editor
Migration Guide
No migration is required for this beta release. The changes are primarily bug fixes and a new example, which don't require any modifications to existing code.
Upgrade Recommendations
This beta release contains several important bug fixes that improve the stability and usability of PayloadCMS, particularly for users working with international character sets, PostgreSQL databases, and Next.js integrations. If you're already using v3.0.0-beta.102, upgrading to beta.103 is recommended to benefit from these fixes.
For production environments, it's still advisable to wait for the stable v3.0.0 release unless you specifically need these fixes.
Bug Fixes
File Upload Character Set
Fixed an issue where non-Latin characters in filenames were being corrupted during upload. The default parameter character set for uploads is now set to UTF-8, ensuring proper handling of international characters. This resolves problems reported by users from countries where non-Latin characters are common, such as Japanese filenames being incorrectly converted.
Rich Text Editor UI
Fixed the hover style of the button to remove blocks in the Lexical rich text editor. Previously, the hover color was the same as the background, making it difficult to see the interactive state. The button now has proper hover styling in both light and dark modes.
Next.js Authentication
Fixed an issue in the Next.js integration where user data wasn't being properly set before redirecting after login. This ensures that authenticated users have immediate access to their data after the login process completes.
PostgreSQL Database Querying
Fixed a bug in the PostgreSQL adapter that prevented querying on arrays within relationship fields. This resolves issue #6037 and improves the reliability of complex queries involving arrays and relationships.
Field Component Types
Extended server props onto field component types, improving type safety and developer experience when working with custom field components.
useAsTitle Validation
Fixed the validation for the useAsTitle configuration to properly account for default and base fields, ensuring that title fields are correctly identified and displayed.
New Features
Custom Components Example
A new example has been added to demonstrate how to implement custom components in PayloadCMS. This example provides developers with a practical reference for extending the CMS interface with their own components, making it easier to customize the admin panel to meet specific project requirements.
Security Updates
No security fixes were mentioned in this release.
Performance Improvements
No specific performance improvements were mentioned in this release.
Impact Summary
This release primarily focuses on bug fixes that improve the stability and usability of PayloadCMS. The most significant impact is for international users who will now have proper support for non-Latin characters in file uploads, addressing a pain point for users working with languages like Japanese.
Developers will benefit from improved type safety with server props extended onto field component types and fixed PostgreSQL querying for arrays within relationship fields. The new custom components example provides valuable guidance for extending the CMS interface.
Content editors will experience UI improvements in the rich text editor and a more reliable authentication flow in Next.js applications.
Overall, while this is a beta release with relatively minor changes, it addresses several specific issues that could significantly improve the experience for affected users.
Full Release Notes
🚀 Features
🐛 Bug Fixes
- useAsTitle validation now accounts for default and base fields (#8165) (663e511)
- next: set the user data before redirect after login (#8135) (0118bce)
- upload.defParamCharset: utf8 by default (#8157) (a234092)
- richtext-lexical: hover style of the button to remove blocks (#8154) (281c80d)
- extends server props onto field component types (#8155) (12a30a0)
- db-postgres: querying on array wtihin a relationship field (#8152) (0c563eb)
🤝 Contributors