Releases: ddev/ddev
v1.23.4
Installation
See the installation instructions for details, but it's easy:
- macOS:
brew install ddev/ddev/ddev
or justbrew upgrade ddev
. - Traditional Windows: Use
choco upgrade -y ddev
, or download the ddev_windows_installer below. - Linux or WSL2: Use
apt-get install ddev
orapt-get upgrade
see apt/yum installation or use the install_ddev.sh:curl -fsSL https://raw.githubusercontent.com/ddev/ddev/master/scripts/install_ddev.sh | bash
- 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
orddev delete images --all
after upgrading to free up disk space used by previous docker image versions. This does no harm. - Consider
ddev config --update
to update your projects to current configuration.
Highlights:
- PHP 8.4.0 Alpha 4 support with most extensions. (These extensions will be coming in later releases as they are supported upstream: apcu, opcache, redis, uploadprogress, xdebug, xhprof)
- Traefik v3 support.
Let's Encrypt works with Traefik, see contributor training and documentation.(A regression broke this, it will work in next DDEV release)- Autodetect Node.js version from a file, such as
.nvmrc
orpackage.json
withddev config --nodejs-version=auto
, see documentation. ddev phpmyadmin
command provided everywhere, will install the ddev-phpmyadmin add-on if wanted, thanks @nlighteneddesign- Custom DDEV commands can have aliases, and check out the new
ddev aliases
command.
Changes:
ddev config --omit-containers=""
and other flags work (clear the config) as expected, thanks @jonesrussell- PostgreSQL client versions in
web
container match with versions indb
container. - Replace underscores with hyphens in project-name, thanks @mbomb007
TARGETARCH
,TARGETOS
,TARGETPLATFORM
environment variables added to Docker builds in.ddev/web-build/Dockerfile.*
- DDEV add-ons can now use
ddev_version_constraint
in install.yaml to specify a constraint for the add-on. - Improved
ddev import-db
performance with MySQL 8.0, thanks @hkirsman
What's Changed
- build: Bump gitpod image for DDEV v1.23.3 [skip ci] by @rfay in #6371
- fix: Update to Traefik v3, make Let's Encrypt work with Traefik, fixes #6183, for #5940, fixes #4632 by @rfay in #6317
- build: Use ENV = in Dockerfile by @rfay in #6370
- build: percona xtrabackup changed install technique by @rfay in #6374
- test: stop testing deprecated nginx-proxy [skip ci] by @rfay in #6378
- fix: improve installation method for mariadb-client by @stasadev in #6377
- fix: Don't warn about Docker Desktop on WSL2, fixes #6339 [skip ci] by @rfay in #6384
- feat: Allow traefik merged static configuration override with
static_config.*.yaml
by @rfay in #6379 - docs: stop checking aur.archlinux.org link [skip ci] by @stasadev in #6387
- fix: Install matching postgresql client versions in ddev-webserver, fixes #6139 by @rfay in #6385
- fix: omit ddev-router for Gitpod (for DDEV PRs) [skip ci] by @stasadev in #6390
- fix: update regex for traefik v3 usage by @rfay in #6388
- fix: make
ddev launch
fully compatible with Gitpod and Codespaces, fixes #6389 by @stasadev in #6391 - fix: make composer subcommands ignore invalid flags on any errors, fixes #6380 by @stasadev in #6382
- feat: add ddev/ddev-utilities to the pulled images by @stasadev in #6395
- ci: update Codespaces link, fixes #6399 [skip ci] by @stasadev in #6400
- feat: add global phpmyadmin install command, fixes #6342 by @nlighteneddesign in #6343
- build(deps): bump actions/setup-python from 5.1.0 to 5.1.1 by @dependabot in #6402
- test: stop testing use_docker_compose_from_path, update related docs by @rfay in #6393
- fix: Use port 80 to get better headers for Codespaces, fixes #6102 by @rfay in #6398
- docs: correct config used to add extra-packages by @matlads in #6403
- docs: Update 'ddev get' example by @mfickers in #6404
- feat: Provide TARGETARCH, TARGETOS, TARGETPLATFORM to docker builds by @rfay in #6233
- test: make sure that volumes in buildkite are deleted at test start by @rfay in #6407
- feat: Replace underscores with hyphens in project-name, fixes #6206 by @mbomb007 in #6210
- docs: remove CircleCI badge as we aren't running their tests by @rfay in #6409
- build: try out docker-compose v2.29.0 by @rfay in #6408
- fix: clear omit_containers, additional_fqdns, additional_hostnames config with empty flag, fixes #6140 by @jonesrussell in #6202
- fix: Use turn off innodb_doublewrite to improve import-db performance, fixes #6244 by @rfay in #6411
- fix: default_container_timeout should work right, fixes #5133 again by @rfay in #6415
- test: Skip TestSSHAuth on Colima by @rfay in #6423
- fix: fail gently if sqlite3 can't be downloaded for drupal11, fixes #6425, for #6419 by @rfay in #6426
- docs: improve WSL2 buildkite install instructions by @rfay in #6396
- docs: Add tip how to setup additional hostnames debug by @maks-oleksyuk in #6436
- fix: create mutagen-agents tarball if it doesn't exist, fixes #6421 by @davearch in #6427
- docs: improve placement of .env for environment variables by @rfay in #6439
- feat: support PHP8.4, fixes #6205 by @rfay in #6446
- docs: show actual running context in
install.yaml
for add-ons by @stasadev in #6447 - feat: add
ddev_version_constraint
for add-ons, remove#ddev-nodisplay
, fixes #5969 by @stasadev in #6433 - build: bump github.com/docker/docker from 26.1.1+incompatible to 27.1.1+incompatible by @dependabot in #6450
- feat: add support for
n install auto
, addN_PREFIX
cache, replace node repo withn
, fixes #6418 by @stasadev in #6420 - docs: promote drupal 11 now that it's released, for #6452 by @rfay in #6453
- test: Update tests for Drupal11 to latest tarballs, fixes #6452 by @rfay in #6454
- docs: update magento1 and backdrop quickstarts, fixes #6448 by @stasadev in #6449
- docs: store magento2 credentials in the global config, for #5932, for #6380 by @stasadev in #6442
- test: mysql-client 9.0 in homebrew is broken, use 8.0 by @rfay in #6459
- feat: add aliases for custom commands,
art
alias forartisan
,ddev aliases
command, fixes #6443 by @stasadev in #6434 - feat: add
log-stderr.sh
command, for #6451, for #6420 by @stasadev in #6455 - fix: show containers we're waiting for and better error message on timeout/unhealthy by @rfay in #6422
- build: bump images to v1.23.4 and docker-compose to v2.29.1 by @stasadev in #6460
- docs: add readable tab anchors by @stasadev in #6464
New Contributors
- @nlighteneddesign made their first contribution in #6343
- @matlads made their first contribution in #6403
- @mfickers made their first contribution in #6404
- @jonesrussell made their first contribution in #6202
- @maks-oleksyuk made their first contribution in #6436
- @davearch made their first contribution in #6427
Full Changelog: v1.23.3...v1.23.4
v1.23.3: Fix results upstream Debian changes: [Errno 13] Permission denied: '/var/log/supervisord.log'
Installation
See the installation instructions for details, but it's easy:
- macOS:
brew install ddev/ddev/ddev
or justbrew upgrade ddev
. - Traditional Windows: Use
choco upgrade -y ddev
, or download the ddev_windows_installer below. - Linux or WSL2: Use
apt-get install ddev
orapt-get upgrade
see apt/yum installation or use the install_ddev.sh:curl -fsSL https://raw.githubusercontent.com/ddev/ddev/master/scripts/install_ddev.sh | bash
- 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
orddev delete images --all
after upgrading to free up disk space used by previous docker image versions. This does no harm. - Consider
ddev config --update
to update your projects to current configuration.
Changes:
- Fixes problems some projects with extra packages had after Debian 12.6 was released (See #6363 and its links) "PermissionError: [Errno 13] Permission denied: '/var/log/supervisord.log'"
- New
--skip-hooks
global flag, thanks to @hanoii - Support for MariaDB 11.4 LTS
- Drupal 10 + 11 settings improvements (state cache)
- Improvements in
ddev composer create
thanks to @stasadev - Windows ARM64 support, thanks @dennisameling
mysqladmin
added back into web container
What's Changed
- build: use $XDG_CONFIG_HOME in Gitpod for v1.23.2 release, for #6228 [skip ci] by @stasadev in #6315
- feat: add
--skip-hooks
global flag to avoid running hooks, fixes #2129, fixes #6185 by @hanoii in #6195 - docs: Remove stray info about packages from hooks docs by @rfay in #6322
- docs: Add FAQ about checking in .ddev by @rfay in #6320
- docs: suggestion ddev --version, move mkcert -install to later by @rfay in #6319
- docs: update the link to upgrade DDEV in faq.md by @kiatng in #6325
- fix: generated gitignore is not working correctly by @rfay in #6324
- refactor: error handling for PR artifact comment [skip ci] by @stasadev in #6327
- docs: Warn about Codespaces by @rfay in #6321
- docs: Improve ddev debug test by offering suggestions early [skip ci] by @rfay in #6323
- feat: add support for MariaDB 11.4 LTS, fixes #6061 by @hussainweb in #6243
- docs: pacify textlint on mysql/https by @rfay in #6336
- docs: revisit WSL Docker Desktop setup instructions by @rfay in #6330
- fix: autodownload yarn from corepack, and set cache-folder, fixes #6332 by @stasadev in #6333
- docs: windows-wsl2-dd needs apt install for ngrok by @rfay in #6341
- build: check docker-compose 2.28.1 by @rfay in #6340
- fix: use real path to global config location, fixes #6328 by @stasadev in #6329
- test: stop running nightly tests [skip ci] by @rfay in #6347
- test: Attempt to debug TestProcessHooks intermittent failures, fixes #6313 by @rfay in #6314
- fix: Drupal 10 and Drupal 11 settings have migrated, set state_cache by @rfay in #6346
- build: use IPv4 inside a container, mariadb-client 11.4 for the webserver by @stasadev in #6334
- fix: pass all valid options to nested commands in
ddev composer create
, fixes #6300, fixes #6246, for #5058 by @stasadev in #6303 - build: enable building windows arm64 binaries, fixes #6344 by @dennisameling in #6348
- docs: Fix textlint usage, make textlint work on PRs by @rfay in #6354
- docs: Joomla Quickstart by @rpkoller in #6255
- docs: Initial draft for adding a quickstart for Sulu, fixes #6230 by @rpkoller in #6256
- fix: add mysqladmin to web container for mysql, fixes #6355 by @rfay in #6360
- fix: add chmod for /var/log, for #5898 by @stasadev in #6363
- fix: install extra content in Dockerfile earlier, for #4394 by @stasadev in #6365
- docs: remove bad link to deb.sury.org, confusing extra verbiage by @rfay in #6367
- fix: Check to see if IP address is local to determine whether to add to hosts by @rfay in #6359
- fix: do not explicitly set the backdrop_drupal_compatibility and update_free_access settings, fixes #6090 by @klonos in #6091
- build: bump images to v1.23.3 by @rfay in #6369
New Contributors
- @kiatng made their first contribution in #6325
- @hussainweb made their first contribution in #6243
Full Changelog: v1.23.2...v1.23.3
v1.23.2: MariaDB Dump BC Break recovery
Installation
See the installation instructions for details, but it's easy:
- macOS:
brew install ddev/ddev/ddev
or justbrew upgrade ddev
. - Traditional Windows: Use
choco upgrade -y ddev
, or download the ddev_windows_installer below. - Linux or WSL2: Use
apt-get install ddev
orapt-get upgrade
see apt/yum installation or use the install_ddev.sh:curl -fsSL https://raw.githubusercontent.com/ddev/ddev/master/scripts/install_ddev.sh | bash
- 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
orddev delete images --all
after upgrading to free up disk space used by previous docker image versions. This does no harm. - Consider
ddev config --update
to update your projects to current configuration.
Changes:
- Extensive support for MySQL and MariaDB clients to resolve breaking changes caused by new MariaDB dump file format. See full details in blog
- MySQL 8.0 updated to 8.0.36
- Respect $XDG_CONFIG_HOME for DDEV global configuration by @danepowell, see docs
- Extended support for VIRTUAL_HOST in
ddev describe
by @kevinquillen ddev delete
,ddev clean
,ddev stop --unlist
are friendlier when then can't find the original project.- Lots and lots of bug fixes and docs and little improvements
What's Changed
- build: update .gitpod.yml for v1.23.1 release by @stasadev in #6200
- build: Remove concurrency/cancellation check on pr-check as it's useless [skip ci] by @rfay in #6214
- test: Update drupal11 test to 11.0.0-beta1 by @rfay in #6219
- fix: PHP CodeSniffer on settings.ddev.php for Drupal 8 - 11 by @truls1502 in #6217
- docs: add link to TYPO3 ddev guides by @mandrasch in #6218
- docs: Add Debugging long mutagen startup time by @rfay in #6213
- docs: Add fix to disable windows experience on windows test runners by @rfay in #6212
- fix: TYPO3 no longer has typo3cms command, update other out-of-date by @rfay in #6211
- fix: add more checks for existing approot by @stasadev in #6208
- docs: minor updates for Laravel quickstart guide by @mandrasch in #6221
- docs: add Vite infobox for Laravel quickstart by @mandrasch in #6220
- docs: typo in faq "thew" by @dahnte in #6224
- docs: Explain how to switch from nvm to
nodejs_version
, fixes #6204 by @syzygy333 in #6207 - fix: Improve instructional output on 'ddev config' by @rfay in #6223
- fix: do not remove mounted files directory, fixes #6188 by @rfay in #6199
- fix: do not validate config in ddev clean, delete -O, stop -U by @stasadev in #6209
- docs: make textlint stop complaining about command line tool by @rfay in #6227
- feat: output the VIRTUAL_HOST if specified in environment variables of a service by @kevinquillen in #6136
- feat: generalize HOMEDIR management and respect XDG_CONFIG_HOME, fixes #5807 by @danepowell in #5813
- test: fix broken tests, for #5813 by @stasadev in #6232
- fix: ImportDB() and ddev import-db should remove new mariadb-dump line, for #6249 by @rfay in #6253
- fix: Make export-db also remove new mariadb directive in dumpfile , fixes #6249 by @rfay in #6257
- test: Fix test failures on master of Rancher, Colima, Windows by @rfay in #6258
- fix: tail for mariadb export-db doesn't work on older mariadb by @rfay in #6261
- test: Skip TestAutocompletionForCustomCmds because of slow mount responses by @rfay in #6264
- build: download mkcert from github by @rfay in #6265
- build: bump upload-artifact to v4 and fix mkcert.exe in tarball/zipball [skip ci] by @rfay in #6266
- docs: install mysql-client instead of mariadb on macOS by @rfay in #6267
- test: Try to fix windows problems with TestPoweroffOnNewVersion by @rfay in #6262
- test: Don't use php package in TestExtraPackages by @rfay in #6269
- fix: detect Rancher Desktop, fixes #6259 by @stasadev in #6268
- docs: add link to contributor trainings by @mandrasch in #6248
- docs: improve FAQ - communication between projects by @mandrasch in #6238
- fix: Drupal - switch to sendmail transport always in settings.ddev.php by @doradovictor in #6192
- docs: Add a small update noting either a subdomain or arbitrary domain. by @kevinquillen in #6229
- docs: improve contributing via gitpod by @mandrasch in #6247
- docs: Update PHPStorm instructions to include COMPOSE_PROJECT_NAME in manual instructions by @michielgerritsen in #6226
- build: standardize apt-get usage, remove blackfire from apt sources, for #6235, for #6078 by @stasadev in #6236
- test: TestCopyIntoVolume should clean up after itself [skip ci] by @rfay in #6271
- refactor: make "waiting for" message more generic by @tyler36 in #6270
- build: Use github instead of dl.filippo.io to get mkcert binary by @rfay in #6272
- fix: prevent various Mutagen conflicts between daemons when changing versions or global directory, fixes #6234 by @rfay in #6239
- build: bump goreleaser to v2, update its action to v6 by @stasadev in #6278
- docs: fix mutagen example command by @stasadev in #6277
- refactor: remove backticks from ddev mailpit in ddev describe info text, fixes #6276 by @gitressa in #6279
- docs: update PR template by @stasadev in #6280
- refactor: Update to new amplitude/analytics-go by @rfay in #6283
- test: fix TestFileHash on Windows, fixes #6284 by @stasadev in #6285
- fix: make self-upgrade command respect spaces, fixes #6274 by @stasadev in #6282
- feat: don't override ddev-generated built-in project files created by add-on, fixes #6173, fixes #6190 by @stasadev in #6263
- docs: Update commands.md to add detail for
debug migrate-database
by @Nick-Hope in #6288 - fix: create
working_dir
forweb
if it doesn't exist, fixes #6158 by @stasadev in #6242 - build: Bump mysql to 8.0.36, fixes #6250 by @rfay in #6291
- fix: Use mariadb repositories for mariadb-client, for #6083 by @rfay in #6290
- docs: update first step in project-types.md by @kdambekalns in #6296
- build: bump yq to v4.44.1 by @juanjol in #6299
- fix: optionally load bash completion for npm and nvm, fixes #6106 by @stasadev in #6294
- feat: add warnings for global commands when they are "unknown", for #5523, for #6275 by @stasadev in #6293
- fix: Composer post-root-package-install didn't work with Mutagen enabled by @stasadev in #6281
- fix: Add matching mysql clients to mysql:5.7 and mysql:8.0, for #6083 by @rfay in #6297
- test: Fix TestAcquiaPush and TestLagoonPush, add mariadb-old clients, fixes #6295 by @rfay in #6304
- fix: Don't terminate mutagen sessions on upgrade/version change by @rfay in #6305
- docs: update instructions for cleaning up old
ddev
binaries by @stasadev in #6310 - fix: Support MySQL 5.5 and 5.6 on ddev-webserver by using MySQL 5.7 clients by @rfay in #6309
- build: prepare images for v1.23.2 by @rfay in #6312
New Contributors
- @dahnte made their first contribution in #6224
- @syzygy333 made their first contribution in #6207
- @kevinquillen made their first contribution in #6136
- @danepowell made their first contribution in #5813
- @doradovictor made their first contribution in #6192
- @michielgerritsen made their first contribution in #6226
- @kdambekalns made their first contribution in #6296
- @ju...
v1.23.1
Installation
See the installation instructions for details, but it's easy:
- macOS:
brew install ddev/ddev/ddev
or justbrew upgrade ddev
. - Traditional Windows: Use
choco upgrade -y ddev
, or download the ddev_windows_installer below. - Linux or WSL2: Use
apt-get install ddev
orapt-get upgrade
see apt/yum installation or use the install_ddev.sh:curl -fsSL https://raw.githubusercontent.com/ddev/ddev/master/scripts/install_ddev.sh | bash
- 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
orddev delete images --all
after upgrading to free up disk space used by previous docker image versions. This does no harm. - Consider
ddev config --update
to update your projects to current configuration.
Changes:
- SQLite 3.45 support for Drupal 11.
- Xdebug 3.3 downgraded to Xdebug 3.2 in PHP 8.0, 8.1, 8.2 due to possible crashes for minority of users.
- New toggle option in
ddev xhprof toggle
, thanks @GuySartorelli ! - Support for negative default in confirm prompt for
ddev push
, thanks @cballenar ! - Improvements in some
ddev debug
commands. - And many, many bug fixes, docs, etc.
What's Changed
- build: update .gitpod.yml for v1.23.0 release [skip ci] by @stasadev in #6112
- build: update devcontainer-feature.json for v1.23.0 release [skip ci] by @stasadev in #6115
- docs: remove errant comma in codespaces devcontainer.json by @rfay in #6114
- fix: clean up test project on signal, fixes #6111 by @rfay in #6119
- refactor: move php folder permission fix to the end, for #6122 by @stasadev in #6124
- build: keep ddev-ssh-agent on gitpod, fixes #6132 [skip ci] by @rfay in #6134
- build: bump golangci/golangci-lint-action from 4 to 5 by @dependabot in #6138
- build: bump docker-compose to 2.27.0 by @rfay in #6129
- docs: Various cleanup items by @rfay in #6127
- fix: provide sqlite 3.45 for drupal11, fixes #6110 by @rfay in #6137
- fix: Add host.docker.internal and customizations to ddev debug test by @rfay in #6144
- build: show badges for Gitpod and GitHub Codespaces in PRs by @stasadev in #6151
- build: bump github.com/docker/docker from 26.0.0+incompatible to 26.1.1+incompatible by @dependabot in #6117
- docs: install curl for Debian/Ubuntu and WSL2, fixes #5915 by @stasadev in #6150
- docs: encourage people to use latest stable version by @rfay in #6171
- fix: show error in
ddev debug refresh
by @stasadev in #6154 - test: Use newer technique to cancel in-progress builds by @rfay in #6172
- fix: close global traefik file after creation by @testwill in #6153
- fix: getDatabaseBackups() should check error on .downloads deletion by @rfay in #6133
- fix: check for valid db version in
ddev debug migrate-database
by @stasadev in #6168 - fix: add timeout for install_nvm.sh by @stasadev in #6170
- docs: fix broken anchor links by @stasadev in #6177
- docs: Add info about #ddev-generated for apache-fpm users by @rfay in #6176
- feat: set Drupal database to mariadb default on config update, fixes #6160 by @stasadev in #6165
- fix: retrieve Drupal 11 sqlite3 packages from snapshot.debian.org by @rfay in #6175
- build: update hardened/prod healthcheck.sh, for #6033 by @stasadev in #6126
- build: bump golangci/golangci-lint-action from 5 to 6 by @dependabot in #6178
- build: install deb.sury.org key from debsuryorg-archive-keyring, fixes #6143 by @stasadev in #6180
- fix: typo in auth ssh command description by @stasadev in #6182
- build: compile Xdebug 3.2.2 for PHP 8.0, 8.1, 8.2, fixes #6159 by @stasadev in #6181
- fix: update d9simple to d10simple by @shaal in #6186
- build: bump images to v1.23.1 for release by @stasadev in #6184
- fix: hide custom ddev pull and ddev push commands from Amplitude, fixes #6128 by @stasadev in #6152
- fix: Skip hidden directories when creating commands by @GuySartorelli in #6081
- feat: Add toggle option for xhprof command, rework xdebug, fixes #5782 by @GuySartorelli in #6082
- feat: Add support for negative default in confirm prompt, fixes #6103 by @cballenar in #6118
- fix: Gitpod and Codespaces can use HTTPS by @stasadev in #5943
- docs: Fix a couple of broken link fragments by @rfay in #6197
- docs: Fix markdownlint problems by using different headers instead of different links by @rfay in #6198
- build: fix Codespaces link by @stasadev in #6196
- build: fix devcontainers postCreateCommand permissions, fixes #6187 by @stasadev in #6194
- fix: do not send autocomplete commands to Amplitude, fixes #6189 by @stasadev in #6193
New Contributors
- @cballenar made their first contribution in #6118
Full Changelog: v1.23.0...v1.23.1
v1.23.0: Drupal 11 support, new "drupal" project type, corepack, yarn v4, new defaults
Installation
See the installation instructions for details, but it's easy:
- macOS:
brew install ddev/ddev/ddev
or justbrew upgrade ddev
. - Traditional Windows: Use
choco upgrade -y ddev
, or download the ddev_windows_installer below. - Linux or WSL2: Use
apt-get install ddev
orapt-get upgrade
see apt/yum installation or use the install_ddev.sh:curl -fsSL https://raw.githubusercontent.com/ddev/ddev/master/scripts/install_ddev.sh | bash
- 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
orddev delete images --all
after upgrading to free up disk space used by previous docker image versions. This does no harm. - Consider
ddev config --update
to update your projects to current configuration.
Highlights:
- Drupal 11 support, including
corepack
support withcorepack_enable: true
and automatic detection of the new type. ddev-webserver
is now upgraded to Debian 12 Bookworm, which means that many newer Debian packages are available.- Corepack and yarn v4 support.
- New
drupal
project type to cover Drupal 8+. If you are updating to usetype: drupal
you may want to useddev_version_constraint: '>=v1.23.0'
as well - New
cakephp
project type, thanks @ajibarra ! - Laravel 11 support for
mariadb
database connection. ddev pint
support for Laravel, thanks @penyaskito !- Autocompletion for custom/shell commands, thanks @GuySartorelli !
- PHP default version is now 8.2.
- Node.js default version is now 20, thanks @peter-neumann-dev !
- Default database is now
mariadb:10.11
. - Traefik Docker image is now 2.11, thanks @nilsandresen !
ddev composer create
is much more compatible withcomposer create-project
, thanks @gilbertsoft !ddev launch
can open full URLsddev launch https://ddev.com
and custom website portsddev launch :3000
.ddev config --update
is a new flag. It updates all known.ddev/config.yaml
settings based on detected code. Works great for most CMSs and frameworks. It's likeddev config --auto
, butddev config --auto
won't change existing settings.- On WSL2 DDEV uses a different version to figure out
host.docker.internal
for Xdebug. The new technique seems to work more generally; WSL2 seems to have changed the recommended technique. - And many, many bug fixes, docs, etc.
Breaking Changes:
- If you update to the new
drupal
project type, useddev_version_constraint: '>= v1.23.0'
as well to notify users of older DDEV versions what the problem is. - Check your
.ddev/config.yaml
, namelywebimage_extra_packages
for compatibility with Debian 12 Bookworm. - Check your custom Dockerfiles, e.g. if you made some customizations to
/etc/apt/sources.list
, it has been moved to/etc/apt/sources.list.d/debian.sources
with a different structure. - Python2 support has been removed from upstream, we recommend using an older DDEV if you really need it, see #5928.
- If you have used
localhost
TLD for your sites, thecurl
connection between them is broken, see #6040.
Behavior Changes:
- Your DDEV project list is located at
~/.ddev/project_list.yaml
, thanks @GuySartorelli ! CRAFT_WEB_URL
has been removed from Craft CMS auto-config as it's not necessary.ddev config
no longer requires the--create-docroot
flag, as it will create docroot automatically.- Improved performance for
ddev xhprof
as theXHPROF_FLAGS_CPU
flag has been removed by default. - Platform.sh legacy CLI replaced with the golang-based CLI.
- Our primary recommendation for macOS Docker provider changed to OrbStack.
- Missing projects are automatically removed from the
ddev list
after notification. - Website primary URL is correctly set to HTTPS when using custom certificates, thanks @tbmatuka !
- If you happen to downgrade DDEV to v1.22.7 or older it will cause the
ddev list
to be empty. Don't worry, runddev start
in the project directory and it will reappear in the list.
Bug Fixes:
- Affected version v1.22.7:
ddev config
could accidentally override your project type to a detected one. - Affected versions from v1.22.4 to v1.22.7: A race condition could break structure for
docker-compose config
, thanks @deviantintegral !
Minor Notes:
- Zsh completion instructions are improved, thanks @rpkoller !
- Kirby CMS quickstart, thanks @texnixe !
- Grav CMS quickstart, thanks @rpkoller !
- Pimcore CMS quickstart.
- Symfony Framework quickstart.
- TablePlus support from
Setapp
directory, thanks @peterkraume ! - DBeaver support in WSL2, thanks @Brupes !
- Magento 2.4.5+ is correctly detected, thanks @Morgy93 !
- DDEV documentation uses bundled external js/css libraries for more privacy, thanks @gitressa !
What's Changed
- docs: Add using current stable version to troubleshooting section by @rfay in #5808
- docs: Revert "docs: temporarily revert docs on not needing --create-docroot" by @rfay in #5768
- test: golangci-lint got pickier, satisfy it by @rfay in #5812
- feat: support TablePlus application located in setapp directory (#5815) by @peterkraume in #5816
- fix: follow the zsh naming conventions for completion scripts by @rpkoller in #5814
- docs: update buildkite installation to include icinga by @rfay in #5802
- docs: show initial and project-checkout Backdrop installation by @tyler36 in #5781
- feat: enable autocompletion for custom commands, fixes #5783 by @GuySartorelli in #5785
- build: bump ddev-php-base and ddev-webserver to base on Debian 12 bookworm, replaces #5278 by @rfay in #5579
- docs: update developer release instructions by @stasadev in #5789
- build: improve goreleaser, add testing capabilities, "head" release, docs, fixes #5821, fixes #5811 by @rfay in #5824
- build: revert implementation of 'head' release, fixes #5830 by @rfay in #5831
- build: bump golangci/golangci-lint-action from 3 to 4 by @dependabot in #5827
- build: bump fuxingloh/multi-labeler from 2 to 3 by @dependabot in #5828
- build: filter binaries for deb and rpm on release, fixes #5734 by @stasadev in #5759
- docs: find all DDEV binaries using
which -a ddev
by @stasadev in #5834 - docs: update the section about zsh completions by @rpkoller in #5825
- build: bump traefik to 2.11 by @nilsandresen in #5833
- refactor: update to Node.js v20 LTS as current default by @peter-neumann-dev in #5453
- docs: improve buildkite setup for WSL2 by @rfay in #5846
- docs: use PHP 8.3 for the TYPO3 Quickstart by @jonaseberle in #5842
- feat: change php default version to 8.2, fixes #5767 by @rfay in #5835
- docs: add maintainer docs about remote-config testing by @rfay in #5850
- test: silence docker scout nonsense in buildkite [skip ci] by @rfay in #5851
- docs: don't link check a couple of unstable external urls [skip ci] by @rfay in #5852
- fix: make
ddev --version
work even if not in project and ~/.ddev/commands not yet created by @rfay in #5854 - feat: replace fsouza/go-dockerclient with docker/docker/client, fixes #3460 by @stasadev in #5787
- docs: stop checking all stack overflow links by @rfay in #5858
- docs: mostly warn people off of using xdebug_ide_location by @rfay in #5857
- docs: add auto light / dark mode by @stasadev in #5853
- build: bump fuxingloh/multi-labeler from 3 to 4 by @dependabot in #5867
- docs: buildkite wsl2 setup learning by @rfay in #5864
- docs: stop checking link to community.chocolatey.org by @rfay in #5869
- test: stop testing TestAutocompletionForCustomCmds on Windows, fixes #5870 by @rfay in #5872
- fix: do not create project network programmatically on
ddev start
, fixes #5810 by @stasadev in #5848 - test: Minor improvement to TestComposerVersion by @rfay in #5879
- test: Fix TestPantheonPush, broken due to php8.2 default by @rfay in #5874
- fix: don't panic in app.Describe() if container not found by @rfay in #5873
- fix: ddev start should not continue if web/db containers aren't healthy by @rfay in #5871
- docs: fix 404 link in phpstorm docs by @rfay in #5881
- docs: Link to 'Upgrading DDEV' in 'Usage' section by @amanire in #5877
- fix: error message 'Error converting to int' on
ddev import-db
by @rfay in #5856 - fix...
v1.23.0-rc2
Installation
See the installation instructions for details, but it's easy:
- macOS:
brew install ddev/ddev-edge/ddev
or justbrew upgrade ddev/ddev-edge/ddev
(You may need abrew update
for homebrew to find the new release.) - Linux or WSL2: Download the appropriate deb file from this release and install it with
dpkg -i <file>.deb
- Traditional Windows: Use
choco upgrade -y --pre ddev
to get this one, or download the ddev_windows_installer 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.
- Consider
ddev delete images
after upgrading to free up disk space used by previous docker image versions. This does no harm. - Consider
ddev config --auto
to update your projects to current configuration.
Highlights:
ddev-webserver
is now upgraded to Debian 12 Bookworm, which means that many newer Debian packages are available.- Corepack and yarn v4 support.
- Drupal 11 support, including
corepack
support withcorepack_enable: true
and automatic detection of the new type. - New
drupal
project type to cover Drupal 8+. - New
cakephp
project type, thanks @ajibarra ! - Laravel 11 support for
mariadb
database connection. ddev pint
support for Laravel, thanks @penyaskito !- Autocompletion for custom/shell commands, thanks @GuySartorelli !
- PHP default version is now 8.2.
- Node.js default version is now 20, thanks @peter-neumann-dev !
- Default database is now
mariadb:10.11
. - Traefik Docker image is now 2.11, thanks @nilsandresen !
ddev composer create
is much more compatible withcomposer create-project
, thanks @gilbertsoft !ddev launch
can open full URLsddev launch https://ddev.com
and custom website portsddev launch :3000
.ddev config --update
is a new flag. It updates all known.ddev/config.yaml
settings based on detected code. Works great for most CMSs and frameworks. It's likeddev config --auto
, butddev config --auto
won't change existing settings.- And many, many bug fixes, docs, etc.
Breaking Changes:
- Check your
.ddev/config.yaml
, namelywebimage_extra_packages
anddbimage_extra_packages
for compatibility with Debian 12 Bookworm. - Check your custom Dockerfiles, e.g. if you made some customizations to
/etc/apt/sources.list
, it has been moved to/etc/apt/sources.list.d/debian.sources
with a different structure. - Python2 support has been removed from upstream, we recommend using an older DDEV if you really need it, see #5928.
- If you have used
localhost
TLD for your sites, thecurl
connection between them is broken, see #6040.
Behavior Changes:
- Your DDEV project list is located at
~/.ddev/project_list.yaml
, thanks @GuySartorelli ! CRAFT_WEB_URL
has been removed from Craft CMS auto-config as it's not necessary.ddev config
no longer requires the--create-docroot
flag, as it will create docroot automatically.- Update the deb.sury.org (upstream) package repository key, which will expire on 17 Feb 2024 (a little over a week).
- Improved performance for
ddev xhprof
as theXHPROF_FLAGS_CPU
flag has been removed by default. - Platform.sh legacy CLI replaced with the latest one.
- Our main recommendation for macOS Docker provider changed to OrbStack.
- Missing projects automatically removed from the
ddev list
after notification. - Website primary URL is correctly set to HTTPS when using custom certificates, thanks @tbmatuka !
Bug Fixes:
- Affected version v1.22.7:
ddev config
could accidentally override your project type to a detected one. - Affected versions from v1.22.4 to v1.22.7: A race condition could break structure for
docker-compose config
, thanks @deviantintegral !
Minor Notes:
- Zsh completion instructions are improved, thanks @rpkoller !
- Kirby CMS quickstart, thanks @texnixe !
- Grav CMS quickstart, thanks @rpkoller !
- Pimcore CMS quickstart.
- Symfony Framework quickstart.
- TablePlus support from
Setapp
directory, thanks @peterkraume ! - DBeaver support in WSL2, thanks @Brupes !
- Magento 2.4.5+ is correctly detected, thanks @Morgy93 !
- DDEV documentation uses bundled external js/css libraries for more privacy, thanks @gitressa !
What's Changed
- docs: Add using current stable version to troubleshooting section by @rfay in #5808
- docs: Revert "docs: temporarily revert docs on not needing --create-docroot" by @rfay in #5768
- test: golangci-lint got pickier, satisfy it by @rfay in #5812
- feat: support TablePlus application located in setapp directory (#5815) by @peterkraume in #5816
- fix: follow the zsh naming conventions for completion scripts by @rpkoller in #5814
- docs: update buildkite installation to include icinga by @rfay in #5802
- docs: show initial and project-checkout Backdrop installation by @tyler36 in #5781
- feat: enable autocompletion for custom commands, fixes #5783 by @GuySartorelli in #5785
- build: bump ddev-php-base and ddev-webserver to base on Debian 12 bookworm, replaces #5278 by @rfay in #5579
- docs: update developer release instructions by @stasadev in #5789
- build: improve goreleaser, add testing capabilities, "head" release, docs, fixes #5821, fixes #5811 by @rfay in #5824
- build: revert implementation of 'head' release, fixes #5830 by @rfay in #5831
- build: bump golangci/golangci-lint-action from 3 to 4 by @dependabot in #5827
- build: bump fuxingloh/multi-labeler from 2 to 3 by @dependabot in #5828
- build: filter binaries for deb and rpm on release, fixes #5734 by @stasadev in #5759
- docs: find all DDEV binaries using
which -a ddev
by @stasadev in #5834 - docs: update the section about zsh completions by @rpkoller in #5825
- build: bump traefik to 2.11 by @nilsandresen in #5833
- refactor: update to Node.js v20 LTS as current default by @peter-neumann-dev in #5453
- docs: improve buildkite setup for WSL2 by @rfay in #5846
- docs: use PHP 8.3 for the TYPO3 Quickstart by @jonaseberle in #5842
- feat: change php default version to 8.2, fixes #5767 by @rfay in #5835
- docs: add maintainer docs about remote-config testing by @rfay in #5850
- test: silence docker scout nonsense in buildkite [skip ci] by @rfay in #5851
- docs: don't link check a couple of unstable external urls [skip ci] by @rfay in #5852
- fix: make
ddev --version
work even if not in project and ~/.ddev/commands not yet created by @rfay in #5854 - feat: replace fsouza/go-dockerclient with docker/docker/client, fixes #3460 by @stasadev in #5787
- docs: stop checking all stack overflow links by @rfay in #5858
- docs: mostly warn people off of using xdebug_ide_location by @rfay in #5857
- docs: add auto light / dark mode by @stasadev in #5853
- build: bump fuxingloh/multi-labeler from 3 to 4 by @dependabot in #5867
- docs: buildkite wsl2 setup learning by @rfay in #5864
- docs: stop checking link to community.chocolatey.org by @rfay in #5869
- test: stop testing TestAutocompletionForCustomCmds on Windows, fixes #5870 by @rfay in #5872
- fix: do not create project network programmatically on
ddev start
, fixes #5810 by @stasadev in #5848 - test: Minor improvement to TestComposerVersion by @rfay in #5879
- test: Fix TestPantheonPush, broken due to php8.2 default by @rfay in #5874
- fix: don't panic in app.Describe() if container not found by @rfay in #5873
- fix: ddev start should not continue if web/db containers aren't healthy by @rfay in #5871
- docs: fix 404 link in phpstorm docs by @rfay in #5881
- docs: Link to 'Upgrading DDEV' in 'Usage' section by @amanire in #5877
- fix: error message 'Error converting to int' on
ddev import-db
by @rfay in #5856 - fix: cache Docker client instead of creating a new one all the time, fixes #5861 by @stasadev in #5878
- test: exclude TestPHPOverrides on Colima and TestProcessHooks on Windows by @rfay in #5883
- fix: don't start 'mutagen daemon run' during ddev stop/delete by @rfay in #5868
- feat: change database default to mariadb:10.11, fixes #5797 by @rfay in #5836
- test: Run colima tests native instead of github, fixes #5598 by @rfay in #5886
- test: make sure buildkite leaves docker in sane setup by @rfay in https://github.com/ddev/dde...
v1.23.0-rc1
Installation
See the installation instructions for details, but it's easy:
- macOS:
brew install ddev/ddev-edge/ddev
or justbrew upgrade ddev/ddev-edge/ddev
(You may need abrew update
for homebrew to find the new release.) - Linux or WSL2: Download the appropriate deb file from this release and install it with
dpkg -i <file>.deb
- Traditional Windows: Use
choco upgrade -y --pre ddev
to get this one, or download the ddev_windows_installer 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.
- Consider
ddev delete images
after upgrading to free up disk space used by previous docker image versions. This does no harm. - Consider
ddev config --auto
to update your projects to current configuration.
Highlights:
ddev-webserver
is now upgraded to Debian 12 Bookworm, which means that many newer Debian packages are available.- Corepack and yarn v4 support.
- Drupal 11 support, including
corepack
support withcorepack_enable: true
and automatic detection of the new type. - New
drupal
project type to cover Drupal 8+. - New
cakephp
project type, thanks @ajibarra ! - Laravel 11 support for
mariadb
database connection. ddev pint
support for Laravel, thanks @penyaskito !- Autocompletion for custom/shell commands, thanks @GuySartorelli !
- PHP default version is now 8.2.
- Node.js default version is now 20, thanks @peter-neumann-dev !
- Default database is now
mariadb:10.11
. - Traefik Docker image is now 2.11, thanks @nilsandresen !
ddev composer create
is much more compatible withcomposer create-project
, thanks @gilbertsoft !ddev launch
can open full URLsddev launch https://ddev.com
and custom website portsddev launch :3000
.ddev config --update
is a new flag. It updates all known.ddev/config.yaml
settings based on detected code. Works great for most CMSs and frameworks. It's likeddev config --auto
, butddev config --auto
won't change existing settings.- And many, many bug fixes, docs, etc.
Breaking Changes:
- Check your
.ddev/config.yaml
, namelywebimage_extra_packages
anddbimage_extra_packages
for compatibility with Debian 12 Bookworm. - Check your custom Dockerfiles, e.g. if you made some customizations to
/etc/apt/sources.list
, it has been moved to/etc/apt/sources.list.d/debian.sources
with a different structure. - Python2 support has been removed from upstream, we recommend using an older DDEV if you really need it, see #5928.
- If you have used
localhost
TLD for your sites, thecurl
connection between them is broken, see #6040.
Behavior Changes:
- Your DDEV project list is located at
~/.ddev/project_list.yaml
, thanks @GuySartorelli ! CRAFT_WEB_URL
has been removed from Craft CMS auto-config as it's not necessary.ddev config
no longer requires the--create-docroot
flag, as it will create docroot automatically.- Update the deb.sury.org (upstream) package repository key, which will expire on 17 Feb 2024 (a little over a week).
- Improved performance for
ddev xhprof
as theXHPROF_FLAGS_CPU
flag has been removed by default. - Platform.sh legacy CLI replaced with the latest one.
- Our main recommendation for macOS Docker provider changed to OrbStack.
- Missing projects automatically removed from the
ddev list
after notification. - Website primary URL is correctly set to HTTPS when using custom certificates, thanks @tbmatuka !
Bug Fixes:
- Affected version v1.22.7:
ddev config
could accidentally override your project type to a detected one. - Affected versions from v1.22.4 to v1.22.7: A race condition could break structure for
docker-compose config
, thanks @deviantintegral !
Minor Notes:
- Zsh completion instructions are improved, thanks @rpkoller !
- Kirby CMS quickstart, thanks @texnixe !
- Grav CMS quickstart, thanks @rpkoller !
- Pimcore CMS quickstart.
- Symfony Framework quickstart.
- TablePlus support from
Setapp
directory, thanks @peterkraume ! - DBeaver support in WSL2, thanks @Brupes !
- Magento 2.4.5+ is correctly detected, thanks @Morgy93 !
- DDEV documentation uses bundled external js/css libraries for more privacy, thanks @gitressa !
What's Changed
- docs: Add using current stable version to troubleshooting section by @rfay in #5808
- docs: Revert "docs: temporarily revert docs on not needing --create-docroot" by @rfay in #5768
- test: golangci-lint got pickier, satisfy it by @rfay in #5812
- feat: support TablePlus application located in setapp directory (#5815) by @peterkraume in #5816
- fix: follow the zsh naming conventions for completion scripts by @rpkoller in #5814
- docs: update buildkite installation to include icinga by @rfay in #5802
- docs: show initial and project-checkout Backdrop installation by @tyler36 in #5781
- feat: enable autocompletion for custom commands, fixes #5783 by @GuySartorelli in #5785
- build: bump ddev-php-base and ddev-webserver to base on Debian 12 bookworm, replaces #5278 by @rfay in #5579
- docs: update developer release instructions by @stasadev in #5789
- build: improve goreleaser, add testing capabilities, "head" release, docs, fixes #5821, fixes #5811 by @rfay in #5824
- build: revert implementation of 'head' release, fixes #5830 by @rfay in #5831
- build: bump golangci/golangci-lint-action from 3 to 4 by @dependabot in #5827
- build: bump fuxingloh/multi-labeler from 2 to 3 by @dependabot in #5828
- build: filter binaries for deb and rpm on release, fixes #5734 by @stasadev in #5759
- docs: find all DDEV binaries using
which -a ddev
by @stasadev in #5834 - docs: update the section about zsh completions by @rpkoller in #5825
- build: bump traefik to 2.11 by @nilsandresen in #5833
- refactor: update to Node.js v20 LTS as current default by @peter-neumann-dev in #5453
- docs: improve buildkite setup for WSL2 by @rfay in #5846
- docs: use PHP 8.3 for the TYPO3 Quickstart by @jonaseberle in #5842
- feat: change php default version to 8.2, fixes #5767 by @rfay in #5835
- docs: add maintainer docs about remote-config testing by @rfay in #5850
- test: silence docker scout nonsense in buildkite [skip ci] by @rfay in #5851
- docs: don't link check a couple of unstable external urls [skip ci] by @rfay in #5852
- fix: make
ddev --version
work even if not in project and ~/.ddev/commands not yet created by @rfay in #5854 - feat: replace fsouza/go-dockerclient with docker/docker/client, fixes #3460 by @stasadev in #5787
- docs: stop checking all stack overflow links by @rfay in #5858
- docs: mostly warn people off of using xdebug_ide_location by @rfay in #5857
- docs: add auto light / dark mode by @stasadev in #5853
- build: bump fuxingloh/multi-labeler from 3 to 4 by @dependabot in #5867
- docs: buildkite wsl2 setup learning by @rfay in #5864
- docs: stop checking link to community.chocolatey.org by @rfay in #5869
- test: stop testing TestAutocompletionForCustomCmds on Windows, fixes #5870 by @rfay in #5872
- fix: do not create project network programmatically on
ddev start
, fixes #5810 by @stasadev in #5848 - test: Minor improvement to TestComposerVersion by @rfay in #5879
- test: Fix TestPantheonPush, broken due to php8.2 default by @rfay in #5874
- fix: don't panic in app.Describe() if container not found by @rfay in #5873
- fix: ddev start should not continue if web/db containers aren't healthy by @rfay in #5871
- docs: fix 404 link in phpstorm docs by @rfay in #5881
- docs: Link to 'Upgrading DDEV' in 'Usage' section by @amanire in #5877
- fix: error message 'Error converting to int' on
ddev import-db
by @rfay in #5856 - fix: cache Docker client instead of creating a new one all the time, fixes #5861 by @stasadev in #5878
- test: exclude TestPHPOverrides on Colima and TestProcessHooks on Windows by @rfay in #5883
- fix: don't start 'mutagen daemon run' during ddev stop/delete by @rfay in #5868
- feat: change database default to mariadb:10.11, fixes #5797 by @rfay in #5836
- test: Run colima tests native instead of github, fixes #5598 by @rfay in #5886
- test: make sure buildkite leaves docker in sane setup by @rfay in https://github.com/ddev/dde...
v1.23.0-beta1
Installation
See the installation instructions for details, but it's easy:
- macOS:
brew install ddev/ddev-edge/ddev
or justbrew upgrade ddev/ddev-edge/ddev
(You may need abrew update
for homebrew to find the new release.) - Linux or WSL2: Download the appropriate deb file from this release and install it with
dpkg -i <file>.deb
- Traditional Windows: Use
choco upgrade -y --pre ddev
to get this one, or download the ddev_windows_installer 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.
- Consider
ddev delete images
after upgrading to free up disk space used by previous docker image versions. This does no harm. - Consider
ddev config --auto
to update your projects to current configuration.
Highlights:
ddev-webserver
is now upgraded to Debian 12 Bookworm, which means that many newer Debian packages are available.- Drupal 11 support, including
corepack
support withcorepack_enable: true
- New
drupal
project type to cover Drupal 8+ - New
cakephp
project type, thanks @ajibarra ! - Laravel 11 support for
mariadb
database connection - Autocompletion for custom/shell commands, thanks @GuySartorelli !
- PHP default version is now 8.2
- Node.js default version is now 20, thanks @peter-neumann-dev !
- Default database is now mariadb:10.11
- Traefik Docker image is now 2.11, thanks @nilsandresen !
ddev composer create
is much more compatible withcomposer create-project
, thanks @gilbertsoft !- And many, many bug fixes, docs, etc.
Behavior Changes:
CRAFT_WEB_URL
has been removed from Craft CMS auto-config as it's not necessaryddev config
no longer requires the--create-docroot
flag, as it will create docroot automatically.- Update the deb.sury.org (upstream) package repository key, which will expire on 17 Feb 2024 (a little over a week).
- Improved performance for
ddev xhprof
as theXHPROF_FLAGS_CPU
flag has been removed by default - Platform.sh legacy CLI replaced with the latest one
- Our main recommendation for macOS Docker provider changed to OrbStack
- Missing projects automatically removed from the
ddev list
after notification - If you made some customizations to
/etc/apt/sources.list
in a custom Dockerfile, it has been moved to/etc/apt/sources.list.d/debian.sources
with a different structure. - Website primary URL is correctly set to HTTPS when using custom certificates, thanks @tbmatuka !
Bug Fixes:
- Affected version v1.22.7:
ddev config
could accidentally override your project type to a detected one - Affected versions from v1.22.4 to v1.22.7: A race condition could break structure for
docker-compose config
, thanks @deviantintegral !
Minor Notes:
- Zsh completion instructions are improved, thanks @rpkoller !
- Kirby CMS quickstart, thanks @texnixe !
- Grav CMS quickstart, thanks @rpkoller !
- Pimcore CMS quickstart
- TablePlus support from
Setapp
directory, thanks @peterkraume ! - DBeaver support in WSL2, thanks @Brupes !
- Magento 2.4.5+ is correctly detected, thanks @Morgy93 !
- DDEV documentation uses bundled external js/css libraries for more privacy, thanks @gitressa !
What's Changed since v1.23.0-alpha1
- docs: add privacy plugins to not use external fonts, fixes #4982 by @gitressa in #6027
- docs: update CakePHP docs to include a link and instructions for 3.x by @ajibarra in #6021
- fix: rsync example should create db.sql.gz [skip ci] by @rfay in #6022
- fix: revert removal of Colima host.docker.internal setting by @rfay in #6031
- test: make circleci setup noninteractive so doesn't hang [skip buildkite] by @rfay in #6034
- fix: clean up missing project if it's gone, fixes #5322 by @rfay in #6029
- fix: handle wildcard hostnames when name resolution not available, fixes #4881 by @rfay in #6025
- test: try to fix sshfs-based failures on TestGetProjectsMissingApp by @rfay in #6041
- feat: more readable formatting of lists of files, fixes #5985 by @penyaskito in #6030
- build: bump actions/setup-python from 5.0.0 to 5.1.0 by @dependabot in #6038
- fix: ddev debug configyaml shouldn't double-report upload_dirs, fixes #6036 by @rfay in #6037
- feat: Keep hub.docker.com repositories updated, fixes #5847 [skip ci] by @rfay in #6032
- refactor: Use project_list.yaml as source of truth, fixes #5918 by @GuySartorelli in #5926
- fix: shutdown supervisor in healthcheck.sh on fatal error, fixes #5993 by @stasadev in #6033
- fix: Remove Craft CMS PHP version override by @AugustMiller in #5805
- docs: add a sticky warning about the latest version by @stasadev in #6048
- fix: make sure CGO_ENABLED is normally off, fixes #6046 by @rfay in #6050
- feat: Improve container errors messages format, fixes #6042 by @penyaskito in #6043
Full Changelog: v1.23.0-alpha1...v1.23.0-beta1
v1.23.0-alpha1: Drupal 11 support, `drupal` and `cakephp` project types
Installation/Upgrade
See the installation instructions for details, but it's easy:
- macOS:
brew install ddev/ddev-edge/ddev
or justbrew upgrade ddev/ddev-edge/ddev
(You may need abrew update
for homebrew to find the new release.) - Linux or WSL2: Download the appropriate deb file from this release and install it with
dpkg -i <file>.deb
- Traditional Windows: Use
choco upgrade -y --pre ddev
to get this one, or download the ddev_windows_installer 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.
- Consider
ddev delete images
after upgrading to free up disk space used by previous docker image versions. This does no harm.
Highlights:
ddev-webserver
is now upgraded to Debian 12 Bookworm, which means that many newer Debian packages are available.- Drupal 11 support, including
corepack
support withcorepack_enable: true
- New
drupal
project type to cover Drupal 8+ - New
cakephp
project type, thanks @ajibarra! - Autocompletion for custom/shell commands, thanks @GuySartorelli !
- PHP default version is now 8.2
- Default database is now mariadb:10.11
ddev composer create
is much more compatible withcomposer create-project
, thanks @gilbertsoft !- And many, many bug fixes, docs, etc.
Caveats
- Xdebug is broken in Colima in this version. It will be fixed in #6031
What's Changed
- docs: Add using current stable version to troubleshooting section by @rfay in #5808
- docs: Revert "docs: temporarily revert docs on not needing --create-docroot" by @rfay in #5768
- test: golangci-lint got pickier, satisfy it by @rfay in #5812
- feat: support TablePlus application located in setapp directory (#5815) by @peterkraume in #5816
- fix: follow the zsh naming conventions for completion scripts by @rpkoller in #5814
- docs: update buildkite installation to include icinga by @rfay in #5802
- docs: show initial and project-checkout Backdrop installation by @tyler36 in #5781
- feat: enable autocompletion for custom commands, fixes #5783 by @GuySartorelli in #5785
- build: bump ddev-php-base and ddev-webserver to base on Debian 12 bookworm, replaces #5278 by @rfay in #5579
- docs: update developer release instructions by @stasadev in #5789
- build: improve goreleaser, add testing capabilities, "head" release, docs, fixes #5821, fixes #5811 by @rfay in #5824
- build: revert implementation of 'head' release, fixes #5830 by @rfay in #5831
- build: bump golangci/golangci-lint-action from 3 to 4 by @dependabot in #5827
- build: bump fuxingloh/multi-labeler from 2 to 3 by @dependabot in #5828
- build: filter binaries for deb and rpm on release, fixes #5734 by @stasadev in #5759
- docs: find all DDEV binaries using
which -a ddev
by @stasadev in #5834 - docs: update the section about zsh completions by @rpkoller in #5825
- build: bump traefik to 2.11 by @nilsandresen in #5833
- refactor: update to Node.js v20 LTS as current default by @peter-neumann-dev in #5453
- docs: improve buildkite setup for WSL2 by @rfay in #5846
- docs: use PHP 8.3 for the TYPO3 Quickstart by @jonaseberle in #5842
- feat: change php default version to 8.2, fixes #5767 by @rfay in #5835
- docs: add maintainer docs about remote-config testing by @rfay in #5850
- test: silence docker scout nonsense in buildkite [skip ci] by @rfay in #5851
- docs: don't link check a couple of unstable external urls [skip ci] by @rfay in #5852
- fix: make
ddev --version
work even if not in project and ~/.ddev/commands not yet created by @rfay in #5854 - feat: replace fsouza/go-dockerclient with docker/docker/client, fixes #3460 by @stasadev in #5787
- docs: stop checking all stack overflow links by @rfay in #5858
- docs: mostly warn people off of using xdebug_ide_location by @rfay in #5857
- docs: add auto light / dark mode by @stasadev in #5853
- build: bump fuxingloh/multi-labeler from 3 to 4 by @dependabot in #5867
- docs: buildkite wsl2 setup learning by @rfay in #5864
- docs: stop checking link to community.chocolatey.org by @rfay in #5869
- test: stop testing TestAutocompletionForCustomCmds on Windows, fixes #5870 by @rfay in #5872
- fix: do not create project network programmatically on
ddev start
, fixes #5810 by @stasadev in #5848 - test: Minor improvement to TestComposerVersion by @rfay in #5879
- test: Fix TestPantheonPush, broken due to php8.2 default by @rfay in #5874
- fix: don't panic in app.Describe() if container not found by @rfay in #5873
- fix: ddev start should not continue if web/db containers aren't healthy by @rfay in #5871
- docs: fix 404 link in phpstorm docs by @rfay in #5881
- docs: Link to 'Upgrading DDEV' in 'Usage' section by @amanire in #5877
- fix: error message 'Error converting to int' on
ddev import-db
by @rfay in #5856 - fix: cache Docker client instead of creating a new one all the time, fixes #5861 by @stasadev in #5878
- test: exclude TestPHPOverrides on Colima and TestProcessHooks on Windows by @rfay in #5883
- fix: don't start 'mutagen daemon run' during ddev stop/delete by @rfay in #5868
- feat: change database default to mariadb:10.11, fixes #5797 by @rfay in #5836
- test: Run colima tests native instead of github, fixes #5598 by @rfay in #5886
- test: make sure buildkite leaves docker in sane setup by @rfay in #5897
- docs: point to HEAD version of TestSites array by @diegoe in #5895
- docs: show a warning banner for the latest docs (readthedocs+mkdocs) by @stasadev in #5855
- feat: change upgrade pester interval to 4 hours, for #5889 by @rfay in #5890
- feat: make
ddev composer create
fully compatible withcomposer create-project
by @gilbertsoft in #5058 - test: more buildkite work, windows not working [skip ci] by @rfay in #5902
- fix: set permissions on /run/php so php-fpm can run by @stasadev in #5900
- docs: update Debugging & Profiling for recent updates to phpstorm ui by @vanWittlaer in #5903
- docs: improve database type and version visibility by @tyler36 in #5884
- fix: make a copy of the bytes array before passing to the channel, fixes #5470 by @deviantintegral in #5893
- docs: add instructions for Grav CMS to quickstart.md by @rpkoller in #5796
- docs: add kirby to cms quickstart instructions by @texnixe in #5791
- docs: fix systemd unit example for casual hosting by @vanWittlaer in #5876
- refactor: point go code to the stable docs by @stasadev in #5905
- fix: ddev config should not change unspecified options, fixes #5882 by @stasadev in #5887
- docs: mention more Docker providers for macOS by @stasadev in #5914
- docs: Add Pimcore quickstart, fixes #5843 by @rfay in #5909
- docs: Use backticks when referencing custom command annotations, fixes #5820 by @GuySartorelli in #5927
- docs: update faq with new questions, fix menus by @rfay in #5924
- docs: fix extraneous '#' in FAQ by @rfay in #5930
- fix: magento2 requires mariadb 10.6, for #5919 by @rfay in #5922
- docs: remove 'just' by @rfay in #5933
- docs: standardize capitalization of Docker-ce by @tyler36 in #5934
- docs: use stable URL for 404 [skip ci] by @stasadev in #5931
- fix: add nginx support for webp images in hidden directory, sync nginx conf by @stephanie-ehrling in #5580
- feat: invoke dbeaver inside wsl2, fixes #5375 by @Brupes in #5916
- fix: don't call app.WriteConfig twice by @rfay in #5923
- fix: isMagento2App() ...
v1.22.7: PHP 8.3.2, fixed xdebug, prevent expiring keys
Installation
See the installation instructions for details, but it's easy:
- macOS:
brew install ddev/ddev/ddev
or justbrew upgrade ddev
. - Traditional Windows: Use
choco upgrade -y ddev
, or download the ddev_windows_installer below. - Linux or WSL2: Use
apt install ddev
orapt upgrade ddev
see apt/yum installation or use the install_ddev.sh:curl -fsSL https://raw.githubusercontent.com/ddev/ddev/master/scripts/install_ddev.sh | bash
- 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
orddev delete images --all
after upgrading to free up disk space used by previous docker image versions. This does no harm. - Consider
ddev config --auto
to update your projects to current configuration.
Highlights:
- PHP 8.3.2
- Updated xdebug to 3.3.1, which solves the xdebug crash problem described in #5633.
- Updated and improved autocomplete behavior by @GuySartorelli , thanks!
- Improved TablePlus support, including WSL2 support and showing environment information
ddev pull platform
can now pull from a specific app- Improved
ddev pull acquia
Behavior Changes:
CRAFT_WEB_URL
has been removed from Craft CMS auto-config as it's not necessaryddev config
no longer requires the--create-docroot
flag, as it will create docroot automatically.- Update the deb.sury.org (upstream) package repository key, which will expire on 17 Feb 2024 (a little over a week).
- Improved performance for
ddev xhprof
as theXHPROF_FLAGS_CPU
flag has been removed by default
NOTE TO v1.22.6 users on deb.sury.org key
If you want to keep using DDEV v1.22.6, you can get a new version of the ddev-webserver that has the updated key using docker pull ddev/ddev-webserver:v1.22.6
, see #5795 .
Caveats:
- Drupal xdebug users: There is a very obscure Drupal 10 bug which causes "Transaction autocommit during shutdown relies on unreliable object destruction order" when xdebug 3.3+ is enabled. You'll want to read the issue and be aware.
What's Changed
- build: update .gitpod.yml for v1.22.6 release [skip ci] by @stasadev in #5628
- docs: add more troubleshooting for docker build-time errors by @rfay in #5629
- ci: rancher desktop test only on master [skip ci] by @rfay in #5636
- docs: update discord link [skip ci] by @rfay in #5637
- docs: update and reorganize readme.md by @bmartinez287 in #5513
- docs: link to experimental CMS quickstarts by @jeroenpeters1986 in #5638
- build: bump actions/upload-artifact from 3 to 4 by @dependabot in #5648
- refactor: add quotes for the hostname error for better visibility by @stasadev in #5645
- docs: add missing blank lines to readme.md, for #5513 by @stasadev in #5649
- docs: GitHub Codespaces: Adjust examples to make sure docker is running by @eiriksm in #5592
- docs: fix typo in sharing.md by @JorenRothman in #5654
- ci: fix PostgreSQL client for testbot on WSL2 by @stasadev in #5657
- fix: disable Content-Type auto-detection for Traefik 2, fixes #5346 by @stasadev in #5647
- fix: global project_tld should default to 'ddev.site', not empty, fixes #4290 by @rfay in #5632
- fix: update global schema by @tyler36 in #5653
- fix: stop warning about empty app type or docroot creation, fixes #5498 by @rfay in #5631
- build: update all vendor module dependencies by @stasadev in #5658
- feat: add mailpit command (alias of launch -m), fixes #5627 by @GuySartorelli in #5642
- build: revert bump actions/upload-artifact from 3 to 4, for #5648 by @stasadev in #5662
- fix: make sure wsl v2 is used, not wsl v1, fixes #5667 [skip ci] by @rfay in #5670
- docs: fix broken numeration in Pantheon by @stasadev in #5679
- docs: fix composer command code block by @mttsch in #5678
- docs: fix name of HeidiSQL executable by @mttsch in #5677
- docs: update links for VSCode step-debugging extensions by @Nick-Hope in #5699
- build: bump github.com/cloudflare/circl from 1.3.6 to 1.3.7 by @dependabot in #5683
- refactor: move projects list into its own yaml file, fixes #5639 by @GuySartorelli in #5651
- docs: temporarily revert docs on not needing --create-docroot by @rfay in #5716
- docs: fix gitpod PR link by @rfay in #5719
- fix: Add correct mime types for Javascript by @jonnitto in #5661
- fix: remove CRAFT_WEB_URL, fixes #5665 by @timkelty in #5668
- fix: remove --json-output flag from
logs
command, fixes #962 by @GuySartorelli in #5695 - docs: Overhaul Shell Completion & Autocomplete documentation by @Nick-Hope in #5701
- feat: allow global host commands to be run from anywhere, for #4416 by @GuySartorelli in #5702
- fix: use init option to prevent zombie ddev-router, for #5705 by @stasadev in #5707
- fix: acli output has changed, capture the output file correctly, fixes #5697 by @rfay in #5714
- docs: expand docs on PHP extension installation, including pecl by @rfay in #5715
- docs: fix localdev foundation -> DDEV foundation, for #4848 by @rfay in #5718
- fix: make xhprof faster, fixes #5712 by @LionsAd in #5721
- feat: Platform.sh specific app pull, fixes #5727 by @nir-riskified in #5728
- docs: Update Drupal 9 & 10 CMS Quickstarts by @Nick-Hope in #5733
- feat: add WSL2 support to tableplus command by @plebward in #5738
- feat: add environment and name to TablePlus command by @marten-wirelab in #5741
- docs: use Stack Overflow email filter for maintainers by @stasadev in #5764
- build: bump peter-evans/create-issue-from-file from 4 to 5 by @dependabot in #5752
- build: bump styfle/cancel-workflow-action from 0.12.0 to 0.12.1 by @dependabot in #5751
- fix: update project schema nodejs_version, for #5400 by @stasadev in #5758
- fix: wording on install docs home page about Docker providers should be more generic by @joachim-n in #5754
- docs: added sql:sanitize to Drupal hook examples. by @karenmurky in #5737
- build: bump actions/cache from 3 to 4 by @dependabot in #5724
- docs: use zero width non joiner for markdownlint by @stasadev in #5765
- build: bump docker-compose to v2.24.5, set
healthcheck.start_interval
to1s
in Docker v25+ by @stasadev in #5745 - test: bump docker-login buildkite plugin to 3.0.0 by @rfay in #5769
- build: update runc, replaces #5760 by @rfay in #5766
- test: Revert "test: bump docker-login buildkite plugin to 3.0.0" by @rfay in #5776
- feat: add autocomplete for project name arguments, fixes #4880 by @GuySartorelli in #5732
- test: only test macos amd64 on master by @rfay in #5779
- test: CircleCI upgrade to go v1.21 by @rfay in #5780
- docs: auto-enable/disable Xdebug when step debugging with VS Code by @jameswilson in #5771
- fix: remove redundant chown in ddev-webserver start.sh, for #4942 by @rfay in #5686
- fix: when settings files not set, don't chmod, fixes #5675 by @rfay in #5676
- fix: nodejs in web container should be link to /usr/local/bin/node by @rfay in #5774
- build: Use new tag to get new deb.sury.org key (and updated php versions), fixes #5788 by @rfay in #5790
- feat: get completion for composer commands by @GuySartorelli in #5756
- build: bump images to v1.22.7 for release, fixes #5633 by @rfay in #5798
New Contributors
- @eiriksm made their first contribution in #5592
- @JorenRothman made their first contribution in #5654
- @mttsch made their first contribution in #5678
- @Nick-Hope made their first contrib...