Home

>

Tools

>

Strapi

>

Releases

>

3.0.0-rc.1

Strapi Release: 3.0.0-rc.1

Pre Release

Tag Name: v3.0.0-rc.1

Release Date: 5/18/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.0.0-rc.1 introduces several key enhancements including the ability to use Strapi behind a proxy with subpaths, configuration dump and restore CLI commands, user count functionality, and improved email configuration. This release also adds new authentication providers (Twitch, VK), fixes authentication-related bugs, and includes extensive documentation updates. This is a pre-release with breaking changes, so migration from existing apps is not recommended until the final v3.0.0 release.

Highlight of the Release

    • Added ability to use Strapi behind a proxy with subpaths via new server.url and admin.url configuration
    • Introduced configuration dump and restore CLI commands for easier deployment and backup
    • Added user count functionality to the Users & Permissions plugin
    • Moved email configuration from database to files for better version control and deployment
    • Added new authentication providers: Twitch and fixed VK provider
    • Extensive documentation improvements including proxy setup guides for Nginx, Caddy, and HAProxy

Migration Guide

Email Configuration Migration

The email configuration has been moved from the database to files. If you're upgrading from a previous version, you'll need to:

  1. Extract your current email configuration from the database
  2. Create or update your ./config/plugins.js file with the email configuration:
module.exports = ({ env }) => ({
  email: {
    provider: 'sendmail',
    settings: {
      defaultFrom: '[email protected]',
      defaultReplyTo: '[email protected]',
    },
  },
});

Proxy Configuration

If you're using Strapi behind a proxy, you'll need to update your configuration to use the new server.url and admin.url options:

module.exports = ({ env }) => ({
  server: {
    url: 'https://example.com/api', // Public URL of your API
  },
  admin: {
    url: '/dashboard', // Path to your admin panel
  },
});

Breaking Changes Warning

⚠️ This pre-release contains breaking changes and should not be used to migrate existing applications. Wait for the final v3.0.0 release with complete migration guides before upgrading production applications.

Upgrade Recommendations

For Testing Only

This is a pre-release (rc.1) version and contains breaking changes. It is not recommended to upgrade existing applications to this version. Instead, you should:

  1. Create a new test application to explore the new features:

    npx create-strapi-app@rc my-test --quickstart
    
  2. Wait for the final v3.0.0 release with complete migration guides before upgrading production applications.

  3. If you're starting a new project and don't need to migrate data, you can use this release for testing purposes, but be aware that further changes may occur before the final release.

Post-Installation Steps

After installation, if you're using the new features:

  1. Configure proxy settings if needed in your configuration files
  2. Set up email configuration in the file system rather than through the admin panel
  3. Configure any new authentication providers you wish to use

Bug Fixes

Authentication and Registration Fixes

  • Fixed an issue where the GraphQL plugin was not ignoring private fields on user registration
  • Fixed the VK authentication provider that was not working correctly
  • Changed the registration response behavior to only include JWT if email confirmation is disabled

Other Fixes

  • Fixed various documentation links and typographical errors
  • Updated Docker volume configuration for PostgreSQL
  • Fixed code examples and configuration samples in documentation

New Features

Configuration Dump and Restore CLI

A new CLI feature has been added that allows developers to dump and restore Strapi configurations. This is particularly useful for deployment processes and backup strategies.

# Dump configuration
strapi configuration:dump

# Restore configuration
strapi configuration:restore

User Count Functionality

The Users & Permissions plugin now includes a user count feature with a new countSearch method in the user service. This allows for more efficient user management and pagination.

New Authentication Providers

  • Twitch Authentication: Added support for Twitch as an authentication provider
  • VK Provider Fix: Fixed the VK authentication provider that was previously not working correctly

Security Updates

No specific security fixes were mentioned in the release notes.

Performance Improvements

No specific performance improvements were highlighted in this release. The focus appears to be on feature enhancements, bug fixes, and documentation improvements.

Impact Summary

Strapi v3.0.0-rc.1 introduces significant architectural changes that improve deployment flexibility, particularly for applications running behind proxies with subpaths. The move from database to file-based email configuration aligns with modern DevOps practices by making configuration more version-control friendly.

The new CLI commands for configuration management enhance deployment workflows, while the user count functionality improves user management capabilities. The addition and fixes to authentication providers expand the platform's integration options.

This release is primarily aimed at developers and system administrators who will benefit from the improved deployment options and configuration management. Content managers will see minimal changes, mainly in the form of updated translations and user management improvements.

As a release candidate, this version contains breaking changes and is not recommended for production use or migration from existing applications. It's best used for testing and evaluation purposes until the final v3.0.0 release with proper migration guides is available.

Full Release Notes

🎉 Do you want to test this pre-release? 🎉

You can run

npx create-strapi-app@rc my-test --quickstart

⚠️ DO NOT MIGRATE ⚠️

This pre-release contains breaking changes so you should not try migrating an existing app until we release the final v3.0.0 release with the migration guides.

For the curious ones out there, here are a few more details:

💅 Enhancement

🐛 Bug fix

  • [plugin:graphql] 💥 Ignore private fields input on user register (#6047) @gfpacheco
  • [plugin:users-permissions] fix vk providers (#5783) @sulakin
  • [plugin:users-permissions] 💥 in register, response will only include jwt if email confirmation is false (#6192) @ramigs

🚀 New feature

Statistics:

File Changed114
Line Additions2,309
Line Deletions2,305
Line Changes4,614
Total Commits98

User Affected:

  • Can now deploy Strapi behind a proxy with subpaths using the new server.url and admin.url configuration options
  • Have access to new configuration dump and restore CLI commands for easier deployment and backup
  • Can use new authentication providers (Twitch, VK) for user authentication
  • Need to adapt to the new file-based email configuration system instead of database storage

Contributors:

WalterCossutrick0derrickmehaffyLordSimalrobertpiosikJozefCulenkwinyyycalexandrebodinpetersg83gelomonalevosialouisguittonyedeyualirezakayepalmanssulakintechguydavesoupettelauriejimdiogotcorreiaramigs