Skip to content

Tags: ihmels/dbal

Tags

3.1.3

Toggle 3.1.3's commit message

Verified

This tag was signed with the committer’s verified signature.
doctrinebot Doctrine Bot
Release [3.1.3](https://github.com/doctrine/dbal/milestone/97)

3.1.3
=====

- Total issues resolved: **1**
- Total pull requests resolved: **5**
- Total contributors: **3**

Static Analysis
---------------

 - [4826: Remove obsolete error suppression](doctrine#4826) thanks to @derrabus

Bug,Console
-----------

 - [4825: Fix version displayed in `ConsoleRunner`](doctrine#4825) thanks to @derrabus

 - [4824: Remove pinned platform](doctrine#4824) thanks to @derrabus

Bug,Platforms,Regression,SQLite
-------------------------------

 - [4815: Fix renaming upper-cased SQLite columns](doctrine#4815) thanks to @morozov and @Spice-King

Bug,Schema
----------

 - [4811: Fix Schema::getTableNames()](doctrine#4811) thanks to @morozov

2.13.4

Toggle 2.13.4's commit message

Verified

This tag was signed with the committer’s verified signature.
doctrinebot Doctrine Bot
Release [2.13.4](https://github.com/doctrine/dbal/milestone/96)

2.13.4
======

- Total issues resolved: **1**
- Total pull requests resolved: **7**
- Total contributors: **3**

CI,ibm_db2
----------

 - [4834: Build ibm&doctrine#95;db2 with a public driver](doctrine#4834) thanks to @morozov

Documentation
-------------

 - [4833: Add explanation why we need to cast float to string in decimal type](doctrine#4833) thanks to @andrew-demb
 - [4827: Backport doc block fix](doctrine#4827) thanks to @derrabus

CI,Dependencies
---------------

 - [4819: PHPUnit 9.5.10](doctrine#4819) thanks to @derrabus
 - [4796: Bump PHPStan and PHPUnit](doctrine#4796) thanks to @derrabus

PHP,pdo_sqlite
--------------

 - [4818: Cast decimals to string on SQLite](doctrine#4818) thanks to @derrabus

Bug,Static Analysis
-------------------

 - [4792: Do not normalize current version during comparison](doctrine#4792) thanks to @morozov

3.1.2

Toggle 3.1.2's commit message

Verified

This tag was signed with the committer’s verified signature.
doctrinebot Doctrine Bot
Release [3.1.2](https://github.com/doctrine/dbal/milestone/95)

3.1.2
=====

- Total issues resolved: **6**
- Total pull requests resolved: **11**
- Total contributors: **4**

PDO,PHP
-------

 - [4793: Do not pass NULL to internal functions that do not expect NULL](doctrine#4793) thanks to @derrabus

Bug,Platforms,SQLite
--------------------

 - [4776: Retain SQLite column position when renaming or altering](doctrine#4776) thanks to @morozov

Documentation
-------------

 - [4768: Remove obsolete TODO annotation](doctrine#4768) thanks to @derrabus

Bug,IBM DB2,Oracle,SQL Server,Schema Introspection
--------------------------------------------------

 - [4766: Fix introspection of BINARY columns](doctrine#4766) thanks to @morozov

Bug,SQL Server,Schema Introspection
-----------------------------------

 - [4765: Fix introspection of BLOB columns on SQL Server](doctrine#4765) thanks to @morozov

Static Analysis
---------------

 - [4739: Code cleanup](doctrine#4739) thanks to @morozov
 - [4717: PHPStan check fails on PHP 8](doctrine#4717) thanks to @morozov

Bug,Oracle,Sequences
--------------------

 - [4733: Fix auto&doctrine#95;increment implementation for Oracle](doctrine#4733) thanks to @mondrake

Bug,Connections,Transactions
----------------------------

 - [4719: Reset transaction nesting level when closing connection](doctrine#4719) thanks to @morozov

Bug,Documentation
-----------------

 - [4716: Clarify ExpressionBuilder arguments](doctrine#4716) thanks to @morozov

Bug,PostgreSQL,Schema
---------------------

 - [4677: Create tables with unique constraints on PostgreSQL](doctrine#4677) thanks to @hschletz

2.13.3

Toggle 2.13.3's commit message

Verified

This tag was signed with the committer’s verified signature.
doctrinebot Doctrine Bot
Release [2.13.3](https://github.com/doctrine/dbal/milestone/94)

2.13.3
======

- Total issues resolved: **2**
- Total pull requests resolved: **16**
- Total contributors: **6**

CI,PHP
------

 - [4788: Don't fake the PHP version anymore](doctrine#4788) thanks to @derrabus

Dependencies,Static Analysis,Test Suite
---------------------------------------

 - [4784: Update Psalm to 4.10.0](doctrine#4784) thanks to @morozov

Dependencies,Static Analysis
----------------------------

 - [4780: Update PHPStan to 0.12.96](doctrine#4780) thanks to @morozov

Deprecation,sqlanywhere
-----------------------

 - [4767: Deprecate SQLAnywhere driver](doctrine#4767) thanks to @derrabus

Documentation
-------------

 - [4740: Fix links to the recommended exception interface](doctrine#4740) thanks to @morozov and @nreynis

PHP
---

 - [4736: Don't use null as exception message](doctrine#4736) thanks to @derrabus
 - [4735: PHP 8.1 compatibility for 2.13](doctrine#4735) thanks to @derrabus
 - [4734: Add ReturnTypeWillChange to core interface implementations](doctrine#4734) thanks to @derrabus

Packaging
---------

 - [4710: Update .gitattributes](doctrine#4710) thanks to @bytestream

Bug,Static Analysis
-------------------

 - [4699: Update Psalm to 4.8.1](doctrine#4699) thanks to @morozov

Code Style
----------

 - [4697: Configure PHP version for PHP&doctrine#95;CodeSniffer](doctrine#4697) thanks to @morozov

Static Analysis
---------------

 - [4695: Ignore errors about missing ReturnTypeWillChange class](doctrine#4695) thanks to @derrabus

PHP,SQL Server,Static Analysis
------------------------------

 - [4694: Update JetBrains PhpStorm stubs to 2021.1](doctrine#4694) thanks to @morozov

CI
--

 - [4686: Drop merge up and release branch creation steps](doctrine#4686) thanks to @greg0ire

Bug,PDO
-------

 - [4662: Add ReturnTypeWillChange to PDO implementations](doctrine#4662) thanks to @derrabus

BC Fix,Configuration,Connections,PDO
------------------------------------

 - [4621: Move fix for user provided pdo connection](doctrine#4621) thanks to @bizurkur

3.1.1

Toggle 3.1.1's commit message

Verified

This tag was signed with the committer’s verified signature.
doctrinebot Doctrine Bot
Release [3.1.1](https://github.com/doctrine/dbal/milestone/90)

3.1.1
=====

- Total issues resolved: **1**
- Total pull requests resolved: **8**
- Total contributors: **5**

Bug,Indexes,Platforms
---------------------

 - [4672: Fixed generated SQL for UniqueConstraint objects](doctrine#4672) thanks to @hschletz

Bug
---

 - [4667: Make Table::removeUniqueConstraint() actually work](doctrine#4667) thanks to @hschletz

Improvement,Test Suite,Tools
----------------------------

 - [4656: Allow Symfony 6](doctrine#4656) thanks to @jderusse

Documentation
-------------

 - [4642: Update versions for default branch](doctrine#4642) thanks to @SenseException
 - [4635: Address class rename in the docs](doctrine#4635) thanks to @greg0ire
 - [4615: Remove docs about user-provided PDO instance](doctrine#4615) thanks to @greg0ire

CI,Cache,Deprecation,Static Analysis
------------------------------------

 - [4630: Suppress deprecation notices for ArrayCache](doctrine#4630) thanks to @morozov

Character Encoding,Connections,MySQL,Test Suite
-----------------------------------------------

 - [4614: &doctrine#91;doctrineGH-4613&doctrine#93; Use utf8mb4 instead of utf8 for testing connection charset](doctrine#4614) thanks to @morozov

2.13.2

Toggle 2.13.2's commit message

Verified

This tag was signed with the committer’s verified signature.
doctrinebot Doctrine Bot
Release [2.13.2](https://github.com/doctrine/dbal/milestone/93)

2.13.2
======

- Total issues resolved: **3**
- Total pull requests resolved: **8**
- Total contributors: **6**

Test Suite
----------

 - [4679: Update PHPUnit to 9.5.5](doctrine#4679) thanks to @morozov

Documentation
-------------

 - [4673: Document a non-deprecated way to interact with prepared statements](doctrine#4673) thanks to @derrabus

Code Style
----------

 - [4663: Bump doctrine/coding-standard](doctrine#4663) thanks to @derrabus

Bug,Quoting,SQL Server
----------------------

 - [4648: &doctrine#91;doctrineGH-4643&doctrine#93; Fix SQLServerPlatform::quoteIdentifier()](doctrine#4648) thanks to @morozov and @zajca

Bug,Connections,Error Handling,mysqli
-------------------------------------

 - [4647: &doctrine#91;doctrineGH-4645&doctrine#93; Use error suppression instead of an error handler in MySQLi Connection](doctrine#4647) thanks to @morozov and @mbrodala

Bug,Static Analysis,Strict Typing
---------------------------------

 - [4638: Fix doctrine#4637 by duplicating the type definition for `DriverManager::getConnection($args)` params](doctrine#4638) thanks to @Ocramius and @DavideBicego

Character Encoding,Connections,MySQL,Test Suite
-----------------------------------------------

 - [4625: &doctrine#91;doctrineGH-4613&doctrine#93; Use utf8mb4 instead of utf8 for testing connection charset](doctrine#4625) thanks to @morozov

Cache,Improvement
-----------------

 - [4623: Support Doctrine Cache 2](doctrine#4623) thanks to @derrabus

3.1.0

Toggle 3.1.0's commit message

Verified

This tag was signed with the committer’s verified signature.
doctrinebot Doctrine Bot
Release [3.1.0](https://github.com/doctrine/dbal/milestone/87)

3.1.0
=====

- Total issues resolved: **3**
- Total pull requests resolved: **16**
- Total contributors: **5**

Deprecation,New Feature
-----------------------

 - [4607: Introduce Statement::executeQuery and Statement::executeStatement.](doctrine#4607) thanks to @beberlei

Deprecation,Documentation
-------------------------

 - [4589: Reference methods using parentheses](doctrine#4589) thanks to @PowerKiKi

Deprecation,Documentation,Reserved Keywords
-------------------------------------------

 - [4587: &doctrine#91;doctrineGH-4510&doctrine#93; Deprecate ReservedWordsCommand::setKeywordListClass()](doctrine#4587) thanks to @morozov

Deprecation,Oracle,Schema Managers
----------------------------------

 - [4584: &doctrine#91;doctrineGH-4503&doctrine#93; Mark OracleSchemaManager methods internal](doctrine#4584) thanks to @morozov

Error Handling,Improvement,Prepared Statements,oci8
---------------------------------------------------

 - [4581: Fix truncated oracle fetch result](doctrine#4581) thanks to @amenning

Deprecation,Improvement,QueryBuilder
------------------------------------

 - [4578: Predictable `QueryBuilder::executeQuery()` and `QueryBuilder::executeStatement()`](doctrine#4578) thanks to @PowerKiKi

Deprecation
-----------

 - [4568: Trigger runtime deprecations for previously deprecated APIs](doctrine#4568) thanks to @morozov

Connections,Sequences,pdo_sqlsrv
--------------------------------

 - [4560: Remove redundant implementation of PDO\SQLSrv\Connection::lastInsertId($name)](doctrine#4560) thanks to @morozov

Deprecation,Improvement,Schema,Schema Managers
----------------------------------------------

 - [4548: Deprecations in schema- and namespace-related APIs](doctrine#4548) thanks to @morozov

Deprecation,Platforms,Reserved Keywords
---------------------------------------

 - [4547: Deprecate AbstractPlatform::getReservedKeywordsClass()](doctrine#4547) thanks to @morozov

Deprecation,PDO,pdo_sqlsrv
--------------------------

 - [4534: Deprecate Statement::bindParam($driverOptions)](doctrine#4534) thanks to @morozov

Connections,Deprecation
-----------------------

 - [4527: Deprecate Connection::getExpressionBuilder()](doctrine#4527) thanks to @morozov
 - [4517: Deprecate Connection::$&doctrine#95;expr](doctrine#4517) thanks to @morozov

Connections,Deprecation,Schema Managers
---------------------------------------

 - [4519: Deprecate Connection::$&doctrine#95;schemaManager and Connection::getSchemaManager()](doctrine#4519) thanks to @morozov

Prepared Statements,Static Analysis,sqlsrv
------------------------------------------

 - [4514: Remove SQLSrv\LastInsertId](doctrine#4514) thanks to @morozov

Improvement,QueryBuilder,Static Analysis
----------------------------------------

 - [4489: Introduce fetch* methods in query builder](doctrine#4489) thanks to @andrew-demb

Connections,Documentation,Error Handling
----------------------------------------

 - [4457: Add note about lost connections to UPGRADE guide.](doctrine#4457) thanks to @beberlei

2.13.1

Toggle 2.13.1's commit message

Verified

This tag was signed with the committer’s verified signature.
doctrinebot Doctrine Bot
Release [2.13.1](https://github.com/doctrine/dbal/milestone/89)

2.13.1
======

- Total issues resolved: **4**
- Total pull requests resolved: **8**
- Total contributors: **8**

Documentation,Static Analysis
-----------------------------

 - [4608: Attribute type coverage metric to 3.1.x instead of 2.13.x](doctrine#4608) thanks to @morozov
 - [4604: Collect type coverage metrics, add badge to README](doctrine#4604) thanks to @morozov

 - [4603: ensureForwardCompatibilityStatement expects ResultStatement, given PDOStatement](doctrine#4603) thanks to @mwoods-familiaris

BC Fix,Prepared Statements,QueryBuilder
---------------------------------------

 - [4596: Fix BC break on QueryBuilder::execute()](doctrine#4596) thanks to @mdumoulin and @m50

Code Style
----------

 - [4593: Add direct dependency on PHP&doctrine#95;CodeSniffer](doctrine#4593) thanks to @morozov

BC Fix,Connections,PDO
----------------------

 - [4590: Fix user provided pdo connection](doctrine#4590) thanks to @mdumoulin and @htto

Compatibility,Deprecation,Prepared Statements
---------------------------------------------

 - [4580: Deprecate Statement::execute in favor of Statement::executeStatement/executeQuery](doctrine#4580) thanks to @beberlei

Deprecation,Prepared Statements
-------------------------------

 - [4579: Add missing runtime deprecations related to FC Result API (doctrine#4529, doctrine#4571)](doctrine#4579) thanks to @beberlei

Deprecation,Documentation,Prepared Statements
---------------------------------------------

 - [4571: Add explicit @deprecated in ForwardCompatibility\Result](doctrine#4571) thanks to @bcremer

Bug,Prepared Statements
-----------------------

 - [4569: Doctrine DBAL 2.13 $statement->execute() returns bool (instead of Result)](doctrine#4569) thanks to @knallcharge

2.13.0

Toggle 2.13.0's commit message

Verified

This tag was signed with the committer’s verified signature.
doctrinebot Doctrine Bot
Release [2.13.0](https://github.com/doctrine/dbal/milestone/88)

2.13.0
======

- Total issues resolved: **1**
- Total pull requests resolved: **4**
- Total contributors: **2**

 - [4555: &doctrine#91;doctrineGH-4554&doctrine#93; Deprecate all Statement::fetch* in favor of Result::fetch*](doctrine#4555) thanks to @beberlei
 - [4535: Deprecations](doctrine#4535) thanks to @beberlei
 - [4386: Reintroduce support for PHP 7.1 and 7.2](doctrine#4386) thanks to @beberlei

Connections,Improvement,Prepared Statements
-------------------------------------------

 - [4529: Improve forward compatibility between 2.x and 3.0](doctrine#4529) thanks to @mdumoulin

3.0.0

Toggle 3.0.0's commit message

Verified

This tag was signed with the committer’s verified signature.
doctrinebot Doctrine Bot
Release [3.0.0](https://github.com/doctrine/dbal/milestone/76)

3.0.0
=====

- Total issues resolved: **26**
- Total pull requests resolved: **99**
- Total contributors: **13**

Documentation,Prepared Statements,Static Analysis
-------------------------------------------------

 - [4433: Require positional statement parameters to be a list](doctrine#4433) thanks to @morozov

Configuration
-------------

 - [4431: Use individual properties in Configuration](doctrine#4431) thanks to @BenMorel

BC Break,Improvement,Locking
----------------------------

 - [4429: Throw exception on invalid LockMode](doctrine#4429) thanks to @morozov and @BenMorel

 - [4423: Add missing word](doctrine#4423) thanks to @greg0ire
 - [4028: Allow php 8](doctrine#4028) thanks to @greg0ire

Bug,Prepared Statements,Query
-----------------------------

 - [4422: QueryBuilder must use 0-based positional parameter keys](doctrine#4422) thanks to @morozov

BC Break,Prepared Statements
----------------------------

 - [4410: Remove support for colon prefix in statement parameters](doctrine#4410) thanks to @morozov
 - [4294: Remove Abstraction\Result](doctrine#4294) thanks to @morozov
 - [4007: Replace the concept of statement fetch modes with the explicit API](doctrine#4007) thanks to @morozov

Error Handling,Static Analysis,Test Suite
-----------------------------------------

 - [4401: Add missing instanceof check](doctrine#4401) thanks to @BenMorel

SQL Parser
----------

 - [4397: Port the SQL parser from PDO](doctrine#4397) thanks to @morozov and @shurik005

Error Handling
--------------

 - [4387: Store query params in driver exceptions](doctrine#4387) thanks to @BenMorel

Documentation
-------------

 - [4384: Proofread upgrade guide](doctrine#4384) thanks to @greg0ire

BC Break,Code Style,MySQL,PostgreSQL
------------------------------------

 - [4343: Rename MySql... to MySQL... and PostgreSqlSchemaManager to PostgreSQLSchemaManager](doctrine#4343) thanks to @mvorisek

Connections
-----------

 - [4323: Clean up redundant implements](doctrine#4323) thanks to @BenMorel

Bug,Error Handling,Type Conversion
----------------------------------

 - [4320: Properly format scalar values in ConversionException](doctrine#4320) thanks to @morozov

Improvement,Prepared Statements
-------------------------------

 - [4317: Reintroduce parts of Legacy API for some more time](doctrine#4317) thanks to @beberlei
 - [4293: Add Result::fetchAllKeyValue() and ::iterateKeyValue()](doctrine#4293) thanks to @morozov

Console,Documentation
---------------------

 - [4301: Remove irrelevant deprecation message from console runner](doctrine#4301) thanks to @morozov

Blocker
-------

 - [4290: Don't ignore empty strings in QueryBuilder](doctrine#4290) thanks to @BenMorel

BC Break,Error Handling,Platforms,Types
---------------------------------------

 - [4278: Remove deprecated APIs](doctrine#4278) thanks to @morozov

BC Break,Improvement,Platforms,Schema Managers
----------------------------------------------

 - [4234: Remove deprecated APIs](doctrine#4234) thanks to @morozov

BC Break,Schema
---------------

 - [4217: Remove the Synchronizer package](doctrine#4217) thanks to @morozov

Blocker,PHP
-----------

 - [4207: Update locked composer/package-versions-deprecated for compatibility with PHP 8.0](doctrine#4207) thanks to @morozov

Blocker,CI,Improvement,PHP
--------------------------

 - [4203: Remove --ignore-platform-reqs from PHP 8.0 builds](doctrine#4203) thanks to @morozov

Blocker,PHP,Test Suite
----------------------

 - [4197: The test suite fails on PHP 8 due to introduction of the match keyword](doctrine#4197) thanks to @morozov

Blocker,Bug,PHP,Platforms
-------------------------

 - [4171: Inconsistent naming of method arguments](doctrine#4171) thanks to @morozov

BC Break,Connections,Prepared Statements
----------------------------------------

 - [4167: Remove deprecated methods from the wrapper Connection](doctrine#4167) thanks to @morozov

Documentation,Improvement
-------------------------

 - [4164: Update architecture documentation](doctrine#4164) thanks to @morozov
 - [4135: Remove irrelevant references to PDO from the documentation](doctrine#4135) thanks to @morozov

BC Break,Connections,Error Handling,Events,Improvement,Prepared Statements,Query,Schema,Schema Managers,Tools,Types
-------------------------------------------------------------------------------------------------------------------

 - [4160: Add some missing @throws annotations and fix thrown exceptions](doctrine#4160) thanks to @morozov

BC Break,Connections,Improvement,Prepared Statements
----------------------------------------------------

 - [4159: Do not implement driver-level interfaces by wrapper-level classes](doctrine#4159) thanks to @morozov

BC Break,Drivers,Improvement,New Feature,Portability
----------------------------------------------------

 - [4157: Rework the portability layer to act as a middleware](doctrine#4157) thanks to @morozov

BC Break,Connections,Error Handling,Platforms
---------------------------------------------

 - [4153: Remove deprecated components](doctrine#4153) thanks to @morozov

Drivers,Error Handling,Improvement
----------------------------------

 - [4149: Replace DefaultExceptionConverter with driver-specific implementations](doctrine#4149) thanks to @morozov

BC Break,Drivers,Improvement
----------------------------

 - [4147: Mark driver classes final](doctrine#4147) thanks to @morozov

BC Break,Bug,Error Handling,Schema Managers
-------------------------------------------

 - [4146: Require $platform in AbstractSchemaManager::&doctrine#95;&doctrine#95;construct()](doctrine#4146) thanks to @morozov

Documentation,Improvement,Prepared Statements
---------------------------------------------

 - [4140: Mark result constructors internal](doctrine#4140) thanks to @morozov

BC Break,Drivers,Improvement,PDO,pdo_sqlsrv
-------------------------------------------

 - [4138: PDO connection and statement classes made final](doctrine#4138) thanks to @morozov

BC Break,Drivers,Error Handling,Improvement
-------------------------------------------

 - [4136: Move the logic of driver exception conversion into a separate interface](doctrine#4136) thanks to @morozov

BC Break,Connections,Drivers,Error Handling,Improvement,Prepared Statements
---------------------------------------------------------------------------

 - [4130: Missing driver exception annotations](doctrine#4130) thanks to @morozov

BC Break,Drivers,Error Handling
-------------------------------

 - [4129: Remove ExceptionConverterDriver](doctrine#4129) thanks to @morozov
 - [4113: Remove DriverException::getErrorCode()](doctrine#4113) thanks to @morozov

BC Break,Connections
--------------------

 - [4128: Remove PingableConnection](doctrine#4128) thanks to @morozov

BC Break,Connections,Drivers
----------------------------

 - [4125: Remove deprecated driver classes](doctrine#4125) thanks to @morozov

BC Break,Connections,Platform Detection
---------------------------------------

 - [4115: Remove ServerInfoAwareConnection#requiresQueryForServerVersion() as an implementation detail](doctrine#4115) thanks to @morozov

Improvement,Prepared Statements,SQL Parser,oci8
-----------------------------------------------

 - [4109: Preparation to marking OCI8 driver classes final](doctrine#4109) thanks to @morozov

Improvement,Static Analysis
---------------------------

 - [4107: Remove the suppressed errors that PHPStan no longer reports](doctrine#4107) thanks to @morozov

Improvement,Test Suite
----------------------

 - [4093: Expect only DriverException from Result::fetch*() methods](doctrine#4093) thanks to @morozov

Configuration,Connections,Improvement
-------------------------------------

 - [4091: Get rid of the call to Connection::getParams() in Portability\Statement](doctrine#4091) thanks to @morozov

Oracle,Schema Managers
----------------------

 - [4090: Make the $database argument of OracleSchemaManager::createDatabase() mandatory](doctrine#4090) thanks to @morozov

Test Suite
----------

 - [4089: Remove the CommentedType class from tests](doctrine#4089) thanks to @morozov

Improvement,Tools
-----------------

 - [4084: Allow using on PHP 7.3 with Composer 2](doctrine#4084) thanks to @nicolas-grekas
 - [3862: Specify the platform configuration in composer.json](doctrine#3862) thanks to @morozov

BC Break,Connections,Improvement
--------------------------------

 - [4083: Remove MasterSlaveConnection](doctrine#4083) thanks to @greg0ire

BC Break,Connections,Drivers,Events,Improvement,Logging,Platforms
-----------------------------------------------------------------

 - [4082: Backport removal of deprecated APIs from develop](doctrine#4082) thanks to @morozov

BC Break,Connecting,Connections,Drivers,Improvement
---------------------------------------------------

 - [4081: Simplify Driver::connect() signature](doctrine#4081) thanks to @morozov

BC Break,SQL Anywhere,sqlanywhere
---------------------------------

 - [4077: Remove SQL Anywhere platform and driver](doctrine#4077) thanks to @morozov

BC Break,Improvement,Portability
--------------------------------

 - [4064: Remove platform-specific portability mode constants](doctrine#4064) thanks to @morozov

BC Break,Connections,Console,Improvement
----------------------------------------

 - [4059: Remove deprecations for ConnectionHelper](doctrine#4059) thanks to @dmaicher

Portability,Test Suite
----------------------

 - [4058: Add tests for fetch*() methods of Portability\Result](doctrine#4058) thanks to @morozov

BC Break,Improvement,Prepared Statements
----------------------------------------

 - [4045: Extract Result from the Statement interface](doctrine#4045) thanks to @morozov
 - [4035: Moved rowCount() from Statement to ResultStatement](doctrine#4035) thanks to @morozov

Code Style,PostgreSQL,Test Suite
--------------------------------

 - [4040: Merge up mistakes](doctrine#4040) thanks to @greg0ire

Improvement,Portability,Prepared Statements
-------------------------------------------

 - [4039: Refactor portability statement into a functional composition](doctrine#4039) thanks to @morozov

BC Break,Connections,Error Handling
-----------------------------------

 - [4030: Backport removal of some deprecated APIs](doctrine#4030) thanks to @morozov

Regression,Test Suite
---------------------

 - [4006: Fix logging in functional tests in case of connection failure](doctrine#4006) thanks to @morozov

Blocker,Compatibility,Improvement,New Feature
---------------------------------------------

 - [3980: Segregated support of unique index and unique constraint](doctrine#3980) thanks to @guilhermeblanco

CI,Oracle,SQL Server,Testing
----------------------------

 - [3965: Sync expected coverage report count](doctrine#3965) thanks to @greg0ire

Bug,Connecting,Connections,mysqli
---------------------------------

 - [3943: Do not require hostname for non-persistent MySQL connection and require for persistent](doctrine#3943) thanks to @morozov

BC Break,Logging
----------------

 - [3934: Removed EchoSQLLogger](doctrine#3934) thanks to @morozov

Drivers,Improvement,mysqli
--------------------------

 - [3933: Removed the hard-coded MySQL default port and the usage of ini-settings](doctrine#3933) thanks to @morozov

BC Break,Improvement,Strict Typing
----------------------------------

 - [3932: Enable PHPStan strict rules](doctrine#3932) thanks to @morozov

CI,Improvement,Test Suite
-------------------------

 - [3915: Flatten source and test directory structure](doctrine#3915) thanks to @morozov

Improvement,Platforms,PostgreSQL,SQL Anywhere,SQL Server
--------------------------------------------------------

 - [3912: Made some platform class names reflect the lowest server version they support](doctrine#3912) thanks to @morozov

Azure,BC Break,Drivers,Drizzle,MariaDB,Platforms,PostgreSQL,SQL Anywhere,SQL Server,Sharding,pdo_ibm
----------------------------------------------------------------------------------------------------

 - [3906: Backport removal of legacy platforms and drivers from master](doctrine#3906) thanks to @morozov

Improvement,PHP
---------------

 - [3899: Drop support for PHP 7.2 in DBAL 3.0](doctrine#3899) thanks to @morozov

BC Break,Improvement,Tools
--------------------------

 - [3860: Drop Doctrine\DBAL\Version in favor of Ocramius\PackageVersions](doctrine#3860) thanks to @morozov
 - [2967: Drop Doctrine\DBAL\Version in favor of Ocramius\PackageVersions](doctrine#2967) thanks to @Majkl578

Code Style,Improvement
----------------------

 - [3847: Update Doctrine Coding Standard to 7.0](doctrine#3847) thanks to @morozov

BC Break,Improvement,Prepared Statements,SQL Parser,oci8
--------------------------------------------------------

 - [3820: Made the OCI8Statement class final](doctrine#3820) thanks to @morozov

Prepared Statements,Refactoring,mysqli
--------------------------------------

 - [3817: Refactored MySQLiStatement::$columnNames](doctrine#3817) thanks to @morozov

CI,Improvement
--------------

 - [3814: Added builds against PHP nightly on Travis](doctrine#3814) thanks to @morozov

BC Break,Improvement,Prepared Statements,oci8
---------------------------------------------

 - [3808: Removed the OCI8Connection::getExecuteMode() method](doctrine#3808) thanks to @morozov

BC Break,PDO,PHP,RFC
--------------------

 - [3803: Backport PDO-related changes from master to 3.0.x](doctrine#3803) thanks to @morozov

Failing Test,Test Suite,oci8
----------------------------

 - [3802: OCI8StatementTest fails on PHP 8](doctrine#3802) thanks to @morozov

BC Break,Improvement,SQL Server
-------------------------------

 - [3756: Dropped SQL Server 2008 support](doctrine#3756) thanks to @morozov

BC Break,Drivers,Improvement,Platform Detection
-----------------------------------------------

 - [3750: VersionAwarePlatformDriver now extends Driver](doctrine#3750) thanks to @morozov

BC Break,Connections,Databases,Drivers,Improvement,Schema Introspection
-----------------------------------------------------------------------

 - [3606: Removed Driver::getDatabase() in favor of Connection::getDatabase()](doctrine#3606) thanks to @morozov

Azure,BC Break,Improvement,Sharding
-----------------------------------

 - [3602: Remove support for sharding and the Azure platform](doctrine#3602) thanks to @morozov

BC Break,Improvement,Platforms,Prepared Statements
--------------------------------------------------

 - [3594: Removed some unused code bits](doctrine#3594) thanks to @morozov

BC Break,Improvement,Logging
----------------------------

 - [3584: Remove LoggerChain::addLogger](doctrine#3584) thanks to @ostrolucky

BC Break,Improvement
--------------------

 - [3579: Remove deprecated stuff for 3.0](doctrine#3579) thanks to @jwage
 - [3518: Remove @​deprecated stuff](doctrine#3518) thanks to @Majkl578

BC Break,Drivers
----------------

 - [3553: Removed Driver::getName()](doctrine#3553) thanks to @morozov

BC Break,Configuration,Connections,PDO
--------------------------------------

 - [3548: Remove user provided PDO functionality](doctrine#3548) thanks to @morozov

BC Break,MariaDB,Platform Detection,Platforms,PostgreSQL
--------------------------------------------------------

 - [3477: Drop db support for PostgreSQL 9.3 and MariaDB 10.0](doctrine#3477) thanks to @SenseException

BC Break,Improvement,Types
--------------------------

 - [3257: Remove Doctrine\DBAL\Types\Type::&doctrine#95;&doctrine#95;toString()](doctrine#3257) thanks to @Majkl578

BC Break,Platforms
------------------

 - [3211: Removed support for DB-generated UUIDs](doctrine#3211) thanks to @morozov

BC Break,Connections,Drivers,Improvement,PDO,Prepared Statements
----------------------------------------------------------------

 - [3080: &doctrine#91;DBAL-3079&doctrine#93; Reworked the usage of PDO in PDOConnection from inheritance to composition](doctrine#3080) thanks to @morozov

BC Break,Prepared Statements,RFC
--------------------------------

 - [3070: Dropped support of fetching objects and non-zero column](doctrine#3070) thanks to @morozov

BC Break,Platform Detection,Platforms,PostgreSQL,SQL Anywhere,SQL Server
------------------------------------------------------------------------

 - [3055: Drop support for legacy platforms](doctrine#3055) thanks to @Majkl578 and @morozov

BC Break,Drivers,Drizzle,Platforms
----------------------------------

 - [3040: Drop Drizzle support](doctrine#3040) thanks to @BenMorel

BC Break,Compatibility,Improvement,PDO,Prepared Statements
----------------------------------------------------------

 - [2958: Remove hard dependency on PDO](doctrine#2958) thanks to @morozov