Home

>

Tools

>

Strapi

>

Releases

>

4.12.4

Strapi Release: 4.12.4

Tag Name: v4.12.4

Release Date: 8/9/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.12.4 brings several bug fixes and improvements to enhance the user experience. Key updates include fixes for the Media Library navigation, component view configuration, and bulk publishing. The release also includes TypeScript setup for helper-plugin, consolidation of admin roles hooks, and various dependency updates. These changes improve stability and developer experience across the platform.

Highlight of the Release

    • Fixed Media Library List View navigation for better user experience
    • Improved component view configuration saving
    • Enhanced bulk publishing with accurate count of already published entries
    • Setup helper-plugin for TypeScript conversion
    • Fixed file downloading in the upload plugin

Migration Guide

No specific migration steps are required for this patch release. As always, it's recommended to:

  1. Back up your project before updating
  2. Update your Strapi version in package.json
  3. Run npm install or yarn install to update dependencies
  4. Restart your Strapi application

For general update guidance, refer to the official update guide.

Upgrade Recommendations

This is a patch release (v4.12.1 to v4.12.4) that includes several bug fixes and improvements without introducing breaking changes. It's recommended for all users to upgrade to benefit from the fixes and enhancements.

The upgrade process should be straightforward:

npm install @strapi/[email protected] --save
# or
yarn upgrade @strapi/[email protected]

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

Bug Fixes

Media Library Fixes

  • List View Navigation: Fixed navigation issues in the Media Library List View (#17565), ensuring smoother browsing through media assets.
  • File Downloads: Improved file downloading by using native fetch instead of the API client (#17513), resolving issues with file downloads in the upload plugin.

Content Management Fixes

  • Component View Configuration: Fixed saving of component view configurations (#17579), ensuring that user preferences for component views are properly persisted.
  • Bulk Publishing: Enhanced the bulk publish modal to show an accurate count of already published entries (#17545), providing better feedback during bulk operations.
  • ListView Table: Added support for cell formatters in ListView tables (#17590), ensuring proper data display in list views.

TypeScript Fixes

  • Fixed sanitizeQuery types (#17556) to improve type safety when working with queries.

New Features

TypeScript Improvements

The helper-plugin has been set up for TypeScript conversion (#17460), improving type safety and developer experience. This is part of Strapi's ongoing effort to enhance TypeScript support throughout the codebase.

Admin Roles and Permissions

Admin roles and permissions data fetching hooks have been consolidated (#17527), providing a more streamlined approach to managing roles and permissions in the admin panel.

Build Process Enhancements

Source maps can now be enforced through an environment variable (#17458), making debugging easier during development.

Security Updates

No specific security fixes were mentioned in this release.

Performance Improvements

Admin Panel Performance

  • Marketplace and plugins hooks have been moved into their page contexts (#17533), improving code organization and potentially reducing unnecessary renders.
  • Consolidated useAdminRoles and useAdminRolePermissions hooks (#17527) for more efficient data fetching and state management.

Build Optimization

  • Source maps can now be enforced through an environment variable (#17458), providing better debugging capabilities without impacting production performance.

Impact Summary

This release focuses on bug fixes and quality-of-life improvements across the Strapi platform. Content editors will benefit from fixes to the Media Library navigation, component view configuration, and bulk publishing functionality. Developers will appreciate the TypeScript improvements and build process enhancements.

The consolidation of admin roles hooks and marketplace hooks improves code organization and potentially performance. The fixes to file downloading in the upload plugin and ListView table cell formatters enhance the overall user experience.

While this is a minor patch release (v4.12.1 to v4.12.4), it addresses several important issues that could impact daily workflows, making it a recommended upgrade for all Strapi users.

Full Release Notes

⚙️ Chore

  • [core:admin] Chore: Consolidate useAdminRoles and useAdminRolePermissions hooks (#17527) @gu-stav
  • [core:admin] Chore: Move marketplace and plugins hooks into their page contexts (#17533) @gu-stav
  • [core:helper-plugin] chore: setup helper-plugin for TS conversion (#17460) @joshuaellis
  • [dependencies] chore: bump strapi/eslint-config to 0.2.0 (#17486) @joshuaellis
  • [dependencies] chore(deps-dev): bump the eslint group with 2 updates (#17588) @dependabot
  • [tooling] Chore: Enforce build sourcemaps with an environment variable (#17458) @gu-stav

🔥 Bug fix

📖 Documentation

  • [docs] Docs: add audit logs to contributor docs (#17522) @Feranchz
  • [docs] Update: README files with new links + Strapi Cloud option (#17544) @Mcastres

📚 Update and Migration Guides

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

Statistics:

File Changed300
Line Additions3,326
Line Deletions5,535
Line Changes8,861
Total Commits36

User Affected:

  • Improved TypeScript support with helper-plugin setup for TS conversion
  • Better development experience with enforced source maps through environment variables
  • Fixed TypeScript types for sanitizeQuery
  • Updated dependencies including eslint configurations

Contributors:

McastresxyrolleConvlyalexandrebodinderrickmehaffysimotae14Feranchzdependabot[bot]joshuaellisMonsterDevelopernoobCode-69markkaylorMarc-Roigjhoward1994