Home

>

Tools

>

Ghost

>

Releases

>

1.21.0

Ghost Release: 1.21.0

Tag Name: 1.21.0

Release Date: 2/7/2018

Ghost LogoGhost

Open-source publishing platform specifically designed for professional bloggers and publications. Focuses on clean, minimalist writing and publishing experience.

TL;DR

Ghost 1.21.0 introduces a new Contributor Role, allowing for more granular permissions management in your publication. Contributors can create and edit their own posts but cannot publish or modify others' content. This release also includes various bug fixes, performance improvements, and dependency updates to enhance the overall stability and security of the platform.

Highlight of the Release

    • New Contributor Role with limited permissions
    • Fixed editor autofocus when starting a new post
    • Improved memory usage in data importer
    • Multiple dependency updates for better security and stability
    • Removed bookshelf access plugin in favor of direct context checks

Migration Guide

Migration Notes

Contributor Role

The new Contributor role is automatically added through a migration script. After upgrading to Ghost 1.21.0, you'll be able to assign this role to users through the admin interface.

Bookshelf Access Plugin Removal

If you've built custom code that relies on the Bookshelf access plugin or uses this.forge(null, {context: options.context}), you'll need to update your code to use direct context checks instead. See issue #9127 for more details on the model layer changes.

Koenig Card Renaming

Server-side cards have been renamed to match the new generic Koenig card names. If you have custom code that interacts with these cards, you'll need to update your references to use the new names.

Upgrade Recommendations

This release introduces the new Contributor role and includes important bug fixes and performance improvements. We recommend all Ghost users upgrade to version 1.21.0, especially if you:

  1. Need more granular control over your content publishing workflow
  2. Want to onboard new writers with limited permissions
  3. Have experienced issues with the editor autofocus
  4. Are concerned about memory usage during data imports

The upgrade process follows the standard Ghost update procedure and includes automatic migrations for the new Contributor role. No manual intervention is required for the migration process.

Bug Fixes

Fixed Issues

  • Fixed editor autofocus when starting a new post
  • Fixed broken payload in posts_spec.js test
  • Fixed missing export of card-markdown card that was causing rendering issues
  • Fixed issue with importing posts with unknown author IDs - now falls back to owner ID with a warning
  • Fixed knex warning "Transaction was already complete" when destroying a user
  • Fixed error logging order on Ghost start to ensure errors are properly logged before process restart
  • Removed HTML usage in error messages

New Features

Contributor Role

Ghost now includes a new Contributor role that allows for more granular permissions management in your publication. Contributors can:

  • Create and edit their own draft posts
  • Cannot publish posts (requires editor or admin approval)
  • Cannot edit or delete published posts
  • Cannot edit posts created by other users
  • Cannot modify tags on posts

This feature enables publications to safely onboard new writers without giving them full publishing rights, creating a more controlled editorial workflow.

Improved Data Importer

The data importer has been enhanced with better memory management:

  • Added option to control whether imported data is returned/remembered
  • Reduced memory usage during import operations
  • More efficient handling of local variables for better garbage collection

Security Updates

These updates address potential security vulnerabilities in the dependencies and improve the overall security posture of Ghost.

Performance Improvements

Performance Enhancements

  • Improved memory usage in the data importer

    • Better control over remembering imported data
    • More efficient use of local variables for improved garbage collection
    • Reduced number of properties to remember during import process
  • Improved test performance

    • Fixed routing tests to truncate tables after each test case
    • Tests can now run faster with reduced database operations

Impact Summary

Ghost 1.21.0 represents a significant enhancement to the platform's user permission system with the introduction of the Contributor role. This addition enables publications to implement more sophisticated editorial workflows by allowing new writers to create content without having full publishing rights.

The release also addresses several bugs and improves performance, particularly in the data importer. Memory usage has been optimized, which will benefit sites that frequently import content or have large data sets.

For developers, the removal of the bookshelf access plugin in favor of direct context checks represents a move toward a cleaner architecture, though it may require updates to custom code that relied on the previous implementation.

Security has been enhanced through multiple dependency updates, ensuring Ghost remains a secure platform for content management.

Overall, this release balances new functionality with important maintenance work, making Ghost more flexible, stable, and secure for all users.

Full Release Notes

  • ✨ Contributor Role (TryGhost/Admin#948)
  • 🐛 Fixed editor autofocus when starting a new post

You can see the full change log for the details of every change included in this release.


Credits: LOveSk8

Statistics:

File Changed58
Line Additions1,828
Line Deletions617
Line Changes2,445
Total Commits19

User Affected:

  • Can now assign the new Contributor role to users
  • Better control over content publishing workflow with more granular permissions
  • Need to be aware of dependency updates that may affect custom implementations

Contributors:

kirrg001chucklamkevinansfieldacburdine