.. include:: /Includes.rst.txt .. _breaking-93080: ====================================================== Breaking: #93080 - RelationHandler internals protected ====================================================== See :issue:`93080` Description =========== Various properties and methods of class :php:`TYPO3\CMS\Core\Database\RelationHandler` have been set to protected: * :php:`$firstTable` - internal * :php:`$secondTable` - internal * :php:`$MM_is_foreign` - internal * :php:`$MM_oppositeField` - internal * :php:`$MM_oppositeTable` - internal * :php:`$MM_oppositeFieldConf` - internal * :php:`$MM_isMultiTableRelationship` - internal * :php:`$currentTable` - internal * :php:`$MM_match_fields` - internal * :php:`$MM_hasUidField` - internal * :php:`$MM_insert_fields` - internal * :php:`$MM_table_where` - internal * :php:`getWorkspaceId()` - internal * :php:`setUpdateReferenceIndex()` - still public but deprecated, logs deprecation on use. * :php:`readList()` - use class state after calling start() * :php:`sortList()` - use class state after calling start() * :php:`readMM()` - use class state after calling start() * :php:`readForeignField()` - use class state after calling start() * :php:`updateRefIndex()` - internal * :php:`isOnSymmetricSide()` - internal Impact ====== Calling above properties or methods will raise a PHP fatal error. Affected Installations ====================== It is quite unlikely many extensions are affected by this API change. The extension scanner finds affected extensions as weak matches. Migration ========= Above properties and methods are considered internal, there shouldn't be any need to call them. Instances with extensions using those should be refactored to for instance call :php:`start()` instead of an additional call to :php:`readList()`. .. index:: PHP-API, FullyScanned, ext:core