---
title: "Breaking: #92513 - Method signature change of TYPO3\\CMS\\Extbase\\Mvc\\Controller\\ControllerInterface::processRequest"
manual: "TYPO3 Core Changelog"
version: "main"
permalink: "https://docs.typo3.org/permalink/changelog:breaking-92513"
source: "Changelog/11.0/Breaking-92513-MethodSignatureChangeOfTYPO3CMSExtbaseMvcControllerControllerInterfaceprocessRequest.rst"
typo3-version: "11.0"
typo3-major: 11
type: "breaking"
issue: 92513
forge: "https://forge.typo3.org/issues/92513"
tags: ["PHP-API", "NotScanned", "ext:extbase"]
rendered: "2026-09-17T21:17:42+00:00"
---

# Breaking: #92513 - Method signature change of TYPO3\\CMS\\Extbase\\Mvc\\Controller\\ControllerInterface::processRequest {#breaking-92513-method-signature-change-of-typo3-cms-extbase-mvc-controller-controllerinterface-processrequest}

See [forge#92513](https://forge.typo3.org/issues/92513)

## Description {#description}

The signature of method `TYPO3\CMS\Extbase\Mvc\Controller\ControllerInterface::processRequest`
changed in the regard that no longer `$request` and `$response` are passed into it.
Instead, only a `$request` argument is needed. Additionally, that method now requires to return a response.

## Impact {#impact}

This change affects all classes that either implement said interface directly (presumably none)
and those classes (controllers) that override method `processRequest()`
of class `\TYPO3\CMS\Extbase\Mvc\Controller\ActionController`. Those, that override said method
will experience the following fatal error:

`Declaration of ... must be compatible with TYPO3CMSExtbaseMvcControllerControllerInterface::processRequest(TYPO3CMSExtbaseMvcRequestInterface $request): TYPO3CMSExtbaseMvcResponseInterface`.

## Affected Installations {#affected-installations}

All installations that override method `processRequest()` of class `\TYPO3\CMS\Extbase\Mvc\Controller\ActionController`.

## Migration {#migration}

There are two steps to migrate:

-   Remove the now superfluous `$response` argument
-   Return a response object.

The latter is usually achieved by calling `return parent::processRequest($request)` instead of just `parent::processRequest($request)`.
