v2.5.4 - Jan 05, 2016

    1568: Identifier is cached with wrong type


v2.5.3 - Dec 25, 2015

    1572: Target entity resolver for DQL
    1573: Merge entity associated to versioned entity
    4884: DDC-4019: Proxy generator is not including PHP7 return type hints
    5547: Correcting minor test case incompatibility with XDebug 2.4.x


v2.5.2 - Nov 23, 2015

Bug

    [DDC-3677] - [GH-1375] DDC-3671 prevent duplicate unique index
    [DDC-3899] - [GH-1507] Fixed wrong property name
    [DDC-3908] - [GH-1510] Fix cache storage related test issues (due to doctrine/cache 1.5.0 changes)
    [DDC-3911] - [GH-1512] Backport of "LimitSubqueryOutputWalker: fix aliasing of property in OrderBy from MappedSuperclass"
    [DDC-3973] - [GH-1540] [DDC-3711] Correct Error on manyToMany with composite primary key + add Tests

Documentation

    [DDC-3938] - [GH-1529] Update Upgrade.md after minor bc break in 2.5.1

Improvement

    [DDC-3978] - [GH-1543] Allow symfony 3.0 components on 2.5


v2.5.1 - Aug 31, 2015

v2.5.0 - Apr 02, 2015

v2.5.0-RC2 - Mar 31, 2015

    DDC-3643 #1352 Fix EntityGenerator RegenerateEntityIfExists logic
    DDC-3645 #1353 DDC-3637 #1347 DDC-3642 #1351 Paginator logic fixes
	(complex queries/sorting/db support)


v2.5.0-RC1 - 25 Mar 2015

    DDC-3632 #1345 Fix crashes in ConvertMappingCommand and GenerateEntitiesCommand when using entities with joined table inheritance
    DDC-3634 #1346 Fix: generated IDs are converted to integer even when they are big integers
    DDC-3630 DDC-3621 #1343 Support embeddables in partial object query expression
    DDC-3623 DDC-3629 #1337 #1342 Paginator functional tests and sorting corrections
    DDC-2224 DDC-3625 #1339 Honor convertToDatabaseValueSQL() in DQL query parameters and caches


v2.5.0-beta1 - 20 Mar 2015

    DDC-3452 Embeddables Support for ClassMetadataBuilder
    DDC-3551 Load platform lazily in ClassMetadataFactory to avoid database connections.
    DDC-3258 Improve suport for composite primary keys and assocations as keys.
    DDC-3554 Allow to recreate DQL QueryBuilder from parts.
    DDC-3461 Allow setting association as primary key in ClassMetadataBuilder API with makePrimaryKey().
    DDC-3587 Added programmatical support to define indexBy on root aliases.
    DDC-3588 Add support for seconds in DATE_ADD DQL function.
    DDC-3585 Fix instantiation of nested embeddables.
    DDC-3607 Add support for orphan removal in ClassMetadataBuilder/AssocationBuilder
    DDC-3597 Add support for embeddables in MappedSuperclasses.
    DDC-3616 Add support for DateTimeImmutable in Query parameter detection.
    DDC-3622 Improve support for objects as primary key by casting to string in UnitOfWork.
    DDC-3619 Update IdentityMap when entity gets managed again fixing spl_object_hash collision.
    DDC-3608 Fix bug in EntityGenerator to XML/YML with default values.
    DDC-3590 Fix bug in PostgreSQL with naming strategy of non-default schema tables.
    DDC-3566 Fix bug in Second-Level Cache with association identifiers.
    DDC-3528 Have PersistentCollection implement AbstractLazyCollection from doctrine/collections.
    DDC-3567 Allow access to all aliases for a QueryBuilder.


v2.5.0-alpha2 - 28 Jan 2015

    DDC-3517 GH-1265 Fix error undefined index "targetEntity"
    DDC-3516 GH-1264 Add Changelog/Migration to 2.5 documentation chapter.
    DDC-3520 DDC-3521 GH-1269 self-update composer before install
    DDC-3526 GH-1273 Incorrect @throws doc. in getSingleScalarResult
    DDC-3465 GH-1232 Explicit example of partial indexes
    DDC-3300 DDC-3503 GH-1130 GH-1232 Resolve target entity also in discriminator map (allows interfaces and custom names in discriminator map)
    DDC-3378 GH-1176 Support merging entities with composite identities defined through to-one associations
    DDC-3533 GH-1279 Fixed typos and grammar in the second level cache documentation
    DDC-3343 DDC-3536 DDC-3544 GH-1281 GH-1288 GH-1169 Entities should not be deleted when using EXTRA_LAZY and one-to-many
    DDC-3538 DDC-3519 GH-1283 GH-1267 Reverted #1220 <https://github.com/doctrine/doctrine2/pull/1220>_, fixed order in pagination logic
    DDC-2704 DDC-3524 GH-1272 merge inherited transient properties - merge properties into uninitialized proxies
    DDC-3346 DDC-3531 DDC-3534 GH-1280 GH-1277 fixed findOne* operations when using a EAGER *-to-many association
    DDC-3541 GH-1286 Removing XDebug from non-coverage builds
    DDC-3546 GH-1289 Improve test suite performance


v2.5.0-alpha1 - 18 Jan 2015

Issue summary:
New Feature

    [DDC-93] - It would be nice if we could have support for ValueObjects
    [DDC-1149] - Optimize OneToMany and ManyToMany without join
    [DDC-1216] - A way to mark an entity to always use result cache. Like @UseResultCache class annotation.
    [DDC-1247] - Implement AnnotationDriver::addExcludePath
    [DDC-1563] - Result cache for repository queries
    [DDC-2021] - Array Data in Member OF
    [DDC-2773] - [GH-835] Value objects (Based on #634)
    [DDC-2959] - [GH-937] Extra-lazy for containsKey on collections
    [DDC-3117] - [GH-1027] Support for Partial Indexes for PostgreSql and Sqlite
    [DDC-3161] - [GH-1054] SQLFilters enahancements
    [DDC-3186] - [GH-1069] added method to be able to reuse the console application
    [DDC-3231] - [GH-1089] Entity repository generator default repository
    [DDC-3385] - [GH-1181] Support fetching entities by aliased name
    [DDC-3462] - [GH-1230] Allow dumping SQL query when passing DQL on cli

Bug

    [DDC-1624] - Locking CTI doesnt work on SQL Server
    [DDC-2310] - Recent changes to DBAL SQL Server platform lock hinting breaks ORM SqlWalker in DQL queries with joins
    [DDC-2352] - [GH-615] Update SqlWalker.php
    [DDC-2372] - [GH-632] entity generator - ignore trait properties and methods
    [DDC-2504] - [GH-696] extra lazy joined test
    [DDC-2559] - [GH-728] Color message like the update tools
    [DDC-2561] - [GH-729] add missing hint about lifecycle callback
    [DDC-2562] - [GH-730] To avoid "SpacingAfterParams" error with PHPCS Symfony2 coding standard
    [DDC-2566] - [GH-732] Update working-with-associations.rst
    [DDC-2568] - [GH-733] Update Parser.php
    [DDC-2572] - ResolveTargetEntityListener does not work as documented.
    [DDC-2573] - [GH-735] Fix proxy performance test
    [DDC-2575] - Hydration bug
    [DDC-2580] - [GH-739] Fix DDC-2579
    [DDC-2581] - [GH-740] Synchronized support of FilterCollection with ODM by adding missing method
    [DDC-2584] - [GH-743] Added coverage to DDC-2524. Updated DDC-1719 to fix related DBAL bug.
    [DDC-2588] - [GH-745] Update basic-mapping.rst
    [DDC-2591] - [GH-747] fix some file mode 755->644
    [DDC-2592] - [GH-748] Add hour to DATE_ADD and DATE_SUB
    [DDC-2603] - [GH-751] Added coverage for querying support during postLoad.
    [DDC-2604] - [GH-752] ORM side fixes.
    [DDC-2616] - [GH-759] Fixed out of sync code examples in getting-started.rst
    [DDC-2624] - ManyToManyPersister fails to handle cloned PeristentCollections
    [DDC-2652] - [GH-777] Fixed typo in mapping documentation
    [DDC-2653] - [GH-778] Fixed typo in property mapping
    [DDC-2654] - [GH-779] Fixed grammar in custom data types
    [DDC-2656] - [GH-780] [DCC-2655] Don't let getOneOrNullResult throw NoResultException
    [DDC-2668] - DQL TRIM function is not converted into TRIM SQL correctly
    [DDC-2673] - [GH-785] Update dql-custom-walkers.rst
    [DDC-2676] - [GH-786] Minor updates while reading the basic-mapping page
    [DDC-2678] - [GH-787] Update DDC719Test.php to be compatible with MsSQL
    [DDC-2681] - [GH-790] HHVM compatibility: func_get_args
    [DDC-2682] - [GH-791] Implemented "contains" operator for Criteria expressions
    [DDC-2683] - [GH-792] [DDC-2668] Fix trim leading zero string
    [DDC-2689] - Doctrine ORM test suite failing on MySQL
    [DDC-2690] - Doctrine ORM test suite failing on PostgresSQL
    [DDC-2696] - [GH-795] Update query-builder.rst
    [DDC-2699] - [GH-797] CS fixes
    [DDC-2700] - [GH-798] Identifier can be empty for MappedSuperclasses
    [DDC-2702] - [GH-799] remove unused test case
    [DDC-2706] - [GH-801] Update SqlWalker.php fixed wrong GROUP BY clause on SQL Server platform
    [DDC-2707] - [GH-802] Respect unsigned fields when tables get converted to entities.
    [DDC-2711] - [GH-803] Appended newline to (newly) generated files for PSR2 compatibility
    [DDC-2716] - [GH-808] Second level cache
    [DDC-2718] - [GH-809] Fix DDC-1514 test
    [DDC-2720] - [GH-811] Update SingleScalarHydrator error message
    [DDC-2722] - [GH-812] [Doc] add direct links to dbal and dql documentation
    [DDC-2728] - [GH-815] Remove unused use statement
    [DDC-2732] - [GH-816] Options not respected for ID Fields in XML Mapping Driver
    [DDC-2737] - [GH-817] Removed "minimum-stability" : "dev" from composer.json
    [DDC-2738] - [GH-818] Clarified tutorial context in section introducing `orm:scehma-tool:*` commnads
    [DDC-2740] - [GH-819] Fixes a Fatal Error when using a subexpression in parenthesis
    [DDC-2741] - [GH-820] Added support for field options to FieldBuilder
    [DDC-2750] - [GH-822] DDC-2748 DQL expression "in" not working with Collection
    [DDC-2753] - [GH-824] s/PostgreSQLPlatform/PostgreSqlPlatform/
    [DDC-2757] - Manual transcation handling not possible when transaction fails, documentation gives wrong example
    [DDC-2759] - ArrayHydration: Only first entity in OneToMany association is hydrated
    [DDC-2760] - [GH-827] Added a failing test case for DDC-2759.
    [DDC-2764] - An orderBy on Criteria leads to DQL semantical error
    [DDC-2765] - [GH-830] [DDC-2764] Prefix criteria orderBy with rootAlias
    [DDC-2769] - [GH-832] Added "readOnly: true" to YAML reference
    [DDC-2771] - [GH-834] Add example use of repositoryClass in YAML
    [DDC-2774] - [GH-836] Update annotations-reference.rst
    [DDC-2775] - Bug with cascade remove
    [DDC-2782] - [GH-842] Added EntityManager query creation tests
    [DDC-2790] - [GH-845] Don't compute changeset for entities that are going to be deleted
    [DDC-2792] - [GH-846] joinColumn is not required in manyToMany
    [DDC-2798] - [GH-849] Error with Same Field, Multiple Values, Criteria and QueryBuilder
    [DDC-2799] - [GH-850] Event listener to programmatically attach entity listeners.
    [DDC-2811] - [GH-854] fix relative path to doctrine/common
    [DDC-2812] - [GH-856] Fix dependency for tests/Doctrine/Tests/ORM/Functional/ReferenceProxyTest.php
    [DDC-2827] - [GH-864] Updated parser to support aggegrate functions in null comparisons
    [DDC-2831] - [GH-866] Mentioning the 'refresh' cascading property in the documentation list
    [DDC-2843] - SchemaTool update SQL always contains queries to set default value on columns, even if they haven't changed.
    [DDC-2847] - [GH-871] XCache cannot be flushed on the CLI -> for pretty much the same reason as APC
    [DDC-2853] - [GH-873] Try running unit tests on HHVM
    [DDC-2855] - [GH-875] Adding tests that confirm that DDC-2845 is fixed
    [DDC-2856] - [GH-876] Fixing wrong key for allowing HHVM failures
    [DDC-2862] - When update cached entitiy, entity lost OneToOne relationship
    [DDC-2866] - [GH-883] [DDC-2862] Fix non initialized association proxy
    [DDC-2867] - [GH-884] [SLC] Fix cache misses using one-to-one inverse side
    [DDC-2869] - [GH-886] [DDC-1256] Fix applying ON/WITH conditions to first join in Class Table Inheritance
    [DDC-2875] - [GH-890] [DBAL-563] Add general IDENTITY generator type support for sequence emulating platforms
    [DDC-2876] - [GH-891] Allow to not generate extra use
    [DDC-2878] - [GH-893] autoGenerate arg from bool to int
    [DDC-2880] - [GH-894] Fix typos - QueryBuilder
    [DDC-2884] - [GH-896] Ensure <cascade/> elements preceed <join-columns/>
    [DDC-2885] - [GH-897] Respected 'inheritanceType' at Entity level
    [DDC-2889] - [GH-900] Fix connection mock fetchColumn signature
    [DDC-2890] - Paginator generates invalid sql for some dql with setUseOutputWalkers(false) and $fetchJoinCollection = true
    [DDC-2903] - [GH-906] removed erroneous tip
    [DDC-2907] - [GH-907] [DDC-1632] OneToMany Fetch eager
    [DDC-2908] - [GH-908] [DDC-2862] Fix lazy association load
    [DDC-2913] - [GH-909] Fix DatabaseDriverTest on SQL Server
    [DDC-2914] - [GH-910] [DDC-2310] Fix SQL generation on table lock hint capable platforms
    [DDC-2916] - [GH-911] fix foreach coding style
    [DDC-2919] - LockMode::NONE evaluation inconsistencies in ORM
    [DDC-2921] - [GH-912] Avoid PersistentCollection::isEmpty() to fully load the collection.
    [DDC-2931] - OneToOne self-referencing fails when loading referenced objects
    [DDC-2933] - [GH-917] DDC-2931
    [DDC-2934] - [GH-918] Fix use of function in OrderBy
    [DDC-2935] - [GH-919] tests for DDC-2890
    [DDC-2937] - [GH-920] SingleScalarHydrator reports ambiguous error.
    [DDC-2943] - Paginator not work with second level cache in Doctrine 2.5
    [DDC-2946] - [GH-926] Feature/console em helper interface
    [DDC-2947] - [GH-927] s/EntityManager/EntityManagerInterface/ in a few places
    [DDC-2948] - [GH-928] Support PHPUnit 3.8+ Compatibility
    [DDC-2952] - [GH-932] [DDC-2919] Make lock mode usage consistent
    [DDC-2956] - [GH-934] faild test with multiple HINT_CUSTOM_TREE_WALKERS
    [DDC-2957] - [GH-935] Remove incorrect (outdated) validation for public fields in SchemaValidator
    [DDC-2958] - [GH-936] [WIP] Making testing dependencies explicit
    [DDC-2961] - [GH-938] Missing join-tables added in example
    [DDC-2967] - [GH-943] Validate embeddables do not contain other embeddables.
    [DDC-2968] - [GH-944] Fixed InputOption modes
    [DDC-2969] - [GH-945] Fix CS
    [DDC-2971] - [GH-947] Cleaned up further unused imports.
    [DDC-2974] - [GH-950] Can cache empty collections
    [DDC-2975] - [GH-951] More informational entity not found exception
    [DDC-2976] - [GH-952] Add DB-level onDelete CASCADE example
    [DDC-2989] - ORM should allow custom index names for foreign associations.
    [DDC-2996] - UnitOfWork::recomputeSingleEntityChangeSet() will not add a new change set
    [DDC-2997] - [GH-960] allow passing EntityManagerInterface when creating a HelperSet
    [DDC-2998] - [GH-961] [DDC-2984] Provide TestCase to reproduce bug
    [DDC-3002] - [GH-964] [SLC][DDC-2943] Disable slc for pagination queries
    [DDC-3003] - [GH-965] [SLC] Add support for criteria
    [DDC-3008] - [GH-967] [SLC] Add query builder options
    [DDC-3009] - [GH-968] Test: Add failing test
    [DDC-3010] - [GH-969] [Doc] added note about Criteria limits on PersistentCollection
    [DDC-3012] - [GH-971] [SLC] Fix query association proxy
    [DDC-3013] - [GH-972] Capitalize @GeneratedValue (annotations-reference.rst)
    [DDC-3015] - [GH-974] [SLC] Resolve association cache entry
    [DDC-3018] - DQL “NEW” Operator and Literal type "String"
    [DDC-3021] - [GH-976] Add cache invalidation strategy to AbstractQuery
    [DDC-3023] - [GH-977] Fix wrong annotation
    [DDC-3028] - [GH-978] [DDC-2987] Enable empty prefixes for inlined embeddable
    [DDC-3033] - Regression in computeChangeSets (ManyToMany relation)
    [DDC-3038] - [GH-982] Failing Test (since commit 53a5a48)
    [DDC-3041] - [GH-984] Use boolean values for 'unique' attribute
    [DDC-3042] - select issue field names with numbers
    [DDC-3045] - SQL Injection in Persister API
    [DDC-3047] - XML Exporter driver does not export association fetch-mode
    [DDC-3049] - [GH-988] Exporter support for association fetch modes
    [DDC-3054] - [GH-991] Ability to define custom functions with callback instead of class name
    [DDC-3058] - [GH-993] Update JoinColumn.php
    [DDC-3060] - [GH-995] Allow cascaded clearing of associated Entities
    [DDC-3061] - [GH-996] [DDC-3027] Embedded in MappedSuperclass
    [DDC-3062] - [GH-997] [FIX] Allow to use ManyToMany with all operators
    [DDC-3065] - Generated 'IN' clause doesn't handle 'null' values (needs to add 'IS NULL' check)
    [DDC-3067] - [GH-999] DDC-3065 null value in in criteria support
    [DDC-3069] - [GH-1000] [DDC-3068] EntityManager::find accept array of object as id
    [DDC-3071] - [GH-1002] Fixed wrongly initialized property.
    [DDC-3074] - [GH-1004] Removed all useless occurrence of require_once TestInit.php
    [DDC-3075] - [GH-1005] Added support of the subselect expressions into NEW expressions
    [DDC-3078] - Doctrine\ORM\Cache::__construct is in an interface
    [DDC-3080] - [GH-1008] DDC-3078 SLC Cache interface ctor removal
    [DDC-3081] - [GH-1009] HHVM compatibility
    [DDC-3082] - [GH-1010] Fixed validation message
    [DDC-3085] - NULL comparison are not supported for result variables in the HAVING clause
    [DDC-3092] - [GH-1012] Ddc 3078 slc cache interface ctor removal
    [DDC-3093] - [GH-1013] Remove SimpleXmlElement hack
    [DDC-3095] - [GH-1014] Update second level cache doc
    [DDC-3100] - [GH-1018] DBAL-878 Wrong mapping type
    [DDC-3103] - Is embedded class information in ClassMetadata is not stored when serializing.
    [DDC-3106] - [GH-1023] [DDC-3027] Avoid duplicated mapping using Embedded in MappedSuperclass
    [DDC-3107] - [GH-1024] [Persister] Remove the insertSql cache
    [DDC-3108] - Criteria cannot reference a joined tables' fields when used with an ORM QueryBuilder
    [DDC-3118] - [GH-1028] Add method getAssociationsByType to ClassMetadata
    [DDC-3120] - Warning: Erroneous data format for unserializing PHP5.6+
    [DDC-3123] - Extra updates are not cleaned after execution
    [DDC-3124] - [GH-1030] DDC-3123 extra updates cleanup
    [DDC-3129] - [GH-1032] Add support for optimized contains
    [DDC-3143] - [GH-1041] Allow all EntityManagerInterface implementations
    [DDC-3151] - [GH-1048] Fix typo in exception message
    [DDC-3152] - Generating methods does not check for existing methods with different case
    [DDC-3160] - Regression in reComputeSingleEntityChangeset
    [DDC-3177] - [GH-1063] singularize variable name on add/remove methods for EntityGenerator
    [DDC-3184] - Invalid hydration of entities using ManyToOne relation via queryBuilder
    [DDC-3190] - [GH-1071] Setup::createConfiguration breaks Cache interface contract
    [DDC-3191] - [GH-1072] Fix attempt of traversing bool in FileLockRegion
    [DDC-3192] - Custom types do not get converted to PHP Value when result is gotten from custom query
    [DDC-3198] - [GH-1075] Fixed query cache id generation: added platform to hash
    [DDC-3199] - [GH-1076] Fix switch non-uniform syntax
    [DDC-3210] - [GH-1080] possible fix for DDC-2021
    [DDC-3214] - [GH-1082] added more informative error messages when invalid parameter count
    [DDC-3223] - Failing test (get id return string type)
    [DDC-3225] - [GH-1087] Remove the error control operator
    [DDC-3227] - [GH-1088] Fix the composer autoload paths for the doctrine CLT
    [DDC-3233] - [GH-1092] Arbitrary Join count walkers solution
    [DDC-3237] - [GH-1096] Changes for grammar and clarity
    [DDC-3239] - [GH-1097] `expandParameters`/`getType` in BasicEntityPersister seems to really cover just few cases
    [DDC-3240] - [GH-1098] #DDC-1590: Fix Inheritance in Code-Generation
    [DDC-3254] - [GH-1111] Fix inheritance hierarchy wrong exception message
    [DDC-3269] - [GH-1120] [DDC-3205] Metadata info
    [DDC-3272] - EntityGenerator writes 'MappedSuperClass' instead of 'MappedSuperclass'
    [DDC-3278] - [GH-1123] Fixed the structure of the reverse-engineered mapping
    [DDC-3283] - [GH-1125] Update improving-performance.rst
    [DDC-3288] - [GH-1126] Fixed new line in docblock
    [DDC-3293] - XML Mappings disallow disabling column prefix for embeddables
    [DDC-3302] - [GH-1132] DDC-3272 entity generator mapped superclass casing
    [DDC-3310] - [GH-1138] Join column index names
    [DDC-3318] - [GH-1143] Fixed a bug so that a versioned entity with a oneToOne id can be created
    [DDC-3322] - [GH-1146] Allow orderBy to reference associations
    [DDC-3336] - Undefined property: Doctrine\ORM\Query\AST\SimpleArithmeticExpression::$field
    [DDC-3350] - [GH-1160] #1159 - multiple entity managers per repository factory should be supported
    [DDC-3355] - [GH-1164] [QueryBuilder] Remove unused method parameters to run on HHVM/PHP7
    [DDC-3358] - [GH-1166] Fixing HHVM+XSD validation tests as of documented HHVM inconsistencies
    [DDC-3368] - [GH-1172] Don't initialize detached proxies when merging them.
    [DDC-3370] - [GH-1173] Fix merging of entities with associations to identical entities.
    [DDC-3379] - [GH-1177] Ensure metadata cache is not ArrayCache in production
    [DDC-3380] - [GH-1178] Fixing associations using UUIDs
    [DDC-3387] - [GH-1182] #1086 identifier type in proxies
    [DDC-3394] - UOW CreateEntity failure with zerofill columns
    [DDC-3404] - [GH-1188] Fixed counting exception
    [DDC-3419] - [GH-1196] Inherit indexes from mapped superclass
    [DDC-3425] - [GH-1202] Checks key exists rather than isset
    [DDC-3427] - Doctrine\ORM\Mapping\ClassMetadataFactory explicitly accepts EntityManager
    [DDC-3428] - [GH-1204] Fix sequence-generator in MetaData exporter for XML Driver.
    [DDC-3429] - [GH-1205] Hotfix - #1200 symfony 2.7 deprecation fixes
    [DDC-3430] - [GH-1206] matching should not change critera
    [DDC-3431] - [GH-1207] Embedded classes reflection new instance creation with internal PHP classes
    [DDC-3432] - [GH-1208] DDC-3427 - class metadata factory should accept `EntityManagerInterface` instances
    [DDC-3433] - [GH-1210] DDC-3336 - undefined property with paginator walker and scalar expression in ORDER BY clause
    [DDC-3434] - LimitSubqueryOutputWalker does not retain correct ORDER BY expression fields when dealing with HIDDEN sort fields
    [DDC-3435] - [GH-1211] DDC-3434 - paginator ignores `HIDDEN` fields in `ORDER BY` query
    [DDC-3436] - [GH-1212] [DDC-3108] Fix regression where join aliases were no longer accessible in Criteria expressions
    [DDC-3437] - [GH-1213] fix instantiation of embedded object in ReflectionEmbeddedProperty
    [DDC-3439] - [GH-1216] test XML export driver, the field options, for #1214
    [DDC-3454] - [GH-1224] Updated setParameters function for not replace all parameters
    [DDC-3466] - [GH-1233] [Minor] Refactoring to avoid duplicate code
    [DDC-3470] - [GH-1235] Consistent return type confirming with interface
    [DDC-3478] - [GH-1239] Fix index duplication for unique association join columns
    [DDC-3482] - [GH-1242] Attempting to lock a proxy object fails as UOW doesn't init proxy first
    [DDC-3493] - New (PHP 5.5) "class" keyword - wrong parsing by EntityGenerator
    [DDC-3494] - [GH-1250] Test case for "class" keyword
    [DDC-3502] - [GH-1256] DDC-3493 - fixed EntityGenerator parsing for php 5.5 "::class" syntax
    [DDC-3506] - [GH-1259] Hotfix: Cache region should not mutate injected cache instance settings
    [DDC-3513] - [GH-1262] Fixes the broken DQL command

Documentation

    [DDC-2510] - [GH-700] Update getting-started.rst
    [DDC-2511] - [GH-701] list_bugs.php needs to call to getters for protected vars
    [DDC-2549] - [GH-721] Updated batch-processing link extension
    [DDC-2553] - [GH-723] Remove extra semicolon before ->setParameter() calls
    [DDC-2571] - [GH-734] Cleaned up documentation
    [DDC-2620] - [GH-762] YAML mapping documentation of uniqueConstraint
    [DDC-2755] - [GH-825] Spelling fix
    [DDC-2777] - [GH-838] Spelling fix
    [DDC-2778] - [GH-839] Spelling fix
    [DDC-2801] - [GH-851] Documentation about how to use INSTANCE OF in inheritance
    [DDC-2819] - [GH-860] Mention SQL Anywhere in basic mapping documentation
    [DDC-2821] - [GH-862] Added a note about changing the fetch mode for to-many relations
    [DDC-2834] - [GH-868] Added documentation section for Memcached
    [DDC-2846] - [GH-870] Documenting interface methods (based on entity manager)
    [DDC-2848] - [GH-872] Doctrine 2.4 now supports SQLite ALTER TABLE
    [DDC-2873] - [GH-888] Add an example to doc of YAML mapping
    [DDC-2887] - [GH-898] Added note to STI
    [DDC-2925] - [GH-913] Added exception class names
    [DDC-2928] - [GH-915] Improved DQL's "new" operator documentation
    [DDC-2963] - [GH-940] Fixed typo & horizontal scrolling
    [DDC-2979] - [GH-953] Update doc with latest news about extra lazy assoc
    [DDC-2985] - [GH-955] iteration risk note
    [DDC-3019] - [GH-975] Added info about automatic discriminator map
    [DDC-3048] - [GH-987] Fixes typo in dql-doctrine-query-language.rst
    [DDC-3053] - [GH-990] Typo in documentation
    [DDC-3057] - [GH-992] Fixed typos
    [DDC-3059] - [GH-994] Update EntityGenerator comment
    [DDC-3073] - @Column options
    [DDC-3077] - [GH-1007] Minor dockblock change
    [DDC-3086] - [GH-1011] Single quotes can't nest
    [DDC-3097] - [GH-1015] Add ExpressionBuilder::contains() to docs
    [DDC-3111] - [GH-1025] Removed duplicate entry in documentation TOC.
    [DDC-3127] - [GH-1031] Documentation for #991
    [DDC-3131] - [GH-1034] Update caching.rst
    [DDC-3139] - [GH-1038] Add documentation for the `HIDDEN` keyword in DQL
    [DDC-3140] - [GH-1039] Add yml example to single table inheritance
    [DDC-3144] - [GH-1042] Fix second level cache doc
    [DDC-3145] - [GH-1044] Use of ->andWhere() whithout any ->where() before is valid
    [DDC-3166] - [GH-1058] Drop Unicode character
    [DDC-3168] - [GH-1059] fix spacing for yaml example
    [DDC-3185] - [GH-1068] Fix typo in documentation
    [DDC-3216] - [GH-1083] [DDC-3073] Add documentation about how to map column options
    [DDC-3217] - [GH-1084] Update advanced-field-value-conversion-using-custom-mapping-types.rst
    [DDC-3253] - [GH-1110] Changed table name to be more appropriate.
    [DDC-3261] - Bad link in 34.3 Advanced Configuration - Connection Options
    [DDC-3262] - [GH-1115] Fix wrong variable name
    [DDC-3266] - [GH-1116] [DDC-3265] Fix DocBlock
    [DDC-3292] - [GH-1127] Document embeddables column prefixing
    [DDC-3324] - [GH-1147] Extended the docs for mapping attributes precision and scale
    [DDC-3326] - [GH-1148] [DWEB-118] Fixed small typo in documentation about extra lazy associations
    [DDC-3347] - [GH-1157] Fixing calls of schema-update tools
    [DDC-3348] - [GH-1158] Update QueryBuilder reference documentation.
    [DDC-3351] - [GH-1161] Fixing error with from() parameters in example
    [DDC-3353] - [GH-1163] Update xml-mapping.rst
    [DDC-3388] - [GH-1183] Update tools.rst
    [DDC-3389] - [GH-1184] Postgres SERIAL is not a post-insert identifier generation strategy
    [DDC-3408] - [GH-1190] Document that AUTOGENERATE_ constants are allowed
    [DDC-3411] - [GH-1192] Fixed a very minor typo
    [DDC-3417] - [GH-1195] Correction Events.rs - Entity Listeners Resolver
    [DDC-3420] - [GH-1198] Tables for buttons.
    [DDC-3421] - [GH-1199] minor typo
    [DDC-3456] - [GH-1226] Update Travis badges to use the SVG version
    [DDC-3471] - [GH-1236] Minor docs fix: missing word 'do'
    [DDC-3484] - [GH-1244] Change $this return type to static in AbstractQuery
    [DDC-3499] - [GH-1253] Fix dead link

Improvement

    [DDC-54] - Trigger postLoad events and callbacks after associations have been initialized
    [DDC-1283] - Possible issue with PersistentCollection#getDelete/InsertDiff()
    [DDC-1590] - Fix Inheritance in Code-Generation
    [DDC-1787] - Fix for JoinedSubclassPersister, multiple inserts with versioning throws an optimistic locking exception
    [DDC-1858] - LIKE and IS NULL operators not supported in HAVING clause
    [DDC-2052] - Custom tree walkers are not allowed to add new components to the query
    [DDC-2061] - Matching Criteria on a PersistentCollection only works on OneToMany associations
    [DDC-2128] - [GH-507] Now MetaDataFilter takess also regexp. For example whern you want to
    [DDC-2183] - Second Level Cache improvements
    [DDC-2210] - PHP warning in ProxyFactory when renaming proxy file
    [DDC-2217] - Return a lazy collection from PersistentCollection::match($criteria)
    [DDC-2319] - [GH-590] DQL Query: process ArrayCollection values to ease development
    [DDC-2534] - [GH-711] Coveralls code coverage
    [DDC-2538] - [GH-713] Quick grammar fix
    [DDC-2544] - [GH-717] Allow query parameters starting with an underscore
    [DDC-2546] - [GH-719] Access properties via static:: instead of self::.
    [DDC-2615] - LIKE operator not supported in HAVING clause
    [DDC-2636] - Handle SQLite with dot notation in @Table and @JoinTable
    [DDC-2639] - [GH-771] Added indexBy option to createQueryBuilder
    [DDC-2770] - [GH-833] Generate-Entities-Console-Command: Adding an 'avoid backup' flag
    [DDC-2789] - [GH-844] Teach orm:validate-schema to --skip-mapping and --skip-sync
    [DDC-2794] - the Paginator does not support arbitrary join
    [DDC-2814] - [GH-858] lifts an unnecessary restriction on ResultSetMappingBuilder
    [DDC-2824] - [GH-863] The new configuration option: defaultQueryHints
    [DDC-2861] - [GH-881] Fix persistence exception on a table with a schema on a platform without schema support
    [DDC-2865] - [GH-882] Efficient counting on Criteria
    [DDC-2868] - [GH-885] Add support for ManyToMany Criteria
    [DDC-2926] - [GH-914] added license badge
    [DDC-2970] - [GH-946] Cleaned up unused imports
    [DDC-2981] - Multi get for second level cache (Doctrine Cache related)
    [DDC-2982] - [GH-954] Multi Get support for Second Level Cache
    [DDC-2984] - Support Custom DBAL types to be used as identifiers
    [DDC-2991] - [GH-957] makes doctrine less dependent upon the symfony yaml component
    [DDC-2999] - [GH-962] Stop executeDeletions when there is nothing to to delete anymore
    [DDC-3000] - [GH-963] SQLFilter -- allows to check if a parameter was set
    [DDC-3004] - [GH-966] Simplify build matrix
    [DDC-3005] - Events::postLoad fires without filled associations
    [DDC-3014] - [GH-973] Added index flags support in annotation, xml & yaml mapping drivers.
    [DDC-3032] - [GH-980] Added options attribute export to Annotation, Xml & Yaml exporters.
    [DDC-3039] - [GH-983] Added MEMBER OF and INSTANCE OF to ExpressionBuilder
    [DDC-3068] - EntityManager::find does not accept an array of object as a primary key
    [DDC-3070] - [GH-1001] [DDC-3005] Defer invoking of postLoad event to the end of hydration cycle.
    [DDC-3076] - [GH-1006] Handling invalid discriminator values
    [DDC-3114] - [GH-1026] Remove some redundant clauses
    [DDC-3133] - [GH-1036] Move space addition to implementation.
    [DDC-3138] - [GH-1037] I can't look at those semicolons, sorry ;-)
    [DDC-3150] - [GH-1047] Minor grammatical corrections
    [DDC-3178] - [GH-1064] remove on-update from join-column
    [DDC-3249] - [GH-1105] Add support for nesting embeddables
    [DDC-3257] - [GH-1112] DefaultRepositoryFactory: single repository for aliased entities
    [DDC-3274] - Improve schema validator error message
    [DDC-3275] - [GH-1121] [DDC-3274] Improve schema validator error message for invalid bi-directional relations
    [DDC-3276] - [GH-1122] Support arithmetic expressions in `COUNT()`
    [DDC-3300] - [GH-1130] [WIP] Added resolve entities support in discrim. map
    [DDC-3304] - [EntityGenerator] Embeddables properties and methods are broken
    [DDC-3305] - [GH-1133] [Embeddables] Improved exception message
    [DDC-3307] - [GH-1135] [DDC-3304] Add support for embeddables in entity generator
    [DDC-3418] - Indexes not inherited from mapped superclass
    [DDC-3457] - [GH-1227] Ensure query cache is not ArrayCache in production
    [DDC-3477] - [GH-1238] Avoid prefixing columns when `false` is assigned to `column-prefix`
    [DDC-3479] - [GH-1240] Include IDs in the exception message to ease debugging
    [DDC-3483] - [GH-1243] Fixed phpunit tests autoload requirements and moved to composer autoload-dev
    [DDC-3486] - [GH-1245] Implemented support for one to many extra lazy with joined inheritance.
    [DDC-3487] - [GH-1246] [WIP] Moved delete() and update() to proper locations.
    [DDC-3490] - [GH-1248] improved error handling for invalid association values #2
    [DDC-3492] - [GH-1249] Support for extra lazy get for both owning and inverse side on many to many associations.
    [DDC-3495] - [GH-1251] travis: optimize to run coverage only once
    [DDC-3496] - [GH-1252] Include className in calls to NamingStrategy joinColumnName method
    [DDC-3501] - [GH-1255] Cleanup: PHP 5.3 support end
    [DDC-3503] - [GH-1257] Resolve target entity also in discriminator map (allows interfaces and custom names in discriminator map)
    [DDC-3504] - [GH-1258] Classify persisters into more granular namespaces.
    [DDC-3514] - LimitSubqueryOutputWalker should not duplicate orderBy clauses
    [DDC-3515] - [GH-1263] #1223 DDC-3453 - make `EntityManager` constructor `public`

Sub-task

    [DDC-2850] - Allow cascaded clearing of Entities associated to the indicated Entity


2.4.7 - 16 Dec 2014

    925: DDC-2310 DDC-2675 - Fix SQL generation on table lock hint capable platforms DDC-2310 DDC-2675
    1191: DDC-3409 DDC-2846 - Documenting interface methods (based on entity manager) DDC-3409 DDC-2846
    1188: DDC-3404 - Fixed Paginator parameter counting exception DDC-3404
    1210: DDC-3336 - Undefined property: Doctrine\ORM\Query\AST\SimpleArithmeticExpression::$field DDC-3336
    1211: DDC-3434 - Paginator ignores HIDDEN fields in ORDER BY query DDC-3434
    1202: DDC-3425 - Checks key exists rather than isset - allow null values in column options DDC-3425


v2.4.6 - 6 Oct 2014

    1154: PHP 5.6 internal classes/Serializable serialization fix DDC-3120 DDC-3339


v2.4.5 - 22 Sep 2014

    1142: func_get_args() call order fix for HHVM bug DDC-3317


v2.4.4 - 10 Jul 2014

    #1074 DDC-2996 DDC-3160 DDC-3208 Regression in change set state after UnitOfWork::recomputeSingleEntityChangeSet()

v2.4.3 - 10 Jun 2014

v2.4.2 - 8 Feb 2014

v2.4.1 - 12 Nov 2013

v2.4.0 - 7 Sep 2013

[DDC-1844] - [GH-360] [DDC-1840] Implemented parameters as a collection.
[DDC-1884] - leftJoin via composite key part not hydrated if joining table solely consists of identifiers
[DDC-1995] - "Query Exception: Invalid parameter number: number of bound variables does not match number of tokens" when using an "Instance Of" expression
[DDC-1998] - Problem when deleting with EntityManager->remove($entity)
[DDC-2000] - [GH-431] [ORM] Fix double semicolon
[DDC-2016] - DQL Parser fails in select clause
[DDC-2019] - addOrderBy function incomplete
[DDC-2020] - [GH-440] The schema tool now doesn't add a foreign constraint when subclassess of...
[DDC-2044] - [GH-455] Fixed unique-constraint name in XML Exporter
[DDC-2047] - [GH-456] Optimize autoload prefix in composer.json
[DDC-2049] - [GH-458] Use cascade=all if all cascade options set
[DDC-2051] - after filtering an association by using ->matching(Criteria) original association changes
[DDC-2054] - [GH-461] [SchemaValidator] Fix typo
[DDC-2062] - [GH-466] Use protected so EntityGenerator can be extended
[DDC-2083] - [GH-482] user can set its own commands in the cli-config.php file
[DDC-2090] - MultiTableUpdateExecutor works incorrect with query cache enabled
[DDC-2091] - [GH-486] Fix DDC-2084
[DDC-2106] - Notice trying to match a Criteria referencing a managed entity not yet persisted
[DDC-2132] - [GH-509] SchemaTool ignoring 'fixed' option
[DDC-2136] - convert-mapping can't create YML from Annotation when Id column is a OneToOne relationship
[DDC-2137] - [GH-510] CS on QueryBuilder
[DDC-2138] - Foreign Keys in STI are wrong when same field is reused in different classes.
[DDC-2142] - [GH-513] Enumeration support
[DDC-2151] - [GH-515] Fixes sandbox cli: The helper "em" is not defined.
[DDC-2153] - [GH-517] Fix for DDC-1765
[DDC-2169] - [GH-524] EntityManagerDecorator base class as an extension point for EntityManager
[DDC-2172] - GENERATOR_TYPE_UUID missing in EntityGenerator.php
[DDC-2173] - [GH-525] Ensure onFlush and postFlush events are always called Edit
[DDC-2174] - [GH-526] [DDC-2172] Fix EntityGenerator get literal type
[DDC-2181] - [GH-528] Documentation fixes
[DDC-2188] - DQL arithmetic priority is not considered in expression 'a/(b*c)'
[DDC-2201] - [GH-537] fixed problems with joined inheritance and composite keys
[DDC-2205] - Negative Values in Case Then expressions
[DDC-2208] - CASE WHEN ... WHEN doesn't work
[DDC-2209] - [GH-540] [DDC-2208] Fix DDC-2208
[DDC-2214] - extra single quotation in sql when using EntityRepository::findBy
[DDC-2234] - WHERE <> IS NULL ... doesn't work
[DDC-2235] - Single table inheritance discriminator in WHERE when using arbitrary join syntax
[DDC-2247] - [GH-551] [DDC-2234] FUNCTION() IS NULL comparison
[DDC-2252] - Trying to delete ManyToMany relatrionship with composite keys.
[DDC-2256] - [GH-554] Fixed ObjectHydrator when namespace alias is given.
[DDC-2268] - Lexer error using string functions inside CASE WHEN
[DDC-2272] - [GH-565] Removed an unused local variable.
[DDC-2273] - [GH-566] Added missing return statement to AbstractCommand.
[DDC-2274] - [GH-567] Removed outdated methods in DatabasePlatformMock
[DDC-2276] - [GH-569] Hotfix/pre flush event args params
[DDC-2289] - [GH-575] Added YAML configuration example for "Simple Derived Identity" in Docs
[DDC-2291] - [GH-576] Update docs/en/reference/batch-processing.rst
[DDC-2294] - [GH-579] Unit tests: cleanup of outdated / unused / commented out code
[DDC-2304] - [GH-583] accept more than 2 parameters in CONCAT function
[DDC-2306] - Lazy loading associated entity's property causes identity loss when another association is set to fetch="EAGER"
[DDC-2311] - ManyToManyPersister fails to delete when entity uses FK ID
[DDC-2312] - [GH-586] Fix EntityManager doc
[DDC-2326] - [GH-595] Fixed broken code block in documentation
[DDC-2327] - [GH-596] Missing link to a cookbook in the docs
[DDC-2330] - [GH-599] Removed unnecessary "<?php" from the docs
[DDC-2334] - [GH-602] Added $isIdentifierColumn documentation
[DDC-2345] - convertObjectParameterToScalarValue() raises a notice
[DDC-2355] - [GH-618] [DDC-2188] Fix arithmetic priority
[DDC-2356] - [GH-619] [DDC-2090] Fix MultiTableUpdateExecutor with query cache
[DDC-2360] - [GH-622] Import EntityManager from proper namespace
[DDC-2366] - [GH-627] update document on Doctrine cache provider
[DDC-2369] - [GH-630] Hotfix for DDC-2359
[DDC-2385] - [GH-640] [Paginator]Add hidden field ordering for postgresql
[DDC-2392] - [GH-644] Fixed typos
[DDC-2396] - [GH-646] Oracle Pagination bug when ordering is present
[DDC-2407] - AbstractExporter _getIdGeneratorTypeString does not know about the UUID generator
[DDC-2409] - Merge operation tries to add new detached entities to indentity map and load them as proxies
[DDC-2417] - [GH-653] [DDC-2415] Fix CustomIdGenerator inheritance
[DDC-2419] - [GH-655] [DDC-2409] Fix merge association UnitOfWork::STATE_NEW
[DDC-2420] - [GH-656] [DDC-2235] Fix for using a LEFT JOIN onto an entity with single table inheritance
[DDC-2429] - Association-Override Problem in XSD Mapping?
[DDC-2430] - Incorrect results when using ->matching on PersistentCollection
[DDC-2432] - Entity can be initialized even if not found
[DDC-2435] - Column name with number and reserved character creates invalid query
[DDC-2438] - [GH-661] Update annotations-reference.rst
[DDC-2439] - [GH-662] Fixed a code block.
[DDC-2441] - Incorrect SQL Query being generated
[DDC-2442] - [GH-663] Adding failing test to demonstrate DDC-2432
[DDC-2446] - [GH-666] [DDC-2429] Fix xsd definition
[DDC-2451] - Entity listeners class don't work when metadatas are stored in cache
[DDC-2456] - [GH-669] Fixed generating column names for self referencing entity.
[DDC-2457] - [GH-670] [DDC-2451] Fix entity listeners serialization
[DDC-2458] - [GH-671] [DDC-2435] Fix column name with numbers and non alphanumeric characters.
[DDC-2460] - [GH-672] Simplification example
[DDC-2461] - [GH-673] Namespace based command names
[DDC-2470] - Sql Server error in createQuery using ORDER BY and setMaxResults
[DDC-2475] - ORDER BY on existing column is added, not replaced
[DDC-2478] - PersisterException when matching Criteria expression isNull to ArrayCollection
[DDC-2488] - [GH-686] [DDC-2475] Replace OrderBy mapping when OrderByClause is given
[DDC-2493] - [GH-689] [WIP][DDC-1995 ] Support metadata class as parameter for instance of expression
[DDC-2505] - [GH-697] Fix phpDoc syntax in ClassMetadataInfo.php
[DDC-2506] - WITH Conditionals on Class Table Inheritance LEFT JOINs are inserted incorrectly
[DDC-2517] - [GH-703] Clear visitedCollections
[DDC-2521] - [GH-706] [DDC-1398] Extra-lazy get for indexed associations
[DDC-2533] - [GH-710] Fix extra lazy get
[DDC-2539] - ResultVariable cannot be used in Like expressions
[DDC-2542] - [GH-716] Appending the Paginator tree walker hint
[DDC-2548] - [GH-720] Allow to have non-distinct queries
[DDC-2564] - PersistentCollection - coll is not initialized for Collection methods
[DDC-2577] - [GH-737] Skip not mapped public properties in SchemaValidator
[DDC-2578] - [GH-738] Modified Hydrators to be per-query instances instead of a singleton-like approach
[DDC-2579] - BasicEntityPersister - delete bug
[DDC-2582] - [GH-741] Fixed DDC-1884.
[DDC-2587] - [GH-744] Corrected PHP type for "decimal" mapping type
[DDC-2607] - [GH-753] JoinedSubclassPersister doesn't properly bind on some versions of php
[DDC-2610] - [GH-755] corrected English grammar in docblocks
[DDC-2612] - [GH-757] Update resolve-target-entity-listener.rst
[DDC-2614] - [GH-758] Fixed DDC-2235.
[DDC-2623] - [GH-763] Entity generator - trait in parent class
[DDC-2638] - [GH-770] Fix for entity generator discriminator column
[DDC-2640] - [GH-772] DO NOT OVERRIDE CUSTOM TREE WALKERS IN getIterator()
[DDC-1872] - Evaluate @AssocationOverride/@AttributeOverride in context of Traits
[DDC-2265] - [GH-561] fix typo in the documentation
[DDC-2266] - [GH-562] Fix error in QueryBuilder example
[DDC-2358] - [GH-621] [doc] adding some more doc and examples for lifecycle event listeners and subscribers
[DDC-2583] - [GH-742] Cleaned up events.rst
[DDC-2609] - [GH-754] Fixed syntax highlighting in working-with-associations.rst
[DDC-2650] - [GH-775] Update create bug script
[DDC-717] - Do not use files when using proxy autogeneration
[DDC-1245] - Check if Entity implements EventSubscriber to allow access to EM
[DDC-1376] - Foreign key not available to order when using findBy()
[DDC-1398] - loading one item at a time when indexBy and EXTRA_LAZY fetch mode is used on a collection
[DDC-1956] - [GH-413] code refactorings on persister
[DDC-1981] - ProxyFactory does not throw exceptions that are verbose enough (hard to debug)
[DDC-2186] - PreFlushEventArgs not passed by ClassMetadataInfo::invokeLifecycleCallbacks()
[DDC-2187] - [GH-531] use base events
[DDC-2215] - [GH-543] Make doctrine a Light-weight distribution package in Composer
[DDC-2313] - Deep clone for DBAL QueryBuilder
[DDC-2320] - [GH-591] Remove dead code
[DDC-2333] - [GH-601] Add 'contains' comparison
[DDC-2359] - ClassMetadataFactory::wakeupReflection() is called twice
[DDC-2384] - [GH-639] Added abillity to use metacolumn as indexBy
[DDC-1574] - Support operator 'new' in DQL
[DDC-1955] - Support for @EntityListeners
[DDC-1979] - [GH-422] DDC-1574 - "new" operator
[DDC-1980] - [GH-423] DDC-1955 - @EntityListeners
[DDC-2055] - Helper to generate SQL SELECT clause for Native Query
[DDC-2056] - [GH-462] [DDC-2055] Generate SELECT clause from ResultSetMappingBuilder
[DDC-2202] - [GH-538] IDENTITY() Support composite primary key
