Home

>

Tools

>

Ghost

>

Releases

>

4.17.0

Ghost Release: 4.17.0

Tag Name: v4.17.0

Release Date: 10/1/2021

Ghost LogoGhost

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

TL;DR

Ghost 4.17.0 introduces a powerful new Members Filtering feature that allows publishers to segment their audience with precision. This update also includes important bug fixes for email configuration and UI issues, along with significant internal refactoring of route settings and i18n handling. The release enhances the platform's member management capabilities while improving system stability and laying groundwork for future features like Offers.

Highlight of the Release

    • New Members Filtering feature for advanced audience segmentation
    • Fixed email configuration issues with secure connections
    • Added API endpoints for custom theme settings
    • Significant internal refactoring of route settings and redirects
    • Initial groundwork for upcoming Offers feature

Migration Guide

Route Settings and Redirects Refactoring

If you've built custom code that interacts with Ghost's route settings or redirects, be aware that significant refactoring has occurred in this release:

  • Route settings initialization has moved from frontend to backend
  • The frontend no longer directly interacts with the filesystem for routes and redirects
  • Several modules have been refactored to use class-based patterns with dependency injection
  • The API signatures for route settings and redirects modules have been simplified

i18n to tpl Helper Transition

Ghost is transitioning from the deprecated i18n pattern to the new tpl helper for internationalization:

  • If you've built custom code that uses i18n.t(), consider updating to use the tpl helper instead
  • Several core modules have been updated in this release, providing examples of the transition

Upgrade Recommendations

This release includes important bug fixes and new features that benefit all Ghost users. The upgrade is recommended for all installations, especially for those who:

  1. Use email functionality with secure connections disabled
  2. Manage members and would benefit from advanced filtering capabilities
  3. Create or use custom themes with custom settings

There are no known breaking changes for standard Ghost installations, but theme developers and those with custom code should review the migration guide for details on internal refactoring.

Bug Fixes

Email Configuration Fix

Fixed an issue where the mail configuration was not respecting disabled secure connections. The secureConnection parameter was incorrectly aliased to secure in Nodemailer, causing SSL warnings when users had disabled secure connections. This has been fixed by properly handling both true and false values for the parameter.

Admin UI Fixes

  • Fixed incorrect unsaved changes popup appearing on the memberships screen
  • Fixed theme-engine middleware tests that were timing out rather than showing failed assertions

New Features

Members Filtering

Ghost now includes a powerful new filtering system for members, allowing publishers to segment their audience with precision. This feature enables filtering members based on various criteria, making it easier to target specific segments for newsletters, offers, or analysis.

Custom Theme Settings API

New API endpoints have been added for browsing and editing custom theme settings:

  • GET /api/canary/admin/theme_settings/ - Browse custom theme settings
  • PUT /custom_theme_settings - Update custom theme settings

These endpoints are protected by the new 'customThemeSettings' permission, which is granted to Administrators.

Initial Support for Offers

This release includes the groundwork for an upcoming Offers feature:

  • Added schema for a new offers table
  • Added permission fixtures for the offers table
  • Added initial support for redirecting to Stripe checkout with coupon applied

Security Updates

No significant security fixes in this release.

Performance Improvements

Test Performance Improvements

  • Made custom-redirects middleware testable, shaving 4 seconds off test execution time by eliminating slow regression test cases
  • Improved error handling in theme-engine middleware tests to show failed assertions immediately rather than timing out

Impact Summary

Ghost 4.17.0 significantly enhances member management capabilities with the new filtering feature, allowing publishers to create targeted segments of their audience. This is particularly valuable for content creators who want to deliver more personalized experiences.

The release also fixes important bugs, particularly in email configuration, ensuring more reliable communication with subscribers. Theme developers gain new API endpoints for custom theme settings, enabling more dynamic and customizable themes.

Behind the scenes, substantial refactoring improves the architecture around route settings and redirects, moving functionality from the frontend to the backend. This creates a cleaner separation of concerns and lays groundwork for future improvements. The ongoing transition from i18n to tpl helper continues, simplifying internationalization throughout the codebase.

Initial groundwork for an upcoming Offers feature suggests that Ghost will soon provide more advanced monetization options for publishers.

Full Release Notes

Statistics:

File Changed125
Line Additions1,803
Line Deletions1,277
Line Changes3,080
Total Commits95

User Affected:

  • Can now filter members using a powerful new interface
  • Benefit from fixed email configuration for secure connections
  • Experience improved stability in the memberships screen

Contributors:

matthanleynazrenovate-botkevinansfieldErisDSrshbhgrgallouisrenovate[bot]daniellockyerfitzgeraldkd