TL;DR
Ghost 1.0.0-alpha.11 introduces significant server-side configuration improvements, including a new admin.url option while removing legacy SSL configurations. The content screen has been enhanced, and several dependencies have been updated including Ember 2.11.0, Knex-Migrator 2.0.5, and Ghost-Editor 0.1.6. This alpha release also fixes tag importing from LTS blogs and includes various code optimizations to improve the overall architecture.
Highlight of the Release
- New server-side configuration option
admin.url for specifying a dedicated admin interface URL
- Removal of legacy SSL configuration options (
forceAdminSSL, urlSSL) in favor of more streamlined approach
- Fixed tag importing from LTS blogs to properly associate tags with posts
- Updated to Ember 2.11.0, Knex-Migrator 2.0.5, and Ghost-Editor 0.1.6
- Improved content screen with various enhancements
Migration Guide
Migrating from forceAdminSSL to admin.url
If you were previously using forceAdminSSL: true in your Ghost configuration, you'll need to update your configuration to use the new admin.url option instead:
// Old configuration
config = {
url: 'http://my-ghost-blog.com',
forceAdminSSL: true
}
// New configuration
config = {
url: 'http://my-ghost-blog.com',
admin: {
url: 'https://my-ghost-blog.com'
}
}
Settings Access Changes
If you have custom code that was accessing settings through the config system, you'll need to update to use the settings cache directly:
// Old approach
const theme = config.get('theme');
// New approach
const theme = settings.cache.get('theme');
URL Helper Changes
Replace any usage of the deprecated apiUrl helper with the urlFor helper:
// Old approach
apiUrl(path);
// New approach
urlFor('api', {path: path});
Upgrade Recommendations
As this is an alpha release (1.0.0-alpha.11), it is not recommended for production environments. This release is strictly for development and testing purposes only.
Developers working on Ghost themes, apps, or contributing to Ghost core should upgrade to test their code against the latest changes, particularly the new configuration system and URL handling.
If you're currently using a previous alpha version for development, upgrading is recommended to stay current with the evolving API and configuration changes.
Bug Fixes
Fixed Issues
- Fixed tag importing from LTS blogs by using JavaScript's Map instead of normal objects to ensure proper association between tags and posts (closes #7866)
- Fixed
MigratorConfig.js to properly require overrides file when using knex-migrator CLI without loading the entire Ghost application
- Fixed Ghost head test to reflect current changes in configuration (refs #7688)
- Fixed validation of Ghost profile/token response by checking if profile or access token exists when receiving response from Ghost Auth server
New Features
New Configuration Options
- Added new
admin.url configuration option to specify a dedicated URL for the admin interface
- Added
urlFor('admin') helper function to generate admin URLs consistently
- Added ES6 support in JSHint configuration with
eversion: 6 flag
Architecture Improvements
- Improved settings cache accessibility
- Reorganized configuration utility functions
- Implemented more consistent URL handling throughout the codebase
- Replaced JavaScript objects with Maps for better tag-post associations during imports
Security Updates
No specific security fixes were included in this release.
Performance Improvements
Configuration Optimizations
- Renamed file keys for config files for better organization
- Added tests to prevent config hierarchy problems
- Ensured overrides.json has highest priority in configuration hierarchy
- Optimized how settings are cached and accessed throughout the application
- Removed redundant storage of settings values in theme configuration
- Removed timezone from config as it was being stored in multiple locations
Impact Summary
This alpha release represents a significant step in Ghost's evolution toward version 1.0, with major architectural improvements to the configuration system. The introduction of admin.url and removal of forceAdminSSL and urlSSL options streamlines how Ghost handles URLs and SSL, making the codebase more maintainable and the configuration more intuitive.
The changes to settings cache access and URL helpers improve code organization and reduce redundancy. These refactoring efforts, while requiring some migration work for custom code, create a more consistent and maintainable codebase.
The fix for tag importing from LTS blogs addresses a significant pain point for users migrating from older Ghost versions, ensuring that content relationships are preserved during imports.
Overall, this release focuses on architectural improvements and bug fixes that lay groundwork for a more robust Ghost 1.0 release, though as an alpha version it should still be used only for development and testing.
Full Release Notes
This is the eleventh 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
This alpha contains:
- 🎨 Content screen improvements
- 🛠 [email protected]
- 🛠 [email protected]
- 🛠 [email protected]
- ⭐️ New server side config options (admin.url and more)
- 🔥 Remove server side config options (forceAdminSSL, urlSSL)
- 🐛 Import from LTS blogs now properly adds tags to posts
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.