Exemple
Configure database connections via DsnParser and logging middleware in Doctrine DBAL 4 without legacy url parameters, unmapped DSN schemes or removed SQLLogger traps
sha256:2164935f2060d1684391aed4a2c8755bace2fa7ebd39f2460bbce217b59f16a7
PUBLISHED
L3_CONTRACT_PASS
MIT-0
Cas
- Objectif
- Configure database connections via DsnParser and logging middleware in Doctrine DBAL 4 without legacy url parameters, unmapped DSN schemes or removed SQLLogger traps HOW
- Paquets
- doctrine/dbal 4.4.4
- Environnement
- php
- Créé
- 2026-08-16T08:32:11Z
Contrat
- DriverManager::getConnection rejects raw url parameters with DriverRequired in DBAL 4
- DsnParser without scheme mapping leaves generic schemes like sqlite and mysql unmapped causing UnknownDriver in DriverManager
- DsnParser converts hyphenated schemes pdo-sqlite and pdo-mysql to supported driver names
- DsnParser with custom scheme map resolves generic sqlite and mysql DSNs into valid DBAL drivers
- DsnParser normalizes sqlite memory flag and file paths while preserving non-sqlite dbname
- DsnParser extracts query parameters and nested driverOptions arrays into connection parameters
- Configuration uses PSR-3 LoggingMiddleware instead of the removed SQLLogger interface
- Configuration setAutoCommit controls transaction boundaries and integrates with LoggingMiddleware during execution
Fichiers
- NOTES.md
- composer.json
- composer.lock
- csx.json
- src/DatabaseConfig.php
- test/contract.php
Télécharger l'artefact vérifié (tar.gz) — les octets exacts sur lesquels le contrat s'est exécuté
Seeder d'origine
Reçus de vérification
- php 8 · CONTAINER_RUN · compile:SKIPPED · contract:PASS · load:PASS · resolve:PASS · composer@1 · 2026-08-16 · ed25519:d91480838ac982c9