Home

>

Tools

>

Strapi

>

Releases

>

3.4.6

Strapi Release: 3.4.6

Tag Name: v3.4.6

Release Date: 2/3/2021

Strapi LogoStrapi

Open-source headless CMS built with Node.js. Provides developers with complete freedom in choosing their favorite tools and frameworks for frontend development.

TL;DR

Strapi v3.4.6 is a maintenance release that addresses several critical bugs and introduces quality-of-life improvements. Key fixes include resolving issues with polymorphic relations, WYSIWYG editor text reversal, GraphQL performance, and regex validation. The update also enhances the upload plugin with new configuration options and improves frontend development workflow.

Highlight of the Release

    • Fixed WYSIWYG editor bug that was reversing text after adding formatting
    • Resolved critical GraphQL performance issues with complex queries
    • Fixed sanitize process removing polymorphic relations
    • Added support for actionOptions in upload plugin provider functions
    • Improved media library with better preview support for different file types

Migration Guide

No migration steps are required for this release as it primarily contains bug fixes and enhancements that don't introduce breaking changes.

If you're using the upload plugin with custom providers and want to take advantage of the new actionOptions feature, you can update your configuration to include these options. Refer to the upload plugin documentation for more details.

Upgrade Recommendations

This is a recommended upgrade for all Strapi v3.4.x users, especially those experiencing issues with:

  • WYSIWYG editor text reversal
  • GraphQL performance problems
  • Polymorphic relations being removed during sanitization
  • Custom session middleware errors
  • Regex validation in the content manager

The upgrade process should be straightforward with minimal risk as this is a patch release focused on bug fixes and enhancements without breaking changes.

Bug Fixes

Critical Bug Fixes

  • WYSIWYG Editor Text Reversal: Fixed an issue where text would be reversed after adding formatting blocks (bold, italic, underline) in the WYSIWYG editor.
  • Polymorphic Relations: Fixed a critical bug where the sanitize process was incorrectly removing polymorphic relations.
  • GraphQL Performance: Resolved several performance issues in GraphQL when handling complex queries.
  • Custom Session Middleware: Fixed erroneous error that occurred when there was a database configuration for a custom session middleware storage provider.
  • Regex Validation: Fixed issues with regex validation in the content manager.
  • Undefined Filter Values: Fixed handling of undefined filter values while still allowing null values to be found.
  • Content Manager IDs: Fixed issues with idsToOmit in the content manager.

New Features

Upload Plugin Enhancements

  • Responsive Breakpoints Configuration: The upload plugin now supports reading responsive breakpoints from configuration, allowing for more flexible image handling.
  • ActionOptions Support: Added support for actionOptions for provider upload and delete functions, enabling custom options to be passed to providers like Cloudinary.
  • Better Media Preview: Improved media preview functionality by getting preview mime type from thumbnails, which now properly supports video thumbnails.

Admin UI Improvements

  • Improved Frontend Development: Enhanced the development workflow by disabling the dot rule in watch mode, making the frontend development experience smoother.
  • Unsupported Media Preview: Added a preview message when media type is not supported, improving user feedback.
  • Fixed UI Overlapping: Increased padding to prevent question button from overlapping content.

Security Updates

No specific security fixes were mentioned in this release.

Performance Improvements

GraphQL Performance Enhancements

The release includes significant performance improvements for the GraphQL plugin, addressing "many many" performance issues that were affecting query execution, especially for complex queries with multiple relations.

Frontend Development Optimization

The development workflow has been improved by disabling the dot rule in watch mode, which makes the frontend development experience smoother and more efficient.

Impact Summary

Strapi v3.4.6 is a maintenance release that addresses several important bugs and introduces quality-of-life improvements across the platform. The most significant impact comes from fixing critical issues like the WYSIWYG editor text reversal bug, polymorphic relations being incorrectly removed during sanitization, and GraphQL performance problems.

For developers, the improvements to the upload plugin provide more flexibility with the new actionOptions support and responsive breakpoints configuration. Content editors will benefit from the fixed WYSIWYG editor and improved media preview functionality.

The release also includes several smaller enhancements like better error handling for undefined filter values, improved frontend development workflow, and various UI fixes. These changes collectively improve the stability and usability of the platform without introducing breaking changes.

Full Release Notes

🐛 Bug fix

  • [core:framework] Bug: Erroneous error if there is a database configuration for a custom session middleware storage provider. (#8457) @taylor-work
  • [core:framework] Fix sanitize removing polymorphic relations (#9310) @alexandrebodin
  • [plugin:content-manager] Fix idsToOmit (#9306) @soupette
  • [plugin:graphql] Fix some many many perf issues in graphQL (#9286) @alexandrebodin
  • [plugin:content-manager] Fix regex validation (#9237) @soupette

💅 Enhancement

  • [admin] Improve front end development (#9293) @soupette
  • [admin] fix typo "to access to" (#9303) @bglidwell
  • [core:cli] Update target.js: Change assignment of "ok" in "isValidTarget" function (#8477) @florianmarkusse
  • [core:framework] Fix undefined filter value (#8490) @MattieBelt
  • [core:tooling] Update .npmignore files (#8865) @jorrit
  • [documentation] Use https:// in package.json and README.md files (#9227) @jorrit
  • [plugin:upload] strapi-plugin-upload: Read responsive breakpoints from config (#9002) @blefevre
  • [plugin:upload] [Media Library] Get preview mime type from thumbnail (to support video thumbnail) (#9184) @darron1217
  • [plugin:upload] add support for actionOptions for provider upload and delete functions (#9219) @bglidwell

🌏 Translation

  • [plugin:upload] Adds missing import for italian translation of upload plugin (#9249) @dappiu

📚 Migration guides can be found here 📚

Statistics:

File Changed133
Line Additions1,135
Line Deletions973
Line Changes2,108
Total Commits54

User Affected:

  • Fixed issues with polymorphic relations in the sanitize process
  • Improved GraphQL performance for complex queries
  • Enhanced upload plugin with support for actionOptions for provider functions
  • Fixed regex validation in content manager
  • Improved frontend development workflow

Contributors:

virgilbugnariujorritsoupettedependabot[bot]bglidwellblefevreHichamELBSIMattieBeltdappiudarron1217alexandrebodinflorianmarkusse