From ea11afde921be890cbfcf809d66922d525ca1787 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andre=CC=81=20Pimpa=CC=83o?= Date: Sun, 5 Oct 2025 11:47:09 +0100 Subject: [PATCH] chore: add symfony 7 support --- .ddev/config.yaml | 74 +++++++++++++++++++++++++++++------------------ composer.json | 28 +++++++++--------- 2 files changed, 60 insertions(+), 42 deletions(-) diff --git a/.ddev/config.yaml b/.ddev/config.yaml index 79bb624..eae61b9 100644 --- a/.ddev/config.yaml +++ b/.ddev/config.yaml @@ -13,32 +13,38 @@ omit_containers: [db] use_dns_when_possible: true composer_version: "2" web_environment: [] +corepack_enable: false disable_upload_dirs_warning: true # Key features of DDEV's config.yaml: # name: # Name of the project, automatically provides # http://projectname.ddev.site and https://projectname.ddev.site +# If the name is omitted, the project will take the name of the enclosing directory, +# which is useful if you want to have a copy of the project side by side with this one. -# type: # backdrop, craftcms, django4, drupal6/7/8/9/10, laravel, magento, magento2, php, python, shopware6, silverstripe, typo3, wordpress -# See https://ddev.readthedocs.io/en/latest/users/quickstart/ for more +# type: # backdrop, cakephp, craftcms, drupal, drupal6, drupal7, drupal8, drupal9, drupal10, drupal11, generic, laravel, magento, magento2, php, shopware6, silverstripe, symfony, typo3, wordpress +# See https://docs.ddev.com/en/stable/users/quickstart/ for more # information on the different project types # docroot: # Relative path to the directory containing index.php. -# php_version: "8.1" # PHP version to use, "5.6", "7.0", "7.1", "7.2", "7.3", "7.4", "8.0", "8.1", "8.2", "8.3" +# php_version: "8.3" # PHP version to use, "5.6" through "8.4" # You can explicitly specify the webimage but this # is not recommended, as the images are often closely tied to DDEV's' behavior, # so this can break upgrades. -# webimage: # nginx/php docker image. +# webimage: +# It’s unusual to change this option, and we don’t recommend it without Docker experience and a good reason. +# Typically, this means additions to the existing web image using a .ddev/web-build/Dockerfile.* # database: # type: # mysql, mariadb, postgres -# version: # database version, like "10.4" or "8.0" -# MariaDB versions can be 5.5-10.8 and 10.11, MySQL versions can be 5.5-8.0 -# PostgreSQL versions can be 9-16. +# version: # database version, like "10.11" or "8.0" +# MariaDB versions can be 5.5-10.8, 10.11, 11.4, 11.8 +# MySQL versions can be 5.5-8.0, 8.4 +# PostgreSQL versions can be 9-17 # router_http_port: # Port to be used for http (defaults to global configuration, usually 80) # router_https_port: # Port for https (defaults to global configuration, usually 443) @@ -48,14 +54,25 @@ disable_upload_dirs_warning: true # "ddev xdebug" to enable Xdebug and "ddev xdebug off" to disable it work better, # as leaving Xdebug enabled all the time is a big performance hit. -# xhprof_enabled: false # Set to true to enable Xhprof and "ddev start" or "ddev restart" -# Note that for most people the commands -# "ddev xhprof" to enable Xhprof and "ddev xhprof off" to disable it work better, -# as leaving Xhprof enabled all the time is a big performance hit. +# xhgui_http_port: "8143" +# xhgui_https_port: "8142" +# The XHGui ports can be changed from the default 8143 and 8142 +# Very rarely used + +# host_xhgui_port: "8142" +# Can be used to change the host binding port of the XHGui +# application. Rarely used; only when port conflict and +# bind_all_ports is used (normally with router disabled) -# webserver_type: nginx-fpm, apache-fpm, or nginx-gunicorn +# xhprof_mode: [prepend|xhgui|global] +# Set to "xhgui" to enable XHGui features +# "xhgui" will become default in a future major release + +# webserver_type: nginx-fpm, apache-fpm, generic # timezone: Europe/Berlin +# If timezone is unset, DDEV will attempt to derive it from the host system timezone +# using the $TZ environment variable or the /etc/localtime symlink. # This is the timezone used in the containers and by PHP; # it can be set to any valid timezone, # see https://en.wikipedia.org/wiki/List_of_tz_database_time_zones @@ -75,16 +92,17 @@ disable_upload_dirs_warning: true # - preview # - snapshot # Alternatively, an explicit Composer version may be specified, for example "2.2.18". -# To reinstall Composer after the image was built, run "ddev debug refresh". +# To reinstall Composer after the image was built, run "ddev debug rebuild". -# nodejs_version: "18" +# nodejs_version: "22" # change from the default system Node.js version to any other version. -# Numeric version numbers can be complete (i.e. 18.15.0) or -# incomplete (18, 17.2, 16). 'lts' and 'latest' can be used as well along with -# other named releases. -# see https://www.npmjs.com/package/n#specifying-nodejs-versions -# Note that you can continue using 'ddev nvm' or nvm inside the web container -# to change the project's installed node version if you need to. +# See https://docs.ddev.com/en/stable/users/configuration/config/#nodejs_version for more information +# and https://www.npmjs.com/package/n#specifying-nodejs-versions for the full documentation, +# Note that using of 'ddev nvm' is discouraged because "nodejs_version" is much easier to use, +# can specify any version, and is more robust than using 'nvm'. + +# corepack_enable: false +# Change to 'true' to 'corepack enable' and gain access to latest versions of yarn/pnpm # additional_hostnames: # - somename @@ -114,7 +132,7 @@ disable_upload_dirs_warning: true # ddev_version_constraint: "" # Example: -# ddev_version_constraint: ">= 1.22.4" +# ddev_version_constraint: ">= 1.24.8" # This will enforce that the running ddev version is within this constraint. # See https://github.com/Masterminds/semver#checking-version-constraints for # supported constraint formats @@ -143,8 +161,8 @@ disable_upload_dirs_warning: true # - "mutagen": enables Mutagen for this project. # - "nfs": enables NFS for this project. # -# See https://ddev.readthedocs.io/en/latest/users/install/performance/#nfs -# See https://ddev.readthedocs.io/en/latest/users/install/performance/#mutagen +# See https://docs.ddev.com/en/stable/users/install/performance/#nfs +# See https://docs.ddev.com/en/stable/users/install/performance/#mutagen # fail_on_hook_fail: False # Decide whether 'ddev start' should be interrupted by a failing hook @@ -193,17 +211,17 @@ disable_upload_dirs_warning: true # ngrok_args: --basic-auth username:pass1234 # Provide extra flags to the "ngrok http" command, see -# https://ngrok.com/docs/ngrok-agent/config or run "ngrok http -h" +# https://ngrok.com/docs/agent/config/v3/#agent-configuration or run "ngrok http -h" # disable_settings_management: false # If true, DDEV will not create CMS-specific settings files like -# Drupal's settings.php/settings.ddev.php or TYPO3's AdditionalConfiguration.php +# Drupal's settings.php/settings.ddev.php or TYPO3's additional.php # In this case the user must provide all such settings. # You can inject environment variables into the web container with: # web_environment: -# - SOMEENV=somevalue -# - SOMEOTHERENV=someothervalue +# - SOMEENV=somevalue +# - SOMEOTHERENV=someothervalue # no_project_mount: false # (Experimental) If true, DDEV will not mount the project into the web container; @@ -271,7 +289,7 @@ disable_upload_dirs_warning: true # Many DDEV commands can be extended to run tasks before or after the # DDEV command is executed, for example "post-start", "post-import-db", # "pre-composer", "post-composer" -# See https://ddev.readthedocs.io/en/stable/users/extend/custom-commands/ for more +# See https://docs.ddev.com/en/stable/users/extend/custom-commands/ for more # information on the commands that can be extended and the tasks you can define # for them. Example: #hooks: diff --git a/composer.json b/composer.json index 55450c8..fa1fde6 100644 --- a/composer.json +++ b/composer.json @@ -6,35 +6,35 @@ "license": "MIT", "authors": [ { - "name": "André Pimpão", - "email": "a.pimpao@programmator.dev", - "homepage": "https://programmator.dev/" + "name": "Programmator", + "email": "hotline@programmator.dev", + "homepage": "https://programmator.dev" } ], "require": { "php": ">=8.1", "php-http/cache-plugin": "^2.0", "php-http/client-common": "^2.7", - "php-http/discovery": "^1.19", + "php-http/discovery": "^1.20", "php-http/logger-plugin": "^1.3", "php-http/message": "^1.16", - "psr/cache": "^2.0 || ^3.0", + "psr/cache": "^2.0|^3.0", "psr/http-client": "^1.0", "psr/http-client-implementation": "*", - "psr/http-factory": "^1.0", + "psr/http-factory": "^1.1", "psr/http-factory-implementation": "*", - "psr/log": "^2.0 || ^3.0", - "symfony/event-dispatcher": "^6.4", - "symfony/options-resolver": "^6.4" + "psr/log": "^2.0|^3.0", + "symfony/event-dispatcher": "^6.4|^7.3", + "symfony/options-resolver": "^6.4|^7.3" }, "require-dev": { - "monolog/monolog": "^3.5", + "monolog/monolog": "^3.9", "nyholm/psr7": "^1.8", "php-http/mock-client": "^1.6", - "phpunit/phpunit": "^10.0", - "symfony/cache": "^6.4", - "symfony/http-client": "^6.4", - "symfony/var-dumper": "^6.4" + "phpunit/phpunit": "^10.5", + "symfony/cache": "^6.4|^7.3", + "symfony/http-client": "^6.4|^7.3", + "symfony/var-dumper": "^6.4|^7.3" }, "provide": { "psr/http-client-implementation": "1.0",