0.9.0 (2021-08-02)
Features
- removes sanitization of configs before plugins are instantiated (8af3947)
Tag Name: v0.9.0
Release Date: 8/2/2021
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.
Payload CMS v0.9.0 removes the sanitization of configurations before plugins are instantiated, giving plugin developers more flexibility and control. This change allows plugins to modify any part of the configuration without being limited by premature sanitization, enabling more powerful plugin capabilities.
If you've developed custom plugins for Payload, you should be aware that your plugin code will now run before configuration sanitization occurs. This means:
For most users who simply use Payload and its plugins, no migration steps are necessary.
This release contains a significant change to how plugins interact with configurations, but doesn't introduce breaking changes for most users.
To upgrade, run:
npm install [email protected]
# or
yarn add [email protected]
No specific bug fixes were mentioned in this release.
In previous versions, Payload would sanitize configurations before plugins were instantiated, which limited what plugin developers could modify. With v0.9.0, this sanitization step has been removed from the early configuration process, allowing plugins to:
This change gives plugin developers significantly more flexibility and power when extending Payload's functionality.
No security fixes were mentioned in this release.
No specific performance improvements were mentioned in this release.
This release fundamentally changes how Payload handles configuration sanitization in relation to plugins. By removing the sanitization step before plugin instantiation, Payload gives plugin developers significantly more power and flexibility.
The change enables plugin developers to access and modify raw configuration data before it gets sanitized, opening up new possibilities for plugin functionality that wasn't possible before. This architectural change doesn't introduce new user-facing features directly but instead enhances the plugin development experience and enables the creation of more powerful plugins.
For most users who don't develop plugins, this change will be invisible but potentially beneficial as it may enable plugin authors to create more feature-rich extensions. Plugin developers will need to be aware that their code now runs in a different context of the configuration lifecycle.