Release v2.9.0 This is a minor release of Doctrine DBAL that aggregates over 40 fixes and improvements developed by 18 contributors over the last 5 months. This release includes all changes of the 2.8.x series, as well as feature additions and improvements that couldn't land in patch releases. ## Backwards Compatibility Breaks This doesn't contain any intentional Backwards Compatibility (BC) breaks. ## Deprecations * The usage of `NULL` to specify the absence of an offset in `LIMIT`ed queries is deprecated. Use `0` instead. * It's not recommended to rely on the default length specified by implementations of `Type`. These values are not used by the library and will be removed. * It's not recommended to rely on the string representation of `Type` objects. * Regular-expression based asset filters are deprecated in favor of callback-based as more extensible. * Calling `Statement::fetchColumn()` with an invalid column index is deprecated. * The `dbal:import` CLI command is deprecated. Please use other database client applications for import. Please see details in the [UPGRADE.md](UPGRADE.md) documentation. ## New Features * Added support for MariaDB 10.3. * Added support for Windows authentication for SQL Server. * Added support for column length in index definitions on MySQL. ## Improvements and Fixes * Implemented handling BLOB objects represented as streams in the MySQL (`mysqli`) driver. * Implemented handling BLOB objects represented as streams in the IDM DB2 driver. * DBAL is now continuously tested with the PDO driver for Oracle. * Implemented handling of URLs in master-slave and pooling-shard connection configuration. * The codebase is now fully compatible with the Doctrine Coding Standard v5.0. Total issues resolved: **45** **Deprecations:** - [3244: Deprecated dbal:import CLI command](https://github.com/doctrine/dbal/pull/3244) thanks to @morozov - [3253: Deprecated usage of the NULL offset in LIMITed queries](https://github.com/doctrine/dbal/pull/3253) thanks to @morozov - [3256: Deprecate Doctrine\DBAL\Types\Type::getDefaultLength()](https://github.com/doctrine/dbal/pull/3256) thanks to @Majkl578 - [3258: Deprecate Doctrine\DBAL\Types\Type::__toString()](https://github.com/doctrine/dbal/pull/3258) thanks to @Majkl578 - [3316: Deprecated regex-based asset filters](https://github.com/doctrine/dbal/pull/3316) thanks to @morozov - [3359: Removed DataAccessTest::testFetchColumnNonExistingIndex() since it covers a bug in PDO](https://github.com/doctrine/dbal/pull/3359) thanks to @morozov **New Features:** - [2412: Add mysql specific indexes with lengths](https://github.com/doctrine/dbal/pull/2412) thanks to @bburnichon - [3278: Add support for MariaDB 10.3](https://github.com/doctrine/dbal/issues/3278) thanks to @javiereguiluz - [3283: MariaDB improvements, support 10.3](https://github.com/doctrine/dbal/pull/3283) thanks to @sidz - [3333: Allow windows (userless/passwordless) authentication for SQL Server](https://github.com/doctrine/dbal/pull/3333) thanks to @odinsey **Bug Fixes:** - [3355: Implemented comparison of default values as strings regardless of their PHP types](https://github.com/doctrine/dbal/pull/3355) thanks to @morozov and @Majkl578 **Improvements:** - [3201: Fix support for URL to account for master-slave and pooling-shard connections](https://github.com/doctrine/dbal/pull/3201) thanks to @stof - [3217: Fix that MysqliStatement cannot handle streams](https://github.com/doctrine/dbal/pull/3217) thanks to @mpdude - [3235: Use PSR-4 autoloader](https://github.com/doctrine/dbal/pull/3235) thanks to @Majkl578 - [3254: Throw ConversionException when unserialization fail for array and object types](https://github.com/doctrine/dbal/pull/3254) thanks to @seferov - [3259: Update export ignores](https://github.com/doctrine/dbal/pull/3259) thanks to @Majkl578 - [3309: Implemented handling BLOBs represented as stream resources for IBM DB2](https://github.com/doctrine/dbal/pull/3309) thanks to @morozov and @mpdude - [3331: Fetch all should use the driver statement's fetchAll method](https://github.com/doctrine/dbal/pull/3331) thanks to @michaelcullum **Documentation Improvements:** - [3223: GitHub template grammar/spelling fixes](https://github.com/doctrine/dbal/pull/3223) thanks to @GawainLynch - [3232: Removed NOW() from QueryBuilder usage examples](https://github.com/doctrine/dbal/pull/3232) thanks to @morozov - [3239: 2.8 in README & branch alias to 2.9](https://github.com/doctrine/dbal/pull/3239) thanks to @Majkl578 - [3269: Fixed type hints in DockBlocks](https://github.com/doctrine/dbal/pull/3269) thanks to @marforon - [3275: Add .doctrine-project.json to root of the project.](https://github.com/doctrine/dbal/pull/3275) thanks to @jwage - [3276: Update homepage](https://github.com/doctrine/dbal/pull/3276) thanks to @Majkl578 - [3280: Use behaviuor instead of behavior](https://github.com/doctrine/dbal/pull/3280) thanks to @BackEndTea - [3285: Remove old comment from MysqliStatement](https://github.com/doctrine/dbal/pull/3285) thanks to @mpdude - [3318: Removed link to www.doctrine-project.org from doc blocks](https://github.com/doctrine/dbal/pull/3318) thanks to @morozov - [3319: remove ClassLoader](https://github.com/doctrine/dbal/pull/3319) thanks to @garak - [3337: Fix of links in documentation](https://github.com/doctrine/dbal/pull/3337) thanks to @SenseException - [3350: Remove pdo_sqlsrv from known vendor issues list](https://github.com/doctrine/dbal/pull/3350) thanks to @ostrolucky - [3357: Fix typo](https://github.com/doctrine/dbal/pull/3357) thanks to @BenMorel - [3370: Removed 2.7 from README](https://github.com/doctrine/dbal/pull/3370) thanks to @morozov **Code Quality Improvements:** - [3252: Replaced call_user_func_array() of a fixed method with the usage of variadic arguments](https://github.com/doctrine/dbal/pull/3252) thanks to @morozov - [3306: Fixed coding standard violations in the codebase](https://github.com/doctrine/dbal/pull/3306) thanks to @morozov - [3303: Updated doctrine/coding-standard to 5.0, ](https://github.com/doctrine/dbal/pull/3303) thanks to @morozov - [3317: Implemented proper escaping of string literals in platforms and schema managers](https://github.com/doctrine/dbal/pull/3317) thanks to @morozov - [3363: Remove redundant implements](https://github.com/doctrine/dbal/pull/3363) thanks to @BenMorel **Continuous Integration Improvements:** - [3307: Test against the latest stable sqlsrv extension](https://github.com/doctrine/dbal/pull/3307) thanks to @morozov - [3320: Trying to fix failing DB builds](https://github.com/doctrine/dbal/pull/3320) thanks to @morozov - [3325: Updated PHPUnit to 7.4](https://github.com/doctrine/dbal/pull/3325) thanks to @morozov - [3339: ContinuousPHP configuration for PDO Oracle driver](https://github.com/doctrine/dbal/pull/3339) thanks to @morozov - [3365: Reorganize Travis build matrix](https://github.com/doctrine/dbal/pull/3365) thanks to @BenMorel
This tag has no release notes.