Home

>

Tools

>

Payload CMS

>

Releases

>

Release 1.1.17

Payload CMS Release: Release 1.1.17

Tag Name: v1.1.17

Release Date: 10/25/2022

Payload CMS LogoPayload CMS

Payload CMS is a modern, self-hosted headless content management system built with TypeScript, Node.js, and MongoDB. It's designed specifically for developers who want full control over their content management system while maintaining a powerful admin interface for content editors.

TL;DR

Payload CMS v1.1.17 brings several important enhancements and bug fixes to improve developer experience and system stability. Key updates include a new beforeLogin hook for authentication customization, default maximum length for text fields, inline relationship draft support, and fixes for rich text rendering issues. This release also specifies Node.js 14+ compatibility and includes security updates through dependency upgrades.

Highlight of the Release

    • New beforeLogin hook for custom authentication logic
    • Default maximum length constraints for text-based fields
    • Improved inline relationship draft support
    • Better rich text rendering for multiple leaf nodes
    • Node.js 14+ compatibility specification
    • Security improvements through dependency updates

Migration Guide

This release doesn't require any specific migration steps for most users. However, there are a few considerations:

  1. Node.js Version: Ensure your environment is running Node.js 14 or higher as this is now the official minimum supported version.

  2. Text Field Length: If you've been relying on unlimited text field lengths, be aware that default maximum lengths are now applied. You can override these defaults in your field configurations if needed.

  3. GraphQL Depth: If you were relying on specific depth behavior in GraphQL for rich text fields, verify that the enforced depth: 0 and defaultDepth usage doesn't affect your queries.

Upgrade Recommendations

Recommendation: Standard Upgrade

This release contains important bug fixes and useful new features without breaking changes, making it a recommended upgrade for all Payload CMS users.

To upgrade:

npm install [email protected]
# or
yarn add [email protected]

After upgrading, test your application thoroughly, especially if you:

  • Use rich text fields extensively
  • Have custom authentication logic that might interact with the new beforeLogin hook
  • Rely on specific GraphQL depth behavior
  • Have text fields that might be affected by the new default maximum lengths

Bug Fixes

Rich Text Improvements

  • Fixed issue #1286 where GraphQL wasn't properly using the defaultDepth in rich text fields
  • Resolved issue #1290 to correctly render multiple rich text leaf nodes where applicable
  • Enforced depth: 0 in GraphQL resolvers for consistent behavior

UI and Form Handling

  • Fixed issue #1291 to properly support inline relationship drafts
  • Ensured field updates occur correctly when disableFormData changes
  • Improved styling for groups within collapsible fields

New Features

beforeLogin Hook

A new beforeLogin hook has been added, allowing developers to execute custom logic before a user logs in. This provides greater flexibility for authentication workflows and custom validation.

Default Maximum Length for Text Fields

Text-based fields now have default maximum length constraints, improving data validation and preventing potential issues with excessively large inputs. This includes:

  • Default maximum text length for string fields
  • Proper validation for text input

Node.js 14+ Specification

The CMS now officially specifies Node.js 14+ and Yarn Classic LTS as requirements, ensuring compatibility with modern JavaScript features while maintaining stability.

Security Updates

This release includes an important security update through PR #1228 which upgrades vulnerable dependencies to their latest secure versions. While specific vulnerabilities aren't detailed, keeping dependencies updated is a critical security practice.

Performance Improvements

The release includes several changes that indirectly improve performance:

  • Better handling of GraphQL depth for rich text fields prevents unnecessary deep traversals
  • Improved form field updates reduce unnecessary re-renders
  • Security dependency upgrades may include performance optimizations

Impact Summary

Payload CMS v1.1.17 is a maintenance and feature enhancement release that improves developer experience and system stability without introducing breaking changes. The addition of the beforeLogin hook provides developers with more control over authentication flows, while default text field length constraints improve data validation. Bug fixes for rich text rendering and relationship drafts enhance the content editing experience. The specification of Node.js 14+ ensures compatibility with modern JavaScript environments, and security updates through dependency upgrades help maintain a secure system. Overall, this release represents a solid improvement to the Payload CMS ecosystem with benefits for both developers and content editors.

Full Release Notes

1.1.17 (2022-10-25)

Bug Fixes

  • #1286, uses defaultDepth in graphql rich text depth (66bf8c3)
  • #1290, renders more than one rich text leaf where applicable (a9f2f0e)
  • #1291, add inline relationship drafts (3967c12)
  • enforces depth: 0 in graphql resolvers (3301f59)
  • ensures field updates when disableFormData changes (c929725)
  • group + group styles within collapsible (17dbbc7)

Features

Statistics:

File Changed34
Line Additions3,442
Line Deletions3,015
Line Changes6,457
Total Commits17

User Affected:

  • Benefit from the new `beforeLogin` hook for custom authentication logic
  • Can now specify maximum text field lengths with new defaults
  • Need to ensure Node.js 14+ compatibility for projects
  • Will see improved handling of inline relationship drafts

Contributors:

jmikrutwlaeriTomDo1234denolfe