TL;DR
Strapi v5.0.0-rc.15 brings important bug fixes and developer experience improvements as the platform moves closer to a stable v5 release. Key updates include fixes for draft relations handling, dependency updates, and a new codemod to help with component migration. The quickstart behavior has also been updated to disable the example app by default.
Highlight of the Release
- Fixed handling of draft relations between content types with and without Draft & Publish
- Added a codemod to replace CheckPagePermissions with Page component
- Updated micromatch dependency to fix potential issues
- Changed quickstart behavior to disable example app by default
Migration Guide
Migrating from CheckPagePermissions to Page Component
If your code uses the CheckPagePermissions component, you should use the newly provided codemod to migrate to the Page component:
npx @strapi/codemods transform check-page-permissions-to-page
This will automatically update your imports and component usage to the newer pattern.
Entity Service Decorator Removal
If you were using the entity service decorator in your custom code, you'll need to refactor those implementations. The decorator has been removed to improve the architecture. Consider using direct service methods instead.
Upgrade Recommendations
As this is a release candidate (RC) version, it's recommended for testing environments and early adopters who want to prepare for the upcoming stable v5 release. If you're already using v5.0.0-rc.14, upgrading to rc.15 is recommended to benefit from the bug fixes and improvements.
For production environments, it's still advisable to wait for the stable v5.0.0 release unless you specifically need these fixes.
Bug Fixes
Draft Relations Handling
Fixed an issue where relations from content types without Draft & Publish to content types with Draft & Publish were not properly handling draft status. The system now correctly returns only drafts in these relations, ensuring consistent behavior across different content type configurations.
Micromatch Update
Updated the micromatch dependency to address potential issues. This update ensures better pattern matching functionality throughout the application.
Entity Service Decorator Removal
Removed the entity service decorator that was causing issues. This change helps maintain a cleaner architecture and prevents potential conflicts in the service layer.
New Features
Codemod for Component Migration
A new codemod has been added to help developers migrate from the CheckPagePermissions component to the Page component. This tool will automatically update your code to use the newer component structure, making it easier to stay current with Strapi's best practices.
Quickstart Behavior Change
The quickstart behavior has been updated to disable the example app by default. This change streamlines the initial setup process for new Strapi projects, allowing developers to start with a cleaner slate.
Security Updates
No security fixes were mentioned in this release.
Performance Improvements
No specific performance improvements were highlighted in this release. The changes were primarily focused on bug fixes, developer experience enhancements, and codebase maintenance.
Impact Summary
This release candidate continues to refine Strapi v5 with important bug fixes and developer experience improvements. The fixes for draft relations handling will ensure more consistent content management when working with different content types. The removal of the entity service decorator represents an architectural improvement but may require code adjustments for custom implementations.
The new codemod for replacing CheckPagePermissions with the Page component will help developers migrate their code more easily. Additionally, the change to disable the example app by default in quickstart creates a cleaner starting point for new projects.
These changes collectively move Strapi closer to a stable v5 release by addressing known issues and improving the developer experience.