Home

>

Tools

>

Strapi

>

Releases

>

4.11.7

Strapi Release: 4.11.7

Tag Name: v4.11.7

Release Date: 7/19/2023

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 v4.11.7 introduces support for transferring assets to and from external providers, fixes several bugs including issues with i18n locale actions, useRBAC hook, and route handling. The release also includes significant refactoring by removing the babel EE/CE plugin and simple menu v1, along with dependency updates. This release skips v4.11.6 due to publication errors.

Highlight of the Release

    • Support for transferring assets to and from external providers
    • Fixed i18n locale actions that were incorrectly targeting default locale
    • New CLI command 'components:list' for listing components
    • Improved useRBAC hook to recalculate when user permissions change
    • Fixed route handling to prevent duplicate routes
    • Removed babel EE/CE plugin and simplified admin codebase

Migration Guide

No specific migration steps are required for this update. However, if you were using the babel EE/CE plugin in your custom code, you should update your code to use the new useEnterprise hook instead.

For general updates, follow the standard Strapi update procedure:

npm install @strapi/[email protected] @strapi/[email protected] @strapi/[email protected]

Or with yarn:

yarn upgrade @strapi/[email protected] @strapi/[email protected] @strapi/[email protected]

Upgrade Recommendations

This is a recommended upgrade for all Strapi users, especially those who:

  1. Use external asset providers like AWS S3 or Cloudinary and need to transfer assets between environments
  2. Work with internationalized content and have experienced issues with locale-specific actions
  3. Have encountered issues with the useRBAC hook not updating properly when permissions change
  4. Have seen duplicate routes in their API

The update includes important bug fixes and new features with minimal risk of breaking changes. Users should follow the standard update procedure to upgrade from previous versions.

Bug Fixes

Fixed i18n Locale Actions

Fixed an issue where entity locale actions were incorrectly targeting the default locale instead of the currently selected locale. This ensures that actions like publishing or unpublishing content in a specific locale work correctly.

useRBAC Hook Recalculation

The useRBAC hook now properly recalculates when the userPermissions argument changes, ensuring that permission checks remain accurate when user roles or permissions are updated.

Route Handling

Fixed an issue where routes could be registered multiple times, causing potential conflicts and unexpected behavior in the API.

CellFormatter Support

Added support for cellFormatter in the admin interface, ensuring proper data display in tables and lists.

External Provider i18n Integration

Fixed an issue where the system was attempting to add API endpoints for content type plugins using i18n, which was causing errors.

Accessibility Improvements

Added missing translation for aria-label in the content-type builder, improving accessibility for screen reader users.

New Features

Asset Transfer Between External Providers

The data transfer system now supports transferring assets to and from external providers like AWS S3 and Cloudinary. This allows for seamless migration of media assets when moving between different environments or storage solutions.

New CLI Command: components:list

A new CLI command has been added to list all available components in your Strapi application. This provides developers with a quick way to see what components are available for use in their content types.

Security Updates

No specific security fixes were mentioned in this release.

Performance Improvements

Admin Interface Refactoring

The removal of the simple menu v1 and babel EE/CE plugin has resulted in a cleaner, more maintainable codebase. This refactoring helps reduce the bundle size and improves the overall performance of the admin interface.

Updated Design System

Updated the design system to version 1.8.2, which includes performance optimizations and improved component rendering.

Impact Summary

Strapi v4.11.7 delivers significant improvements for developers and content managers alike. The standout feature is the ability to transfer assets between different storage providers, making migrations and environment changes much smoother. This addresses a long-standing pain point for teams using external providers like AWS S3 or Cloudinary.

The release also fixes several important bugs, particularly around internationalization, where locale actions were incorrectly targeting the default locale instead of the selected one. The useRBAC hook now properly recalculates when user permissions change, ensuring consistent permission handling throughout the application.

For developers, the codebase has been significantly refactored by removing the babel EE/CE plugin and simple menu v1, resulting in a cleaner and more maintainable codebase. The new CLI command for listing components provides a helpful tool for development workflows.

Overall, this release enhances stability, adds useful features, and continues Strapi's focus on developer experience and content management capabilities.

Full Release Notes

Skipping v4.11.6 due to publication errors

🔥 Bug fix

  • [core:admin] Add cellFormatter support (#17347) @markkaylor
  • [core:admin] Fix: Remove @strapi/babel-plugin-switch-ee-ce again (#17353) @gu-stav
  • [core:content-manager] fix(i18n): entity locale actions were aimed at default locale (#17335) @joshuaellis
  • [core:content-type-builder] add translation for aria-label (#17271) @nitinmadelyn
  • [core:data-transfer] Transfer assets to and from external providers (#17105) @Bassel17
  • [core:helper-plugin] fix(helper-plugin): useRBAC needs to recalc if the userPermissions argument changes (#17333) @joshuaellis
  • [core:strapi] Return routes once only (#17290) @alexandrebodin
  • [plugin:i18n] Do not try to add API endpoint for content type plugins using i18N (#17270) @alexandrebodin

⚙️ Chore


📚 Update and Migration Guides

  • General update guide can be found here
  • Migration guides can be found here 📚

Statistics:

File Changed168
Line Additions3,454
Line Deletions10,787
Line Changes14,241
Total Commits98

User Affected:

  • Can now transfer assets between different storage providers
  • Benefit from fixed route handling that prevents duplicate routes
  • Have access to a new CLI command for listing components
  • Need to be aware of the removal of babel EE/CE plugin if they were using it in custom code

Contributors:

Bassel17boazpoolmanchristiancp100dependabot[bot]joshuaellisMarc-Roigalexandrebodinnitinmadelynjhoward1994markkaylorConvly