-
-
Notifications
You must be signed in to change notification settings - Fork 492
[doctrine/doctrine-bundle] add environment to sqlite DSN #1404
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Conversation
Thanks for the PR 😍 How to test these changes in your application
Diff between recipe versionsIn order to help with the review stage, I'm in charge of computing the diff between the various versions of patched recipes. doctrine/doctrine-bundle1.6 vs 1.12diff --git a/doctrine/doctrine-bundle/1.6/config/packages/doctrine.yaml b/doctrine/doctrine-bundle/1.12/config/packages/doctrine.yaml
index 2f611de..30d710d 100644
--- a/doctrine/doctrine-bundle/1.6/config/packages/doctrine.yaml
+++ b/doctrine/doctrine-bundle/1.12/config/packages/doctrine.yaml
@@ -10,9 +10,12 @@ doctrine:
charset: utf8mb4
default_table_options:
collate: utf8mb4_unicode_ci
+
+ # backtrace queries in profiler (increases memory usage per request)
+ #profiling_collect_backtrace: '%kernel.debug%'
orm:
auto_generate_proxy_classes: true
- naming_strategy: doctrine.orm.naming_strategy.underscore
+ naming_strategy: doctrine.orm.naming_strategy.underscore_number_aware
auto_mapping: true
mappings:
App:
diff --git a/doctrine/doctrine-bundle/1.6/config/packages/prod/doctrine.yaml b/doctrine/doctrine-bundle/1.12/config/packages/prod/doctrine.yaml
index 0a7c53b..084f59a 100644
--- a/doctrine/doctrine-bundle/1.6/config/packages/prod/doctrine.yaml
+++ b/doctrine/doctrine-bundle/1.12/config/packages/prod/doctrine.yaml
@@ -2,26 +2,14 @@ doctrine:
orm:
auto_generate_proxy_classes: false
metadata_cache_driver:
- type: service
- id: doctrine.system_cache_provider
+ type: pool
+ pool: doctrine.system_cache_pool
query_cache_driver:
- type: service
- id: doctrine.system_cache_provider
+ type: pool
+ pool: doctrine.system_cache_pool
result_cache_driver:
- type: service
- id: doctrine.result_cache_provider
-
-services:
- doctrine.result_cache_provider:
- class: Symfony\Component\Cache\DoctrineProvider
- public: false
- arguments:
- - '@doctrine.result_cache_pool'
- doctrine.system_cache_provider:
- class: Symfony\Component\Cache\DoctrineProvider
- public: false
- arguments:
- - '@doctrine.system_cache_pool'
+ type: pool
+ pool: doctrine.result_cache_pool
framework:
cache:
diff --git a/doctrine/doctrine-bundle/1.6/manifest.json b/doctrine/doctrine-bundle/1.12/manifest.json
index c2274f9..1d4462e 100644
--- a/doctrine/doctrine-bundle/1.6/manifest.json
+++ b/doctrine/doctrine-bundle/1.12/manifest.json
@@ -11,8 +11,8 @@
"#2": "IMPORTANT: You MUST configure your server version, either here or in config/packages/doctrine.yaml",
"#3": "",
"#4": "DATABASE_URL=\"sqlite:///%kernel.project_dir%/var/data_%kernel.environment%.db\"",
- "#5": "DATABASE_URL=\"mysql://app:[email protected]:3306/app?serverVersion=8\"",
- "DATABASE_URL": "postgresql://app:[email protected]:5432/app?serverVersion=16&charset=utf8"
+ "#5": "DATABASE_URL=\"mysql://app:[email protected]:3306/db_name?serverVersion=8\"",
+ "DATABASE_URL": "postgresql://app:[email protected]:5432/db_name?serverVersion=16&charset=utf8"
},
"dockerfile": [
"RUN install-php-extensions pdo_pgsql" 1.12 vs 2.0diff --git a/doctrine/doctrine-bundle/1.12/config/packages/doctrine.yaml b/doctrine/doctrine-bundle/2.0/config/packages/doctrine.yaml
index 30d710d..365fef1 100644
--- a/doctrine/doctrine-bundle/1.12/config/packages/doctrine.yaml
+++ b/doctrine/doctrine-bundle/2.0/config/packages/doctrine.yaml
@@ -5,14 +5,7 @@ doctrine:
# IMPORTANT: You MUST configure your server version,
# either here or in the DATABASE_URL env var (see .env file)
#server_version: '16'
-
- # only needed for MySQL
- charset: utf8mb4
- default_table_options:
- collate: utf8mb4_unicode_ci
-
- # backtrace queries in profiler (increases memory usage per request)
- #profiling_collect_backtrace: '%kernel.debug%'
+ use_savepoints: true
orm:
auto_generate_proxy_classes: true
naming_strategy: doctrine.orm.naming_strategy.underscore_number_aware
diff --git a/doctrine/doctrine-bundle/1.12/manifest.json b/doctrine/doctrine-bundle/2.0/manifest.json
index 1d4462e..c2274f9 100644
--- a/doctrine/doctrine-bundle/1.12/manifest.json
+++ b/doctrine/doctrine-bundle/2.0/manifest.json
@@ -11,8 +11,8 @@
"#2": "IMPORTANT: You MUST configure your server version, either here or in config/packages/doctrine.yaml",
"#3": "",
"#4": "DATABASE_URL=\"sqlite:///%kernel.project_dir%/var/data_%kernel.environment%.db\"",
- "#5": "DATABASE_URL=\"mysql://app:[email protected]:3306/db_name?serverVersion=8\"",
- "DATABASE_URL": "postgresql://app:[email protected]:5432/db_name?serverVersion=16&charset=utf8"
+ "#5": "DATABASE_URL=\"mysql://app:[email protected]:3306/app?serverVersion=8\"",
+ "DATABASE_URL": "postgresql://app:[email protected]:5432/app?serverVersion=16&charset=utf8"
},
"dockerfile": [
"RUN install-php-extensions pdo_pgsql" 2.0 vs 2.3diff --git a/doctrine/doctrine-bundle/2.0/config/packages/prod/doctrine.yaml b/doctrine/doctrine-bundle/2.3/config/packages/prod/doctrine.yaml
index 084f59a..17299e2 100644
--- a/doctrine/doctrine-bundle/2.0/config/packages/prod/doctrine.yaml
+++ b/doctrine/doctrine-bundle/2.3/config/packages/prod/doctrine.yaml
@@ -1,9 +1,6 @@
doctrine:
orm:
auto_generate_proxy_classes: false
- metadata_cache_driver:
- type: pool
- pool: doctrine.system_cache_pool
query_cache_driver:
type: pool
pool: doctrine.system_cache_pool
diff --git a/doctrine/doctrine-bundle/2.3/config/packages/test/doctrine.yaml b/doctrine/doctrine-bundle/2.3/config/packages/test/doctrine.yaml
new file mode 100644
index 0000000..2ace640
--- /dev/null
+++ b/doctrine/doctrine-bundle/2.3/config/packages/test/doctrine.yaml
@@ -0,0 +1,4 @@
+doctrine:
+ dbal:
+ # "TEST_TOKEN" is typically set by ParaTest
+ dbname: 'main_test%env(default::TEST_TOKEN)%'
diff --git a/doctrine/doctrine-bundle/2.0/manifest.json b/doctrine/doctrine-bundle/2.3/manifest.json
index c2274f9..e9bf7f6 100644
--- a/doctrine/doctrine-bundle/2.0/manifest.json
+++ b/doctrine/doctrine-bundle/2.3/manifest.json
@@ -11,7 +11,7 @@
"#2": "IMPORTANT: You MUST configure your server version, either here or in config/packages/doctrine.yaml",
"#3": "",
"#4": "DATABASE_URL=\"sqlite:///%kernel.project_dir%/var/data_%kernel.environment%.db\"",
- "#5": "DATABASE_URL=\"mysql://app:[email protected]:3306/app?serverVersion=8\"",
+ "#5": "DATABASE_URL=\"mysql://app:[email protected]:3306/app?serverVersion=8&charset=utf8mb4\"",
"DATABASE_URL": "postgresql://app:[email protected]:5432/app?serverVersion=16&charset=utf8"
},
"dockerfile": [ 2.3 vs 2.4diff --git a/doctrine/doctrine-bundle/2.3/config/packages/doctrine.yaml b/doctrine/doctrine-bundle/2.4/config/packages/doctrine.yaml
index 365fef1..e517e07 100644
--- a/doctrine/doctrine-bundle/2.3/config/packages/doctrine.yaml
+++ b/doctrine/doctrine-bundle/2.4/config/packages/doctrine.yaml
@@ -13,7 +13,32 @@ doctrine:
mappings:
App:
is_bundle: false
- type: annotation
dir: '%kernel.project_dir%/src/Entity'
prefix: 'App\Entity'
alias: App
+
+when@test:
+ doctrine:
+ dbal:
+ # "TEST_TOKEN" is typically set by ParaTest
+ dbname_suffix: '_test%env(default::TEST_TOKEN)%'
+
+when@prod:
+ doctrine:
+ orm:
+ auto_generate_proxy_classes: false
+ proxy_dir: '%kernel.build_dir%/doctrine/orm/Proxies'
+ query_cache_driver:
+ type: pool
+ pool: doctrine.system_cache_pool
+ result_cache_driver:
+ type: pool
+ pool: doctrine.result_cache_pool
+
+ framework:
+ cache:
+ pools:
+ doctrine.result_cache_pool:
+ adapter: cache.app
+ doctrine.system_cache_pool:
+ adapter: cache.system
diff --git a/doctrine/doctrine-bundle/2.3/config/packages/prod/doctrine.yaml b/doctrine/doctrine-bundle/2.3/config/packages/prod/doctrine.yaml
deleted file mode 100644
index 17299e2..0000000
--- a/doctrine/doctrine-bundle/2.3/config/packages/prod/doctrine.yaml
+++ /dev/null
@@ -1,17 +0,0 @@
-doctrine:
- orm:
- auto_generate_proxy_classes: false
- query_cache_driver:
- type: pool
- pool: doctrine.system_cache_pool
- result_cache_driver:
- type: pool
- pool: doctrine.result_cache_pool
-
-framework:
- cache:
- pools:
- doctrine.result_cache_pool:
- adapter: cache.app
- doctrine.system_cache_pool:
- adapter: cache.system
diff --git a/doctrine/doctrine-bundle/2.3/config/packages/test/doctrine.yaml b/doctrine/doctrine-bundle/2.3/config/packages/test/doctrine.yaml
deleted file mode 100644
index 2ace640..0000000
--- a/doctrine/doctrine-bundle/2.3/config/packages/test/doctrine.yaml
+++ /dev/null
@@ -1,4 +0,0 @@
-doctrine:
- dbal:
- # "TEST_TOKEN" is typically set by ParaTest
- dbname: 'main_test%env(default::TEST_TOKEN)%'
diff --git a/doctrine/doctrine-bundle/2.3/manifest.json b/doctrine/doctrine-bundle/2.4/manifest.json
index e9bf7f6..e652166 100644
--- a/doctrine/doctrine-bundle/2.3/manifest.json
+++ b/doctrine/doctrine-bundle/2.4/manifest.json
@@ -41,5 +41,8 @@
" - \"5432\""
]
}
+ },
+ "conflict": {
+ "symfony/framework-bundle": "<5.3"
}
} 2.4 vs 2.8diff --git a/doctrine/doctrine-bundle/2.4/config/packages/doctrine.yaml b/doctrine/doctrine-bundle/2.8/config/packages/doctrine.yaml
index e517e07..c00894c 100644
--- a/doctrine/doctrine-bundle/2.4/config/packages/doctrine.yaml
+++ b/doctrine/doctrine-bundle/2.8/config/packages/doctrine.yaml
@@ -8,6 +8,7 @@ doctrine:
use_savepoints: true
orm:
auto_generate_proxy_classes: true
+ enable_lazy_ghost_objects: true
naming_strategy: doctrine.orm.naming_strategy.underscore_number_aware
auto_mapping: true
mappings:
diff --git a/doctrine/doctrine-bundle/2.4/manifest.json b/doctrine/doctrine-bundle/2.8/manifest.json
index e652166..7bdbe71 100644
--- a/doctrine/doctrine-bundle/2.4/manifest.json
+++ b/doctrine/doctrine-bundle/2.8/manifest.json
@@ -11,7 +11,8 @@
"#2": "IMPORTANT: You MUST configure your server version, either here or in config/packages/doctrine.yaml",
"#3": "",
"#4": "DATABASE_URL=\"sqlite:///%kernel.project_dir%/var/data_%kernel.environment%.db\"",
- "#5": "DATABASE_URL=\"mysql://app:[email protected]:3306/app?serverVersion=8&charset=utf8mb4\"",
+ "#5": "DATABASE_URL=\"mysql://app:[email protected]:3306/app?serverVersion=8.0.32&charset=utf8mb4\"",
+ "#6": "DATABASE_URL=\"mysql://app:[email protected]:3306/app?serverVersion=10.11.2-MariaDB&charset=utf8mb4\"",
"DATABASE_URL": "postgresql://app:[email protected]:5432/app?serverVersion=16&charset=utf8"
},
"dockerfile": [
@@ -43,6 +44,8 @@
}
},
"conflict": {
+ "doctrine/orm": "<2.14",
+ "symfony/dependency-injection": "<6.2",
"symfony/framework-bundle": "<5.3"
}
} 2.8 vs 2.92.9 vs 2.10diff --git a/doctrine/doctrine-bundle/2.9/config/packages/doctrine.yaml b/doctrine/doctrine-bundle/2.10/config/packages/doctrine.yaml
index c00894c..d42c52d 100644
--- a/doctrine/doctrine-bundle/2.9/config/packages/doctrine.yaml
+++ b/doctrine/doctrine-bundle/2.10/config/packages/doctrine.yaml
@@ -5,14 +5,19 @@ doctrine:
# IMPORTANT: You MUST configure your server version,
# either here or in the DATABASE_URL env var (see .env file)
#server_version: '16'
+
+ profiling_collect_backtrace: '%kernel.debug%'
use_savepoints: true
orm:
auto_generate_proxy_classes: true
enable_lazy_ghost_objects: true
+ report_fields_where_declared: true
+ validate_xml_mapping: true
naming_strategy: doctrine.orm.naming_strategy.underscore_number_aware
auto_mapping: true
mappings:
App:
+ type: attribute
is_bundle: false
dir: '%kernel.project_dir%/src/Entity'
prefix: 'App\Entity' 2.10 vs 2.12diff --git a/doctrine/doctrine-bundle/2.10/config/packages/doctrine.yaml b/doctrine/doctrine-bundle/2.12/config/packages/doctrine.yaml
index d42c52d..718692d 100644
--- a/doctrine/doctrine-bundle/2.10/config/packages/doctrine.yaml
+++ b/doctrine/doctrine-bundle/2.12/config/packages/doctrine.yaml
@@ -22,6 +22,8 @@ doctrine:
dir: '%kernel.project_dir%/src/Entity'
prefix: 'App\Entity'
alias: App
+ controller_resolver:
+ auto_mapping: false
when@test:
doctrine:
diff --git a/doctrine/doctrine-bundle/2.10/manifest.json b/doctrine/doctrine-bundle/2.12/manifest.json
index 7bdbe71..28df28c 100644
--- a/doctrine/doctrine-bundle/2.10/manifest.json
+++ b/doctrine/doctrine-bundle/2.12/manifest.json
@@ -28,6 +28,11 @@
" # You should definitely change the password in production",
" POSTGRES_PASSWORD: ${POSTGRES_PASSWORD:-!ChangeMe!}",
" POSTGRES_USER: ${POSTGRES_USER:-app}",
+ " healthcheck:",
+ " test: [\"CMD\", \"pg_isready\", \"-d\", \"${POSTGRES_DB:-app}\", \"-U\", \"${POSTGRES_USER:-app}\"]",
+ " timeout: 5s",
+ " retries: 5",
+ " start_period: 60s",
" volumes:",
" - database_data:/var/lib/postgresql/data:rw",
" # You may use a bind-mounted host directory instead, so that it is harder to accidentally remove the volume and lose all your data!",
@@ -44,8 +49,6 @@
}
},
"conflict": {
- "doctrine/orm": "<2.14",
- "symfony/dependency-injection": "<6.2",
- "symfony/framework-bundle": "<5.3"
+ "symfony/framework-bundle": "<7.1"
}
} 2.12 vs 2.13diff --git a/doctrine/doctrine-bundle/2.12/config/packages/doctrine.yaml b/doctrine/doctrine-bundle/2.13/config/packages/doctrine.yaml
index 718692d..25138b9 100644
--- a/doctrine/doctrine-bundle/2.12/config/packages/doctrine.yaml
+++ b/doctrine/doctrine-bundle/2.13/config/packages/doctrine.yaml
@@ -14,6 +14,8 @@ doctrine:
report_fields_where_declared: true
validate_xml_mapping: true
naming_strategy: doctrine.orm.naming_strategy.underscore_number_aware
+ identity_generation_preferences:
+ Doctrine\DBAL\Platforms\PostgreSQLPlatform: identity
auto_mapping: true
mappings:
App: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Should we only bother updating the latest version? Keep the older version recipes untouched
I'd be fine just changing the latest. I noticed all versions could support so I just did a find/replace. |
Since sqlite doesn't benefit from
doctrine.dbal.dbname_suffix
, this is required to not wipe your sqlite db when running tests.