Home

>

Tools

>

Strapi

>

Releases

>

4.1.12

Strapi Release: 4.1.12

Tag Name: v4.1.12

Release Date: 5/25/2022

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.1.12 is a maintenance release that includes numerous bug fixes, enhancements, and a few new features. Key improvements include fixing issues with the Users & Permissions plugin, enhancing component handling in the Content Manager, making component icons optional, and improving the CLI generators. This release also adds better state sharing between lifecycle events and includes several documentation updates.

Highlight of the Release

    • Fixed issues with Users & Permissions plugin mutations including deleteUsersPermissionsUser
    • Made component icons optional with fallback to dice-d6 icon
    • Improved state sharing between database lifecycle events (beforeXXX and afterXXX)
    • Enhanced CLI generators with validation for plugin, middleware, and policy names
    • Fixed validation for empty email strings in API
    • Fixed layout issues in media advanced settings
    • Added Catalan translation for Upload Plugin UI

Migration Guide

No specific migration steps are required for this release as it primarily contains bug fixes and enhancements that don't break existing functionality.

If you're upgrading from an earlier version, please refer to the official Strapi migration guides for comprehensive instructions.

Upgrade Recommendations

This release contains numerous bug fixes and enhancements that improve the stability and functionality of Strapi. It's recommended to upgrade to v4.1.12, especially if you're experiencing any of the issues that have been fixed in this release.

The upgrade process should be straightforward:

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

Or if you're using Yarn:

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

After upgrading, restart your Strapi application to apply the changes.

Bug Fixes

Users & Permissions Plugin Fixes

  • Fixed the deleteUsersPermissionsUser mutation and other role-related mutations that were not working properly
  • Improved error handling for user not found scenarios
  • Fixed email confirmation GraphQL mutation

Content Manager Improvements

  • Fixed error messages when repeatable components are nested
  • Fixed CTB not adding all field extensions
  • Fixed media advanced settings layout
  • Date fields can now be selected as component main fields

API & Validation Fixes

  • Fixed empty string validation in API (empty strings are no longer accepted when they should be rejected)
  • Fixed required attributes validation on POST requests in the documentation plugin
  • Fixed missing items property that was causing infinite loading on error schema

CLI & Core Fixes

  • Fixed an issue where git config files that look like directories were causing problems
  • CLI no longer prompts to choose installation type when database options are provided
  • Fixed actionOptions not being taken into account by the upload provider

New Features

Component Icons Now Optional

Component icons are now optional in the Content-Type Builder. When no icon is specified, the system will automatically use a dice-d6 icon as a fallback. This provides more flexibility when creating components while maintaining a consistent UI experience.

Improved State Sharing Between Lifecycle Events

Database lifecycle events now properly share state between "beforeXXX" and "afterXXX" events. This enhancement allows for better data flow and state management throughout the lifecycle of database operations, making it easier to implement complex logic that spans multiple lifecycle hooks.

Security Updates

No specific security fixes were mentioned in this release.

Performance Improvements

No specific performance improvements were highlighted in this release. The focus was primarily on bug fixes, feature enhancements, and documentation updates.

Impact Summary

Strapi v4.1.12 is primarily a maintenance release that addresses several important bugs and adds a few quality-of-life improvements. The most significant impacts include:

  1. Fixed Users & Permissions Plugin Issues: Several mutations that were not working properly have been fixed, improving the reliability of user management operations.

  2. Enhanced Component Handling: Making component icons optional and fixing issues with repeatable components improves the content modeling experience.

  3. Improved Developer Experience: Better state sharing between lifecycle events and enhanced CLI generators make development more intuitive and less error-prone.

  4. Better Validation: Fixed issues with empty email validation and required attributes on POST requests improve data integrity.

  5. UI Improvements: Fixed layout issues in media advanced settings and added Catalan translation for the Upload Plugin UI.

These changes collectively enhance the stability, usability, and developer experience of Strapi without introducing breaking changes.

Full Release Notes

🔥 Bug fix

  • [cli] Don't prompt to choose installation type when user has provided database options (#12694) @cupofnestor
  • [core:content-manager] RepeatableComponent: Fix error messages when component is nested (#12975) @gu-stav
  • [core:content-manager] Allow date fields to be selected as component main fields (#13006) @gu-stav
  • [core:content-type-builder] [Fix] CTB Media advanced settings layout (#13315) @ronronscelestes
  • [core:content-type-builder] Fix CTB not adding all field extensions (#13354) @sargreal
  • [core:strapi] #12081 Fix empty string is accepted by API (#12170) @DanieleAurilio
  • [core:strapi] migration fix: skip git config file that looks like dir (#12277) @jamidwyer
  • [core:upload] Fix actionOptions not taking into account by the upload provider (#13018) @gu-stav
  • [plugin:documentation] [plugin:documentation] fix required attributes on post requests (#13323) @markkaylor
  • [plugin:documentation] add missing items property causing infinite load on error schema (#13339) @markkaylor
  • [plugin:graphql] fix emailConfirmation graphql mutation (#12773) @e23thr
  • [plugin:users-permissions] fix: handle user not found error (#12196) @kayac-chang
  • [plugin:users-permissions] Fix not working deleteUsersPermissionsUser and mutations related to role (#12454) @iicdii

🚀 New feature

  • [core:admin] Make component icons optional (#13256) @gu-stav
  • [core:database] Fix state not being shared with "beforeXXX" and "afterXXX" events (#12203) @rgoupil

💅 Enhancement

📖 Documentation

⚙️ Chore


📚 Migration guides can be found here 📚

Statistics:

File Changed87
Line Additions7,377
Line Deletions980
Line Changes8,357
Total Commits111

User Affected:

  • Fixed issues with empty email validation in API
  • Improved state sharing between database lifecycle events
  • Enhanced CLI generators with better validation for plugin, middleware, and policy names
  • Fixed issues with git config files being mistakenly treated as directories

Contributors:

cupofnestorDanieleAurilioderrickmehaffykayac-changsunnysonxmarincatanjamidwyerWalkingPizzaiicdiie23thrdavefvpetersg83pointoutronronscelestesalexandrebodinrgoupilmarkkaylorConvlydependabot[bot]Krito1997tahaziauciheartlessnanlonnie-nguyensargrealvincentbpro