Home

>

Tools

>

Payload CMS

>

Releases

>

3.0.0-beta.47

Payload CMS Release: 3.0.0-beta.47

Pre Release

Tag Name: v3.0.0-beta.47

Release Date: 6/13/2024

Payload CMS LogoPayload CMS

Payload 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

Payload CMS v3.0.0-beta.47 introduces several important features and fixes. Gravatar is now the default for user avatars (breaking change), image handling has been improved with better validation and warnings, and developer experience enhancements include HTTP method override support and consolidated ESLint rules. This release also fixes issues with locale preferences, animated file types, and adds missing translations.

Highlight of the Release

    • Gravatar is now the default for user avatars (breaking change)
    • Added X-HTTP-Method-Override header support for handling large query parameters
    • Fixed issues with saving animated file types and image thumbnail updates
    • Improved schema validation for meta.icons and openGraphSchema
    • Added warning when image resizing is enabled without Sharp configuration
    • Better locale preference handling when not explicitly set in query parameters

Migration Guide

Breaking Changes

Gravatar as Default Avatar

Gravatar is now the default avatar provider for users. If you were relying on the previous avatar implementation, you'll need to update your code accordingly. You can still use custom avatar components if needed.

Meta Icons Schema Validation

The schema validation for meta.icons has been updated. Ensure your configuration matches the new validation requirements.

Migration Steps

  1. Review Avatar Implementation: If you have custom avatar handling, review your implementation to ensure compatibility with the new Gravatar default.

  2. Check Meta Icons Configuration: Verify that your meta.icons configuration meets the updated schema validation requirements.

  3. Review Schema Validation: If you're using openGraphSchema with siteName, ensure it matches the updated joi validation.

For a more detailed migration guide, refer to the rough draft of the migration guide included in this release.

Upgrade Recommendations

This beta release contains breaking changes related to avatar handling and schema validation. We recommend:

  1. For Development Environments: Upgrade to test the new features and ensure compatibility with your implementation, especially if you have custom avatar handling or use meta.icons configuration.

  2. For Production Environments: Wait for the stable release unless you specifically need the features or fixes in this beta. If upgrading, thoroughly test your application, particularly focusing on user avatars and any areas using meta.icons or openGraphSchema.

  3. Review the Migration Guide: Before upgrading, review the migration guide to understand the breaking changes and required updates to your code.

  4. Test Image Handling: If you work with animated file types or rely on image thumbnails, test these features after upgrading to ensure they work as expected.

Bug Fixes

Image Handling Fixes

  • Fixed issue with saving animated file types that had undefined image sizes
  • Image thumbnails now properly update on document save without requiring page refresh

Validation and Schema Fixes

  • Fixed meta.icons type and schema validation
  • Added siteName to openGraphSchema joi validation
  • Corrected admin.meta joi validation

Localization Improvements

  • Added missing translation for authentication:apiKey
  • Fixed locale preference handling to use user preference when not set as query parameter

Developer Experience

  • Consolidated duplicate imports using ESLint rules
  • Added import/no-duplicates rule from eslint-plugin-import

New Features

Gravatar Integration

  • Gravatar is now the default for user avatars (breaking change)
  • Custom avatar components are still supported

HTTP Method Override

  • Added support for X-HTTP-Method-Override header
  • Allows sending query parameters in the body of a POST request
  • Useful when query parameter strings hit upper size limits

Image Configuration Warnings

  • Added warning when image resizing is enabled but Sharp is not passed to config
  • Helps prevent configuration issues that could lead to unexpected behavior

Stripe Plugin Enhancement

  • Added full request object to Stripe webhook handlers
  • Fixed type to use PayloadRequest for req by default
  • Provides more context and flexibility in webhook handlers

Security Updates

No specific security fixes were mentioned in this release.

Performance Improvements

No specific performance improvements were highlighted in this release. The focus was primarily on feature additions, bug fixes, and breaking changes related to avatar handling and schema validation.

Impact Summary

This beta release of Payload CMS brings several important changes that impact both developers and content editors. The most significant change is making Gravatar the default for user avatars, which is a breaking change that may require code updates for custom implementations.

For developers, the addition of the X-HTTP-Method-Override header provides a solution for handling large query parameters, and the improved ESLint rules help maintain cleaner code by preventing duplicate imports. The Stripe plugin enhancement gives more context in webhook handlers by providing the full request object.

Content editors will benefit from fixes to image handling, including the ability to save animated file types that previously had issues and improved thumbnail updates that no longer require page refreshes. The better handling of locale preferences also improves the user experience.

System administrators should pay attention to the schema validation improvements and review the migration guide to understand the breaking changes. The new warning when image resizing is enabled without Sharp configuration will help prevent misconfiguration issues.

Overall, this release focuses on improving developer experience, fixing bugs in the UI and validation, and enhancing the platform's capabilities with features like Gravatar integration and HTTP method override support.

Full Release Notes

v3.0.0-beta.47 (2024-06-13)

Features

  • adds X-HTTP-Method-Override header (#6487) (7bb2e3b)
  • plugin-stripe: add full req object to stripe webhook handlers (#6770) (78db50a)
  • use Gravatar for default avatar (#6765) (11de4b0)
  • warn if image resizing enabled but sharp is not passed to config (#6763) (ed0820f)

Bug Fixes

  • adds translation for authentication:apiKey (#6771) (f36bf5e)
  • attempt to use user locale preference when not set as query param (#6761) (082650c)
  • adds siteName to openGraphSchema joi validation (#6764) (0162560)
  • payload, ui: unable to save animated file types with undefined image sizes (#6757) (e148243)
  • meta.icons type and schema validation (#6759) (8e56328)

BREAKING CHANGES

  • Makes Gravatar the default

Contributors

Statistics:

File Changed124
Line Additions1,493
Line Deletions260
Line Changes1,753
Total Commits15

User Affected:

  • Need to be aware of Gravatar becoming the default for user avatars (breaking change)
  • Can now use X-HTTP-Method-Override header to bypass query param limitations
  • Will receive warnings when image resizing is enabled without Sharp being configured
  • Benefit from improved ESLint rules to prevent duplicate imports
  • Get access to full request object in Stripe plugin webhook handlers

Contributors:

JarrodMFleschdenolfejacobsfletchPatrikKozaknvtipaulpopusandershermansen