Home

>

Tools

>

Ghost

>

Releases

>

1.0.0-alpha.1

Ghost Release: 1.0.0-alpha.1

Pre Release

Tag Name: 1.0.0-alpha.1

Release Date: 9/20/2016

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.1 marks the first weekly alpha release on the road to Ghost 1.0.0. This significant update includes a complete configuration system refactor using nconf and JSON files, adds utf8mb4 encoding support for emojis, drops Node.js v0.10 and PostgreSQL support, and includes preparations for the new Ghost CLI tool. This release is strictly for development and testing purposes only and should not be used in production environments.

Highlight of the Release

    • First alpha release in the weekly series leading to Ghost 1.0.0
    • Complete refactor of the configuration system using nconf and JSON files
    • Added utf8mb4 encoding support for emojis in MySQL
    • Dropped support for Node.js v0.10
    • Dropped support for PostgreSQL in favor of MySQL

Migration Guide

Migrating from 0.11.14 to 1.0.0-alpha.1

Configuration Changes

  • The configuration system has been completely refactored to use nconf and JSON files
  • Replace any direct access to configuration properties with config.get() and config.set() methods
  • Configuration is no longer stored in JavaScript files but in JSON format
  • Custom configuration should be adapted to the new format

Database Changes

  • PostgreSQL is no longer supported; migrate your data to MySQL
  • Database encoding has changed to utf8mb4; ensure your MySQL installation supports this encoding (MySQL 5.5.3+)

Node.js Version

  • Update your Node.js installation to v6 or later as v0.10 support has been dropped

Theme Development

  • Theme URL is no longer defined in config but in api/settings.js
  • Themes storage is now restricted to local-file-store

Content Paths

  • Content paths for images, apps, themes, storage, and scheduling have been refactored
  • Use the new getContentPath utility function instead of direct path references

Installation Process

  • Prepare to use the new Ghost CLI tool for installation and management
  • The preinstall node version check has been removed as it's now handled by Ghost-CLI

Important: This is an alpha release and should not be used in production environments. It's intended for development and testing purposes only.

Upgrade Recommendations

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

If you're a developer interested in testing Ghost 1.0.0 features or contributing to the project:

  • Create a separate development environment for testing this alpha
  • Follow the migration guide to adapt to the new configuration system
  • Ensure you're using Node.js v6+ and MySQL (not PostgreSQL)
  • Report any issues you encounter to help improve future alpha releases

For production sites:

  • Continue using the latest stable 0.11.x release
  • Wait for the official 1.0.0 stable release before upgrading
  • Consider the 0.11.x LTS (Long Term Support) version if stability is a priority

The Ghost team will be releasing weekly alpha builds leading up to the 1.0.0 release, so expect frequent updates and changes during this period.

Bug Fixes

No specific bug fixes were mentioned in the commit messages for this release. The focus appears to be on architectural changes, refactoring, and feature additions rather than bug fixes.

New Features

Configuration System Refactor

  • Completely refactored configuration system to use nconf and JSON files
  • Removed ConfigManager in favor of a more streamlined approach
  • Added defaults.json and overrides.json for configuration management
  • Created utility functions for accessing configuration values
  • Simplified how config is passed to forked child processes

UTF8MB4 Support

  • Changed default encoding from utf8 to utf8mb4
  • Added support for emojis in content
  • Improved compatibility with MySQL's Unicode implementation

Ghost CLI Integration

  • Removed startup checks which will now be executed in Ghost-CLI
  • Added preparations for installation via the new CLI tool
  • Simplified bootstrapping process

Node.js Support Changes

  • Added support for Node.js v6
  • Removed support for Node.js v0.10
  • Removed preinstall node version check (now handled by Ghost-CLI)

Security Updates

No specific security fixes were mentioned in the commit messages for this release.

Performance Improvements

Database Performance

  • Switched to utf8mb4 encoding which provides better performance for Unicode character handling
  • Optimized configuration loading by using JSON files instead of JavaScript files

Configuration System

  • Streamlined configuration access with direct get/set methods
  • Removed circular dependency solution in errors/index.js
  • Simplified asset handling with on-demand asset hash creation

Impact Summary

Ghost 1.0.0-alpha.1 represents a significant architectural shift with its completely refactored configuration system, database encoding changes, and platform support adjustments. The move to nconf and JSON files for configuration provides a more robust and maintainable approach, while utf8mb4 encoding support enhances content capabilities with emoji support.

The decision to drop PostgreSQL support in favor of MySQL as the production default database simplifies the codebase and focuses development efforts. Similarly, dropping Node.js v0.10 support aligns Ghost with more modern JavaScript practices and security standards.

These changes lay the groundwork for the Ghost 1.0.0 release and integration with the new Ghost CLI tool, which will significantly improve the installation and management experience. However, these architectural changes come with breaking changes that will require developers to update their code and workflows.

As an alpha release, this version is not suitable for production use but provides developers and testers an opportunity to explore and provide feedback on the new architecture and features before the stable 1.0.0 release.

Full Release Notes

This is the first of 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

This alpha contains:

  • a complete refactor of the configuration system to use nconf and json files
  • a change to use utf8mb4 encoding
  • dropped Node.js v0.10 support as the first official 1.0.0 will be after 1st October
  • dropped support for postgres (MySQL will be our production default)
  • preparations so that Ghost can be installed with our new cli tool

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 Changed154
Line Additions1,647
Line Deletions2,871
Line Changes4,518
Total Commits40

User Affected:

  • Need to adapt to the new configuration system using nconf and JSON files
  • Must update to Node.js v6+ as v0.10 support has been dropped
  • Need to migrate from PostgreSQL if currently using it
  • Should explore the new Ghost CLI tool for installation

Contributors:

kirrg001acburdineJohnONolanErisDS