Home

>

Tools

>

Strapi

>

Releases

>

3.0.0-beta.18.5

Strapi Release: 3.0.0-beta.18.5

Tag Name: v3.0.0-beta.18.5

Release Date: 1/21/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-beta.18.5 introduces a major new feature: Webhooks, allowing you to trigger HTTP callbacks when events occur in your Strapi application. This release also includes numerous UI improvements to the Content-Type Builder and Content Manager, enhanced documentation, and various bug fixes. The update focuses on improving developer experience with better validation, error handling, and service architecture.

Highlight of the Release

    • Introduction of Webhooks feature for integrating Strapi with external services
    • Improved Content-Type Builder modal stepper UI
    • Enhanced Content Manager with better filter picker and error states
    • Better validation for components with min/max and datetime fields
    • Improved service architecture to allow for better overrides
    • Expanded documentation including provider configs and article scheduling

Migration Guide

No breaking changes were introduced in this release that would require a specific migration guide. The new features like webhooks are additive and don't affect existing functionality.

If you're using service overrides, note that the framework now uses strapi.services instead of direct requires, which should make your overrides more reliable.

Upgrade Recommendations

This release introduces valuable new features like webhooks and fixes several bugs, making it recommended for all users to upgrade.

For developers working on custom plugins or extensions that override Strapi services, this update is particularly beneficial as it improves the service architecture.

Content editors will appreciate the UI improvements in the Content-Type Builder and Content Manager.

To upgrade:

  1. Make sure to back up your project
  2. Update your dependencies in package.json to point to v3.0.0-beta.18.5
  3. Run npm install or yarn install to update
  4. Restart your Strapi application

Bug Fixes

Admin UI Fixes

  • Fixed YUP schema validation for components with min and max validations
  • Fixed date type editing in the Content-Type Builder
  • Improved icon display in error states
  • Enhanced drag experience for components
  • Fixed CTB sublist button UI

Plugin and Framework Fixes

  • Fixed issue with attribute not found in relations
  • Fixed keeping autoPopulate: false options on content type updates
  • Corrected location of service overrides
  • Removed soft hyphen (U+00AD) from reset password email subject line
  • Fixed querystring handling when reading provider from context path
  • Fixed RFC-822 compliance for email addresses (no longer requiring double quotes)
  • Fixed role retrieval via GraphQL queries

Documentation Corrections

  • Fixed documentation type on request verb
  • Updated user permission docs to use correct user ID attribute (id instead of _id)
  • Fixed slug guide
  • Fixed various typos including invalid date format

New Features

Webhooks

The major new feature in this release is the introduction of webhooks, allowing you to trigger HTTP callbacks when specific events occur in your Strapi application. This enables seamless integration with external services and systems.

  • Configure webhooks through the admin interface
  • Set up event triggers for create, update, and delete operations
  • Add custom headers to webhook requests
  • Configure default headers for all webhooks
  • Secure your webhooks with proper validation

Custom Files to Ignore in Watch Mode

You can now specify custom files to ignore in watch mode, giving you more control over which files trigger server restarts during development.

Scheduling Parameters for SendGrid Provider

The SendGrid email provider now supports scheduling parameters, allowing you to schedule emails for future delivery.

Security Updates

No specific security fixes were mentioned in this release.

Performance Improvements

Testing and Code Quality

  • Refactored tests and added CodeCov integration for better test coverage reporting
  • Improved ESLint configuration for front-end files to ensure better code quality

Service Architecture

  • Now using strapi.services instead of direct requires, allowing for better service overrides
  • Created an entity service to share between core service and content manager

Impact Summary

This release significantly enhances Strapi's integration capabilities with the introduction of webhooks, allowing developers to connect their Strapi instance with external services and systems. The webhook feature supports various event triggers and custom headers, making it a powerful tool for building connected applications.

The UI improvements to the Content-Type Builder and Content Manager provide a better user experience for content editors, with enhanced validation, error states, and drag-and-drop functionality. The filter picker now uses Buffetjs components, aligning with Strapi's design system.

Several bug fixes address issues with validation, date handling, and service architecture, making the platform more stable and reliable. The improved service architecture using strapi.services instead of direct requires allows for better service overrides, which is particularly valuable for developers extending Strapi's functionality.

Documentation has been expanded with new guides on article scheduling and provider configurations, helping developers make better use of Strapi's features.

Full Release Notes

💅 Enhancement

🐛 Bug fix

  • [Admin] Fix yup schema for component with min and max validations (#4921) @soupette
  • [Admin] Fix edit date types (#4945) @soupette
  • [Admin] Fix icons when error state, improve drag experience (#5024) @soupette
  • [Documentation] Update user permission docs to use correct user id attribute (#4976) @vilhelmmelkstam
  • [Plugin] Add datetime and time validators in ctb (#4944) @alexandrebodin
  • [Plugin] Use strapi.services instead of requires to allow overrides (#4947) @alexandrebodin
  • [Plugin] Fix - keep autoPopulate:false options on update (#4949) @pataiadam
  • [Plugin] fixed location of overrides (#4959) @krizic
  • [Plugin] Remove soft hyphen (U+00AD) from reset password email subject line (#4980) @nurikabe
  • [Plugin] remove querystring from ctx.path when reading provider (#4994) @fregu
  • [Plugin] RFC-822 doesn't require double quotes around the descriptive name in an email address (#5018) @nurikabe
  • [Plugin] Fix get role via GraphQL (#5027) @lauriejim

🚀 New feature

Statistics:

File Changed268
Line Additions6,322
Line Deletions1,720
Line Changes8,042
Total Commits250

User Affected:

  • Can now use webhooks to integrate Strapi with external services
  • Benefit from improved service architecture allowing for better overrides
  • Can specify custom files to ignore in watch mode
  • Have access to better validation for datetime and time fields in Content-Type Builder

Contributors:

soupettekuldipemvirginiekyprofispojkaalexandrebodinMightySCollinscebreusloongmxbtlauriejimjozefcipakrizicpataiadamToyroneslackrmelkstamnurikabefreguadcarMatWrz