TL;DR
Strapi v3.0.0-alpha.18 brings significant improvements to documentation, adds GraphQL tracing support, enhances the project creation experience, and fixes CORS configuration to support multiple domains. This release focuses on developer experience with better documentation, more robust CLI tools, and improved database handling.
Highlight of the Release
- Added support for Apollo server tracing in GraphQL plugin
- Fixed CORS configuration to support multiple domains
- Added force option for Bookshelf when database is not empty
- Improved
strapi new command with debug option
- Comprehensive documentation updates and fixes
Migration Guide
Migrating from alpha.17 to alpha.18
A migration guide has been added to help users upgrade from alpha.17 to alpha.18. The guide covers the necessary steps to ensure a smooth transition between these alpha versions.
GraphQL Tracing Configuration
If you're using the GraphQL plugin and want to enable tracing:
- Update your GraphQL configuration in
./extensions/graphql/config/settings.json or through the admin panel
- Set the
tracing option to true (it's false by default)
{
"endpoint": "/graphql",
"tracing": true,
"shadowCRUD": true,
"playgroundAlways": false,
"depthLimit": 7,
"amountLimit": 100
}
Upgrade Recommendations
For users currently on v3.0.0-alpha.17, upgrading to v3.0.0-alpha.18 is recommended to benefit from the CORS configuration fix, GraphQL tracing capabilities, and improved CLI tools.
Since this is still an alpha release, it's advisable to:
- Back up your project before upgrading
- Test thoroughly in a development environment before deploying to production
- Review the migration guide from alpha.17 to alpha.18
- Pay special attention to the CORS configuration if you're using multiple domains
To upgrade, run:
npm install [email protected] --save
or
yarn upgrade [email protected]
Bug Fixes
CORS Configuration Fix
Fixed an issue with CORS configuration that prevented users from specifying multiple domains. The fix improves the handling of domain arrays in CORS settings, allowing proper cross-origin resource sharing with multiple domains.
Documentation Plugin Issues
Resolved issues with the plugin documentation quick start guide that was causing errors for users following the directions. The documentation has been updated to match the expected behavior, addressing problems reported in issues #1116 and #1972.
Various Documentation Fixes
- Fixed anchor in links from i18n guide to concepts
- Fixed spelling mistakes and typos throughout the documentation
- Updated middleware documentation with correct enable instructions
New Features
GraphQL Tracing Support
Added support for Apollo server tracing in the GraphQL plugin. This feature allows developers to monitor and analyze GraphQL query performance. The tracing option is disabled by default and can be enabled through configuration.
Enhanced CLI Experience
The strapi new command has been improved with a new debug option, making it easier to troubleshoot issues during project creation. In development mode, the command now uses local connectivity scripts for better performance.
Force Option for Database Operations
Added a force option when working with non-empty databases using Bookshelf. This allows developers to proceed with operations even when the target database contains existing data, providing more flexibility in development workflows.
Security Updates
No specific security fixes were mentioned in this release.
Performance Improvements
GraphQL Performance Monitoring
The addition of Apollo server tracing support in the GraphQL plugin enables performance monitoring of GraphQL queries. When enabled, this feature provides detailed timing information for each resolver in a GraphQL query, helping developers identify and address performance bottlenecks.
Local Connectivity Script in Development Mode
In development mode, Strapi now uses local connectivity scripts which can improve the development experience and performance of the application during the development phase.
Impact Summary
This release enhances Strapi's developer experience with significant documentation improvements, new features like GraphQL tracing, and important bug fixes. The CORS configuration fix addresses a limitation that prevented using multiple domains, which is crucial for applications serving content to various frontend applications.
The addition of the force option for database operations with Bookshelf provides more flexibility when working with existing databases. The improved strapi new command with debug options makes project initialization more robust and easier to troubleshoot.
Documentation has received substantial attention in this release, with numerous fixes and improvements to ensure developers have accurate and helpful guidance. The plugin quick start documentation has been updated to work as expected, addressing long-standing issues.
Overall, this alpha release continues to refine Strapi's functionality and usability as it progresses toward a stable release, with particular focus on developer tooling and documentation quality.
Full Release Notes
💅 Enhancement
🚀 New feature
🐛 Bug fix
- [Framework] Fix so you can choose multiple domains for the cors (#2465) @gianca970226