v2.5.10 - Aug 18, 2017

This release fixes an issue related to a long standing issue with how
PHP handles loading of external XML entities (https://bugs.php.net/bug.php?id=62577).

Total issues resolved: 2

    3788: DDC-3020: simplexml_load_file(): I/O warning: failed to load external in XmlDriver thanks to @doctrinebot
    6633: XmlDriver: Avoid PHP bug #62577 by avoiding simplexml_load_file() thanks to @apapsch


v2.5.9 - Aug 16, 2017

This release fixes a couple regression introduced by
v2.5.7 and v2.5.8.

Specifically, AbstractHydrator#hydrateAll() was raising
E_NOTICE errors due to it not being registered with the
EventManager, yet trying to remove itself from the
registered listeners. #6623

In addition to that, having embeddable final classes
would cause errors being raised while trying to generate
proxies. The ORM will no longer attempt to generate proxies
for embeddables. #6625

Total issues resolved: 3

    6623: Ensure that AbstractHydrator#hydrateAll() detaches the hydrator from the event manager thanks to @echo511
    6625: Proxy generation for embedded/transient classes thanks to @bendavies
    6626: #6625 Skip proxy generation for embeddable classes thanks to @issei-m


v2.5.8 - Aug 13, 2017

This release solves a bug introduced while backporting
#6464 and #6475.
Specifically, a dangling undefined variable remained in the
code, causing some SqlWalker functionality to misbehave.
The undefined variable wasn't noticed due to it being placed
in an empty() expression.

Total issues resolved: 1

    6621: Fixed usage of undefined variable in empty() expression in SqlWalker thanks to @Powerhamster


v2.5.7 - Aug 11, 2017

This release fixes a number of bugs detected in the current stable
release of the ORM.

This patch introduces compatibility with Doctrine DBAL 2.6.x. #6580

The most critical issue being fixed is a bug
in Doctrine\ORM\PersistentCollection, causing duplicate data
to be persisted when a collection is both marked as initialized
and dirty, and more entries are added to it via
the Doctrine\Common\Collections\Collection#add()
API. #6613 #6614
#6616

The return value of Doctrine\ORM\PersistentCollection#removeElement()
was sometimes an object or null, causing some applications to crash when PHP is run within the context ofdeclare(strict_types=1);` #6550

Memory leak issues with the hydrator process were fixed: the
hydrator object was never being garbage collected due to it
being registered with a Doctrine\Common\EventManager instance
to listen for the Doctrine\ORM\Events::onClear event. #1515

The Doctrine\ORM\Tools\Pagination\CountOutputWalker was producing
invalid SQL for queries containing a GROUP BY clause. #6243

The SQL generated for a DQL query containing a JTI (Joined Table
Inheritance) selection and a WITH clause applied to a JOIN
condition was invalid on PostgreSQL. #6475

The Doctrine\ORM\Tools\Console\MetadataFilter was not detecting
all metadata matching the filter regular expression. #5715

The Doctrine\ORM\Tools\SchemaTool was raising notices due to
invalid lookup for a discriminator column length, which may
not be defined in all mappings. #5798

Total issues resolved: 18

    1515: DDC-3146 Remove onClear event listener from abstract hydrator in cleanup function, otherwise causing hydrator GC to not kick in thanks to @emiel-silverstreet
    1541: Type annotation correction in ResultSetMappingBuilder#addJoinedEntityFromClassMetadata() $relation (should be string) thanks to @aleeeftw
    3925: DDC-3146: Hydrator memory leak when using iterator thanks to @doctrinebot
    4772: DDC-3914: #1515 DDC-3146 Remove event listener from abstract hydrator in cleanup function thanks to @doctrinebot
    5715: Fix MetadataFilter regression after #507 (#2815) not testing filters after first one thanks to @guilliamxavier
    5745: PersistentCollection#removeElement() returns object or null instead of boolean thanks to @holtkamp
    5798: Fix undefined index for discriminator column length attribute in SchemaTool thanks to @sergeyfedotov
    6243: Fix CountOutputWalker for queries containing a GROUP BY clause, which was producing invalid SQL thanks to @enumag
    6362: Undefined Property error in ObjectHydrator when using JOIN WITH thanks to @SirWaddles
    6367: Correct hydration of resultsets coming from DQL queries where the root of the selection is aliased and also the root of an inheritance thanks to @SirWaddles
    6381: Corrected LoadClassMetadataEventArgs @method annotations to reflect actual returned types thanks to @ElisDN
    6464: Query builder yields invalid SQL with JOINED inheritance type on PostgreSQL thanks to @stesie
    6475: Fix invalid sql generated for CTI JOINs when INNER JOIN'ing with a WITH clause thanks to @stesie
    6550: Fix return value of PersistentCollection#removeElement() for extra-lazy collections: should be bool thanks to @alcaeus
    6580: Allow DBAL 2.6 and common 2.8 to be installed thanks to @Tobion
    6613: There is the fail "UNIQUE constraint failed" with a LAZY collection thanks to @Sysaninster
    6614: UNIQUE constraint failed errors when manipulating a LAZY collection and calling toArray() on it thanks to @Sysaninster
    6616: #6613 #6614 correct handling of new elements added to an initialized (yet dirty) collection thanks to @Ocramius


v2.5.6 - Dec 19, 2016

This release relaxes doctrine/common requirements
in order to allow installation of versions that support PHP 7.1 features in proxy class
generation. Please note that a similar requirement relaxation still needs to be applied to
doctrine/dbal in order to allow installation of
the latest doctrine/common versions. #6156

This version also backports some fixes around the eviction of the second level cache entries
of inverse side associations in one-to-many - many-to-one mappings. #6159

Further fixes were applied in order to have child classes in inheritance mapping share the
same timestamp region when the second level cache is enabled. #6028

Also, Doctrine\ORM\EntityManager#merge() now triggers Doctrine\ORM\Events::prePersist
listeners with the merged entity state whenever an internal Doctrine\ORM\UnitOfWork#persist()
call is implied. #6177.

Total issues resolved: 8

    5570: Fix PrePersist EventListener when using merge instead of persist
    6028: Make child entity share the timestamp region with parent class
    6110: Clear $this->collection even when empty, to reset keys
    6156: Allow doctrine/common 2.7
    6159: #5821 Backport #1551 - Fixed support for inverse side second level cache
    6174: Merging a new entity with PrePersist event make changes in callback not be considered
    6177: Fix #6174 #5570: merging new entities should also trigger prepersist lifecycle callbacks with merged entity data
    6178: Backport #6177 - fix #6174 #5570: merging new entities should also trigger prepersist lifecycle callbacks with the merged data


v2.5.5 - Sep 10, 2016

This release includes a big amount of bugfixes.

Specifically, following issues were fixed:

    Embeddable classes are now allowed in inheritance trees 4097
    Removed some object hash collisions caused by entity merging 1465
    Allowed usage of mathematical operators in DQL HAVING clauses 5598
    Fixed cloning of proxies with private properties at multiple inheritance levels 5755
    Entity insertions are correctly cleared when a specific entity is to be cleared 5849
    Corrected hydration of fetch-joins that use composite keys 5762
    Metadata exporters now only export the owning side metadata in a one-to-one relation 5858
    Corrected hydration of JTI entities when NULL is retrieved for a simple_array or json_array field 5989
    Correctly expire L2 cache query caches, based on entity region cache timestamp 6001

Total issues resolved: 18

    1465: spl_object_hash conflict on Merge
    4097: DDC-3303: @ORM\Embedded does not work with extending classes
    4277: DDC-3467: Embeddable in inheritance must currently be protected
    5598: HAVING clause with variable and *, / math operators
    5599: Fix #5598 issue with /, * in DQL not translating query components properly
    5689: Avoid conflicts due to spl_object_hash
    5755: Error on entity clone for MappedSuperclass fields
    5762: fetch join using composite key on join entity fails to hydrate correctly
    5768: Fixes #5755 - Parent class fields are not cloned
    5776: add functional test and bug fix for issue #5762
    5849: UnitOfWork#clear() doesn't clear entityInsertions when entityName is passed
    5850: Clear UnitOfWork#$entityInsertions for specific entityName
    5858: Exporters should only inspect joinColumns for owning side in bi-directional OneToOne
    5867: Allow the usage of embedded objects on parent classes
    5975: Fix hydration after fetch join on entity with composite primary key
    5989: SimpleObjectHydrator produces wrong values with inheritance table and simple array type
    6001: Make second level cache query cache rely on entity region timestamp
    6004: Fix hydration in a joined inheritance with simple array or json array


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
