TL;DR
Strapi v3.0.0-alpha.26 introduces significant enhancements to the Content Type Builder with a complete front-end refactoring, adds powerful deep filtering capabilities, and includes numerous documentation improvements. This release focuses on improving developer experience with better UI interactions, more robust database querying, and fixes for various issues before the beta release.
Highlight of the Release
- Complete front-end refactoring of the Content Type Builder for improved user experience
- New deep filtering capabilities for more powerful data queries
- SQL aliases support to allow the same table name multiple times in a query
- Fixed big integer support in GraphQL
- Improved documentation for Heroku deployment with PostgreSQL/MongoDB
- Enhanced event handling in the Content Type Builder
Migration Guide
Migrating from v3.0.0-alpha.25.2 to v3.0.0-alpha.26
Content Type Builder Changes
If you've customized the Content Type Builder interface, be aware that this release includes a complete front-end refactoring. You may need to update any custom code that interacts with the Content Type Builder.
Deep Filtering Implementation
The new deep filtering feature changes how complex queries can be constructed. If you're using custom query builders or have implemented workarounds for filtering related data, you should review and potentially refactor your code to take advantage of the new native capabilities.
Event Handling
If your plugins or custom code rely on synchronous event handling, you'll need to update your implementation as this release removes the synchronous way of sending events.
GraphQL Users
If you're using GraphQL with big integer fields, this release fixes support for these types. Update your GraphQL queries accordingly to properly utilize this fix.
Upgrade Recommendations
This release is recommended for all Strapi alpha users, especially those who:
- Use the Content Type Builder extensively
- Need complex filtering capabilities for related data
- Have experienced issues with GraphQL and big integers
- Deploy to Heroku (improved documentation available)
As this is still an alpha release, it's recommended to:
- Test thoroughly in a development environment before upgrading production
- Back up your database and configuration before upgrading
- Review the migration guide for any breaking changes that might affect your implementation
- Update any custom code that interacts with the Content Type Builder due to its complete refactoring
The upgrade process should be straightforward for most users, but those with heavy customizations should plan for additional testing time.
Bug Fixes
UI and Interface Fixes
- Fixed blue button styling issues (#3029)
- Fixed redirect behavior when editing a model in Content Type Builder (#3118)
- Fixed language settings in the Settings Manager (#3038)
Framework and Plugin Fixes
- Fixed front-end generators plugin functionality (#3030)
- Fixed big integer support in GraphQL for handling large numbers properly (#3090)
- Fixed various Content Type Builder issues before the beta release (#3088)
- Improved model attribute handling by properly trimming whitespace (#2994)
Event Handling Improvements
- Removed synchronous way of sending events for better performance (#3012)
- Fixed event handling in Content Type Builder (#3005)
- Enhanced database event triggering to ensure it runs when the connection is established (#3037)
New Features
Deep Filtering
The most significant new feature in this release is the addition of deep filtering capabilities (#2961). This powerful enhancement allows developers to create more complex and precise database queries, particularly when working with related data.
Deep filtering enables:
- Filtering records based on related entities' properties
- Creating more sophisticated queries without custom endpoints
- Improved data retrieval efficiency
This feature is particularly valuable when working with complex data structures and relationships, allowing for more targeted API requests.
SQL Aliases Support
A complementary enhancement to deep filtering is the addition of SQL aliases support (#3050), which allows the same table name to be used multiple times in a single query. This is essential for complex joins and relationships, especially when querying the same entity type through different relation paths.
Security Updates
No specific security fixes were mentioned in this release.
Performance Improvements
Event Handling Optimization
The removal of synchronous event handling (#3012) improves the overall performance of the system by preventing blocking operations during event dispatching. This change makes the application more responsive, especially during operations that trigger multiple events.
Database Connection Improvements
The enhancement to run database events only when the connection is established (#3037) ensures more reliable database operations and prevents unnecessary event processing when connections aren't ready, improving system efficiency.
Impact Summary
Strapi v3.0.0-alpha.26 represents a significant step forward in the platform's evolution toward beta status. The complete refactoring of the Content Type Builder improves the developer experience when creating and managing content types, while the addition of deep filtering capabilities dramatically enhances the query power available through the API.
The release addresses several long-standing issues and pain points, particularly around event handling, GraphQL support for big integers, and SQL query optimization with table aliases. These improvements collectively make Strapi more robust and capable for complex applications.
Documentation has also received considerable attention, with new guides for Heroku deployment and various clarifications and corrections throughout the documentation set.
While still an alpha release, v3.0.0-alpha.26 demonstrates Strapi's continued progress toward a stable, feature-rich headless CMS platform. The focus on developer experience, query capabilities, and fixing existing issues shows a commitment to quality and usability as the project approaches beta status.
Full Release Notes
💅 Enhancement
🐛 Bug fix
🚀 New feature