TYPO3 v15 dev-main snapshot ()

This commit is contained in:
2026-08-10 22:31:09 +02:00
commit af8cc155b5
6818 changed files with 642608 additions and 0 deletions
@@ -0,0 +1,55 @@
.. include:: /Includes.rst.txt
.. _feature-107871-1761597106:
=========================================================
Feature: #107871 - Autoconfigure backend avatar providers
=========================================================
See :issue:`107871`
Description
===========
Backend avatar providers must either use the PHP attribute
:php:`#[AsAvatarProvider]` or be manually tagged in the service container with
:yaml:`backend.avatar_provider`.
When autoconfiguration is enabled in :file:`Services.yaml` or
:file:`Services.php`, applying :php:`#[AsAvatarProvider]` will automatically add
the :yaml:`backend.avatar_provider` tag. Otherwise, the tag must be configured
manually.
Example
-------
.. code-block:: php
:caption: EXT:my_extension/Classes/Backend/Avatar/MyAvatarProvider.php
use TYPO3\CMS\Backend\Attribute\AsAvatarProvider;
use TYPO3\CMS\Backend\Backend\Avatar\AvatarProviderInterface;
#[AsAvatarProvider(
'my_provider',
before: ['provider-1'],
after: ['provider-2']
)]
final class MyAvatarProvider implements AvatarProviderInterface
{
// ...
}
Impact
======
Backend avatar providers are now automatically registered using the PHP
attribute :php:`#[AsAvatarProvider]`. This improves the developer experience and
reduces configuration overhead. The previous registration method via
:php:`$GLOBALS['TYPO3_CONF_VARS']['EXTCONF']['backend']['avatarProviders']` can
no longer be used.
To support multiple TYPO3 Core versions simultaneously, extensions may still
implement the legacy array-based registration alongside the new
autoconfiguration-based approach.
.. index:: Backend, PHP-API, ext:backend