Home

>

Tools

>

Strapi

>

Releases

>

3.0.0-alpha.14.2

Strapi Release: 3.0.0-alpha.14.2

Tag Name: v3.0.0-alpha.14.2

Release Date: 9/26/2018

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-alpha.14.2 brings significant improvements to the GraphQL plugin with mutations, aggregations, and decimal support, along with route pluralization for better RESTful API design. This release also fixes numerous bugs affecting Windows users, GraphQL queries, email services, and the WYSIWYG editor. Arabic translations have been updated, and documentation has been enhanced with content internationalization guidance.

Highlight of the Release

    • GraphQL plugin now supports mutations and aggregations
    • Routes are now pluralized for better RESTful API design
    • Fixed Windows compatibility issues with 'strapi new' command
    • Added decimal support in MongoDB (2 decimal places) and floats (20 decimal places)
    • Fixed issues with nested objects in GraphQL queries
    • Improved password handling for numeric values
    • Enhanced WYSIWYG editor behavior

Migration Guide

Route Pluralization

With the introduction of route pluralization, API endpoints will now use plural forms by default. For example, an endpoint that was previously /article will now be /articles. If your application relies on specific route formats, you may need to update your API calls accordingly.

GraphQL Schema Changes

If you're using GraphQL, be aware that the schema now includes mutations and aggregations. While this shouldn't break existing queries, you may want to review your GraphQL implementation to take advantage of these new features.

No database migrations are required for this update.

Upgrade Recommendations

This release contains important bug fixes and new features that enhance the development experience with Strapi. It's recommended to upgrade, especially if you:

  • Use GraphQL in your project
  • Work on Windows
  • Need better decimal support with MongoDB
  • Have experienced issues with the WYSIWYG editor
  • Use Arabic translations

Since this is an alpha release (v3.0.0-alpha.14.2), it's advisable to test thoroughly in a development environment before deploying to production. Pay special attention to your API routes as they are now pluralized by default.

Bug Fixes

Windows Compatibility

  • Fixed the strapi new command for Windows users
  • Fixed build scripts on Windows
  • Fixed hooks to require the correct package and remove temporary paths on all platforms

GraphQL Issues

  • Fixed nested objects returning null in GraphQL queries
  • Fixed issue with the isNumeric function causing false positives with nested objects in GraphQL

Database and ORM

  • Fixed association detection
  • Fixed SQL ORM CREATE FULLTEXT INDEX SEARCH error when no text columns are defined in the schema
  • Fixed bug on conditional code where 'server.proxy' || {} was always returning server.proxy instead of using {} as the default value

Content Management

  • Fixed model name handling with whitespaces on form submission in the content builder
  • Removed moveFocusToEnd in WYSIWYG editor to prevent cursor from jumping to the bottom when formatting text
  • Fixed email service functionality

Authentication

  • Fixed password handling by converting numeric passwords to strings before creating hash
  • Fixed private key in User model
  • Don't parse npm scripts for dynamic config, fixing issues with configuration loading

New Features

GraphQL Mutations and Aggregations

The GraphQL plugin now supports mutations and aggregations, allowing for more powerful API operations. This enhancement enables developers to create, update, and delete content through GraphQL as well as perform data aggregation operations.

Decimal Support in MongoDB

Fixed the Mongoose Hook to properly handle decimal values with 2 decimal places and floats with up to 20 decimal places, providing better precision for numeric data.

Route Pluralization

Routes are now pluralized by default, following RESTful API best practices. This makes API endpoints more intuitive and consistent.

Auto-Open Configuration

Added configuration options to control whether the admin panel automatically opens in the browser when starting the server. This can be customized per environment.

Security Updates

No specific security fixes were mentioned in this release. However, the normalization of file permissions across the codebase could be considered a security improvement as it removes unnecessary executable flags from files that shouldn't have them.

Performance Improvements

Mongoose Hook Optimization

The Strapi Mongoose hook has been polished and refactored for better performance and maintainability. This includes code beautification and structural improvements.

File Permission Normalization

Standardized file permissions across the codebase, removing unnecessary executable flags from 819 files. This improves consistency and security across different operating systems.

ESLint Command Refactoring

Simplified and optimized ESLint commands for better development workflow and faster linting processes.

Impact Summary

This release significantly enhances Strapi's GraphQL capabilities by adding mutations and aggregations, making it a more complete GraphQL solution. The route pluralization change improves RESTful API design but may require updates to client applications.

Several critical bugs affecting Windows users have been fixed, making Strapi more accessible across different operating systems. The MongoDB decimal support improves data precision for financial or scientific applications.

Content editors will benefit from fixes to the WYSIWYG editor and email service. Developers will appreciate the code quality improvements, including standardized file permissions and refactored ESLint commands.

The documentation has been enhanced with content internationalization guidance, and Arabic translations have been updated, making Strapi more accessible to a global audience.

Full Release Notes

🐛 Bug fix

💅 Enhancement

Statistics:

File Changed300
Line Additions333
Line Deletions135
Line Changes468
Total Commits103

User Affected:

  • Benefit from pluralized routes for more RESTful API design
  • Can now use GraphQL mutations and aggregations
  • Fixed issues with nested objects in GraphQL queries
  • Better handling of decimal values in MongoDB

Contributors:

ackropierreburgysundaycraftsxlmnxpTokenChingymaturanomxNickBolleslauriejimsoupetteolomediahansemannnderrickmehaffytlhuntertthakurani