Payload CMS Release: Release 0.17.3
Tag Name: v0.17.3
Release Date: 6/8/2022
Payload CMSPayload CMS is a modern, self-hosted headless content management system built with TypeScript, Node.js, and MongoDB. It's designed specifically for developers who want full control over their content management system while maintaining a powerful admin interface for content editors.
TL;DR
PayloadCMS v0.17.3 brings important bug fixes for array fields and localization, adds custom endpoints for collections and globals REST APIs, and improves documentation. This maintenance release focuses on fixing data validation issues, enhancing localization support, and providing developers with more API flexibility.
Highlight of the Release
- Added custom endpoints for collections and globals REST APIs
- Fixed duplicate objects in array fields during data validation
- Fixed locale propagation through relationship fields
- Improved error handling when deleting documents
- Enhanced documentation with collection hooks examples
Migration Guide
No migration is required for this release as it primarily contains bug fixes and feature additions that don't break existing functionality.
Upgrade Recommendations
This is a recommended upgrade for all PayloadCMS users, especially those working with array fields, localization features, or custom API endpoints. The bug fixes address important issues with data validation and localization that could affect data integrity. Developers looking to extend their API capabilities will benefit from the new custom endpoints feature.
Bug Fixes
Array Field Validation Fix
Fixed an issue where objects in array fields were being duplicated during data validation. This resolves problems with validateData and siblingData handling that could lead to unexpected behavior and data inconsistencies.
Localization Improvements
- Fixed a bug where unflattening locales would occur even when the configuration didn't specify locales
- Fixed locale propagation through relationship fields, ensuring proper localization throughout connected content
- Ensured locales are populated correctly through local operations
Admin UI Improvements
- Fixed an issue where server errors weren't properly displayed when deleting documents
- Resolved a bug where the delete document state would get stuck after receiving a 403 Forbidden response
New Features
Custom Endpoints for Collections and Globals
PayloadCMS now allows you to create custom endpoints for collections and globals REST APIs. This powerful feature gives developers more flexibility to build custom functionality on top of the existing API structure.
This addition makes it easier to implement specialized endpoints for specific business logic or custom data operations without having to build completely separate API routes.
Security Updates
No security fixes were explicitly mentioned in this release.
Performance Improvements
No specific performance improvements were mentioned in this release.
Impact Summary
PayloadCMS v0.17.3 is a maintenance release that improves stability and extends API capabilities. The fixes for array field validation and localization handling address potential data integrity issues that could affect content management workflows. The addition of custom endpoints for collections and globals provides developers with more flexibility to extend the CMS's API functionality.
The documentation improvements, particularly the addition of collection hooks examples, will help developers better understand and implement these features. The fixes to the admin UI's error handling during document deletion improve the user experience by providing clearer feedback when operations fail.
Overall, this release enhances both developer experience and end-user reliability without introducing breaking changes.
Full Release Notes
Statistics:
User Affected:
- Benefit from fixed data validation in array fields
- Can now create custom endpoints for collections and globals REST APIs
- Have access to improved documentation with collection hooks examples
- Will see proper error messages when deleting documents fails
