TL;DR
Ghost 3.2.0 introduces significant enhancements to the members feature, including a new subscription cancellation helper and members growth chart. This release also adds a new brand color setting, improves API handling, and fixes several UI and migration issues. These updates strengthen Ghost's membership capabilities and provide better tools for managing paid subscriptions.
Highlight of the Release
- New members growth chart for better analytics and insights
- Added {{cancel_link}} helper for managing member subscriptions
- New brand color setting for consistent branding across site and emails
- Fixed dark mode color regressions and UI issues
- Improved API handling and error management
Migration Guide
API Changes
If you're using the members-api constructor, it now accepts the member's model instead of proxy methods. The proxy methods have been moved to @tryghost/members-api in favor of using the model directly.
Email Fields in API v2
Email-related fields have been removed from API v2 responses as the email feature was introduced in API v3 and is not backward compatible with API v2.
New Database Column
A new current_period_end column has been added to the subscriptions table. If you have any custom code that interacts with this table, you may need to update it accordingly.
Client-Side Subscription Management
New data attributes have been added for subscription management:
data-members-cancel-subscription
data-members-continue-subscription
These can be used to create UI elements that call the subscription update functionality.
Upgrade Recommendations
This release is recommended for all Ghost users, especially those utilizing the members and subscription features. The new subscription management tools and members growth chart provide valuable functionality for sites with paid memberships.
For developers, the API changes and improved error handling offer better maintainability and cleaner code structure. The fixed migration issues also make this an important update for anyone planning to upgrade from older versions (1.x/2.x) to 3.x.
There are no breaking changes that would prevent a smooth upgrade from 3.1.1, but be aware of the API changes if you're using custom code that interacts with the members API.
Bug Fixes
Fixed Post Meta Migration
Fixed an issue with post meta migration for 3.x where the migration would break when upgrading directly from 1.x/2.x to 3.x due to undefined values for the email_subject column.
Dark Mode Color Regressions
Fixed color regressions in dark mode that were affecting the UI appearance and consistency.
Unsaved Changes Modal Issues
- Fixed unexpected "unsaved changes" modals appearing when accessing certain screens
- Fixed unsaved changes modal appearing when using Cmd+S on tag/member screens
Stripe Webhooks on Localhost
Fixed an issue with Stripe webhooks when running on localhost URL through the @tryghost/[email protected] update.
New Features
Members Growth Chart
A new members growth chart has been added to provide better analytics and insights into your membership growth over time. This visual representation helps content creators track the effectiveness of their membership strategies.
Subscription Cancellation Helper
The new {{cancel_link}} helper generates HTML needed to cancel or continue a member's subscription depending on the subscription state. This makes it easier to manage subscription workflows in your email templates and website.
Brand Color Setting
A new brand: {primary_color: ''} blog setting has been added (behind a dev flag) that allows setting a user-defined brand color for themes and emails, enabling more consistent branding across your Ghost site.
Host Config Limits for Member Emails
New host limits configuration has been introduced for controlling email limits with members, providing better management of email sending capabilities.
Security Updates
No specific security fixes were mentioned in this release.
Performance Improvements
API Improvements
- Removed redundant member manipulation proxy methods in favor of using the model directly
- Moved error handling from the service layer to controller for better separation of concerns
- Removed non-existent member endpoints from API key access whitelist to avoid confusion
Package Updates
Multiple dependencies have been updated to their latest versions, including:
- metascraper and related packages to v5.8.10
- juice to v6
- sharp to v0.23.4
- sqlite3 to v4.1.1
- express-hbs to v2.3.0
- gscan to v2.3.1 and v3.2.0
- @tryghost/social-urls to v0.1.5
- analytics-node to v3.4.0-beta.1
Impact Summary
Ghost 3.2.0 significantly enhances the membership and subscription management capabilities of the platform. The addition of the members growth chart provides valuable analytics for content creators to track their membership growth over time, while the new {{cancel_link}} helper streamlines subscription management workflows.
The brand color setting (behind dev flag) is a step toward more customizable branding options, allowing for consistent visual identity across the site and emails. This is particularly valuable for publications with strong brand guidelines.
API improvements and bug fixes address several pain points, including dark mode color issues and unexpected "unsaved changes" modals. The fixed post meta migration ensures smoother upgrades from older Ghost versions.
For developers, the refactored members API with cleaner separation of concerns and the new subscription management endpoints provide a more maintainable and extensible codebase. The host config limits for member emails also offer better control over email sending capabilities, which is crucial for publications with large member bases.
Full Release Notes
- ✨ Added members growth chart (#1424) - Rishabh Garg
- ✨ Added member's subscription cancellation helper {{cancel_link}} (#11434) - Naz Gargol
- 🐛 Fixed darkmode color regressions - Peter Zimon
- 🐛 Fixed unexpected "unsaved changes" modals when accessing screens - Kevin Ansfield
- 🐛 Fixed unsaved changes modal when using Cmd+S on tag/member screens - Kevin Ansfield
You can see the full change log for the details of every change included in this release.