You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
macOS Homebrew and Linux Linuxbrew: brew install drud/ddev/ddev or brew upgrade drud/ddev/ddev ). (You may need a brew update for homebrew to find the new release.). This works on Apple Silicon Homebrew as well.
Windows: Use choco upgrade -y ddev to get this one, or download the ddev_windows_installer below.
Linux and macOS with the install_ddev.sh script: Download the script, make it executable, and run it: ./install_ddev.sh or curl -LO [https://raw.githubusercontent.com/drud/ddev/master/scripts/install_ddev.sh](https://raw.githubusercontent.com/drud/ddev/master/scripts/install_ddev.sh) && bash install_ddev.sh
And anywhere, you can just download the tarball or zipball, untar or unzip it, and place the executable in your path where it belongs.
Consider ddev delete images after upgrading to free up disk space used by previous docker image versions. This does no harm.
In the past, a ddev poweroff was required; now ddev itself detects that you have a new version and asks for permission to do a poweroff.
Key changes for v1.17.0
Composer v2 is now the default composer version. If you need to change it, use ddev config --composer-version=1 && ddev start
Brand new provider integration system, with user-configurable and extensible techniques, Acquia, Platform.sh, DDEV-Live, Pantheon.io integration. Integration is user-editable, so it's easy to add, improve, share integrations. There are examples provided for rsync and local file sources. You can ddev pull ddev-live, ddev pull platform, etc.
ddev push is available for those who want it, although it can be dangerous operation, so make sure it fits your workflow. You can push database and/or files to an upstream hosting provider. Implementation examples are provided and tested for Acquia, DDEV-Live, Pantheon.io, and Platform.sh
Excellent improvements to ddev snapshot, including ddev snapshot restore --latest, prompted ddev snapshot restore, ddev snapshot --list, ddev snapshot --cleanup, ddev snapshot --all, thanks to @cmuench !
ddev snapshot restore now shows progress as it goes, and it doesn't time out on huge snapshot restores. You can also use ddev snapshot restore --latest
Built-in support for Blackfire.io profiling, with a ddev blackfire command to do it. (docs)
New ddev config --auto option that configures a project with detected defaults
Web container environment variables can be set in config.yaml or global_config.yaml with the web_environment key, or ddev config global --web-environment=ENV1=someval,ENV2=someotherval
ddev heidisql command provides a nice database browser on Windows and Windows WSL2 thanks to @andreashager .
The PHP default for new projects is now PHP 7.4. A few project types (Drupal 6 and Magento 1) override this to use 5.6.
Drush Launcher is no longer used. Drupal 6 and Drupal 7 projects get Drush 8 directly, and Drupal 8 and 9 must have drush site-installed and it will be found in the $PATH. You can however use "drush8", which is installed in the container as /usr/local/bin/drush8. So you can drush8 status for example.
You can now configure ddev to fail if a hook task fails by using ddev config —fail-on-hook-fail or fail_on_hook_fail: true in the project or global config, thanks to @majamee
Drupal8/9 no longer has a custom "working_dir", meaning that ddev ssh and ddev exec land in the project root by default, not in the docroot.
php8.0 extensions redis and memcached are now included
sudo is removed from ddev-dbserver and ddev-ssh-agent, and is no longer used in startup routines of ddev-webserver. This is important for long-term security posture, but also is a workaround for a bug in gitpod that was preventing gitpod restores in https://github.com/shaal/ddev-gitpod from working.
Zend assertions are enabled by default, thanks @heddn!
ddev start now waits for all containers to come up, not just the "main" ones. So if you have third-party services like solr or elasticsearch, it will wait for them to come up and it will error if they die on the way up.
You can now use gitpod.io to build ddev and its images for contributing.
Double nginx's http2_max_header_size to 32k in both ddev-router and web container.
The script test_ddev.sh is now provided. You can quickly test your ddev installation and provide diagnostic output. This is requested in bug reports. curl -sSL -o /tmp/test_ddev.sh [https://raw.githubusercontent.com/drud/ddev/master/scripts/test_ddev.sh](https://raw.githubusercontent.com/drud/ddev/master/scripts/test_ddev.sh) && bash /tmp/test_ddev.sh
Caveats
Since drush launcher has been removed from the web container, on Drupal 8+ you'll want to make sure your project has composer site-installed (ddev composer require drush/drush). Alternately you can use "drush8" inside the web container.
Because Drupal8+ no longer has a "working_dir" that lands things on the docroot instead of the project root, you may be surprised if you expect if your docroot is different from your project root and you ddev ssh or ddev exec and expect the working directory to be the docroot. It will now be /var/www/html. This will also affect hooks if they expect a specific directory to execute.
composer 2 is the default composer version now. If you need composer v1 on a project, ddev config --composer-version=1
If. you had composer_version: "2"in your project config.yaml it's best to remove that line or set composer_version: "", since version 2 is the default now. ddev config --composer-version="". This also avoids conflicts with webimage_extra_packages.
The provider interface has been completely redone. You no longer have to ddev auth pantheon or ddev config pantheon. Now you ddev pull pantheon (or whatever provider). Please see the docs on the new provider interface, and thank you for testing and reporting your results, questions, issues, bugs!
The command ddev restore-snapshot became ddev snapshot restore. Use ddev snapshot restore -h for full details.
reacted with thumbs up emoji reacted with thumbs down emoji reacted with laugh emoji reacted with hooray emoji reacted with confused emoji reacted with heart emoji reacted with rocket emoji reacted with eyes emoji
-
Installation/Upgrade
See the installation instructions for details, but it's easy:
brew install drud/ddev/ddev
orbrew upgrade drud/ddev/ddev
). (You may need abrew update
for homebrew to find the new release.). This works on Apple Silicon Homebrew as well.choco upgrade -y ddev
to get this one, or download the ddev_windows_installer below../install_ddev.sh
orcurl -LO [https://raw.githubusercontent.com/drud/ddev/master/scripts/install_ddev.sh](https://raw.githubusercontent.com/drud/ddev/master/scripts/install_ddev.sh) && bash install_ddev.sh
ddev delete images
after upgrading to free up disk space used by previous docker image versions. This does no harm.ddev poweroff
was required; now ddev itself detects that you have a new version and asks for permission to do a poweroff.Key changes for v1.17.0
ddev config --composer-version=1 && ddev start
ddev pull ddev-live
,ddev pull platform
, etc.ddev push
is available for those who want it, although it can be dangerous operation, so make sure it fits your workflow. You can push database and/or files to an upstream hosting provider. Implementation examples are provided and tested for Acquia, DDEV-Live, Pantheon.io, and Platform.shddev snapshot
, includingddev snapshot restore --latest
, promptedddev snapshot restore
,ddev snapshot --list
,ddev snapshot --cleanup
,ddev snapshot --all
, thanks to @cmuench !ddev snapshot restore
now shows progress as it goes, and it doesn't time out on huge snapshot restores. You can also useddev snapshot restore --latest
ddev blackfire
command to do it. (docs)ddev config --auto
option that configures a project with detected defaultsweb_environment
key, orddev config global --web-environment=ENV1=someval,ENV2=someotherval
ddev heidisql
command provides a nice database browser on Windows and Windows WSL2 thanks to @andreashager .Smaller changes
drush8 status
for example.ddev config —fail-on-hook-fail
orfail_on_hook_fail: true
in the project or global config, thanks to @majameeddev ssh
andddev exec
land in the project root by default, not in the docroot.ddev start
now waits for all containers to come up, not just the "main" ones. So if you have third-party services like solr or elasticsearch, it will wait for them to come up and it will error if they die on the way up.curl -sSL -o /tmp/test_ddev.sh [https://raw.githubusercontent.com/drud/ddev/master/scripts/test_ddev.sh](https://raw.githubusercontent.com/drud/ddev/master/scripts/test_ddev.sh) && bash /tmp/test_ddev.sh
Caveats
ddev composer require drush/drush
). Alternately you can use "drush8" inside the web container.ddev ssh
orddev exec
and expect the working directory to be the docroot. It will now be /var/www/html. This will also affect hooks if they expect a specific directory to execute.ddev config --composer-version=1
composer_version: "2"
in your project config.yaml it's best to remove that line or setcomposer_version: ""
, since version 2 is the default now.ddev config --composer-version=""
. This also avoids conflicts withwebimage_extra_packages
.ddev auth pantheon
orddev config pantheon
. Now youddev pull pantheon
(or whatever provider). Please see the docs on the new provider interface, and thank you for testing and reporting your results, questions, issues, bugs!ddev restore-snapshot
becameddev snapshot restore
. Useddev snapshot restore -h
for full details.This discussion was created from the release v1.17.0: User-defined hosting provider interface, Platform.sh, Acquia, loads of stuff.
Beta Was this translation helpful? Give feedback.
All reactions