Releases: doctrine/orm
2.13.0
Release Notes for 2.13.0
Feature release (minor)
2.13.0
- Total issues resolved: 0
- Total pull requests resolved: 37
- Total contributors: 10
Improvement
- 9969: Address DBAL 3.4 deprecations thanks to @derrabus
- 9915: Make EntityManager
@final
and its constructor public thanks to @nicolas-grekas - 9903: schema tool: remove useless text from --dump-sql output thanks to @glaszig
- 9839: Use proper API for introspection of tables thanks to @morozov
- 9780: Kill call_user_func(_array) thanks to @derrabus
- 9737: Improve compatibility with DBAL 4 for MySQL, MariaDB and PostgreSQL thanks to @morozov
- 9730: Forward compatibility with DBAL 4 thanks to @morozov
- 6728: Validate XML mapping against XSD file thanks to @greg0ire
Static Analysis
- 9965: Improve phpdoc for ClassMetadataInfo thanks to @VincentLanglet
- 9826: Improve phpdoc for Configuration thanks to @greg0ire
- 9794: Add type for AssociationMapping thanks to @VincentLanglet
- 9756: Document types as they are passed thanks to @greg0ire
- 9751: Update Psalm baseline thanks to @derrabus
Deprecation
- 9945: Deprecate QueryBuilder APIs exposing its internal state thanks to @derrabus
- 9906: Deprecate
LifecycleEventArgs
thanks to @franmomu - 9876: Change parent classes in some events thanks to @franmomu
- 9833: Deprecate reliance on sequence-emulated identity columns thanks to @greg0ire
- 9809: Deprecate passing null to Query::setFirstResult() thanks to @greg0ire
- 9791: Deprecate calling setters without arguments thanks to @derrabus
- 9786: Prepare split of output walkers and tree walkers thanks to @derrabus
- 9784: Deprecate passing null to Query::setDQL() thanks to @greg0ire
- 9765: Deprecate omitting the alias in QueryBuilder::update() and delete() thanks to @Hanmac
- 9747: Deprecate omitting second argument to joinColumnName() thanks to @greg0ire
- 9704: Reference ClassMetadataInfo less and less thanks to @greg0ire
Test Suite
- 9938: Stop passing event manager to constructor thanks to @greg0ire
- 9895: Avoid SQL assertions thanks to @greg0ire
- 9808: Remove calls to deprecated
MockBuilder::setMethods()
thanks to @derrabus - 9806: Rename Abstract*Test to *TestCase thanks to @derrabus
- 9796: Add missing import thanks to @derrabus
- 9790: MockTreeWalker should be an SqlWalker thanks to @derrabus
- 9789: Move duplicate fixture into dedicated file thanks to @derrabus
New Feature
- 9936: Support native enum hydration when using
NEW
operator thanks to @romm - 9655: Allow setting column options like
charset
andcollation
onJoinTable
,JoinColumn
andInverseJoinColumn
thanks to @ruudk
Improvement,Static Analysis
-
9932: Add helper function
TreeWalkerAdapter::getMetadataForDqlAlias()
thanks to @derrabus -
9837: Address deprecation of getDatabasePlatform() thanks to @greg0ire
-
9801: Widen types thanks to @greg0ire
Documentation
2.12.4
Release Notes for 2.12.4
2.12.x bugfix release (patch)
2.12.4
- Total issues resolved: 0
- Total pull requests resolved: 18
- Total contributors: 7
Test Suite
- 9966: fix: class normalisation test thanks to @Tofandel
- 9930: Simplify
LanguageRecognitionTest
thanks to @derrabus - 9914: Avoid supportsCreateDropDatabase() thanks to @greg0ire
- 9907: Add tests for SQL output feature thanks to @greg0ire
- 9892: Address array object type deprecation thanks to @greg0ire
- 9874: Migrate more usages of SchemaTool::createSchema() thanks to @greg0ire
- 9823: Backport fixes from upstream branch thanks to @greg0ire
Static Analysis
- 9964: Psalm 4.26.0 & build failures with DBAL 3.4.0 thanks to @derrabus
- 9941: Psalm 4.25.0, PHPStan 1.8.2 thanks to @derrabus
- 9922: Widen types for DiscriminatorMap thanks to @derrabus
- 9887: PHPStan 1.8.0 thanks to @derrabus
- 9865: Psalm 4.24.0, PHPStan 1.7.15 thanks to @derrabus
- 9858: PHP CodeSniffer 3.7.1, PHPStan 1.7.14 thanks to @derrabus
Documentation
- 9943: Update branch info in README and .doctrine-project.json thanks to @derrabus
- 9880: Fix typo in AbstractQuery thanks to @CarlSchwan
- 9871: preUpdate: Add restriction that changed field needs to be in computed… thanks to @ThomasLandauer
Bug
2.12.3
Release Notes for 2.12.3
2.12.x bugfix release (patch)
2.12.3
- Total issues resolved: 0
- Total pull requests resolved: 16
- Total contributors: 3
Static Analysis
- 9844: PHPStan 1.7.13 thanks to @derrabus
- 9843: Flip conditional extension of legacy AnnotationDriver class thanks to @derrabus
- 9842: PHP CodeSniffer 3.7 thanks to @derrabus
- 9818: Document missing possible types thanks to @greg0ire
- 9812: PHPStan 1.7.9 thanks to @derrabus
- 9802: Fix wrong types thanks to @greg0ire
- 9785: PHPStan 1.7.0 thanks to @derrabus
- 9779: Document callable as possible thanks to @greg0ire
- 9746: Better phpdoc tests thanks to @greg0ire
Test Suite
- 9841: Add missing property declaration thanks to @derrabus
- 9805: Remove empty test file thanks to @derrabus
CI,Test Suite
- 9840: Run tests on PHP 8.2 thanks to @derrabus
Documentation
- 9769: Add use statement thanks to @greg0ire
- 9749: Omit version number in README thanks to @greg0ire
CI
Bug
2.12.2
Release Notes for 2.12.2
2.12.x bugfix release (patch)
2.12.2
- Total issues resolved: 0
- Total pull requests resolved: 17
- Total contributors: 8
Improvement
Static Analysis
- 9718: Psalm 4.23, PHPStan 1.6.3 thanks to @derrabus
- 9708: Fix psalm annotation for Entity attribute thanks to @michnovka
- 9703: Update ClassMetadataInfo::table definition thanks to @pbourdet
- 9688: PHPStan 1.6.1 thanks to @derrabus
- 9682: PHPStan 1.6.0 thanks to @derrabus
- 9677: Document ORM drivers only really load ORM metadata thanks to @greg0ire
- 9676: Fix HydrationException::invalidDiscriminatorValue parameter type thanks to @franmomu
- 9675: Fix type on ClassMetadata discriminatorMap thanks to @franmomu
Test Suite
- 9707: Remove some ConnectionMock methods thanks to @morozov
- 9706: Remove unused OrmTestCase::getTestEntityManager() parameters thanks to @morozov
- 9692: Use ClassMetadata over ClassMetadataInfo in tests thanks to @greg0ire
- 9683: Remove dynamic property declarations thanks to @derrabus
Documentation
- 9699: Add missing use statement thanks to @ThomasLandauer
- 9698: use valid link syntax thanks to @ThomasLandauer
- 9691: Reference ClassMetadaInfo less thanks to @greg0ire
Bug
2.12.1
Release Notes for 2.12.1
2.12.x bugfix release (patch)
2.12.1
- Total issues resolved: 0
- Total pull requests resolved: 1
- Total contributors: 1
Bug
2.12.0
Release Notes for 2.12.0
Feature release (minor)
2.12.0
- Total issues resolved: 1
- Total pull requests resolved: 52
- Total contributors: 8
Deprecation,Documentation
- 9661: Deprecate the doctrine binary thanks to @derrabus
Test Suite
- 9658: Fix IdentifierFlattenerEnumIdTest thanks to @michnovka
- 9649: Fix test file/class names thanks to @michnovka
- 9612: Skip tests requiring ObjectManagerAware thanks to @derrabus
- 9489: Avoid calling
merge()
thanks to @derrabus - 9479: Remove useless catches thanks to @derrabus
- 9472: Skip tests related to PersistentObject if that class is missing thanks to @derrabus
- 9451: Streamline cache creation in tests thanks to @derrabus
- 9423: Introduce
assertQueryCount()
thanks to @derrabus - 9418: Switch tests to the middleware logging system thanks to @derrabus
- 9404: Rework some tests that use hardcoded DBAL mocks thanks to @morozov
Bug
-
9657: Fix enum hydration when fetching partial results thanks to @michnovka
-
9580: Check if association already contains object thanks to @klammbueddel
-
9459: Check requirements for metadata drivers thanks to @derrabus
-
9656: Indicate support for
doctrine/persistence
3 thanks to @derrabus
Deprecation,Improvement
- 9646: Improve exception message thanks to @greg0ire
- 9511: Replace
TreeWalkerChainIterator
with a generator thanks to @derrabus - 9443: Introduce
DoctrineSetup
as a replacement forSetup
thanks to @derrabus
Deprecation
- 9641: Deprecate console helper thanks to @derrabus
- 9592: Deprecate or throw on namespace alias usage thanks to @greg0ire
- 9533: Deprecate custom
ObjectRepository
implementations thanks to @derrabus - 9532: Un-deprecate the current proxy mechanism thanks to @derrabus
- 9512: Document deprecation of
AbstractCollectionPersister
helpers thanks to @derrabus - 9475: Deprecate methods removed in 3.0 thanks to @derrabus
- 9397: Deprecate MultiGetRegion thanks to @derrabus
Static Analysis
- 9633: Leverage generic persistence event classes thanks to @derrabus
- 9621: Fix types on ResultSetMapping thanks to @derrabus
- 9603: Implement int-mask-of where appropriate thanks to @greg0ire
- 9566: Fix types on
walkLiteral()
andwalkLikeExpression()
thanks to @derrabus - 9565: Fix type on
SqlWalker::walkPathExpression()
thanks to @derrabus - 9553: Document tree walker class strings thanks to @derrabus
- 9552: Use literal types for
JOIN_TYPE_*
constants thanks to @derrabus - 9549: Leverage Lexer's Token type thanks to @derrabus
- 9541: Improve templating thanks to @greg0ire
- 9527: Document QueryComponent array shape thanks to @derrabus
- 9525: Fix more types on EntityRepository and FilterCollection thanks to @derrabus
- 9492: Fix types on QueryBuilder thanks to @derrabus
- 9474: Fix types on EntityRepository thanks to @derrabus
- 9401: Fix types on CacheLogger implementations thanks to @derrabus
New Feature
- 9629: Support Enum IDs and search by Enum fields thanks to @michnovka
- 9616: Support enums as default values thanks to @derrabus and @jgroc-de
- 9497: Add support for array of enums thanks to @dreadnip
- 9373: Support enum cases as parameters thanks to @derrabus
Improvement
- 9587: Implement colocated mapping driver thanks to @greg0ire
- 9578: Leverage
MemcachedAdapter::isSupported()
thanks to @derrabus - 9481: Rename
DoctrineSetup
toORMSetup
thanks to @derrabus - 9480: Modernize
strpos()
calls thanks to @derrabus - 9453: Support enums in findBy() calls thanks to @derrabus
- 9019: validate schema command: allow to debug missing schema updates list thanks to @COil
Deprecation,Static Analysis
- 9507: Fix types on caches thanks to @derrabus
Deprecation,Static Analysis,Test Suite
- 9466: Fix types on persisters thanks to @derrabus
Documentation
2.11.3
Release Notes for 2.11.3
2.11.x bugfix release (patch)
2.11.3
- Total issues resolved: 0
- Total pull requests resolved: 10
- Total contributors: 6
Bug
- 9663: ScalarColumnHydrator: prevent early-bail on falsy values thanks to @MrMitch
- 9623: explicitly use the non-deprecated ORMException thanks to @BenoitDuffez
- 9589: Fix type errors with XML export on PHP 8.1 thanks to @vrestihnat
Static Analysis
- 9648: Fix static analysis for Persistence 2.5 thanks to @derrabus
- 9607: PHPStan 1.5.0 thanks to @derrabus
- 9590: Ignore deprecation from Persistence thanks to @greg0ire
- 9577: Baseline Psalm errors caused by DBAL 3.3.3 thanks to @derrabus
Documentation
2.11.2
Release Notes for 2.11.2
2.11.x bugfix release (patch)
2.11.2
- Total issues resolved: 0
- Total pull requests resolved: 21
- Total contributors: 12
Bug
- 9574: Make sure MemcachedAdapter is supported before tring to use it thanks to @flack
- 9537: Make error message suggestion accurate thanks to @kiler129
- 9523: Bring
FilterCollection
to a "clean" state after hash computation thanks to @mpdude - 9457: PDO is not a required extension thanks to @derrabus
- 9452: Check requirements for metadata drivers thanks to @derrabus
Documentation
- 9569: Fixing
:doc:
link thanks to @ThomasLandauer - 9563: Remove reference to removed class thanks to @greg0ire
- 9555: Adding PHP attributes thanks to @ThomasLandauer
- 9513: Fix syntax typo in attributes reference in documentation thanks to @Einenlum
- 9487: Fix
#[DiscriminatorMap]
params thanks to @steveclifton - 9446: Remove trailing underscore thanks to @greg0ire
Static Analysis
- 9557: Parser: SimpleArithmeticExpression should return ArithmeticTerm thanks to @janbarasek
- 9546: Update baselines for Lexer 1.2.3 thanks to @derrabus
- 9504: Fix AbstractQuery::setParameter phpdoc thanks to @dmaicher
- 9493: Added "false" value to $columnPrefix type declaration. thanks to @DmytryHo
- 9491: PHPStan 1.4.6, Psalm 4.20.0 thanks to @derrabus
CI
- 9539: Drop minor version number thanks to @greg0ire
- 9470: Run Postgres 14 and MariaDB 10.6 in CI thanks to @derrabus
Test Suite
2.11.1
Release Notes for 2.11.1
2.11.x bugfix release (patch)
2.11.1
- Total issues resolved: 1
- Total pull requests resolved: 18
- Total contributors: 13
Test Suite
- 9442: Adapt test logic to PHP and SQLite II thanks to @greg0ire
- 9425: Ignore PHPUnit result cache everywhere thanks to @derrabus
- 9414: Move UnderscoreNamingStrategyTest to correct namespace thanks to @derrabus
CI
- 9440: Added php 8.1 to CI thanks to @sir-kain
Static Analysis
- 9438: Psalm 4.19.0, PHPStan 1.4.3 thanks to @derrabus
- 9415: Added class-string typehint on $targetEntity thanks to @hc-jworman
- 9398: Fix type on loadCacheEntry thanks to @derrabus
- 9393: Update baselines for DBAL 3.3 thanks to @derrabus
- 9385: PHPStan 1.4.0 thanks to @derrabus
Bug
- 9419: Fix support for PHP 8.1 enums in embedded classes thanks to @HypeMC
- 9410: Allow DiscriminatorColumn with length=0 thanks to @bcremer
- 9382: Expose enumType to DBAL to make native DB Enum possible thanks to @javer
- 9381: [GH-9380] Bugfix: Delegate ReflectionEnumProperty::getAttributes(). thanks to @beberlei and @ezkimo
- 9384: Allow using Enum from different namespace than Entity thanks to @javer
Documentation
- 9390: Introduce __unserialize behaviour in docs thanks to @SenseException
- 9386: Corrected ORM version and added missing dependency thanks to @mahakaal
- 9357: Add detach as of list cascade-all operations thanks to @andrew-demb
- 9311: Accessing private properties and methods from the same class is forbidden thanks to @olsavmic
2.11.0
Release Notes for 2.11.0
Feature release (minor)
2.11.0
- Total issues resolved: 2
- Total pull requests resolved: 35
- Total contributors: 11
Documentation
-
9328: Document return type of
getEntityState()
thanks to @derrabus -
9241: Support for nesting attributes with PHP 8.1 thanks to @beberlei
-
9174: AttributeOverride annotation is also an attribute but that is not reachable thanks to @brzuchal
-
9118: Generated/Virtual Columns: Insertable / Updateable thanks to @mehldau
Improvement
- 9356: Remove the
composer/package-versions-deprecated
package thanks to @derrabus - 9340: Use the readonly annotation thanks to @derrabus
- 9319: Document LockMode enums thanks to @derrabus
- 9316: Support readonly properties for read operations thanks to @derrabus
- 9312: Leverage generic ObjectManagerDecorator thanks to @derrabus
- 9275: Fix type errors in
AbstractQuery
andQueryBuilder
thanks to @derrabus - 9274: Fix type errors in AnnotationDriver thanks to @derrabus
- 9273: Fix docblocks on nullable EM properties thanks to @derrabus
- 9271: Fix return types of cache interfaces thanks to @derrabus
- 9203: Drop support for DBAL 3.1 thanks to @derrabus
- 9202: Add SchemaIgnoreClasses property thanks to @simPod
Bug
Deprecation
- 9327: Added runtime deprecation to
UnitOfWork::commit()
andclear()
thanks to @derrabus - 9309: [GH-9277] deprecate php driver thanks to @beberlei
- 9249: Deprecate
Setup::registerAutoloadDirectory()
thanks to @derrabus - 9211: Add deprecation hints to
orm:convert-mapping
command thanks to @derrabus - 9206: Add missing deprecations for YAML metadata mapping thanks to @derrabus
- 9074: Deprecate
ensureProductionSettings()
thanks to @derrabus - 9072: Deprecate
AbstractHydrator::hydrateRow()
thanks to @derrabus
New Feature
- 9326: Add support for custom types with requireSQLConversion and ResultSetMappingBuilder::generateSelectClause() thanks to @kimhemsoe
- 9304: Add support for PHP 8.1 enums. thanks to @beberlei
- 9149: Detect enums and use type string (PHP 8.1 only) thanks to @Nek-
- 9133: Adding a setup helper for attribute metadata config thanks to @judahnator
Deprecation,Improvement
- 9325: Use
EntityManagerInterface
in type declarations thanks to @derrabus - 9322: PSR-6 second level cache thanks to @derrabus
CI
- 9272: Regenerate Psalm baseline thanks to @derrabus
- 9267: Enable UnusedUse sniff again thanks to @derrabus