Home

>

Tools

>

Ghost

>

Releases

>

5.94.0

Ghost Release: 5.94.0

Tag Name: v5.94.0

Release Date: 9/6/2024

Ghost LogoGhost

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

TL;DR

Ghost v5.94.0 brings significant improvements to the Stats page UI, fixes bookmark card hotlinking issues, and introduces ActivityPub likes functionality. This release enhances the user experience with better analytics filtering, prevents cross-site content serving, and optimizes email delivery to reduce server load spikes. Several bug fixes address issues with the post editor and translations have been updated for multiple languages.

Highlight of the Release

    • Completely redesigned Stats page with improved filters, meaningful KPI charts, and updated UI components
    • Added configurable target delivery window for batch sending emails to reduce server load spikes
    • Fixed bookmark card hotlinking issues for icons and thumbnails
    • Implemented outgoing Like API and support for listing likes in ActivityPub
    • Added middleware to prevent other sites' content from being served

Migration Guide

No specific migration steps are required for this update. The changes are primarily enhancements and bug fixes that should work seamlessly after updating.

If you're using the configurable target delivery window for batch sending emails, you can set the bulkEmail.targetDeliveryWindow parameter in your Ghost configuration to specify the maximum time (in milliseconds) for email delivery. This is optional and will default to immediate delivery if not specified.

Upgrade Recommendations

This update is recommended for all Ghost users, especially those who:

  1. Use bookmark cards in their content
  2. Send newsletters to large audiences
  3. Rely heavily on the Stats page for analytics
  4. Use ActivityPub features
  5. Have international audiences using Portal in Portuguese (Brazil), Vietnamese, or Norwegian

The update contains important bug fixes and performance improvements that enhance the overall stability and user experience of Ghost. There are no breaking changes, making this a safe upgrade for all installations.

Bug Fixes

Fixed "Unsaved changes" Modal for Published Posts

Fixed an issue where the "Unsaved changes" modal would incorrectly appear for some published posts with images. This was resolved by updating Koenig to a version that doesn't re-populate image node dimensions when they already exist.

Bookmark Card Hotlinking Fix

Resolved an issue where bookmark cards were hotlinking icons and thumbnails instead of fetching and storing them in Ghost's storage system.

Date Notation for Scheduled Posts

Fixed incorrect date display for scheduled posts where the creation date was shown instead of the scheduled publication date.

Email Analytics and Batch Sending

  • Fixed dependency between tests in batch sending integration tests
  • Reimplemented email analytics to prioritize opened events
  • Added database persistence to fetch missing job to ensure complete event capture

Translation Fixes

  • Fixed typos in Norwegian (NO) strings for Portal translation
  • Updated missing Vietnamese strings
  • Corrected Portuguese (Brazil) translation with proper phone number format

New Features

Stats Page Refinements

The Stats page has received a significant update with improved UI components and more meaningful data presentation:

  • Updated audience and days filter UI to match the Members Activity page
  • Added granularity dropdown for KPI charts to display contextually relevant data
  • Introduced "Posts/pages" dropdown in the Content section
  • Added "Campaigns" dropdown in Sources section to support ad tracking and filtering
  • Updated BarList colors for better visual distinction

ActivityPub Likes Integration

  • Implemented outgoing Like API for ActivityPub integration
  • Added support for listing likes with reusable FeedItem component
  • Improved animation of love heart bump when liking content
  • Added query invalidation when liking/unliking for real-time UI updates

Configurable Email Delivery Window

Added a configurable target delivery window for batch sending emails to reduce server load spikes after newsletter sends:

  • New bulkEmail.targetDeliveryWindow parameter specifies maximum time for email delivery
  • Ghost now spaces out email batches evenly throughout the specified window
  • Helps moderate peak traffic volume in the minutes following a newsletter send

Security Updates

Cross-Site Content Protection

Added middleware to prevent other sites' content from being served through Ghost instances, addressing a potential security concern where Ghost could inadvertently serve content from other websites.

Performance Improvements

Email Analytics Performance

Reimplemented email analytics changes that prioritize opened events over other events to speed up open analytics processing. This is particularly important for large newsletter sends (100k+ members).

Batch Email Sending Optimization

Added a configurable target delivery window for batch sending emails, which helps distribute the load on Ghost servers after a newsletter send. By spacing out email delivery over a configurable time window, this reduces the peak server load that typically occurs immediately after sending newsletters.

Feed Item and Profile Refactoring

Refactored and reorganized FeedItem and Profile components:

  • Moved engagement stats to a reusable component
  • Moved functions from Profile to a separate file
  • Improved code organization for better performance and maintainability

Impact Summary

Ghost v5.94.0 delivers significant improvements to the analytics experience with a completely redesigned Stats page featuring better filters, more meaningful data presentation, and updated UI components. Content creators will benefit from fixes to bookmark cards and the post editor, while newsletter publishers gain performance optimizations for email analytics and a new configurable delivery window to reduce server load spikes.

The release also enhances ActivityPub integration with new Like functionality, improves translations for international users, and adds security measures to prevent cross-site content serving. These changes collectively improve the user experience, performance, and functionality across multiple aspects of the Ghost platform.

For developers, the code has been refactored in several areas to improve maintainability and testability, particularly in the ActivityPub API and components. The update also includes improvements to testing infrastructure, ensuring more reliable test coverage.

Full Release Notes

  • 🐛 Fixed "Unsaved changes" modal showing for some published posts with images - Kevin Ansfield
  • 🐛 Fixed bookmark card hot linking icons and thumbnails (#20923) - Princi Vershwal

View the changelog for full details: v5.93.0...v5.94.0

Statistics:

File Changed67
Line Additions3,703
Line Deletions617
Line Changes4,320
Total Commits25

User Affected:

  • Fixed issue with 'Unsaved changes' modal incorrectly appearing for published posts with images
  • Bookmark cards now properly handle icons and thumbnails instead of hotlinking
  • Improved date notation for scheduled posts to show the correct scheduled time instead of creation time

Contributors:

vershwaldvdwindenpeterzimonrenovate[bot]djordjevlaisLeklercuongtqtran9larsonsmatsbstsam-lordkevinansfieldcmraibleallouisgithub-actions[bot]