Home

>

Tools

>

Strapi

>

Releases

>

3.2.0

Strapi Release: 3.2.0

Tag Name: v3.2.0

Release Date: 10/6/2020

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.2.0 introduces two major features: Draft and Publish functionality that allows content creators to save drafts before publishing, and a new template system for the CLI that enables starting projects with pre-configured templates. The release also includes GraphQL improvements, Thai language translations, and various UI enhancements.

Highlight of the Release

    • Introduction of Draft and Publish feature for content management workflow
    • New template system for the CLI with --template option
    • GraphQL improvements including deleteFile mutation and publicationState parameter
    • Thai language translations for admin interface and plugins
    • Private option field for relations

Migration Guide

Migration from v3.1.x to v3.2.0

  1. Update your dependencies:

    npm install [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected]
    

    Or if using yarn:

    yarn upgrade [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected]
    
  2. Database changes: The Draft and Publish feature adds a new published_at field to content types that have the feature enabled. This field will be automatically added when you enable the feature for a content type.

  3. API changes:

    • REST API now accepts a _publicationState parameter to filter content by publication state
    • GraphQL queries now accept a publicationState argument for the same purpose
    • By default, only published content is returned from the API unless specified otherwise
  4. Permission changes:

    • A new "Publish" permission has been added to the permission system
    • The Editor role has this permission by default, but the Author role does not

For more detailed migration instructions, refer to the official migration guide.

Upgrade Recommendations

This is a recommended upgrade for all Strapi users, especially for those who need a content workflow with draft capabilities.

When to upgrade:

  • If you need draft and publish functionality for your content workflow
  • If you want to use the new template system for creating projects
  • If you need the new GraphQL features like the deleteFile mutation

Preparation before upgrading:

  1. Back up your database
  2. Back up your project files
  3. Review the migration guide for any breaking changes
  4. Test the upgrade in a development environment before applying to production

After upgrading:

  1. Check your content types and enable the Draft and Publish feature where needed
  2. Update your API consumers to handle the new publication state if necessary
  3. Review and adjust permissions for the new publish action

Bug Fixes

  • Fixed visibility of plugin installation and uninstallation routes
  • Fixed PostgreSQL data path in documentation example
  • Fixed schema handler set disregarding falsy values
  • Fixed count queries
  • Fixed author role for the publish permission action
  • Fixed publicationState for nested populations in GraphQL queries
  • Fixed unwanted extension folder creation for admin schemas

New Features

Draft and Publish

The major new feature in this release is the Draft and Publish functionality, which allows content creators to save drafts before publishing content. Key aspects include:

  • Content can now have a publication state (draft or published)
  • New UI controls to publish, unpublish, and save drafts
  • Visual indicators showing content status in the list view
  • Permission system to control who can publish content
  • REST API parameter _publicationState to filter content by publication state
  • GraphQL publicationState argument for queries

CLI Templates

A new template system has been added to the CLI:

  • Use create-strapi-app --template <template-name> to start a project with a pre-configured template
  • Templates can include pre-configured content types, plugins, and settings
  • Developers can create and share their own templates
  • Official templates will be available from the Strapi team

GraphQL Improvements

  • New deleteFile mutation for the upload plugin
  • Added publicationState argument for GraphQL queries to filter by publication state
  • Better documentation for sorting GraphQL queries

Security Updates

No security fixes were mentioned in this release.

Performance Improvements

No specific performance improvements were highlighted in this release.

Impact Summary

Strapi v3.2.0 introduces significant workflow improvements with the Draft and Publish feature, which transforms how content is created and managed in Strapi. This feature allows content creators to work on drafts before making them public, providing a more professional publishing workflow.

The new template system for the CLI is another major addition that will speed up project initialization and make it easier to share project configurations. This will be particularly valuable for agencies and teams working on multiple Strapi projects.

The GraphQL improvements, including the new deleteFile mutation and publicationState parameter, enhance the API capabilities for frontend developers. The addition of Thai language translations makes Strapi more accessible to Thai-speaking users.

Overall, this release focuses on improving the content management workflow, developer experience, and internationalization. The Draft and Publish feature in particular represents a significant step forward in Strapi's capabilities as a professional CMS.

Full Release Notes

🚀 New feature

💅 Enhancement

  • [core:framework] Add --template option to create-strapi-app (#8112) @remidej
  • [documentation] LeftMenuHeader Path FIX (#7907) @cotapon
  • [documentation] Add docs for sorting graphql queries (#8155) @wesbos
  • [documentation] Fix heroku guide to set database settings in proper env path (#8165) @derrickmehaffy
  • [plugin:content-type-builder] Feat: Add private option field for relations (#8149) @tanmoyopenroot

🌏 Translation

🐛 Bug fix

  • [core:framework] Fix (un)install plugins routes visibility (#8158) @Convly

Migration

Follow the migration guide here


📚 Migration guides can be found here 📚

Statistics:

File Changed300
Line Additions6,558
Line Deletions2
Line Changes6,560
Total Commits193

User Affected:

  • Can now save content as drafts before publishing with the new Draft and Publish feature
  • Can view content status (draft/published) in the content list
  • Can publish, unpublish, and save drafts with new UI controls

Contributors:

remidejdanilopolaniIgi4soupettealexandrebodinConvlypetersg83HichamELBSIderrickmehaffyMattieBeltlauriejimMcastresSirDaevtanmoyopenrootdependabot[bot]wesbosthemaxaboymeganelachenyfrancois2metz