Home

>

Tools

>

Ghost

>

Releases

>

5.48.1

Ghost Release: 5.48.1

Tag Name: v5.48.1

Release Date: 5/18/2023

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.48.1 brings a critical bug fix for custom signup pages, ensuring tiers display correctly for your audience. This patch resolves an issue with the TiersRepository caching mechanism that was preventing tiers from appearing on custom signup pages, affecting membership and subscription functionality.

Highlight of the Release

    • Fixed critical bug preventing tiers from displaying on custom signup pages
    • Resolved caching issue in the TiersRepository
    • Improved data handling for membership tiers

Migration Guide

No migration steps are required for this release. The fix for tiers on custom signup pages is applied automatically when you update to v5.48.1.

Upgrade Recommendations

This release contains a critical fix for sites using custom signup pages with membership tiers. We strongly recommend all Ghost installations be updated to v5.48.1, especially if you:

  • Use custom signup pages
  • Offer multiple membership tiers
  • Have a paid subscription model

The update process is straightforward with no migration steps required. The fix will be applied automatically when you update.

Bug Fixes

Fixed Tiers Not Appearing on Custom Signup Pages

This release fixes a critical bug where membership tiers were not appearing on custom signup pages. The issue was in the TiersRepository's internal caching mechanism:

  • The toPrimitive() method had a bug that resulted in cached tier objects having very few properties
  • Tier objects had all properties as private getters (except for the standard events property)
  • When using the spread operator, it didn't properly populate the object, resulting in tiers with minimal data: {events: [], active: true, type: 'paid', id: 'abcd'}
  • The getAll() method uses NQL to match against cached tier objects, but with incomplete data, it couldn't match properly and returned an empty array

The fix changes the spread to use tier.toJSON(), ensuring all tier data is properly populated and allowing filter matches to work correctly.

New Features

This release doesn't introduce new features as it's primarily a bug fix release. However, it does include several Admin X Design System improvements that were added during development but not highlighted in the main release notes:

  • Added static input field components
  • Added setting group input components
  • Added button disabled state handling
  • Added basic dropdown components
  • Added dynamic properties to settings
  • Improved spacing and typography in Admin X Design System

Security Updates

No security fixes were included in this release.

Performance Improvements

No specific performance improvements were highlighted in this release. The primary focus was on fixing the bug with tier display on custom signup pages and including various Admin X Design System enhancements.

Impact Summary

This release addresses a significant bug that affected the display of membership tiers on custom signup pages. The issue was caused by a problem in the TiersRepository's caching mechanism, where tier objects weren't being fully populated when cached. This resulted in the API being unable to properly match and return tiers, causing them to not appear on custom signup pages.

The impact was primarily on sites using custom signup pages with multiple membership tiers, potentially affecting conversion rates as visitors couldn't see or select from available subscription options. The fix ensures that all tier data is properly populated in the cache, allowing the API to correctly match and return tiers.

While this is a small patch release in terms of code changes, it resolves an important issue for membership functionality, which is a core feature for many Ghost publications. The release also includes various Admin X Design System improvements that were added during development but not highlighted in the main release notes.

Full Release Notes

Statistics:

File Changed58
Line Additions867
Line Deletions164
Line Changes1,031
Total Commits32

User Affected:

  • Can now properly display membership tiers on custom signup pages
  • No longer need to worry about missing subscription options for potential members

Contributors:

lenabaidakovapeterzimonronaldlangevelddjordjevlaisrshbhgrgkevinansfieldgithub-actions[bot]