Skip to content

Commit 04a8f1a

Browse files
authored
Merge pull request #131 from Coderberg/2.x
Symfony 7.1
2 parents e8084b4 + 4623840 commit 04a8f1a

21 files changed

+754
-669
lines changed

.env

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ APP_SECRET=421f03e82270a0883f2db17c436d6b81
2626
# DATABASE_URL="sqlite:///%kernel.project_dir%/var/data.db"
2727
DATABASE_URL="mysql://app:[email protected]:3306/app?serverVersion=8.0.35&charset=utf8mb4"
2828
# DATABASE_URL="mysql://app:[email protected]:3306/app?serverVersion=10.11.2-MariaDB&charset=utf8mb4"
29-
# DATABASE_URL="postgresql://app:[email protected]:5432/app?serverVersion=15&charset=utf8"
29+
# DATABASE_URL="postgresql://app:[email protected]:5432/app?serverVersion=16&charset=utf8"
3030
###< doctrine/doctrine-bundle ###
3131

3232
###> symfony/mailer ###

Dockerfile

Lines changed: 17 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
#syntax=docker/dockerfile:1.4
22

33
# Versions
4-
FROM dunglas/frankenphp:1-alpine AS frankenphp_upstream
4+
FROM dunglas/frankenphp:1-php8.3 AS frankenphp_upstream
55

66
# The different stages of this Dockerfile are meant to be built into separate images
77
# https://docs.docker.com/develop/develop-images/multistage-build/#stop-at-a-specific-build-stage
@@ -13,14 +13,16 @@ FROM frankenphp_upstream AS frankenphp_base
1313

1414
WORKDIR /app
1515

16+
VOLUME /app/var/
17+
1618
# persistent / runtime deps
17-
# hadolint ignore=DL3018
18-
RUN apk add --no-cache \
19-
acl \
20-
file \
21-
gettext \
22-
git \
23-
;
19+
# hadolint ignore=DL3008
20+
RUN apt-get update && apt-get install -y --no-install-recommends \
21+
acl \
22+
file \
23+
gettext \
24+
git \
25+
&& rm -rf /var/lib/apt/lists/*
2426

2527
RUN set -eux; \
2628
install-php-extensions \
@@ -41,15 +43,16 @@ ENV COMPOSER_ALLOW_SUPERUSER=1
4143
ENV PANTHER_NO_SANDBOX 1
4244
# Not mandatory, but recommended
4345
ENV PANTHER_CHROME_ARGUMENTS='--disable-dev-shm-usage'
44-
RUN apk add --no-cache chromium chromium-chromedriver
46+
RUN apt-get update && apt-get install -y --no-install-recommends chromium chromium-driver && rm -rf /var/lib/apt/lists/*
4547

4648
# Firefox and geckodriver
47-
#ARG GECKODRIVER_VERSION=0.29.0
48-
#RUN apk add --no-cache firefox
49-
#RUN wget -q https://github.com/mozilla/geckodriver/releases/download/v$GECKODRIVER_VERSION/geckodriver-v$GECKODRIVER_VERSION-linux64.tar.gz; \
50-
# tar -zxf geckodriver-v$GECKODRIVER_VERSION-linux64.tar.gz -C /usr/bin; \
51-
# rm geckodriver-v$GECKODRIVER_VERSION-linux64.tar.gz
49+
#ARG GECKODRIVER_VERSION=0.34.0
50+
#RUN apt-get update && apt-get install -y --no-install-recommends firefox && rm -rf /var/lib/apt/lists/*
51+
#RUN wget -q https://github.com/mozilla/geckodriver/releases/download/v$GECKODRIVER_VERSION/geckodriver-v$GECKODRIVER_VERSION-aarch64.tar.gz; \
52+
# tar -zxf geckodriver-v$GECKODRIVER_VERSION-aarch64.tar.gz -C /usr/bin; \
53+
# rm geckodriver-v$GECKODRIVER_VERSION-aarch64.tar.gz
5254
###< symfony/panther ###
55+
5356
###> doctrine/doctrine-bundle ###
5457
RUN install-php-extensions pdo_mysql
5558
###< doctrine/doctrine-bundle ###
@@ -68,7 +71,6 @@ CMD [ "frankenphp", "run", "--config", "/etc/caddy/Caddyfile" ]
6871
FROM frankenphp_base AS frankenphp_dev
6972

7073
ENV APP_ENV=dev XDEBUG_MODE=off
71-
VOLUME /app/var/
7274

7375
RUN mv "$PHP_INI_DIR/php.ini-development" "$PHP_INI_DIR/php.ini"
7476

bin/console

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,10 @@
44
use App\Kernel;
55
use Symfony\Bundle\FrameworkBundle\Console\Application;
66

7+
if (!is_dir(dirname(__DIR__).'/vendor')) {
8+
throw new LogicException('Dependencies are missing. Try running "composer install".');
9+
}
10+
711
if (!is_file(dirname(__DIR__).'/vendor/autoload_runtime.php')) {
812
throw new LogicException('Symfony Runtime is missing. Try running "composer require symfony/runtime".');
913
}

compose.override.yaml

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -30,9 +30,12 @@ services:
3030
###< doctrine/doctrine-bundle ###
3131

3232
###> symfony/mailer ###
33-
mailhog:
34-
image: mailhog/mailhog
33+
mailer:
34+
image: axllent/mailpit
3535
ports:
3636
- "1025:1025"
3737
- "8025:8025"
38+
environment:
39+
MP_SMTP_AUTH_ACCEPT_ANY: 1
40+
MP_SMTP_AUTH_ALLOW_INSECURE: 1
3841
###< symfony/mailer ###

compose.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,12 +7,12 @@ services:
77
MERCURE_PUBLISHER_JWT_KEY: ${CADDY_MERCURE_JWT_SECRET:-!ChangeThisMercureHubJWTSecretKey!}
88
MERCURE_SUBSCRIBER_JWT_KEY: ${CADDY_MERCURE_JWT_SECRET:-!ChangeThisMercureHubJWTSecretKey!}
99
TRUSTED_PROXIES: ${TRUSTED_PROXIES:-127.0.0.0/8,10.0.0.0/8,172.16.0.0/12,192.168.0.0/16}
10-
TRUSTED_HOSTS: ^${SERVER_NAME:-example\.com|localhost}|php$$
10+
TRUSTED_HOSTS: ${TRUSTED_HOSTS:-^${SERVER_NAME:-example\.com|localhost}|php$$}
1111
# Run "composer require symfony/orm-pack" to install and configure Doctrine ORM
1212
DATABASE_URL: mysql://${MYSQL_USER:-app}:${MYSQL_PASSWORD:-!ChangeMe!}@mysql:3306/${MYSQL_DATABASE:-app}?serverVersion=${MYSQL_VERSION:-8.0.35}&charset=utf8mb4
1313
# Run "composer require symfony/mercure-bundle" to install and configure the Mercure integration
1414
MERCURE_URL: ${CADDY_MERCURE_URL:-http://php/.well-known/mercure}
15-
MERCURE_PUBLIC_URL: https://${SERVER_NAME:-localhost}/.well-known/mercure
15+
MERCURE_PUBLIC_URL: ${CADDY_MERCURE_PUBLIC_URL:-https://${SERVER_NAME:-localhost}/.well-known/mercure}
1616
MERCURE_JWT_SECRET: ${CADDY_MERCURE_JWT_SECRET:-!ChangeThisMercureHubJWTSecretKey!}
1717
# The two next lines can be removed after initial installation
1818
SYMFONY_VERSION: ${SYMFONY_VERSION:-}

composer.json

Lines changed: 56 additions & 57 deletions
Original file line numberDiff line numberDiff line change
@@ -3,76 +3,76 @@
33
"type": "project",
44
"description": "Open Source Property Management System built with Symfony",
55
"license": "MIT",
6-
"minimum-stability": "dev",
6+
"minimum-stability": "stable",
77
"prefer-stable": true,
88
"require": {
99
"php": "^8.2",
1010
"ext-ctype": "*",
1111
"ext-gd": "*",
1212
"doctrine/annotations": "^2.0",
13-
"doctrine/doctrine-bundle": "^2.11",
13+
"doctrine/doctrine-bundle": "^2.12",
1414
"doctrine/doctrine-migrations-bundle": "^3.3",
15-
"doctrine/orm": "^2.17",
15+
"doctrine/orm": "^2.19",
1616
"endroid/qr-code": "^4.8",
17-
"gregwar/image": "master",
18-
"knplabs/knp-paginator-bundle": "^6.3",
19-
"phpdocumentor/reflection-docblock": "^5.3",
20-
"scheb/2fa-bundle": "^7.0",
21-
"scheb/2fa-google-authenticator": "^7.0",
22-
"symfony/asset": "^7.0",
23-
"symfony/cache": "^7.0",
24-
"symfony/console": "^7.0",
25-
"symfony/dotenv": "^7.0",
26-
"symfony/expression-language": "^7.0",
17+
"gregwar/image": "dev-master",
18+
"knplabs/knp-paginator-bundle": "^6.4",
19+
"phpdocumentor/reflection-docblock": "^5.4",
20+
"scheb/2fa-bundle": "^7.5",
21+
"scheb/2fa-google-authenticator": "^7.5",
22+
"symfony/asset": "^7.1",
23+
"symfony/cache": "^7.1",
24+
"symfony/console": "^7.1",
25+
"symfony/dotenv": "^7.1",
26+
"symfony/expression-language": "^7.1",
2727
"symfony/flex": "^2",
28-
"symfony/form": "^7.0",
29-
"symfony/framework-bundle": "^7.0",
30-
"symfony/google-mailer": "^7.0",
31-
"symfony/http-client": "^7.0",
32-
"symfony/intl": "^7.0",
33-
"symfony/lock": "^7.0",
34-
"symfony/mailer": "^7.0",
35-
"symfony/messenger": "^7.0",
36-
"symfony/monolog-bridge": "^7.0",
28+
"symfony/form": "^7.1",
29+
"symfony/framework-bundle": "^7.1",
30+
"symfony/google-mailer": "^7.1",
31+
"symfony/http-client": "^7.1",
32+
"symfony/intl": "^7.1",
33+
"symfony/lock": "^7.1",
34+
"symfony/mailer": "^7.1",
35+
"symfony/messenger": "^7.1",
36+
"symfony/monolog-bridge": "^7.1",
3737
"symfony/monolog-bundle": "^3.10",
38-
"symfony/notifier": "^7.0",
39-
"symfony/process": "^7.0",
40-
"symfony/property-access": "^7.0",
41-
"symfony/property-info": "^7.0",
38+
"symfony/notifier": "^7.1",
39+
"symfony/process": "^7.1",
40+
"symfony/property-access": "^7.1",
41+
"symfony/property-info": "^7.1",
4242
"symfony/proxy-manager-bridge": "^6.4",
43-
"symfony/rate-limiter": "^7.0",
44-
"symfony/runtime": "^7.0",
45-
"symfony/security-bundle": "^7.0",
46-
"symfony/serializer": "^7.0",
47-
"symfony/string": "^7.0",
48-
"symfony/translation": "^7.0",
49-
"symfony/twig-bundle": "^7.0",
50-
"symfony/validator": "^7.0",
51-
"symfony/web-link": "^7.0",
43+
"symfony/rate-limiter": "^7.1",
44+
"symfony/runtime": "^7.1",
45+
"symfony/security-bundle": "^7.1",
46+
"symfony/serializer": "^7.1",
47+
"symfony/string": "^7.1",
48+
"symfony/translation": "^7.1",
49+
"symfony/twig-bundle": "^7.1",
50+
"symfony/validator": "^7.1",
51+
"symfony/web-link": "^7.1",
5252
"symfony/webpack-encore-bundle": "^2.1",
53-
"symfony/yaml": "^7.0",
54-
"symfonycasts/verify-email-bundle": "^1.16",
55-
"twig/extra-bundle": "^3.8",
56-
"twig/intl-extra": "^3.8",
57-
"twig/string-extra": "^3.8",
58-
"twig/twig": "^v3.8.0",
53+
"symfony/yaml": "^7.1",
54+
"symfonycasts/verify-email-bundle": "^1.17",
55+
"twig/extra-bundle": "^3.10",
56+
"twig/intl-extra": "^3.10",
57+
"twig/string-extra": "^3.10",
58+
"twig/twig": "^v3.10",
5959
"voku/portable-ascii": "^1.6"
6060
},
6161
"require-dev": {
6262
"coderberg/google-authenticator": "^1.2",
63-
"dbrekelmans/bdi": "^1.1",
64-
"doctrine/doctrine-fixtures-bundle": "^3.5",
65-
"friendsofphp/php-cs-fixer": "^3.42",
63+
"dbrekelmans/bdi": "^1.3",
64+
"doctrine/doctrine-fixtures-bundle": "^3.6",
65+
"friendsofphp/php-cs-fixer": "^3.59",
6666
"phpunit/phpunit": "^9.6",
67-
"rector/rector": "^1.0",
68-
"symfony/browser-kit": "^7.0",
69-
"symfony/css-selector": "^7.0",
70-
"symfony/debug-bundle": "^7.0",
71-
"symfony/maker-bundle": "^1.52",
67+
"rector/rector": "^1.2",
68+
"symfony/browser-kit": "^7.1",
69+
"symfony/css-selector": "^7.1",
70+
"symfony/debug-bundle": "^7.1",
71+
"symfony/maker-bundle": "^1.60",
7272
"symfony/panther": "^2.1",
73-
"symfony/phpunit-bridge": "^7.0",
74-
"symfony/stopwatch": "^7.0",
75-
"symfony/web-profiler-bundle": "^7.0"
73+
"symfony/phpunit-bridge": "^7.1",
74+
"symfony/stopwatch": "^7.1",
75+
"symfony/web-profiler-bundle": "^7.1"
7676
},
7777
"config": {
7878
"platform": {
@@ -99,13 +99,12 @@
9999
}
100100
},
101101
"replace": {
102-
"paragonie/random_compat": "2.*",
103-
"symfony/polyfill-ctype": "*",
104-
"symfony/polyfill-iconv": "*",
105102
"symfony/polyfill-php72": "*",
106103
"symfony/polyfill-php73": "*",
107104
"symfony/polyfill-php74": "*",
108-
"symfony/polyfill-php80": "*"
105+
"symfony/polyfill-php80": "*",
106+
"symfony/polyfill-php81": "*",
107+
"symfony/polyfill-php82": "*"
109108
},
110109
"scripts": {
111110
"php-cs-fixer": "php-cs-fixer fix",
@@ -131,7 +130,7 @@
131130
"extra": {
132131
"symfony": {
133132
"allow-contrib": true,
134-
"require": "7.0.*",
133+
"require": "7.1.*",
135134
"docker": true
136135
}
137136
}

0 commit comments

Comments
 (0)