Home

>

Tools

>

Ghost

>

Releases

>

1.0.0-alpha.17

Ghost Release: 1.0.0-alpha.17

Pre Release

Tag Name: 1.0.0-alpha.17

Release Date: 3/22/2017

Ghost LogoGhost

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

TL;DR

Ghost 1.0.0-alpha.17 is the seventeenth (and likely final) alpha release before Ghost 1.0.0. This update focuses on theme management improvements, removing handlebars from admin serving, fixing image processing timeouts, and updating dependencies. The release introduces a new "mounting" concept for active themes, improves theme middleware, and fixes several bugs including favicon path issues. This alpha continues to refine the new editor with functional and visual updates while improving the overall codebase quality.

Highlight of the Release

    • New 'mounting' concept for active themes providing clearer architecture
    • Removal of Handlebars from admin serving, simplifying the stack
    • Fixed image processing with timeout limits to prevent hanging processes
    • Theme API improvements with better cache invalidation
    • Improved test consistency and code organization

Migration Guide

No specific migration steps are required for this alpha release. However, theme developers should be aware of the new theme mounting concept and updated theme middleware.

Note that this is an alpha release intended for development and testing only and should not be used in production environments.

Upgrade Recommendations

As this is an alpha release (1.0.0-alpha.17), it is not recommended for production use. This release is strictly for development and testing purposes.

If you're already testing the alpha series, upgrading to this version is recommended to test the latest improvements to the theme system and editor.

There is a known bug that prevents error pages from rendering correctly (issue #8126), which will be fixed in the next release.

Bug Fixes

Fixed Image Processing Timeouts

Added timeout handling to getImageSize function to prevent Node.js from hanging on problematic images:

  • Set a default timeout of 10 seconds
  • Added an optional parameter to specify custom timeouts
  • Default timeout prevents Node from using its 2-minute default timeout

Fixed Favicon Path

  • Fixed an issue where the favicon path was incorrect when starting Ghost via the Ghost-CLI
  • Now uses an absolute path to ensure the favicon is found correctly regardless of how Ghost is started

Theme API Cache Updates

  • Ensured cache invalidation headers are always set correctly for the themes API

New Features

Theme Mounting Concept

Ghost now uses a "mounting" concept for active themes, providing a clearer architecture for theme management. This change:

  • Introduces a check if the active theme is mounted
  • Mounts the theme if not already mounted
  • Makes mounting a function OF the active theme
  • Removes a previous hack for the API that's no longer needed

Theme API Improvements

  • Better cache invalidation headers for the themes API
  • Updated permissions for themes.browse endpoint
  • Improved function naming and comments for clarity

Security Updates

No specific security fixes were included in this release.

Performance Improvements

Image Processing Performance

The addition of timeouts to the getImageSize function prevents Ghost from hanging for up to 2 minutes when processing problematic images, significantly improving performance in these edge cases.

Theme Management

The new mounting concept for themes improves the efficiency of theme loading and activation, providing a more streamlined approach to theme management.

Impact Summary

Ghost 1.0.0-alpha.17 represents a significant step toward the final 1.0.0 release with important architectural improvements to the theme system and admin interface.

The introduction of the theme "mounting" concept provides a clearer architecture for theme management, while the removal of Handlebars from admin serving simplifies the stack. These changes, along with the timeout handling for image processing and improved test consistency, contribute to a more robust and maintainable codebase.

For developers and theme creators, this release offers improved APIs and clearer architecture. Content creators will benefit from continued refinements to the new editor experience and better image handling performance.

As the likely final alpha before Ghost 1.0.0, this release focuses on polishing existing features and improving code quality rather than introducing major new functionality.

Full Release Notes

This is the seventeenth (and hopefully final!) in a series of weekly alpha builds we'll be releasing as we work towards Ghost 1.0.0.

This release is strictly for development and testing only, and must not be used for production blogs

Note: There is a known bug which won't render error pages, see #8126. Will be fixed in the next release.

This alpha contains:

  • 🎨 Lot's of functional updates for our new editor
  • 🎨 Lot's of visual updates for our new editor
  • 🎨 More refactoring for themes and our tests

You can read more about our plans for Ghost v1.0 and the v0.11 LTS version in the lts blog post. There's also more information on the alpha page.

You can see the full change log for the details of every change included in this release.

Statistics:

File Changed208
Line Additions3,051
Line Deletions2,547
Line Changes5,598
Total Commits13

User Affected:

  • New 'mounting' concept for active themes provides a clearer architecture
  • Theme API improvements with better cache invalidation headers
  • Updated permissions for themes.browse endpoint

Contributors:

greenkeeperio-botErisDSkevinansfieldkirrg001