Skip to content

Releases: ddev/ddev

v1.9.0: DNS name resolution, ddev share, tracking stopped projects, loads-o-hooks

26 Jun 12:43
198e9cd
Compare
Choose a tag to compare

Installation/Upgrade

See the installation instructions for details, but it's easy:

  • Please stop/remove all projects first, this does no harm: ddev remove --all --stop-ssh-agent
  • Delete your ~/.ddev/global_config.yaml (This is not strictly necessary but a user upgrading from a very old ddev version had a crash/panic because of the changed format in the old file.)
  • macOS Homebrew and Linux Linuxbrew: brew upgrade ddev (If you'd like to be on the ddev-edge homebrew channel, you can brew tap drud/ddev-edge)
  • Windows: Download the ddev_windows_installer below or with Chocolatey choco install ddev or choco upgrade ddev
  • And anywhere, you can just download the tarball or zipball, untar or unzip it, and place the executable in your path where it belongs.
  • You'll want to do a ddev config && ddev start for each project just to update the config file so it has the current APIVersion in it. Otherwise ddev will keep pestering you to do that.

Caveats

  • The default domain used with ddev is now "ddev.site" instead of "ddev.local", see below. If you're like me, that will cause some occasional problems with what your fingers may type while the transition continues. (If you want to still use "ddev.local", use project_tld: ddev.local in your config.yaml.)
  • The drush setup inside the web container has changed; /usr/local/bin/drush is now "drush launcher"; it falls back to /usr/local/bin/drush8 if no site-local drush is found.
  • On Linux with nfsmount_enabled, if your computer gets a different IP address from DHCP routinely, you may need to adjust /etc/exports or re-run the NFS setup script to allow access to your new IP (from your new IP)

Key changes in v1.9.0

  • Stopped projects are now shown by ddev list and you can also start (or stop, or pause) them with ddev start <project> or ddev start --all (be careful with that!).

    A list of all projects is now maintained in ~/.ddev/global_config.yaml, and so even when project doesn't show up in docker's container tags, it is still available.

    Note that projects won't show up with ddev list until they have been started once.

    Please do report any issues you have with this, as this is a wide-ranging change. All ddev commands used to rely solely on docker container tags, so keeping an additional external catalog of them is huge.

  • The hook system has been significantly expanded, with pre- and post- hooks for most ddev commands, including post-composer, post-stop, etc. And you can use "exec" in any container, not just the web container. See latest docs on hook system

  • The new ddev share command allows you to share your project on the internet when you need someone to see it or you want to test with mobile devices or extra browsers, etc. This requires the free ngrok tool and optionally a free or paid ngrok account.

  • The default domain changes from "ddev.local" to "ddev.site", and DNS is used by default (when internet is available) to resolve the IP address. This means that /etc/hosts does not need to be modified, and administrative privileges are not (normally) required on ddev start. (This doesn't work on Docker Toolbox/Win10 Home.). You can change the domain in config.yaml, and you can turn off this behavior in config.yaml.)

Smaller Changes

  • (on Drupal) drush attempts to use the https URL when possible and mkcert root CAs are installed.
  • ddev list, ddev describe, and ddev start try to limit the number of URLs thrown at you by using the appropriate https or http URL only (even though the other still works).
  • The drush configuration tries to use https URLs where possible for things like drush uli.
  • The configuration to use drush on the host has changed, and the ddev_drush_settings.php file is obsolete and can be removed. And drush on the host works fine for most things, even works on Windows in a lot of cases (inside the docroot).
  • NFS installation scripts attempt to provide a more robust security environment, where the NFS share won't be accessible off the development machine.
  • Container and php timezone configuration now defaults to "UTC", but...
  • A timezone can now be configured in config.yaml, and affects both the container timezone and the php default timezone.
  • hirak/prestissimo is now composer-global-installed in the web container; it speeds up uncached composer installs by 2x or more.
  • The configuration of drush in the container has changed. /usr/local/bin/drush is now drush launcher, and it falls back to /usr/local/bin/drush8 if there is no site-local drush9.
  • Drupal settings.ddev.php is recreated on ddev start for teams that share configuration and don't want team members running ddev config, which used to be where it was created.
  • post-start hooks are always run on ddev start, even if they've already been run in the web container. They used to check to see if they'd already been run, mostly for apt-get install activities, but since those are now mostly handled by webimage_extra_packages this doesn't make sense any more.
  • ddev tries even harder to make sure that offline working is possible. It tries to make sure that update checks and instrumentation don't happen when offline. It can't do anything about an image you didn't pull while online though.

Thanks!

There was loads of community collaboration in this release, we so appreciate your participation!

  • @ctorgalson fixed a messy documentation markdown problem.
  • @damienmckenna promoted a much more robust use of https URLs in drush and major improvements to the memcache service example.
  • @powpow12 improved the drupal6/7 quickstart docs.

We love your PRs and issues, keep them coming! You're the reason this project works.

Commits since v1.8.0

198e9cd Improve linux setup script and docs (#1668)
b4b492c Bump container versions for v1.9.0 release (#1670)
e35a29c Fix ddev share anomalies (#1667)
0779766 Special-case validation of timezone on windows, since golang windows can't do it (#1666)
b6cec4e Minor fixups for ddev share (#1664)
a717ffb Provide docker pull input on ddev start, fixes #1656 (#1661)
6ba9fd6 Rethink hooks and tasks, for #1372, fixes #1321, fixes #1071, fixes #1038 (#1634)
9dd0336 Support timezone in container and PHP, fixes #1658, fixes #1417, #709 (#1660)
92bc6d7 Add ddev share command, fixes #375 (#1643)
4ef7da1 Add hirak/prestissimo, fixes #1650 (#1654)
cfd5ee1 documentation not parsing markdown lists correctly, fixes #1646 (#1655)
c5d7a15 Make clearer that git clone examples are examples, fixes #1635 [skip ci][ci skip] (#1639)
41ea15e Use drush launcher and drush8 in container, fixes #1488 (#1638)
92e3513 ddev and drush should use https URL when possible inside and outside container, fixes #1624, fixes #1612 (#1625)
2a5016b Leave the project_tld out of defaults in config.yaml (#1637)
5831404 Change ddev list to default to showing all (#1636)
c70b23d Improve NFS security posture, fixes #1471 (#1616)
e03fbde Fix nfstest.sh to use home dir instead of whole /Users (Test only) (#1630)
cf26e7b Use DNS for name resolution in most cases, fixes #416, fixes #834 (#1611)
e696d17 Minor docs additions (ongoing PR), fixes #1482 [skip ci][ci skip] (#1622)
d3201a6 Track and list stopped/removed projects, fixes #642 (#1600)
a517b1c Router should not blow away existing certificates on startup (#1629)
c793218 Improvements to the memcache compose file (#1585)
2ae2d94 Use sh instead of bash for ddevapp.Exec and ssh on non-ddev containers (#1621)
ae19408 Make sure internet is active before trying operations that might hang, fixes #1601, Fixes #431 (#1607)
04bfc74 Use webimage_extra_packages for PHP module addon example(#1614) [skip ci][ci skip]
b7c5ef6 Fix capitalization error on gitigore webimageExtra dbimageExtra, fixes #1610 (#1615)
325f8f6 MailhogPort and friends should not normally show in config.yaml (#1608)
58e0d97 Create settings.ddev.php on ddev start, fixes #1423 (#1598)
e4cae3c Fix d6/d7 quick start install step [ci skip][skip ci] (#1605)
4c68b1a Fixed order of hostname output, show https first, fixes #1580 (#1599)
04419c6 Allow PHPMyAdmin and Mailhog ports to be changed, fixes #1025 (#1594)
90768a9 Make sanetestbot.sh work with ddev v1.8 (#1604)
5f15785 Fix coding standards of generated Drupal settings, fixes #1582 (#1583)
9c486a4 Update PHP_DEFAULT_VERSION in web container (#1593)
85916d2 Report mkcert err to user (#1596)

v1.9.0-rc1: DNS name resolution, ddev share, tracking stopped projects, loads-o-hooks

24 Jun 16:36
a717ffb
Compare
Choose a tag to compare

Installation/Upgrade

See the installation instructions for details, but it's easy:

  • Please stop/remove all projects first, this does no harm: ddev remove --all --stop-ssh-agent
  • macOS Homebrew and Linux Linuxbrew: brew untap drud/ddev; brew untap rfay/ddev; brew tap drud/ddev-edge && (brew upgrade ddev || brew install ddev)
  • Windows: Download the ddev_windows_installe executable below.
  • And anywhere, you can just download the tarball or zipball, untar or unzip it, and place the executable in your path where it belongs.
  • You'll want to do a ddev config && ddev start for each project just to update the config file so it has the current APIVersion in it. Otherwise ddev will keep pestering you to do that.

Caveats

  • The default domain used with ddev is now "ddev.site" instead of "ddev.local", see below. If you're like me, that will cause some occasional problems with what your fingers may type while the transition continues.
  • The drush setup inside the web container has changed; /usr/local/bin/drush is now "drush launcher"; it falls back to /usr/local/bin/drush8 if no site-local drush is found.
  • On Linux with nfsmount_enabled, if your computer gets a different IP address from DHCP routinely, you may need to adjust /etc/exports or re-run the NFS setup script to allow access to your new IP (from your new IP)

Key changes in v1.9.0

  • Stopped projects are now shown by ddev list and you can also start (or stop, or pause) them with ddev start <project> or ddev start --all (be careful with that!).

    A list of all projects is now maintained in ~/.ddev/global_config.yaml, and so even when project doesn't show up in docker's container tags, it is still available.

    Note that projects won't show up with ddev list until they have been started once.

    Please do report any issues you have with this, as this is a wide-ranging change. All ddev commands used to rely solely on docker container tags, so keeping an additional external catalog of them is huge.

  • The hook system has been significantly expanded, with pre- and post- hooks for most ddev commands, including post-composer, post-stop, etc. And you can use "exec" in any container, not just the web container. See latest docs on hook system

  • The new ddev share command allows you to share your project on the internet when you need someone to see it or you want to test with mobile devices or extra browsers, etc. This requires the free ngrok tool and optionally a free or paid ngrok account.

  • The default domain changes from "ddev.local" to "ddev.site", and DNS is used by default (when internet is available) to resolve the IP address. This means that /etc/hosts does not need to be modified, and administrative privileges are not (normally) required on ddev start. (This doesn't work on Docker Toolbox/Win10 Home.). You can change the domain in config.yaml, and you can turn off this behavior in config.yaml.)

Smaller Changes

  • (on Drupal) drush attempts to use the https URL when possible and mkcert root CAs are installed.
  • ddev list, ddev describe, and ddev start try to limit the number of URLs thrown at you by using the appropriate https or http URL only (even though the other still works).
  • The drush configuration tries to use https URLs where possible for things like drush uli.
  • The configuration to use drush on the host has changed, and the ddev_drush_settings.php file is obsolete and can be removed. And drush on the host works fine for most things, even works on Windows in a lot of cases (inside the docroot).
  • NFS installation scripts attempt to provide a more robust security environment, where the NFS share won't be accessible off the development machine.
  • Container and php timezone configuration now defaults to "UTC", but...
  • A timezone can now be configured in config.yaml, and affects both the container timezone and the php default timezone.
  • hirak/prestissimo is now composer-global-installed in the web container; it speeds up uncached composer installs by 2x or more.
  • The configuration of drush in the container has changed. /usr/local/bin/drush is now drush launcher, and it falls back to /usr/local/bin/drush8 if there is no site-local drush9.

Thanks!

There was loads of community collaboration in this release, we so appreciate your participation!

  • @ctorgalson fixed a messy documentation markdown problem.
  • @damienmckenna promoted a much more robust use of https URLs in drush and major improvements to the memcache service example.
  • @powpow12 improved the drupal6/7 quickstart docs.

We love your PRs and issues, keep them coming! You're the reason this project works.

Commits since v1.8.0

a717ffb Provide docker pull input on ddev start, fixes #1656 (#1661)
6ba9fd6 Rethink hooks and tasks, for #1372, fixes #1321, fixes #1071, fixes #1038 (#1634)
9dd0336 Support timezone in container and PHP, fixes #1658, fixes #1417, #709 (#1660)
92bc6d7 Add ddev share command, fixes #375 (#1643)
4ef7da1 Add hirak/prestissimo, fixes #1650 (#1654)
cfd5ee1 documentation not parsing markdown lists correctly, fixes #1646 (#1655)
c5d7a15 Make clearer that git clone examples are examples, fixes #1635 (#1639)
41ea15e Use drush launcher and drush8 in container, fixes #1488 (#1638)
92e3513 ddev and drush should use https URL when possible inside and outside container, fixes #1624, fixes #1612 (#1625)
2a5016b Leave the project_tld out of defaults in config.yaml (#1637)
5831404 Change ddev list to default to showing all (#1636)
c70b23d Improve NFS security posture, fixes #1471 (#1616)
e03fbde Fix nfstest.sh to use home dir instead of whole /Users (Test only) (#1630)
cf26e7b Use DNS for name resolution in most cases, fixes #416, fixes #834 (#1611)
e696d17 Minor docs additions (ongoing PR), fixes #1482 (#1622)
d3201a6 Track and list stopped/removed projects, fixes #642 (#1600)
a517b1c Router should not blow away existing certificates on startup (#1629)
c793218 Improvements to the memcache compose file (#1585)
2ae2d94 Use sh instead of bash for ddevapp.Exec and ssh on non-ddev containers (#1621)
ae19408 Make sure internet is active before trying operations that might hang, fixes #1601, Fixes #431 (#1607)
04bfc74 Use webimage_extra_packages for PHP module addon example(#1614)
b7c5ef6 Fix capitalization error on gitigore webimageExtra dbimageExtra, fixes #1610 (#1615)
325f8f6 MailhogPort and friends should not normally show in config.yaml (#1608)
58e0d97 Create settings.ddev.php on ddev start, fixes #1423 (#1598)
e4cae3c Fix d6/d7 quick start install step (#1605)
4c68b1a Fixed order of hostname output, show https first, fixes #1580 (#1599)
04419c6 Allow PHPMyAdmin and Mailhog ports to be changed, fixes #1025 (#1594)
90768a9 Make sanetestbot.sh work with ddev v1.8 (#1604)
5f15785 Fix coding standards of generated Drupal settings, fixes #1582 (#1583)
9c486a4 Update PHP_DEFAULT_VERSION in web container (#1593)
85916d2 Report mkcert err to user (#1596)

v1.9.0-alpha2: Use DNS with "ddev.site" domain name

04 Jun 13:32
41ea15e
Compare
Choose a tag to compare

Installation/Upgrade

See the installation instructions for details, but it's easy:

  • Please stop/remove all projects first, this does no harm: ddev remove --all --stop-ssh-agent
  • macOS Homebrew and Linux Linuxbrew: brew untap drud/ddev && brew tap rfay/ddev && brew upgrade ddev
  • Windows: Download the ddev_windows_installer.v1.9.0-alpha2.exe below.
  • And anywhere, you can just download the tarball or zipball, untar or unzip it, and place the executable in your path where it belongs.
  • You'll want to do a ddev config && ddev start for each project just to update the config file so it has the current APIVersion in it. Otherwise ddev will keep pestering you to do that.

Caveats

  • The domain used with ddev is now "ddev.site" instead of "ddev.local", see below. If you're like me, that will cause some occasional problems with what your fingers may type while the transition continues.
  • The drush setup inside the web container has changed; /usr/local/bin/drush is now "drush launcher"; it falls back to /usr/local/bin/drush8 if no site-local drush is found.
  • On Linux with nfsmount_enabled, if your computer gets a different IP address from DHCP routinely, you may need to adjust /etc/exports or re-run the NFS setup script to allow access to your new IP (from your new IP)

Key changes in v1.9.0-alpha2

There are a number of bugfixes and minor changes here, but one big thing for testing

ddev uses the domain name "ddev.site" and uses DNS when it can to resolve project names. This means that unless you're offline, no sudo's will be required to add hosts to your /etc/hosts file. If you are offline, then ddev automatically detects the need to add to the hosts file during ddev start. The use_dns_when_possible and project_tld config.yaml directives can be used to change this behavior.

Also:

  • drush attempts to use the https URL when possible and mkcert root CAs are installed
  • ddev list, ddev describe, and ddev start try to limit the number of URLs thrown at you by using the appropriate https or http URL only (even though the other still works).
  • NFS installation scripts attempt to provide a more robust security environment, where the NFS share won't be accessible off the development machine.

And remember the one big thing from v1.9.0-alpha1, which we're hoping to have lots of people report their experiences with:

Stopped projects are now shown by ddev list and you can also start (or stop, or pause) them with ddev start <project>

Note that ddev list now shows all projects, ddev list --active-only will show projects that aren't stopped.

A list of all projects is now maintained in ~/.ddev/global_config.yaml, and so even when project doesn't show up in docker's container tags, it is still available.

Note that projects won't show up with ddev list --all until they have been started once.

Please do report any issues you have with this, as it's a wide-ranging change. All ddev commands used to rely solely on docker container tags, so keeping an additional external catalog of them is huge.

Commits since v1.8.0

41ea15e Use drush launcher and drush8 in container, fixes #1488 (#1638)
92e3513 ddev and drush should use https URL when possible inside and outside container, fixes #1624, fixes #1612 (#1625)
2a5016b Leave the project_tld out of defaults in config.yaml (#1637)
5831404 Change ddev list to default to showing all (#1636)
c70b23d Improve NFS security posture, fixes #1471 (#1616)
e03fbde Fix nfstest.sh to use home dir instead of whole /Users (Test only) (#1630)
cf26e7b Use DNS for name resolution in most cases, fixes #416, fixes #834 (#1611)
e696d17 Minor docs additions (ongoing PR), fixes #1482 [skip ci][ci skip] (#1622)
d3201a6 (v1.9.0-alpha1) Track and list stopped/removed projects, fixes #642 (#1600)
a517b1c Router should not blow away existing certificates on startup (#1629)
c793218 Improvements to the memcache compose file (#1585)
2ae2d94 Use sh instead of bash for ddevapp.Exec and ssh on non-ddev containers (#1621)
ae19408 Make sure internet is active before trying operations that might hang, fixes #1601, Fixes #431 (#1607)
04bfc74 Use webimage_extra_packages for PHP module addon example(#1614) [skip ci][ci skip]
b7c5ef6 Fix capitalization error on gitigore webimageExtra dbimageExtra, fixes #1610 (#1615)
325f8f6 MailhogPort and friends should not normally show in config.yaml (#1608)
58e0d97 Create settings.ddev.php on ddev start, fixes #1423 (#1598)
e4cae3c Fix d6/d7 quick start install step [ci skip][skip ci] (#1605)
4c68b1a Fixed order of hostname output, show https first, fixes #1580 (#1599)
04419c6 Allow PHPMyAdmin and Mailhog ports to be changed, fixes #1025 (#1594)
90768a9 Make sanetestbot.sh work with ddev v1.8 (#1604)
5f15785 Fix coding standards of generated Drupal settings, fixes #1582 (#1583)
9c486a4 Update PHP_DEFAULT_VERSION in web container (#1593)
85916d2 Report mkcert err to user (#1596)

v1.9.0-alpha1: Stopped projects can be used, `ddev list --all`

29 May 14:47
d3201a6
Compare
Choose a tag to compare

Installation/Upgrade

See the installation instructions for details, but it's easy:

  • Please stop/remove all projects first, this does no harm: ddev remove --all --stop-ssh-agent
  • macOS Homebrew and Linux Linuxbrew: brew untap drud/ddev && brew tap rfay/ddev && brew upgrade ddev
  • Windows: Download the ddev_windows_installer.v1.9.0-alpha1.exe below.
  • And anywhere, you can just download the tarball or zipball, untar or unzip it, and place the executable in your path where it belongs.
  • You'll want to do a ddev config && ddev start for each project just to update the config file so it has the current APIVersion in it. Otherwise ddev will keep pestering you to do that.

Caveats

Key changes in v1.9.0-alpha1

There are a number of bugfixes and minor changes here, but one big thing for testing

Stopped projects are now shown by ddev list --all and you can also start (or stop, or pause) them with ddev start <project>

A list of all projects is now maintained in ~/.ddev/global_config.yaml, and so even when project doesn't show up in docker's container tags, it is still available.

Note that projects won't show up with ddev list --all until they have been started once.

Please do report any issues you have with this, as it's a wide-ranging change. All ddev commands used to rely solely on docker container tags, so keeping an additional external catalog of them is huge.

Commits since v1.8.0

d3201a6 Track and list stopped/removed projects, fixes #642 (#1600)
a517b1c Router should not blow away existing certificates on startup (#1629)
c793218 Improvements to the memcache compose file (#1585)
2ae2d94 Use sh instead of bash for ddevapp.Exec and ssh on non-ddev containers (#1621)
ae19408 Make sure internet is active before trying operations that might hang, fixes #1601, Fixes #431 (#1607)
04bfc74 Use webimage_extra_packages for PHP module addon example(#1614)
b7c5ef6 Fix capitalization error on gitigore webimageExtra dbimageExtra, fixes #1610 (#1615)
325f8f6 MailhogPort and friends should not normally show in config.yaml (#1608)
58e0d97 Create settings.ddev.php on ddev start, fixes #1423 (#1598)
e4cae3c Fix d6/d7 quick start install step [ci skip][skip ci] (#1605)
4c68b1a Fixed order of hostname output, show https first, fixes #1580 (#1599)
04419c6 Allow PHPMyAdmin and Mailhog ports to be changed, fixes #1025 (#1594)
90768a9 Make sanetestbot.sh work with ddev v1.8 (#1604)
5f15785 Fix coding standards of generated Drupal settings, fixes #1582 (#1583)
9c486a4 Update PHP_DEFAULT_VERSION in web container (#1593)
85916d2 Report mkcert err to user (#1596)

v1.8.0: Trusted SSL, Extra Packages, SO MANY GOODIES

14 May 16:39
e85d60c
Compare
Choose a tag to compare

Installation/Upgrade

See the installation instructions for details, but it's easy:

  • Please stop/remove all projects first, this does no harm: ddev remove --all --stop-ssh-agent
  • macOS Homebrew and Linux Linuxbrew: brew upgrade ddev
  • Linux or macOS via script:
    curl https://raw.githubusercontent.com/drud/ddev/master/scripts/install_ddev.sh | bash
  • Windows: Download the ddev_windows_installer.v1.8.0.exe below or with Chocolatey choco install ddev or choco upgrade ddev (or choco install ddev --version=1.8.0 while it's in the approval process.)
    And anywhere, you can just download the tarball or zipball, untar or unzip it, and place the executable in your path where it belongs.
  • For this release (all versions) you'll want to do mkcert -install; Watch what it says to you. You may have a little extra work to do on Linux
  • You'll want to do a ddev config for each project just to update the config file so it has the current APIVersion in it. Otherwise ddev will keep pestering you to do that.
  • Please see the "Incompatibilities and Things to Upgrade" section below. You'll want to update config.yaml hooks that use bash -c, and if using custom nginx configuration will want to update your nginx config (but it's easier now!)

Key changes in v1.8.0:

  • Browsers and host OSs now trust ddev sites over https. You do have to take the one-time action to install the CA keys into your operating system and browsers: mkcert -install. If you use one of the package installation methods or the WIndows installer, you should already have mkcert. Otherwise, see the mkcert page for installation options. (Even curl and operating system tools generally trust the mkcert certs, and curl within the container also trusts them.)
  • Dynamic container updates: If you need extra Debian packages in your web or db container (or need to make more sophisticated adjustments) you no longer have to wait for them, or install them every time you start a project. You can add webimage_extra_packages to your config.yaml or build a free-form Dockerfile (Dockerfile.example provided in your .ddev folder)
  • The "stop" and "remove" commands have been changed a bit. ddev stop now does what ddev remove used to do. It removes the containers and saves resources on your host. ddev remove is still available as an alias of ddev stop. And ddev pause takes the place of the former ddev stop - it just does a "docker stop" on the project containers and leaves them in zombie state. This is the workflow we've promoted for some time, as we've been suggesting that people use "remove" in general, but now it's just named "stop".
  • nginx configuration in the web container has been reorganized and simplified. This mostly won't matter to you unless you use custom nginx configuration, in which case you'll want to upgrade your configuration (see below). docs
  • ddev exec and exec hooks now interpret commands using bash. This means you can have a hook like "sudo apt-get update && sudo apt-get install -y some-package" without putting "bash -c" in front of it. And you can ddev exec "sudo apt-get update && sudo apt-get upgrade -y some-package" as well, no bash -c required.
  • ddev exec can now work with interactive situations. So for example, you can ddev exec mysql and interact with the mysql program directly. Or ddev exec bash, which is the same as ddev ssh.

Smaller changes

  • There is now an exposed https port on localhost (not going through the router). It is reported on ddev start and via ddev describe. (As with the http port, the https localhost port can be locked down in the config.yaml, but most people won't need to do this. See the .ddev/config.yaml for instructions.)
  • Since https is preferred everywhere now, the reported URLs are now https-first, http second.
  • The composer cache has moved from a volume named "ddev-composer-cache" to a new volume named "ddev-global-cache". If you want to, you can docker volume rm ddev-composer-cache.
  • blackfire.io and php-pgsql packages was added to web container. If you were previously adding them with a post-start hook, you don't have to do that any more..
  • Windows users will be warned when they have more than 10 sites/hostnames represented in the hosts file, since WIndows stops resolving over 10 hostnames.
  • The webcache feature is officially deprecated and is no longer getting automated test coverage, but no date has been set to remove it. Maybe it will just live on until there's something to compete with it for automated testing speed. (docs)
  • New flag ddev --version gets just the ddev version without all the details in ddev version
  • Multiple hostname resolution in web container: There was a long-term bug (#1235) where you couldn't use curl against the hostname if additional_hostnames or additional_fqdns were enabled, that's fixed.
  • drush once again works on the host (macOS and Linux). It was broken on v1.7.1 because the ddev_drush_settings.php got dropped into the wrong place when generated.
  • nginx in the web container no longer intercepts and reports 40x errors, they'll be handled by the PHP application.
  • ddev config no longer searches for and uses a .ddev/config.yaml in a parent directory (although it does warn if it finds one). This led to people accidentally using unintentially created config files in non-project parent directories, including the home directory. Running ddev config in home directory is now disallowed.
  • ddev composer create --no-interaction passes the --no-interaction file to composer, but no longer will continue without asking for confirmation before destroying the project directory; confirmation is required.

Incompatibilities and things to fix during upgrade

  • The base nginx configuration has changed. If you are overriding configuration with an nginx-site.conf file, you'll want to re-do it (it's much easier now). In addition, small pieces of nginx configuration can now be added in the .ddev/nginx directory. See the docs for more information.
  • config.yaml "exec" hooks are now executed with bash context by default. If you have exec hooks that have "bash -c" in them, please remove that, as they can't be interpreted correctly by the new execution mechanism.
  • If you or your team used to use ddev stop instead of ddev remove, the new behavior of "stop" may seem different, but it hopefully won't affect most people. However, if you have an add-on docker-compose.*.yaml service that has volatile storage, you may want to change it to save its database on a volume, as ddev stop now completely brings down the containers, and if they had volatile content, it will be gone.
  • If you use drush in exec hooks, and the action you take requires confirmation, please change the exec hook to use drush --yes. Formerly, --yes was implied by exec hooks and ddev exec, but it isn't any more.

Thanks!

Many community members helped out with this release.

  • @damienmckenna , @wizonesolutions , and @mglaman among others worked to significantly improve the Apache Solr docs and example docker-compose.solr.yaml, and added a docker volume so the solr database would be nonvolatile after ddev stop.
  • @AronNovak created the PR to have the ddev-webserver nginx configuration not intercept 40x errors.
  • @yanniboi and @isholgueras were kind enough to catch and PR docs errors.
  • @dacostafilipe introduced a PR adding pgsql libraries
  • @jonaseverle and @hebbet helped test the release
  • Thanks to all of you for the issues you created, bugs you pointed out, features you requested, support you gave in Slack and elsewhere, and for your support of ddev!

And the amazing mkcert from @FiloSottile made the seemingly impossible task of trusted local development certificates possible. Thanks! Is open source great or what?

Commits since v1.7.1

e85d60c Fix typo in description, change completion to 'has been stopped' (#1590)
4038b54 Improve mkcert docs for linux [skip ci][ci skip] (#1591)
f928dcb Improve wordpress quickstart with ddev config [skip ci][ci skip] (#1592)
689ea9e Re-use the v1.8.0 tag even though small change was made in web container (#1589)
421efeb Remove --yes drush behavior when in ddev exec behavior, fixes #1584 (#1586)
16f109e Revert parent config search, prevent directory destruction, hopefully fixes #1574 (#1576)
9b6fcad Bump container versions to v1.8.0 (#1581)
96e78d8 Interpret ddev exec and hooks with bash, fixes #1023 (#1570)
a41256c Warn windows users when hosts file has too many entries on a line, fixes #948 (#1575)
24e1d8d Further improved Solr install docs. (#1568)
07ac366 Add quickstart for PHP project [skip ci][ci skip] (#1573)
f3c9b0d ddev exec command should allow tty interactions (#1571)
2bf13b9 Use StartAndWaitForSync to accomodate docker toolbox slowness (#1572)
70917c6 Use docker-compose build for dynamic containers, allow easier container config (#1560)
81c4b2e dd...

Read more

v1.8.0-rc1 Testing prerelease

10 May 19:44
16f109e
Compare
Choose a tag to compare
Pre-release

Draft Release Notes for v1.8.0

Installation/Upgrade

See the installation instructions for details, but it's easy:

  • macOS Homebrew and Linux Linuxbrew: brew upgrade ddev
  • Linux or macOS via script:
    curl https://raw.githubusercontent.com/drud/ddev/master/scripts/install_ddev.sh | bash
  • Windows: Download the ddev_windows_installer.v1.7.1.exe above or with Chocolatey choco install ddev or choco upgrade ddev (or choco install ddev --version=1.7.1 while it's in the approval process.)
    And anywhere, you can just download the tarball or zipball, untar or unzip it, and place the executable in your path where it belongs.
  • Please see the "Incompatibilities and Things to Upgrade" section below. You'll want to update config.yaml hooks that use bash -c, and if using custom nginx configuration will want to update your nginx config (but it's easier now!)

Key changes in v1.8.0:

  • Browsers and host OSs now trust ddev sites over https. You do have to take the one-time action to install the CA keys into your operating system and browsers: mkcert -install. If you use one of the package installation methods or the WIndows installer, you should already have mkcert. Otherwise, see the mkcert page for installation options. (Even curl and operating system tools generally trust the mkcert certs, and curl within the container also trusts them.)
  • Dynamic container updates: If you need extra Debian packages in your web or db container (or need to make more sophisticated adjustments) you no longer have to wait for them, or install them every time you start a project. You can add webimage_extra_packages to your config.yaml or build a free-form Dockerfile (Dockerfile.example provided in your .ddev folder)
  • The "stop" and "remove" commands have been changed a bit. ddev stop now does what ddev remove used to do. It removes the containers and saves resources on your host. ddev remove is still available as an alias of ddev stop. And ddev pause takes the place of the former ddev stop - it just does a "docker stop" on the project containers and leaves them in zombie state. This is the workflow we've promoted for some time, as we've been suggesting that people use "remove" in general, but now it's just named "stop".
  • nginx configuration in the web container has been reorganized and simplified. This mostly won't matter to you unless you use custom nginx configuration, in which case you'll want to upgrade your configuration (see below). docs
  • ddev exec and exec hooks now interpret commands using bash. This means you can have a hook like "sudo apt-get update && sudo apt-get install -y some-package" without putting "bash -c" in front of it. And you can ddev exec "sudo apt-get update && sudo apt-get upgrade -y some-package" as well, no bash -c required.
  • ddev exec can now work with interactive situations. So for example, you can ddev exec mysql and interact with the mysql program directly. Or ddev exec bash, which is the same as ddev ssh.

Smaller changes

  • There is now an exposed https port on localhost (not going through the router). It is reported on ddev start and via ddev describe. (As with the http port, the https localhost port can be locked down in the config.yaml, but most people won't need to do this. See the .ddev/config.yaml for instructions.)
  • Since https is preferred everywhere now, the reported URLs are now https-first, http second.
  • The composer cache has moved from a volume named "ddev-composer-cache" to a new volume named "ddev-global-cache". If you want to, you can docker volume rm ddev-composer-cache.
  • blackfire.io and php-pgsql packages was added to web container. If you were previously adding them with a post-start hook, you don't have to do that any more..
  • Windows users will be warned when they have more than 10 sites/hostnames represented in the hosts file, since WIndows stops resolving over 10 hostnames.
  • The webcache feature is officially deprecated and is no longer getting automated test coverage, but no date has been set to remove it. Maybe it will just live on until there's something to compete with it for automated testing speed. (docs)
  • New flag ddev --version gets just the ddev version without all the details in ddev version
  • Multiple hostname resolution in web container: There was a long-term bug (#1235) where you couldn't use curl against the hostname if additional_hostnames or additional_fqdns were enabled, that's fixed.
  • drush once again works on the host (macOS and Linux). It was broken on v1.7.1 because the ddev_drush_settings.php got dropped into the wrong place when generated.
  • nginx in the web container no longer intercepts and reports 40x errors, they'll be handled by the PHP application.
  • ddev config no longer searches for and uses a .ddev/config.yaml in a parent directory (although it does warn if it finds one). This led to people accidentally using unintentially created config files in non-project parent directories, including the home directory. Running ddev config in home directory is now disallowed.
  • ddev composer create --no-interaction passes the --no-interaction file to composer, but no longer will continue without asking for confirmation before destroying the project directory; confirmation is required.

Incompatibilities and things to fix during upgrade

  • The base nginx configuration has changed. If you are overriding configuration with an nginx-site.conf file, you'll want to re-do it (it's much easier now). In addition, small pieces of nginx configuration can now be added in the .ddev/nginx directory. See the docs for more information.
  • config.yaml "exec" hooks are now executed with bash context by default. If you have exec hooks that have "bash -c" in them, please remove that, as they can't be interpreted correctly by the new execution mechanism.
  • If you or your team used to use ddev stop instead of ddev remove, the new behavior of "stop" may seem different, but it hopefully won't affect most people. However, if you have an add-on docker-compose.*.yaml service that has volatile storage, you may want to change it to save its database on a volume, as ddev stop now completely brings down the containers, and if they had volatile content, it will be gone.

Thanks!

Many community members helped out with this release.

  • @damienmckenna , @wizonesolutions , and @mglaman among others worked to significantly improve the Apache Solr docs and example docker-compose.solr.yaml, and added a docker volume so the solr database would be nonvolatile after ddev stop.
  • @AronNovak created the PR to have the ddev-webserver nginx configuration not intercept 40x errors.
  • @yanniboi and @isholgueras were kind enough to catch and PR docs errors.
  • @dacostafilipe introduced a PR adding pgsql libraries
  • Thanks to all of you for the issues you created, bugs you pointed out, features you requested, support you gave in Slack and elsewhere, and for your support of ddev!

And the amazing mkcert from @FiloSottile made the seemingly impossible task of trusted local development certificates possible. Thanks! Is open source great or what?

Commits since v1.7.1

07ac366 Add quickstart for PHP project [skip ci][ci skip] (#1573)
f3c9b0d ddev exec command should allow tty interactions (#1571)
2bf13b9 Use StartAndWaitForSync to accomodate docker toolbox slowness (#1572)
70917c6 Use docker-compose build for dynamic containers, allow easier container config (#1560)
81c4b2e ddev-webserver Nginx - do not intercept 400 errors (#1555)
7e9b172 Fix mark down format for hook examples. (#1565)
980cb5c Use sudo to copy mysql config files, fixes #1541 (#1563)
41e9954 apache-cgi should respect php overrides, fixes #1556 (#1557)
baef9b2 Test improvements for Win 10 Docker Toolbox (#1561)
dc340c9 Use restart: no on additional service examples (#1559)
49f3b50 Add blackfire.io to web container, fixes #653 (#1545)
e484c99 Improved Solr install docs, update to 6.6 (#1549)
761938f Use docker volume in sample apachesolr config (#1538)
7b2fbab SetSiteSettingsPaths() has to be set after we've read the config, fixes #1553 (#1554)
97c660a Trust SSL/TLS Certificates, fixes #1247, fixes #1501, fixes #849 (#1540)
be8505e Fix CaptureLogs to just capture stdout (#1550)
5940cdb Add separate lines for each external_links, fixes #1235 (#1546)
a2d191e Change PHP typo when it should be MySQL (#1532) [skip ci][ci skip]
beab35d Improve docs with DEBIAN_FRONTEND=noninteractive in apt-get examples [skip ci][ci skip] (#1543)
899386b More robust handling of ddev stop -RO, remove from global list, fixes #1523 (#1531)
44f2c24 Rename stop-containers to pause, so ddev pause, follow up to #1526 (#1537)
9388534 Reorganize stop and remove commands (use stop), fixes #484 (#1526)
e64019e Improve "ddev version" and add --version flag, fixes #960 (#1527)
34c84c7 Deprecate webcache_enabled, fixes #1495 (#1530)
573fb00 Generate homebrew bottles for Linux and macOS for #1516 (#1...

Read more

v1.7.1: config.local.yaml, static host ports for containers

08 Apr 12:13
5cf3803
Compare
Choose a tag to compare

Installation/Upgrade

See the installation instructions for details, but it's easy:

  • macOS Homebrew and Linux Linuxbrew: brew upgrade ddev
  • Linux or macOS via script:
    curl https://raw.githubusercontent.com/drud/ddev/master/scripts/install_ddev.sh | bash
  • Windows: Download the ddev_windows_installer.v1.7.1.exe above or with Chocolatey choco install ddev or choco upgrade ddev (or choco install ddev --version=1.7.1 while it's in the approval process.)
    And anywhere, you can just download the tarball or zipball, untar or unzip it, and place the executable in your path where it belongs.

NOTE: Especially to mariadb 10.1 users: If you had to explicitly set the dbcontainer version in your .ddev/config.yaml due to the bug in v1.6.0, please remove that now.

Key changes in v1.7.1:

  • config.*.yaml overrides: local configuration files can be used to override a team-standard checked-in .ddev/config.yaml. See docs. #1504 and #1410.
  • Optional static bind ports for db and webserver containers. Those who want the dbserver or webserver bound port to be static within a project can use host_db_port or host_webserver_port to specify it: #1502, #1491, #941
  • Previous versions of Docker for Mac supported operating systems back to El Capitan, but Docker-for-Mac has dropped support for anything before macOS Sierra 10.12, so ddev also has to drop support for everything before Sierra.
  • The default PHP version changes to 7.2. This affects new Drupal 8 and Drupal 7 projects, as well as projects of type "php".
  • Fix regression in v1.5.0 where mariadb_version = 10.1 did not properly set the container version to the 10.1 container version.
  • The ddev-dbserver images now use the official MariaDB docker image (which uses Debian) as a base, instead of building a custom Alpine image. This should be invisible to all users, but we love to hear feedback.

Thanks!

Many community members helped out with this release.

  • Thanks to @janhelke for PR #1484 - community initiatives are so welcome!
  • Many of you filed issues and helped point out important improvements.
  • Thanks to @akalata for rolling up her sleeves and testing this release!

Commits since v1.6.0

fa0bc13 Bump containers to v1.7.0 (#1511)
9958c90 Minor web container and router container config changes, fixes #1507, fixes #1447 (#1510)
9fb54a4 Static configuration of webserver and dbserver localhost ports, bind only to localhost, fixes #1491, fixes #941, #642 too (#1502)
f12bbe9 Update to build-tools 2.2.1: Golang v1.12.1 and fix GOCACHE (#1508)
aaeaadf Allow config..yml files to override config.yaml, fixes #1410 (#1504)
2ccc3f4 The old bind-mounted db code is now fully obsolete, remove it (#1506)
c39d6bd Change default PHP version from 7.1 to 7.2 (#1497)
e3e30f0 Remove use of import-db directory (#1445)
8fd114c Improve macos buildkite setup instructions [skip ci][ci skip] (#1500)
d94d4bb Remove 4/5 of macOS CircleCI tests (and container build), fixes #1487 (#1498)
7c44904 Regression: mariadb_version should work correctly, but be overridden by DBImage, fixes #1455 (#1494)
671e1b1 Make longer server names possible (#1484)
f0a57dd Increase timeout for db startup, fixes #1477 (#1493)
f03c0f6 Add .mysql* to list of accepted import-db filetypes, fixes #1483 (#1492)
58ecdf1 We no longer have to cleanup the temp dir as it's cleaned up in the mv process, fixes #1457 (#1486)
7ce1ed8 Invalidate homebrew cache with new version (#1480)
ba27311 Fix error in docs about ddev compose-config (#1478)
e7c0133 Move to build-tools 2.2.0 in support of getting ddev to appveyor (#1470)
b39e6f2 Use the official Mariadb image as base for ddev-dbserver (#1476)
fbfb3e9 Fix Windows NFS script when username has spaces, fixes #1452 (#1453)
fe1b8dd Increase version requirement for ddev to macOS Sierra 10.12 since docker has increased theirs (#1467)
23d8d36 Improve curl commands so they fail when they should on build (#1451)

v1.7.0 Prerelease testing

29 Mar 01:52
fa0bc13
Compare
Choose a tag to compare
Pre-release

Installation/Upgrade

See the installation instructions for details, but it's easy:

  • macOS Homebrew and Linux Linuxbrew: brew upgrade ddev
  • Linux or macOS via script:
    curl https://raw.githubusercontent.com/drud/ddev/master/scripts/install_ddev.sh | bash
  • Windows: Download the ddev_windows_installer.v1.7.0.exe above or with Chocolatey choco install ddev or choco upgrade ddev (or choco install ddev --version=1.7.0 while it's in the approval process.)
    And anywhere, you can just download the tarball or zipball, untar or unzip it, and place the executable in your path where it belongs.

NOTE: Especially to mariadb 10.1 users: If you had to explicitly set the dbcontainer version in your .ddev/config.yaml due to the bug in v1.6.0, please remove that now.

Key changes in v1.7.0:

  • config.*.yaml overrides: local configuration files can be used to override a team-standard checked-in .ddev/config.yaml. See docs. #1504 and #1410.
  • Optional static bind ports for db and webserver containers. Those who want the dbserver or webserver bound port to be static within a project can use host_db_port or host_webserver_port to specify it: #1502, #1491, #941
  • Previous versions of Docker for Mac supported operating systems back to El Capitan, but Docker-for-Mac has dropped support for anything before macOS Sierra 10.12, so ddev also has to drop support for everything before Sierra.
  • The default PHP version changes to 7.2. This affects new Drupal 8 and Drupal 7 projects, as well as projects of type "php".
  • Fix regression in v1.5.0 where mariadb_version = 10.1 did not properly set the container version to the 10.1 container version.
  • The ddev-dbserver images now use the official MariaDB docker image (which uses Debian) as a base, instead of building a custom Alpine image. This should be invisible to all users, but we love to hear feedback.

Thanks!

Many community members helped out with this release.

  • Thanks to @janhelke for PR #1484 - community initiatives are so welcome!
  • Many of you filed issues and helped point out important improvements.
  • Thanks to @akalata for rolling up her sleeves and testing this release!

Commits since v1.6.0

fa0bc13 Bump containers to v1.7.0 (#1511)
9958c90 Minor web container and router container config changes, fixes #1507, fixes #1447 (#1510)
9fb54a4 Static configuration of webserver and dbserver localhost ports, bind only to localhost, fixes #1491, fixes #941, #642 too (#1502)
f12bbe9 Update to build-tools 2.2.1: Golang v1.12.1 and fix GOCACHE (#1508)
aaeaadf Allow config..yml files to override config.yaml, fixes #1410 (#1504)
2ccc3f4 The old bind-mounted db code is now fully obsolete, remove it (#1506)
c39d6bd Change default PHP version from 7.1 to 7.2 (#1497)
e3e30f0 Remove use of import-db directory (#1445)
8fd114c Improve macos buildkite setup instructions [skip ci][ci skip] (#1500)
d94d4bb Remove 4/5 of macOS CircleCI tests (and container build), fixes #1487 (#1498)
7c44904 Regression: mariadb_version should work correctly, but be overridden by DBImage, fixes #1455 (#1494)
671e1b1 Make longer server names possible (#1484)
f0a57dd Increase timeout for db startup, fixes #1477 (#1493)
f03c0f6 Add .mysql* to list of accepted import-db filetypes, fixes #1483 (#1492)
58ecdf1 We no longer have to cleanup the temp dir as it's cleaned up in the mv process, fixes #1457 (#1486)
7ce1ed8 Invalidate homebrew cache with new version (#1480)
ba27311 Fix error in docs about ddev compose-config (#1478)
e7c0133 Move to build-tools 2.2.0 in support of getting ddev to appveyor (#1470)
b39e6f2 Use the official Mariadb image as base for ddev-dbserver (#1476)
fbfb3e9 Fix Windows NFS script when username has spaces, fixes #1452 (#1453)
fe1b8dd Increase version requirement for ddev to macOS Sierra 10.12 since docker has increased theirs (#1467)
23d8d36 Improve curl commands so they fail when they should on build (#1451)

v1.6.0: NFS mounting, Chocolatey for Windows

11 Feb 18:08
93c03fa
Compare
Choose a tag to compare

Installation/Upgrade

See the installation instructions for details, but it's easy:

  • macOS Homebrew and Linux Linuxbrew: brew upgrade ddev
  • Linux or macOS via script:
    curl https://raw.githubusercontent.com/drud/ddev/master/scripts/install_ddev.sh | bash
  • Windows: Download the ddev_windows_installer.v1.6.0.exe above or with Chocolatey choco install ddev or choco upgrade ddev (or for now choco install ddev --version=1.6.0 while it's in the approval process.)
    And anywhere, you can just download the tarball or zipball, untar or unzip it, and place the executable in your path where it belongs.

Key changes in v1.6.0:

  • ddev now supports) NFS mounting into the container on all platforms. This provides nearly the speed increase of the experimental webcache feature, but with far greater reliability, and it works on all platforms. In addition, it seems to solve perpetual symlink problems that windows users had. It does require some configuration on the host side, so please read the docs
  • Chocolatey installs on Windows: Chocolatey is a leading package manager for Windows, and it makes so many packages so easy to install. On our Windows testbots we use choco to install all the key items that a testbot needs with choco install -y git mysql-cli golang make docker-desktop nssm GoogleChrome zip jq composer cmder netcat ddev, note that ddev is in there now :). This version may not be available for a few days because the approval process is slow, but it will soon be available by version with choco install ddev --version=1.6.0
  • The ddev-dbserver container has been updated so that triggers work, for those of you who use triggers.
  • Xdebug now works on docker toolbox with no customization.
  • For teams that use webcache_enabled: true, Windows and Linux no longer fail if they encounter that configuration, they just warn that it's not supported there.
  • Root/sudo usage of ddev is prevented (#1407). We found that people kept getting themselves in trouble by trying to use sudo and then they would have files that could not be accessed by an ordinary user.

Commits since v1.5.2

93c03fa Improve NFS documentation and install script, especially for Windows (#1442)
1ec1223 Don't complain if nfs volume not found (#1444)
c2a3d49 Push al(most) all artifacts to where we want them to go (#1438)
b8cd0a4 Kill containers before sanetetbot (#1440)
f024447 Bump release version to v1.6.0 pre-pushed containers (#1439)
6c61dfe Allow a user to remove a project by name after deleting project directory, closes #1338 (#1345)
f4739bb Fix nightly build broken by #1425 (#1435)
221674a Support chocolatey for Windows user installation (#1405)
aae18dd Rework CircleCI config to do macOS builds, fixes #1415 (#1425)
d21e90c Update starter (from scratch) database caches to match mariadb version, fixes #1340 (#1434)
25dc4c2 Fix version constraint to have a pre, fixes #1431 (#1433)
b79e7ec Specify how project names work in pantheon (docs) (#1413)
64a43c8 Implement nfs mounted project directory, fixes #976 (#1396)
7f738b6 Minor: Better volume cleanup before running tests and full remove (#1428)
4857f5f Make sanetestbot.sh wait for docker to be ready (#1427)
97aaf3f Bump pinned mariaDB pinned version to solve container build problems (#1429)
00ef6f1 Automatically create release on tag creation, closes #1091 (#1230)
4ddce0e Notify when the project type does not support import-files, fixes #1416 (#1420)
5d1bac2 ddev auth ssh should show key it's working on (docker toolbox), fixes #1394 (#1404)
3efc826 Do not report trying to delete nonexistent docker volumes, fixes #1382 (#1408)
9ac8a0d Skip prerelease versions in update check (#1409)
e153ea0 Prevent running as root except for ddev hostname, fixes #1379 (#1407)
c30653b Make dbimage work again in config.yaml, fixes #1374 (#1402)
7d1d59d Add trigger privilege to default db, fixes #1398 (#1399)
13efcc4 ddev composer should fail if composer fails, fixes #1373 (#1400)
1aa0109 Support xdebug on Docker Toolbox, fixes #1297 (#1391)
105201d Make webcache_enabled just a warning on non-macOS, fixes #1395 (#1390)
7cc2752 Fix Maintenance status in Readme (#1393)
67125da Don't ask about sentry if DDEV_NO_SENTRY (#1392)
e315a1d Improvements to bgsync/webcache debugging, testing, and behavior (#1389)
3797c40 Try docker command twice in sanetestbot.sh, minor improvements to sanetestbot (#1388)
71af62f Remove dep-oriented Gopkg.toml, etc. (#1384)
1734465 Minor docs fix to remind people to composer install when using git checkout (#1383)
793dd29 Update drush, wp-cli, use recommended drush install technique, fixes #1039 (#1386)

v1.5.2: linuxbrew, ghostscript, php-apcu

15 Jan 23:03
c62cf76
Compare
Choose a tag to compare

Installation/Upgrade

See the installation instructions for details, but it's easy:

  • macOS Homebrew and Linux Linuxbrew: brew upgrade ddev
  • Linux or macOS via script:
    curl https://raw.githubusercontent.com/drud/ddev/master/install_ddev.sh | bash
  • Windows: Download the ddev_windows_installer.v1.5.2.exe above.
    And anywhere, you can just download the tarball or zipball, untar or unzip it, and place the executable in your path where it belongs.

Key changes in v1.5.2:

  • Linuxbrew is our preferred install/upgrade technique on all Linux distributions.
  • PHP 7.3 now has php-memcached in web container
  • ghostscript added to web container
  • php-apcu added to web container, significant performance boost. For Drupal 8 $settings['class_loader_auto_detect'] = FALSE; is added to the settings.ddev.php and it increases performance quite a lot with php-apcu. Thanks to @mglaman for the suggestion in Stack Overflow
  • mariadb in db container upgraded from 10.2.15 to 10.2.19-r1
  • ddev import-db and ddev pull now sport a nice progress bar letting you know how much time you have for coffee. Thanks to @longwave for that!

Commits since v1.5.1

c62cf76 Bump container version numbers to v1.5.2 (#1378)
740caa0 More final v1.5.2 docs (#1377)
3f78f44 Bring in build_tools 2.0 (#1371)
1e35bac Update docs for Linuxbrew (#1376)
263dd48 Solve mariabackup-fails-on-docker-toolbox problem (#1375)
baa15bf Web container maintenance, fixes #1350, fixes #920, fixes #1337 (#1368)
9c0a8ed Documentation updates including for Docker Toolbox, fixes #1271 (#1370)
e559fa0 Use pv to show progress bar during import-db (#1349)
76187c4 Document how to add a beanstalk queue (#1315)
9116c73 Fix Arch Linux docs link (#1366)