public function checkExtensionConstraintsCommand(array $extensionKeys = [], $typo3Version = TYPO3_version)
    {
        if (empty($extensionKeys)) {
            $failedPackageMessages = $this->upgradeHandling->matchAllExtensionConstraints($typo3Version);
        } else {
            $failedPackageMessages = [];
            foreach ($extensionKeys as $extensionKey) {
                try {
                    if (!empty($result = $this->upgradeHandling->matchExtensionConstraints($extensionKey, $typo3Version))) {
                        $failedPackageMessages[$extensionKey] = $result;
                    }
                } catch (UnknownPackageException $e) {
                    $this->outputLine('<warning>Extension "%s" is not found in the system</warning>', [$extensionKey]);
                }
            }
        }
        foreach ($failedPackageMessages as $constraintMessage) {
            $this->outputLine('<error>%s</error>', [$constraintMessage]);
        }
        if (empty($failedPackageMessages)) {
            $this->outputLine('<info>All third party extensions claim to be compatible with TYPO3 version %s</info>', [$typo3Version]);
        } else {
            $this->quit(1);
        }
    }
public function checkExtensionConstraintsCommand(array $extensionKeys = [], $typo3Version = TYPO3_version)
    {
        if (empty($extensionKeys)) {
            $failedPackageMessages = $this->upgradeHandling->matchAllExtensionConstraints($typo3Version);
        } else {
            $failedPackageMessages = [];
            foreach ($extensionKeys as $extensionKey) {
                try {
                    if (!empty($result = $this->upgradeHandling->matchExtensionConstraints($extensionKey, $typo3Version))) {
                        $failedPackageMessages[$extensionKey] = $result;
                    }
                } catch (UnknownPackageException $e) {
                    $this->outputLine('<warning>Extension "%s" is not found in the system</warning>', [$extensionKey]);
                }
            }
        }
        foreach ($failedPackageMessages as $constraintMessage) {
            $this->outputLine('<error>%s</error>', [$constraintMessage]);
        }
        if (empty($failedPackageMessages)) {
            $this->outputLine('<info>All third party extensions claim to be compatible with TYPO3 version %s</info>', [$typo3Version]);
        } else {
            $this->quit(1);
        }
    }
public function checkExtensionConstraintsCommand ( array $ extensionKeys = [ ] , $ typo3Version = TYPO3_version ) { if ( empty ( $ extensionKeys ) ) { $ failedPackageMessages = $ this -> upgradeHandling -> matchAllExtensionConstraints ( $ typo3Version ) ; } else { $ failedPackageMessages = [ ] ; foreach ( $ extensionKeys as $ extensionKey ) { try { if ( ! empty ( $ result = $ this -> upgradeHandling -> matchExtensionConstraints ( $ extensionKey , $ typo3Version ) ) ) { $ failedPackageMessages [ $ extensionKey ] = $ result ; } } catch ( UnknownPackageException $ e ) { $ this -> outputLine ( '<warning>Extension "%s" is not found in the system</warning>' , [ $ extensionKey ] ) ; } } } foreach ( $ failedPackageMessages as $ constraintMessage ) { $ this -> outputLine ( '<error>%s</error>' , [ $ constraintMessage ] ) ; } if ( empty ( $ failedPackageMessages ) ) { $ this -> outputLine ( '<info>All third party extensions claim to be compatible with TYPO3 version %s</info>' , [ $ typo3Version ] ) ; } else { $ this -> quit ( 1 ) ; } }
Check TYPO3 version constraints of extensions

This command is especially useful **before** switching sources to a new TYPO3 version.
It checks the version constraints of all third party extensions against a given TYPO3 version.
It therefore relies on the constraints to be correct.

@param array $extensionKeys Extension keys to check. Separate multiple extension keys with comma.
@param string $typo3Version TYPO3 version to check against. Defaults to current TYPO3 version.
@Definition\Argument(name="extensionKeys")
Check TYPO3 version constraints of extensions