UpgradeController extends AbstractController

Upgrade controller

Internal

This class is a specific controller implementation and is not considered part of the Public TYPO3 API.

Table of Contents

Properties

$coreUpdateService  : CoreUpdateService
$coreVersionService  : CoreVersionService
$matchers  : array<string|int, mixed>
Matcher registry of extension scanner.
$packageManager  : PackageManager

Methods

__construct()  : mixed
cardsAction()  : ResponseInterface
Main "show the cards" view
coreUpdateActivateAction()  : ResponseInterface
Activate a new core
coreUpdateCheckPreConditionsAction()  : ResponseInterface
Check if core update is possible
coreUpdateDownloadAction()  : ResponseInterface
Download new core
coreUpdateGetDataAction()  : ResponseInterface
Core Update Get Data Action
coreUpdateIsUpdateAvailableAction()  : ResponseInterface
Check for new core
coreUpdateMoveAction()  : ResponseInterface
Move core to new location
coreUpdateUnpackAction()  : ResponseInterface
Unpack a downloaded core
coreUpdateVerifyChecksumAction()  : ResponseInterface
Verify downloaded core checksum
extensionCompatTesterLoadedExtensionListAction()  : ResponseInterface
Get list of loaded extensions
extensionCompatTesterLoadExtLocalconfAction()  : ResponseInterface
Load all ext_localconf files in order until given extension name
extensionCompatTesterLoadExtTablesAction()  : ResponseInterface
Load all ext_localconf files in order until given extension name
extensionCompatTesterUninstallExtensionAction()  : ResponseInterface
Unload one extension
extensionScannerFilesAction()  : ResponseInterface
Return a list of files of an extension
extensionScannerGetDataAction()  : ResponseInterface
Create Extension Scanner Data action
extensionScannerMarkFullyScannedRestFilesAction()  : ResponseInterface
Ajax controller, part of "extension scanner". Called at the end of "scan all" as last action. Gets a list of RST file hashes that matched, goes through all existing RST files, finds those marked as "FullyScanned" and marks those that did not had any matches as "you are not affected".
extensionScannerScanFileAction()  : ResponseInterface
Scan a single extension file for breaking / deprecated core code usages
tcaExtTablesCheckAction()  : ResponseInterface
Check if loading ext_tables.php files still changes TCA
tcaMigrationsCheckAction()  : ResponseInterface
Check TCA for needed migrations
upgradeDocsGetChangelogForVersionAction()  : ResponseInterface
Render list of .rst files
upgradeDocsGetContentAction()  : ResponseInterface
Render list of versions
upgradeDocsMarkReadAction()  : ResponseInterface
Mark a .rst file as read
upgradeDocsUnmarkReadAction()  : ResponseInterface
Mark a .rst file as not read
upgradeWizardsBlockingDatabaseAddsAction()  : ResponseInterface
Check if new tables and fields should be added before executing wizards
upgradeWizardsBlockingDatabaseCharsetFixAction()  : ResponseInterface
Fix a broken DB charset setting
upgradeWizardsBlockingDatabaseCharsetTestAction()  : ResponseInterface
Test if database charset is ok
upgradeWizardsBlockingDatabaseExecuteAction()  : ResponseInterface
Add new tables and fields
upgradeWizardsDoneUpgradesAction()  : ResponseInterface
Get list of upgrade wizards marked as done
upgradeWizardsExecuteAction()  : ResponseInterface
Execute one upgrade wizard
upgradeWizardsGetDataAction()  : ResponseInterface
Change install tool password
upgradeWizardsInputAction()  : ResponseInterface
Input stage of a specific upgrade wizard
upgradeWizardsListAction()  : ResponseInterface
List available upgrade wizards
upgradeWizardsMarkUndoneAction()  : ResponseInterface
Mark a wizard as "not done"
assertValidVersion()  : void
Asserts that the given version is valid
coreUpdateGetVersionToHandle()  : CoreRelease
Find out which version upgrade should be handled. This may be different depending on whether development or regular release.
coreUpdateInitialize()  : mixed
Initialize the core upgrade actions
extensionCompatTesterLoadExtLocalconfForExtension()  : mixed
Loads ext_localconf.php for a single extension. Method is a modified copy of the original bootstrap method.
extensionCompatTesterLoadExtTablesForExtension()  : mixed
Loads ext_tables.php for a single extension. Method is a modified copy of the original bootstrap method.
extensionScannerGetLineFromFile()  : string
Find a code line in a file
getDocumentationDirectories()  : array<string|int, string>
getDocumentationFiles()  : array<string|int, mixed>
Get a list of '.rst' files and their details for "Upgrade documentation" view.
initializeView()  : ViewInterface
Helper method to initialize a view instance.

Properties

$matchers

Matcher registry of extension scanner.

protected array<string|int, mixed> $matchers = [['class' => \TYPO3\CMS\Install\ExtensionScanner\Php\Matcher\ArrayDimensionMatcher::class, 'configurationFile' => 'EXT:install/Configuration/ExtensionScanner/Php/ArrayDimensionMatcher.php'], ['class' => \TYPO3\CMS\Install\ExtensionScanner\Php\Matcher\ArrayGlobalMatcher::class, 'configurationFile' => 'EXT:install/Configuration/ExtensionScanner/Php/ArrayGlobalMatcher.php'], ['class' => \TYPO3\CMS\Install\ExtensionScanner\Php\Matcher\ClassConstantMatcher::class, 'configurationFile' => 'EXT:install/Configuration/ExtensionScanner/Php/ClassConstantMatcher.php'], ['class' => \TYPO3\CMS\Install\ExtensionScanner\Php\Matcher\ClassNameMatcher::class, 'configurationFile' => 'EXT:install/Configuration/ExtensionScanner/Php/ClassNameMatcher.php'], ['class' => \TYPO3\CMS\Install\ExtensionScanner\Php\Matcher\ConstantMatcher::class, 'configurationFile' => 'EXT:install/Configuration/ExtensionScanner/Php/ConstantMatcher.php'], ['class' => \TYPO3\CMS\Install\ExtensionScanner\Php\Matcher\ConstructorArgumentMatcher::class, 'configurationFile' => 'EXT:install/Configuration/ExtensionScanner/Php/ConstructorArgumentMatcher.php'], ['class' => \TYPO3\CMS\Install\ExtensionScanner\Php\Matcher\PropertyAnnotationMatcher::class, 'configurationFile' => 'EXT:install/Configuration/ExtensionScanner/Php/PropertyAnnotationMatcher.php'], ['class' => \TYPO3\CMS\Install\ExtensionScanner\Php\Matcher\MethodAnnotationMatcher::class, 'configurationFile' => 'EXT:install/Configuration/ExtensionScanner/Php/MethodAnnotationMatcher.php'], ['class' => \TYPO3\CMS\Install\ExtensionScanner\Php\Matcher\FunctionCallMatcher::class, 'configurationFile' => 'EXT:install/Configuration/ExtensionScanner/Php/FunctionCallMatcher.php'], ['class' => \TYPO3\CMS\Install\ExtensionScanner\Php\Matcher\AbstractMethodImplementationMatcher::class, 'configurationFile' => 'EXT:install/Configuration/ExtensionScanner/Php/AbstractMethodImplementationMatcher.php'], ['class' => \TYPO3\CMS\Install\ExtensionScanner\Php\Matcher\InterfaceMethodChangedMatcher::class, 'configurationFile' => 'EXT:install/Configuration/ExtensionScanner/Php/InterfaceMethodChangedMatcher.php'], ['class' => \TYPO3\CMS\Install\ExtensionScanner\Php\Matcher\MethodArgumentDroppedMatcher::class, 'configurationFile' => 'EXT:install/Configuration/ExtensionScanner/Php/MethodArgumentDroppedMatcher.php'], ['class' => \TYPO3\CMS\Install\ExtensionScanner\Php\Matcher\MethodArgumentDroppedStaticMatcher::class, 'configurationFile' => 'EXT:install/Configuration/ExtensionScanner/Php/MethodArgumentDroppedStaticMatcher.php'], ['class' => \TYPO3\CMS\Install\ExtensionScanner\Php\Matcher\MethodArgumentRequiredMatcher::class, 'configurationFile' => 'EXT:install/Configuration/ExtensionScanner/Php/MethodArgumentRequiredMatcher.php'], ['class' => \TYPO3\CMS\Install\ExtensionScanner\Php\Matcher\MethodArgumentRequiredStaticMatcher::class, 'configurationFile' => 'EXT:install/Configuration/ExtensionScanner/Php/MethodArgumentRequiredStaticMatcher.php'], ['class' => \TYPO3\CMS\Install\ExtensionScanner\Php\Matcher\MethodArgumentUnusedMatcher::class, 'configurationFile' => 'EXT:install/Configuration/ExtensionScanner/Php/MethodArgumentUnusedMatcher.php'], ['class' => \TYPO3\CMS\Install\ExtensionScanner\Php\Matcher\MethodCallMatcher::class, 'configurationFile' => 'EXT:install/Configuration/ExtensionScanner/Php/MethodCallMatcher.php'], ['class' => \TYPO3\CMS\Install\ExtensionScanner\Php\Matcher\MethodCallStaticMatcher::class, 'configurationFile' => 'EXT:install/Configuration/ExtensionScanner/Php/MethodCallStaticMatcher.php'], ['class' => \TYPO3\CMS\Install\ExtensionScanner\Php\Matcher\PropertyExistsStaticMatcher::class, 'configurationFile' => 'EXT:install/Configuration/ExtensionScanner/Php/PropertyExistsStaticMatcher.php'], ['class' => \TYPO3\CMS\Install\ExtensionScanner\Php\Matcher\PropertyProtectedMatcher::class, 'configurationFile' => 'EXT:install/Configuration/ExtensionScanner/Php/PropertyProtectedMatcher.php'], ['class' => \TYPO3\CMS\Install\ExtensionScanner\Php\Matcher\PropertyPublicMatcher::class, 'configurationFile' => 'EXT:install/Configuration/ExtensionScanner/Php/PropertyPublicMatcher.php']]

Node visitors that implement CodeScannerInterface

Methods

cardsAction()

Main "show the cards" view

public cardsAction(ServerRequestInterface $request) : ResponseInterface
Parameters
$request : ServerRequestInterface
Return values
ResponseInterface

coreUpdateActivateAction()

Activate a new core

public coreUpdateActivateAction(ServerRequestInterface $request) : ResponseInterface
Parameters
$request : ServerRequestInterface
Return values
ResponseInterface

coreUpdateCheckPreConditionsAction()

Check if core update is possible

public coreUpdateCheckPreConditionsAction(ServerRequestInterface $request) : ResponseInterface
Parameters
$request : ServerRequestInterface
Return values
ResponseInterface

coreUpdateDownloadAction()

Download new core

public coreUpdateDownloadAction(ServerRequestInterface $request) : ResponseInterface
Parameters
$request : ServerRequestInterface
Return values
ResponseInterface

coreUpdateGetDataAction()

Core Update Get Data Action

public coreUpdateGetDataAction(ServerRequestInterface $request) : ResponseInterface
Parameters
$request : ServerRequestInterface
Return values
ResponseInterface

coreUpdateIsUpdateAvailableAction()

Check for new core

public coreUpdateIsUpdateAvailableAction() : ResponseInterface
Return values
ResponseInterface

coreUpdateMoveAction()

Move core to new location

public coreUpdateMoveAction(ServerRequestInterface $request) : ResponseInterface
Parameters
$request : ServerRequestInterface
Return values
ResponseInterface

coreUpdateUnpackAction()

Unpack a downloaded core

public coreUpdateUnpackAction(ServerRequestInterface $request) : ResponseInterface
Parameters
$request : ServerRequestInterface
Return values
ResponseInterface

coreUpdateVerifyChecksumAction()

Verify downloaded core checksum

public coreUpdateVerifyChecksumAction(ServerRequestInterface $request) : ResponseInterface
Parameters
$request : ServerRequestInterface
Return values
ResponseInterface

extensionCompatTesterLoadedExtensionListAction()

Get list of loaded extensions

public extensionCompatTesterLoadedExtensionListAction(ServerRequestInterface $request) : ResponseInterface
Parameters
$request : ServerRequestInterface
Return values
ResponseInterface

extensionCompatTesterLoadExtLocalconfAction()

Load all ext_localconf files in order until given extension name

public extensionCompatTesterLoadExtLocalconfAction(ServerRequestInterface $request) : ResponseInterface
Parameters
$request : ServerRequestInterface
Return values
ResponseInterface

extensionCompatTesterLoadExtTablesAction()

Load all ext_localconf files in order until given extension name

public extensionCompatTesterLoadExtTablesAction(ServerRequestInterface $request) : ResponseInterface
Parameters
$request : ServerRequestInterface
Return values
ResponseInterface

extensionCompatTesterUninstallExtensionAction()

Unload one extension

public extensionCompatTesterUninstallExtensionAction(ServerRequestInterface $request) : ResponseInterface
Parameters
$request : ServerRequestInterface
Tags
throws
RuntimeException
Return values
ResponseInterface

extensionScannerFilesAction()

Return a list of files of an extension

public extensionScannerFilesAction(ServerRequestInterface $request) : ResponseInterface
Parameters
$request : ServerRequestInterface
Return values
ResponseInterface

extensionScannerGetDataAction()

Create Extension Scanner Data action

public extensionScannerGetDataAction(ServerRequestInterface $request) : ResponseInterface
Parameters
$request : ServerRequestInterface
Return values
ResponseInterface

extensionScannerMarkFullyScannedRestFilesAction()

Ajax controller, part of "extension scanner". Called at the end of "scan all" as last action. Gets a list of RST file hashes that matched, goes through all existing RST files, finds those marked as "FullyScanned" and marks those that did not had any matches as "you are not affected".

public extensionScannerMarkFullyScannedRestFilesAction(ServerRequestInterface $request) : ResponseInterface
Parameters
$request : ServerRequestInterface
Return values
ResponseInterface

extensionScannerScanFileAction()

Scan a single extension file for breaking / deprecated core code usages

public extensionScannerScanFileAction(ServerRequestInterface $request) : ResponseInterface
Parameters
$request : ServerRequestInterface
Return values
ResponseInterface

tcaExtTablesCheckAction()

Check if loading ext_tables.php files still changes TCA

public tcaExtTablesCheckAction(ServerRequestInterface $request) : ResponseInterface
Parameters
$request : ServerRequestInterface
Return values
ResponseInterface

tcaMigrationsCheckAction()

Check TCA for needed migrations

public tcaMigrationsCheckAction(ServerRequestInterface $request) : ResponseInterface
Parameters
$request : ServerRequestInterface
Return values
ResponseInterface

upgradeDocsGetChangelogForVersionAction()

Render list of .rst files

public upgradeDocsGetChangelogForVersionAction(ServerRequestInterface $request) : ResponseInterface
Parameters
$request : ServerRequestInterface
Return values
ResponseInterface

upgradeDocsGetContentAction()

Render list of versions

public upgradeDocsGetContentAction(ServerRequestInterface $request) : ResponseInterface
Parameters
$request : ServerRequestInterface
Return values
ResponseInterface

upgradeDocsMarkReadAction()

Mark a .rst file as read

public upgradeDocsMarkReadAction(ServerRequestInterface $request) : ResponseInterface
Parameters
$request : ServerRequestInterface
Return values
ResponseInterface

upgradeDocsUnmarkReadAction()

Mark a .rst file as not read

public upgradeDocsUnmarkReadAction(ServerRequestInterface $request) : ResponseInterface
Parameters
$request : ServerRequestInterface
Return values
ResponseInterface

upgradeWizardsBlockingDatabaseAddsAction()

Check if new tables and fields should be added before executing wizards

public upgradeWizardsBlockingDatabaseAddsAction() : ResponseInterface
Return values
ResponseInterface

upgradeWizardsBlockingDatabaseCharsetFixAction()

Fix a broken DB charset setting

public upgradeWizardsBlockingDatabaseCharsetFixAction() : ResponseInterface
Tags
todo

This must be reviewed and decided if we can remove this, move to reports module or if we have other issues with charset on connection and database, or if we need to escalate this down to field level.

Return values
ResponseInterface

upgradeWizardsBlockingDatabaseCharsetTestAction()

Test if database charset is ok

public upgradeWizardsBlockingDatabaseCharsetTestAction() : ResponseInterface
Tags
todo

This must be reviewed and decided if we can remove this, move to reports module or if we have other issues with charset on connection and database, or if we need to escalate this down to field level.

Return values
ResponseInterface

upgradeWizardsBlockingDatabaseExecuteAction()

Add new tables and fields

public upgradeWizardsBlockingDatabaseExecuteAction() : ResponseInterface
Return values
ResponseInterface

upgradeWizardsDoneUpgradesAction()

Get list of upgrade wizards marked as done

public upgradeWizardsDoneUpgradesAction() : ResponseInterface
Return values
ResponseInterface

upgradeWizardsExecuteAction()

Execute one upgrade wizard

public upgradeWizardsExecuteAction(ServerRequestInterface $request) : ResponseInterface
Parameters
$request : ServerRequestInterface
Return values
ResponseInterface

upgradeWizardsGetDataAction()

Change install tool password

public upgradeWizardsGetDataAction(ServerRequestInterface $request) : ResponseInterface
Parameters
$request : ServerRequestInterface
Return values
ResponseInterface

upgradeWizardsInputAction()

Input stage of a specific upgrade wizard

public upgradeWizardsInputAction(ServerRequestInterface $request) : ResponseInterface
Parameters
$request : ServerRequestInterface
Return values
ResponseInterface

upgradeWizardsListAction()

List available upgrade wizards

public upgradeWizardsListAction() : ResponseInterface
Return values
ResponseInterface

upgradeWizardsMarkUndoneAction()

Mark a wizard as "not done"

public upgradeWizardsMarkUndoneAction(ServerRequestInterface $request) : ResponseInterface
Parameters
$request : ServerRequestInterface
Return values
ResponseInterface

assertValidVersion()

Asserts that the given version is valid

protected assertValidVersion(string $version) : void
Parameters
$version : string
Tags
throws
InvalidArgumentException

coreUpdateGetVersionToHandle()

Find out which version upgrade should be handled. This may be different depending on whether development or regular release.

protected coreUpdateGetVersionToHandle(ServerRequestInterface $request) : CoreRelease
Parameters
$request : ServerRequestInterface
Tags
throws
RuntimeException
Return values
CoreRelease

coreUpdateInitialize()

Initialize the core upgrade actions

protected coreUpdateInitialize() : mixed
Tags
throws
RuntimeException

extensionCompatTesterLoadExtLocalconfForExtension()

Loads ext_localconf.php for a single extension. Method is a modified copy of the original bootstrap method.

protected extensionCompatTesterLoadExtLocalconfForExtension(PackageInterface $package) : mixed
Parameters
$package : PackageInterface

extensionCompatTesterLoadExtTablesForExtension()

Loads ext_tables.php for a single extension. Method is a modified copy of the original bootstrap method.

protected extensionCompatTesterLoadExtTablesForExtension(PackageInterface $package) : mixed
Parameters
$package : PackageInterface

extensionScannerGetLineFromFile()

Find a code line in a file

protected extensionScannerGetLineFromFile(string $file, int $lineNumber) : string
Parameters
$file : string

Absolute path to file

$lineNumber : int

Find this line in file

Return values
string

Code line

getDocumentationDirectories()

protected getDocumentationDirectories() : array<string|int, string>
Return values
array<string|int, string>

getDocumentationFiles()

Get a list of '.rst' files and their details for "Upgrade documentation" view.

protected getDocumentationFiles(string $version) : array<string|int, mixed>
Parameters
$version : string
Return values
array<string|int, mixed>

initializeView()

Helper method to initialize a view instance.

protected initializeView(ServerRequestInterface $request) : ViewInterface
Parameters
$request : ServerRequestInterface
Return values
ViewInterface

        
On this page

Search results