v4.0.0
This release has been in the works for a long time. I've been using v4 on projects for nearly a year and it's working great!
v4 is a major version that adds a new packages system to support more custom code (multiple mu-plugins, plugins, themes), adds multisite support
Info: This release does not yet officially support Deployer v8, since it's not released yet. See #15
Key Changes
- Uses
current_pathinstead of symlinkedrelease_pathby default in the examples - Better Localhost Support: Proper context handling for local operations with consistent path resolution.
- Multisite Support: Set
wp/multisiteflag for proper network-wide database URL replacements. - New Language Tasks: Tasks for syncing WordPress language files:
languages:push,languages:pull,languages:sync,languages:backup:* - Code Quality: Autoloading, code-quality tools and test suite
New Packages System
Unified way to manage custom themes, plugins, and mu-plugins:
set('packages', [
'custom-theme' => [
'path' => '{{themes/dir}}/custom-theme',
'assets' => true,
'assets:build_script' => 'build',
'vendors' => true,
],
]);The old theme, plugin and mu-plugin tasks still exist and work. I'm planning to remove them in a future version. We recommend updating to the new package system.
New Recipes
recipes/simple.php- For standard rsync deploymentsrecipes/bedrock.php- For Roots Bedrock projects
⚠️ Breaking Changes
current_pathis now the primary deployment target- Task file locations: Moved from
src/tasks/totasks/ - Removed
advancedrecipe: Usesimpleorbedrockinstead - Removed
:synctasks: Use:pushand:pullinstead
Upgrading from v3.x
- Set
current_pathon all hosts (remote and localhost) - Migrate to packages: Convert theme/plugin build configs to the new packages system. Optional, but recommended
- Update recipe: Switch to
recipes/simple.phporrecipes/bedrock.php - Check examples: Review
examples/simple/orexamples/bedrock/for patterns - Replace
:synctasks: Update any custom tasks using:syncto use:pushor:pull
Documentation
See CHANGELOG.md for complete changes and README.md for updated documentation.