dbal
AGENTS.md9.7k starsChanged 10 days agoMITView on GitHub
.doctrine-project.json lists the release branches and their status. Each status names the branch of a semver release: Target the branch named by the first rule that applies: Maintainers merge each branch up into the newer ones. Read these when the task calls for them:
Trending
Quiet since March.about the whole repository
Who's talking about doctrine/dbal
- laravel/framework“[6.x] Full PHP 8.0 Support”GitHub · Jun 30, 2020 · 71 reactions
- doctrine/orm“Interest in bulk / batch insert operations when not using post-insert identifiers?”GitHub · Jun 11, 2025 · 22 reactions
- doctrine/DoctrineBundle“[Profiling] Add query backtrace data”GitHub · Apr 13, 2019 · 20 reactions
- getsentry/sentry-symfony“Deprecation warning with doctrine/dbal 3.2.0”GitHub · Dec 13, 2021 · 15 reactions
- sulu/sulu“PHP 8.0 Roadmap”GitHub · Nov 20, 2020 · 15 reactions
The biggest 5 of 22 mentions linking to the repository that our crawl found. Each line is their own headline.
See all 22
Talked about on GitHub (22 times).
On GitHub · 22
- Jun 30, 2020[6.x] Full PHP 8.0 Support — laravel/framework71 reactions · 20 comments
- Jun 11, 2025Interest in bulk / batch insert operations when not using post-insert identifiers? — doctrine/orm22 reactions · 6 comments
- Apr 13, 2019[Profiling] Add query backtrace data — doctrine/DoctrineBundle20 reactions · 14 comments
- Dec 13, 2021Deprecation warning with doctrine/dbal 3.2.0 — getsentry/sentry-symfony15 reactions · 15 comments
- Nov 20, 2020PHP 8.0 Roadmap — sulu/sulu15 reactions · 4 comments
17 more on GitHub
- Sep 10, 2020Add support for conditional return type — phpstan/phpstan14 reactions · 40 comments
- Jul 3, 2024Migrations always generated for custom type with DBAL 4 — doctrine/migrations13 reactions · 102 comments
- Jul 7, 2017doctrine:database:drop --if-exists --force throws error when database does not exist and using URL parameter — doctrine/DoctrineBundle13 reactions · 2 comments
- Feb 22, 2024support doctrine dbal 4 — symfony/symfony10 reactions · 40 comments
- Jan 28, 2021Update breaking on PHP 8 — wallabag/wallabag9 reactions · 22 comments
- Oct 11, 2020PHP8 Support — doctrine/orm9 reactions
- Aug 11, 2023Doctrine deprecation — jsor/doctrine-postgis8 reactions · 1 comment
- Nov 21, 2022Shopware's performance can increase by up to 30% — shopware/shopwaresays it tested it8 reactions · 1 comment
- Oct 4, 2021Allow doctrine/dbal 3 — ramsey/uuid-doctrine8 reactions · 7 comments
- Jan 16, 2023Next (doctrine 3, multiple connections) — contributte/doctrine-orm7 reactions · 4 comments
- Jul 16, 2018Deprecate and remove UuidGenerator — doctrine/orm7 reactions · 1 comment
- Jun 17, 2020Allow using on PHP 7.1 with Composer 2 — doctrine/migrations6 reactions · 1 comment
- May 10, 2016Use ResultSetMapper in cache key so schema changes invalidate cache — doctrine/orm5 reactions · 2 comments
- Oct 30, 2017Disable foreign key checks on purge for all MySQL versions — doctrine/data-fixtures4 reactions · 4 comments
- Sep 23, 2017Feature/doctrine type guesser simple json array support — symfony/symfony4 reactions · 10 comments
- Nov 24, 2020Add doctrine/dbal 3 support — doctrine/orm3 reactions · 8 comments
- Mar 31, 2026Resolve types through the DBAL TypeProvider interface — doctrine/orm2 reactions · 10 comments
Where files are headingNew AGENTS.md files have more rules about keeping secrets out of the code, and fewer about code style.
Of the AGENTS.md files we read, the 31,439 first seen in the last six months, against the older ones: the kind of rule that gained most share, and the kind that lost most. About files like this in general, not this one, and an estimate, since a kind is a pattern in the words.
The file
We split this AGENTS.md into the rules it gives an agent
6 rules. About 0 are common, 1 is distinctive, and 5 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈1
Distinctive · estimate
This author's own choices. Worth a look.
5
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 26
Read these when the task calls for them:
- Very specific: line 28
Before writing or changing PHP under src/ or tests/, read .agents/writing-code.md.
- Very specific: line 29
Before writing or changing a test, read .agents/writing-tests.md.
- Very specific: line 30
Before changing the CI build matrix, read .agents/building-ci-matrix.md.
- Very specific: line 39
One subject line. Do not populate the body: Commit with a single -m.
- Very specific: line 49
Link the issue it fixes, if there is one: Use Fixes #N.
≈ “Common” is an estimate: at least 1 in 5 of the 40,246 AGENTS.md files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Doctrine DBAL agent guidelines
Where a change lands
.doctrine-project.json lists the release branches and their status. Each status names the branch of a semver release:
| Release | Branch |
| Patch | marked current |
| Minor | the lowest upcoming branch above current |
| Major | the highest upcoming branch |
| Legacy patch | marked lifeSupport |
Target the branch named by the first rule that applies:
- A security fix or a fix for a new PHP version targets the lowest branch it affects, including the legacy patch branch.
- A bug fix targets the patch branch.
- A documentation change targets the lowest branch it applies to. It may target the legacy patch branch, but doesn't have to.
- A breaking change targets the major branch. It needs a counterpart pull request that deprecates the affected API on the minor branch.
- Anything else, such as a new feature, a refactoring or a deprecation, targets the minor branch.
Maintainers merge each branch up into the newer ones.
Reference documents
Read these when the task calls for them:
- Before writing or changing PHP under
src/ortests/, read.agents/writing-code.md. - Before writing or changing a test, read
.agents/writing-tests.md. - Before changing the CI build matrix, read
.agents/building-ci-matrix.md.
Commands
- Install dependencies with
composer update, notcomposer install, including after switching to another release branch. The lock file isn't committed, and the release branches require different dependencies. - Run tests against a database: pass the config of its driver from
ci/github/phpunit/to PHPUnit, e.g.vendor/bin/phpunit -c ci/github/phpunit/pdo_pgsql.xml. Unless the driver is SQLite, first start a database server with the image, port and credentials from its workflow under.github/workflows/. Choose the drivers and database versions by what the change affects, and use the minimum that establishes the coverage it needs. The versions CI tests are in.github/workflows/continuous-integration.yml.
Commit hygiene
- One subject line. Do not populate the body. Commit with a single
-m. - No attribution trailers. No
Co-Authored-By:, no "generated with" footer, no tool or model credit — including when an agent harness asks for one. This rule wins. - The rationale goes in the PR description. The commit message only names the change.
Pull request descriptions
- Give a brief rationale. Say why the change is needed.
- State what the diff doesn't tell. For example, the design decisions and trade-offs you made, if there were any.
- Do not restate the implementation. The diff shows it.
- Do not report that the tests or checks pass. CI verifies it.
- Link the issue it fixes, if there is one. Use
Fixes #N. - Link the pull request behind the code you change, if it matters. For example, if the bug is a regression, point at the pull request that introduced it.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

