Some minor bug fixes and improvements, like a much faster importer now!
You can see the full change log for the details of every change included in this release.
Tag Name: 1.21.3
Release Date: 2/21/2018
GhostOpen-source publishing platform specifically designed for professional bloggers and publications. Focuses on clean, minimalist writing and publishing experience.
Ghost 1.21.3 delivers significant performance improvements to the importer, making it up to 30x faster while using less memory. This release also includes a major refactoring of the model layer to standardize the usage of include and withRelated parameters, along with improvements to the validation layer and password security. These changes provide a more stable foundation for future features while maintaining backward compatibility.
include and withRelated parameters across the codebaseIf you're a developer working directly with Ghost's codebase, note the standardized approach to parameters:
include parameter (comma-separated string format)api.posts.browse({include: 'author,tags'}){{get ... include="author"}}withRelated parameter (array format)models.Post.findPage({withRelated: ['tags']})The convertOptions utility now properly transforms between these formats as needed.
No database migrations or configuration changes are required for this update.
This is a minor release with performance improvements and bug fixes. We recommend all Ghost users upgrade to version 1.21.3, especially if you:
The upgrade process follows the standard Ghost update procedure and should be straightforward with no breaking changes.
For developers working with the Ghost codebase directly, please review the migration guide regarding the standardized usage of include and withRelated parameters.
onValidate implementation that's no longer needed with the refactored validation approachisNew in the model layer (doesn't work with Ghost's non-auto-increment IDs)belongsToMany foreign keys for tags in the model layer to prevent future relation fetching issuesThe Ghost importer has been significantly optimized, resulting in dramatic performance improvements:
lib.security.password librarymock-knex as a development dependency for better unit testinglib/security/password)No critical security vulnerabilities were addressed in this release.
Ghost 1.21.3 delivers substantial performance improvements to the content importer, making it up to 30x faster while using less memory. This is particularly valuable for sites that regularly import large amounts of content.
The release also includes significant refactoring of the model layer to standardize parameter usage (include vs withRelated), enhancing code consistency and maintainability. The validation layer has been improved to catch errors earlier and provide better feedback, particularly for user creation and updates.
For developers, the addition of a dedicated password security library and improved testing tools will make custom development more robust. The standardization of parameter usage between API and model layers provides clearer guidance for extending Ghost functionality.
Overall, this release focuses on performance, stability, and developer experience rather than introducing new user-facing features. The changes lay groundwork for future enhancements while providing immediate benefits for content importing workflows.
Some minor bug fixes and improvements, like a much faster importer now!
You can see the full change log for the details of every change included in this release.