diff --git a/Classes/Compatibility/Typo3CompatibilityBridge.php b/Classes/Compatibility/Typo3CompatibilityBridge.php
new file mode 100644
index 00000000..5287ed6b
--- /dev/null
+++ b/Classes/Compatibility/Typo3CompatibilityBridge.php
@@ -0,0 +1,33 @@
+getMajorVersion() > 11) {
+ return (new ConfigurationManager())->getSystemConfigurationFileLocation();
+ }
+
+ return (new ConfigurationManager())->getLocalConfigurationFileLocation();
+ }
+}
diff --git a/Classes/Console/Command/Configuration/ConfigurationRemoveCommand.php b/Classes/Console/Command/Configuration/ConfigurationRemoveCommand.php
index 283c001e..4b36e25b 100644
--- a/Classes/Console/Command/Configuration/ConfigurationRemoveCommand.php
+++ b/Classes/Console/Command/Configuration/ConfigurationRemoveCommand.php
@@ -43,7 +43,7 @@ protected function configure()
Removes a system configuration option by path.
For this command to succeed, the configuration option(s) must be in
-LocalConfiguration.php and not be overridden elsewhere.
+system configuration file and not be overridden elsewhere.
Example:
diff --git a/Classes/Console/Command/Configuration/ConfigurationShowCommand.php b/Classes/Console/Command/Configuration/ConfigurationShowCommand.php
index 2c65c108..24307fec 100644
--- a/Classes/Console/Command/Configuration/ConfigurationShowCommand.php
+++ b/Classes/Console/Command/Configuration/ConfigurationShowCommand.php
@@ -29,7 +29,7 @@ protected function configure()
$this->setHelp(
<<<'EOH'
Shows system configuration value by path.
-If the currently active configuration differs from the value in LocalConfiguration.php
+If the currently active configuration differs from the value in system configuration file
the difference between these values is shown.
Example:
diff --git a/Classes/Console/Command/Configuration/ConfigurationShowLocalCommand.php b/Classes/Console/Command/Configuration/ConfigurationShowLocalCommand.php
index 0a7dab8e..a7da65ba 100644
--- a/Classes/Console/Command/Configuration/ConfigurationShowLocalCommand.php
+++ b/Classes/Console/Command/Configuration/ConfigurationShowLocalCommand.php
@@ -48,7 +48,7 @@ protected function configure()
$this->setHelp(
<<<'EOH'
Shows local configuration option value by path.
-Shows the value which is stored in LocalConfiguration.php.
+Shows the value which is stored in system configuration file.
Note that this value could be overridden. Use typo3 configuration:show
to see if this is the case.
Example:
diff --git a/Classes/Console/Command/Install/InstallSetupCommand.php b/Classes/Console/Command/Install/InstallSetupCommand.php
index 29e835cc..41907e0b 100644
--- a/Classes/Console/Command/Install/InstallSetupCommand.php
+++ b/Classes/Console/Command/Install/InstallSetupCommand.php
@@ -57,13 +57,13 @@ protected function configure()
'force',
'f',
InputOption::VALUE_NONE,
- 'Force installation of TYPO3, even if `LocalConfiguration.php` file already exists.'
+ 'Force installation of TYPO3, even if system configuration file already exists.'
),
new InputOption(
'skip-integrity-check',
null,
InputOption::VALUE_NONE,
- 'Skip the checking for clean state before executing setup. This allows a pre-defined `LocalConfiguration.php` to be present. Handle with care. It might lead to unexpected or broken installation results.'
+ 'Skip the checking for clean state before executing setup. This allows a pre-defined system configuration file to be present. Handle with care. It might lead to unexpected or broken installation results.'
),
new InputOption(
'skip-extension-setup',
diff --git a/Classes/Console/Install/Action/PrepareInstallAction.php b/Classes/Console/Install/Action/PrepareInstallAction.php
index 7bef4209..10c551fe 100644
--- a/Classes/Console/Install/Action/PrepareInstallAction.php
+++ b/Classes/Console/Install/Action/PrepareInstallAction.php
@@ -16,6 +16,7 @@
use Helhum\Typo3Console\Mvc\Cli\CommandDispatcher;
use Helhum\Typo3Console\Mvc\Cli\ConsoleOutput;
+use Helhum\Typo3Console\Typo3CompatibilityBridge;
use TYPO3\CMS\Core\Core\Environment;
class PrepareInstallAction implements InstallActionInterface
@@ -54,7 +55,7 @@ public function execute(array $actionDefinition, array $options = []): bool
}
/**
- * Handles the case when LocalConfiguration.php file already exists
+ * Handles the case when system configuration file already exists
*
* @param array $options
* @throws InstallationFailedException
@@ -69,15 +70,15 @@ private function ensureInstallationIsPossible(array $options)
$isInteractive = $options['interactive'] ?? $this->output->getSymfonyConsoleInput()->isInteractive();
$forceInstall = $options['forceInstall'] ?? false;
- $localConfFile = Environment::getLegacyConfigPath() . '/LocalConfiguration.php';
+ $localConfFile = Typo3CompatibilityBridge::getSystemConfigurationFileLocation();
if (!$forceInstall && file_exists($localConfFile)) {
$this->output->outputLine();
$this->output->outputLine('TYPO3 seems to be already set up!');
$proceed = $isInteractive;
if ($isInteractive) {
$this->output->outputLine();
- $this->output->outputLine('If you continue, your typo3conf/LocalConfiguration.php
');
- $this->output->outputLine('file will be deleted!');
+ $this->output->outputLine('If you continue, your system configuration file');
+ $this->output->outputLine('will be deleted!');
$this->output->outputLine();
$proceed = $this->output->askConfirmation('Do you really want to proceed? (no) ', false);
}
diff --git a/Classes/Console/Install/Upgrade/SilentConfigurationUpgrade.php b/Classes/Console/Install/Upgrade/SilentConfigurationUpgrade.php
index 2b0e5306..db9d0e50 100644
--- a/Classes/Console/Install/Upgrade/SilentConfigurationUpgrade.php
+++ b/Classes/Console/Install/Upgrade/SilentConfigurationUpgrade.php
@@ -14,6 +14,7 @@
*
*/
+use Helhum\Typo3Console\Typo3CompatibilityBridge;
use Symfony\Component\Console\Exception\RuntimeException;
use TYPO3\CMS\Core\Configuration\ConfigurationManager;
use TYPO3\CMS\Core\Configuration\ExtensionConfiguration;
@@ -22,7 +23,7 @@
use TYPO3\CMS\Install\Service\SilentConfigurationUpgradeService;
/**
- * Used to migrate deprecated LocalConfiguration.php values to new values
+ * Used to migrate deprecated system configuration values to new values
* It is a wrapper around the TYPO3 class to properly handle redirect exceptions
*/
class SilentConfigurationUpgrade
@@ -45,7 +46,7 @@ public function __construct(ConfigurationManager $configurationManager = null)
*/
public function executeSilentConfigurationUpgradesIfNeeded()
{
- if (!file_exists($this->configurationManager->getLocalConfigurationFileLocation())) {
+ if (!file_exists(Typo3CompatibilityBridge::getSystemConfigurationFileLocation())) {
return;
}
diff --git a/Classes/Console/Mvc/Cli/Symfony/Application.php b/Classes/Console/Mvc/Cli/Symfony/Application.php
index 0206d6ff..b04305b8 100644
--- a/Classes/Console/Mvc/Cli/Symfony/Application.php
+++ b/Classes/Console/Mvc/Cli/Symfony/Application.php
@@ -148,7 +148,7 @@ public function renderThrowable(\Throwable $exception, OutputInterface $output):
sprintf(
'Command "%s" cannot be run, because it needs a fully set up TYPO3 system.'
. PHP_EOL
- . 'Your system currently lacks an essential configuration file (LocalConfiguration.php).',
+ . 'Your system currently lacks a system configuration file.',
$exception->getCommandName()
),
'Try setting up your system using the "install:setup" command.',
diff --git a/Classes/Console/Service/Configuration/ConfigurationService.php b/Classes/Console/Service/Configuration/ConfigurationService.php
index 855853d6..ade17ea1 100644
--- a/Classes/Console/Service/Configuration/ConfigurationService.php
+++ b/Classes/Console/Service/Configuration/ConfigurationService.php
@@ -19,15 +19,12 @@
use TYPO3\CMS\Core\Utility\ArrayUtility;
use TYPO3\CMS\Core\Utility\GeneralUtility;
-/**
- * Class ConfigurationService
- */
class ConfigurationService implements SingletonInterface
{
const EXCEPTION_CODE_ARRAY_KEY_NOT_FOUND = 1341397869;
/**
- * @var \TYPO3\CMS\Core\Configuration\ConfigurationManager
+ * @var ConfigurationManager
*/
protected $configurationManager;
@@ -155,7 +152,7 @@ public function removeLocal($path)
}
/**
- * Sets a value in LocalConfiguration.php
+ * Sets a value in system configuration file
*
* But only if types are compatible and local config is active
*
@@ -176,7 +173,7 @@ public function setLocal($path, $value, $targetType = '')
}
/**
- * Returns true if the value is stored in the LocalConfiguration.php file and
+ * Returns true if the value is stored in the system configuration file and
* is NOT overridden later (e.g. in AdditionalConfiguration.php)
*
* @param string $path
diff --git a/Classes/Console/Service/Configuration/ConsoleRenderer/ConsoleRenderer.php b/Classes/Console/Service/Configuration/ConsoleRenderer/ConsoleRenderer.php
index bb2b21d1..864b77cd 100644
--- a/Classes/Console/Service/Configuration/ConsoleRenderer/ConsoleRenderer.php
+++ b/Classes/Console/Service/Configuration/ConsoleRenderer/ConsoleRenderer.php
@@ -38,8 +38,8 @@ public function renderDiff($localConfig, $activeConfig)
{
$diff = new Diff(new Paragraph(), new DiffConsoleRenderer());
- $result = '-- LocalConfiguration.php' . PHP_EOL;
- $result .= '++ AdditionalConfiguration.php' . PHP_EOL;
+ $result = '-- system configuration' . PHP_EOL;
+ $result .= '++ overridden configuration' . PHP_EOL;
$result .= $diff->render($this->getConfigurationAsString($localConfig), $this->getConfigurationAsString($activeConfig));
diff --git a/Documentation/CommandReference/ConfigurationRemove.rst b/Documentation/CommandReference/ConfigurationRemove.rst
index 8aee6a3c..838281ae 100644
--- a/Documentation/CommandReference/ConfigurationRemove.rst
+++ b/Documentation/CommandReference/ConfigurationRemove.rst
@@ -16,7 +16,7 @@ configuration:remove
Removes a system configuration option by path.
For this command to succeed, the configuration option(s) must be in
-LocalConfiguration.php and not be overridden elsewhere.
+system configuration file and not be overridden elsewhere.
**Example:**
diff --git a/Documentation/CommandReference/ConfigurationShow.rst b/Documentation/CommandReference/ConfigurationShow.rst
index 8fab0168..b22cfbf4 100644
--- a/Documentation/CommandReference/ConfigurationShow.rst
+++ b/Documentation/CommandReference/ConfigurationShow.rst
@@ -14,7 +14,7 @@ configuration:show
**Show configuration value**
Shows system configuration value by path.
-If the currently active configuration differs from the value in LocalConfiguration.php
+If the currently active configuration differs from the value in system configuration file
the difference between these values is shown.
**Example:**
diff --git a/Documentation/CommandReference/ConfigurationShowlocal.rst b/Documentation/CommandReference/ConfigurationShowlocal.rst
index 7dd831ad..2a20db2c 100644
--- a/Documentation/CommandReference/ConfigurationShowlocal.rst
+++ b/Documentation/CommandReference/ConfigurationShowlocal.rst
@@ -14,7 +14,7 @@ configuration:showlocal
**Show local configuration value**
Shows local configuration option value by path.
-Shows the value which is stored in LocalConfiguration.php.
+Shows the value which is stored in system configuration file.
Note that this value could be overridden. Use `typo3 configuration:show ` to see if this is the case.
**Example:**
diff --git a/Documentation/CommandReference/InstallSetup.rst b/Documentation/CommandReference/InstallSetup.rst
index 896d0846..8c830eb8 100644
--- a/Documentation/CommandReference/InstallSetup.rst
+++ b/Documentation/CommandReference/InstallSetup.rst
@@ -40,7 +40,7 @@ Options
=======
`--force|-f`
- Force installation of TYPO3, even if `LocalConfiguration.php` file already exists.
+ Force installation of TYPO3, even if system configuration file already exists.
- Accept value: no
- Is value required: no
@@ -48,7 +48,7 @@ Options
- Default: false
`--skip-integrity-check`
- Skip the checking for clean state before executing setup. This allows a pre-defined `LocalConfiguration.php` to be present. Handle with care. It might lead to unexpected or broken installation results.
+ Skip the checking for clean state before executing setup. This allows a pre-defined system configuration file to be present. Handle with care. It might lead to unexpected or broken installation results.
- Accept value: no
- Is value required: no
diff --git a/Tests/Console/Functional/Command/ConfigurationCommandControllerTest.php b/Tests/Console/Functional/Command/ConfigurationCommandControllerTest.php
index 41bf7082..5f313373 100644
--- a/Tests/Console/Functional/Command/ConfigurationCommandControllerTest.php
+++ b/Tests/Console/Functional/Command/ConfigurationCommandControllerTest.php
@@ -15,6 +15,7 @@
*/
use Helhum\Typo3Console\Mvc\Cli\FailedSubProcessCommandException;
+use Helhum\Typo3Console\Typo3CompatibilityBridge;
class ConfigurationCommandControllerTest extends AbstractCommandTest
{
@@ -24,7 +25,7 @@ class ConfigurationCommandControllerTest extends AbstractCommandTest
public function configurationCanBeShown()
{
$output = $this->executeConsoleCommand('configuration:show', ['BE/installToolPassword']);
- $config = require getenv('TYPO3_PATH_ROOT') . '/typo3conf/LocalConfiguration.php';
+ $config = require Typo3CompatibilityBridge::getSystemConfigurationFileLocation();
$this->assertStringContainsString($config['BE']['installToolPassword'], $output);
}
@@ -33,9 +34,9 @@ public function configurationCanBeShown()
*/
public function configurationShowsDiff()
{
- $output = $this->executeConsoleCommand('configuration:show', ['SC_OPTIONS/"ext/install"']);
- $this->assertStringContainsString('update', $output);
- $this->assertStringContainsString('++ AdditionalConfiguration.php', $output);
+ $output = $this->executeConsoleCommand('configuration:show', ['SC_OPTIONS/"t3lib/class.t3lib_tcemain.php"']);
+ $this->assertStringContainsString('processDatamapClass', $output);
+ $this->assertStringContainsString('++ overridden configuration', $output);
}
/**
@@ -44,7 +45,7 @@ public function configurationShowsDiff()
public function localConfigurationCanBeShown()
{
$output = $this->executeConsoleCommand('configuration:showlocal', ['BE/installToolPassword']);
- $config = require getenv('TYPO3_PATH_ROOT') . '/typo3conf/LocalConfiguration.php';
+ $config = require Typo3CompatibilityBridge::getSystemConfigurationFileLocation();
$this->assertStringContainsString($config['BE']['installToolPassword'], $output);
}
@@ -54,7 +55,7 @@ public function localConfigurationCanBeShown()
public function localConfigurationCanBeShownAsJson()
{
$output = $this->executeConsoleCommand('configuration:showlocal', ['BE/installToolPassword', '--json']);
- $config = require getenv('TYPO3_PATH_ROOT') . '/typo3conf/LocalConfiguration.php';
+ $config = require Typo3CompatibilityBridge::getSystemConfigurationFileLocation();
$this->assertSame($config['BE']['installToolPassword'], \json_decode($output));
}
@@ -64,7 +65,7 @@ public function localConfigurationCanBeShownAsJson()
public function activeConfigurationCanBeShown()
{
$output = $this->executeConsoleCommand('configuration:showactive', ['BE/installToolPassword']);
- $config = require getenv('TYPO3_PATH_ROOT') . '/typo3conf/LocalConfiguration.php';
+ $config = require Typo3CompatibilityBridge::getSystemConfigurationFileLocation();
$this->assertStringContainsString($config['BE']['installToolPassword'], $output);
}
@@ -74,7 +75,7 @@ public function activeConfigurationCanBeShown()
public function activeConfigurationCanBeShownAsJson()
{
$output = $this->executeConsoleCommand('configuration:showactive', ['BE/installToolPassword', '--json']);
- $config = require getenv('TYPO3_PATH_ROOT') . '/typo3conf/LocalConfiguration.php';
+ $config = require Typo3CompatibilityBridge::getSystemConfigurationFileLocation();
$this->assertSame($config['BE']['installToolPassword'], \json_decode($output));
}
@@ -83,13 +84,13 @@ public function activeConfigurationCanBeShownAsJson()
*/
public function configurationCanBeSet()
{
- $config = require getenv('TYPO3_PATH_ROOT') . '/typo3conf/LocalConfiguration.php';
+ $config = require Typo3CompatibilityBridge::getSystemConfigurationFileLocation();
$oldPassword = $config['BE']['installToolPassword'];
$this->executeConsoleCommand('configuration:set', ['BE/installToolPassword', 'foobar']);
- $config = require getenv('TYPO3_PATH_ROOT') . '/typo3conf/LocalConfiguration.php';
+ $config = require Typo3CompatibilityBridge::getSystemConfigurationFileLocation();
$this->assertSame('foobar', $config['BE']['installToolPassword']);
$this->executeConsoleCommand('configuration:set', ['BE/installToolPassword', $oldPassword]);
- $config = require getenv('TYPO3_PATH_ROOT') . '/typo3conf/LocalConfiguration.php';
+ $config = require Typo3CompatibilityBridge::getSystemConfigurationFileLocation();
$this->assertSame($oldPassword, $config['BE']['installToolPassword']);
}
@@ -98,13 +99,13 @@ public function configurationCanBeSet()
*/
public function configurationCanBeRemovedAndSetAgainWithoutKeyPresent()
{
- $config = require getenv('TYPO3_PATH_ROOT') . '/typo3conf/LocalConfiguration.php';
+ $config = require Typo3CompatibilityBridge::getSystemConfigurationFileLocation();
$oldPassword = $config['BE']['installToolPassword'];
$this->executeConsoleCommand('configuration:remove', ['BE/installToolPassword', '--force']);
- $config = require getenv('TYPO3_PATH_ROOT') . '/typo3conf/LocalConfiguration.php';
+ $config = require Typo3CompatibilityBridge::getSystemConfigurationFileLocation();
$this->assertArrayNotHasKey('installToolPassword', $config['BE']);
$this->executeConsoleCommand('configuration:set', ['BE/installToolPassword', $oldPassword]);
- $config = require getenv('TYPO3_PATH_ROOT') . '/typo3conf/LocalConfiguration.php';
+ $config = require Typo3CompatibilityBridge::getSystemConfigurationFileLocation();
$this->assertSame($oldPassword, $config['BE']['installToolPassword']);
}
@@ -114,7 +115,7 @@ public function configurationCanBeRemovedAndSetAgainWithoutKeyPresent()
public function numericalIndexedArraysCanBeSet()
{
$this->executeConsoleCommand('configuration:set', ['EXTCONF/lang/availableLanguages/0', 'fr_FR']);
- $config = require getenv('TYPO3_PATH_ROOT') . '/typo3conf/LocalConfiguration.php';
+ $config = require Typo3CompatibilityBridge::getSystemConfigurationFileLocation();
$this->assertSame('fr_FR', $config['EXTCONF']['lang']['availableLanguages'][0]);
}
@@ -124,7 +125,7 @@ public function numericalIndexedArraysCanBeSet()
public function associativeArraysCanBeSet()
{
$this->executeConsoleCommand('configuration:set', ['EXTCONF/foo/bar', 'baz']);
- $config = require getenv('TYPO3_PATH_ROOT') . '/typo3conf/LocalConfiguration.php';
+ $config = require Typo3CompatibilityBridge::getSystemConfigurationFileLocation();
$this->assertSame('baz', $config['EXTCONF']['foo']['bar']);
}
@@ -134,7 +135,7 @@ public function associativeArraysCanBeSet()
public function arraysCanBeSetAsJson()
{
$this->executeConsoleCommand('configuration:set', ['EXTCONF/foo/baz', '["baz"]', '--json']);
- $config = require getenv('TYPO3_PATH_ROOT') . '/typo3conf/LocalConfiguration.php';
+ $config = require Typo3CompatibilityBridge::getSystemConfigurationFileLocation();
$this->assertSame(['baz'], $config['EXTCONF']['foo']['baz']);
}
@@ -144,7 +145,7 @@ public function arraysCanBeSetAsJson()
public function booleanCanBeSetAsJson()
{
$this->executeConsoleCommand('configuration:set', ['EXTCONF/foo/bool', 'true', '--json']);
- $config = require getenv('TYPO3_PATH_ROOT') . '/typo3conf/LocalConfiguration.php';
+ $config = require Typo3CompatibilityBridge::getSystemConfigurationFileLocation();
$this->assertTrue($config['EXTCONF']['foo']['bool']);
}
@@ -154,7 +155,7 @@ public function booleanCanBeSetAsJson()
public function nullCanBeSetAsJson()
{
$this->executeConsoleCommand('configuration:set', ['EXTCONF/foo/null', 'null', '--json']);
- $config = require getenv('TYPO3_PATH_ROOT') . '/typo3conf/LocalConfiguration.php';
+ $config = require Typo3CompatibilityBridge::getSystemConfigurationFileLocation();
$this->assertNull($config['EXTCONF']['foo']['null']);
}
diff --git a/Tests/Console/Functional/Command/Install/InstallCommandControllerTest.php b/Tests/Console/Functional/Command/Install/InstallCommandControllerTest.php
index e3488e15..bcdaa8e7 100644
--- a/Tests/Console/Functional/Command/Install/InstallCommandControllerTest.php
+++ b/Tests/Console/Functional/Command/Install/InstallCommandControllerTest.php
@@ -15,6 +15,7 @@
*/
use Helhum\Typo3Console\Tests\Functional\Command\AbstractCommandTest;
+use Helhum\Typo3Console\Typo3CompatibilityBridge;
class InstallCommandControllerTest extends AbstractCommandTest
{
@@ -37,7 +38,7 @@ public function setupCommandWorksOnSqLiteWithoutErrors()
$this->markTestSkipped('Cannot execute SQLite test, when SQLite module is disabled');
}
@unlink(getenv('TYPO3_PATH_ROOT') . '/typo3conf/PackageStates.php');
- @unlink(getenv('TYPO3_PATH_ROOT') . '/typo3conf/LocalConfiguration.php');
+ @unlink(Typo3CompatibilityBridge::getSystemConfigurationFileLocation());
$output = $this->executeConsoleCommand(
'install:setup',
[
@@ -61,7 +62,7 @@ public function setupCommandDoesNotSetupExtensionsIfRequested()
$this->executeMysqlQuery('DROP DATABASE IF EXISTS ' . getenv('TYPO3_INSTALL_DB_DBNAME'), false);
}
@unlink(getenv('TYPO3_PATH_ROOT') . '/typo3conf/PackageStates.php');
- @unlink(getenv('TYPO3_PATH_ROOT') . '/typo3conf/LocalConfiguration.php');
+ @unlink(Typo3CompatibilityBridge::getSystemConfigurationFileLocation());
$output = $this->executeConsoleCommand(
'install:setup',
[
@@ -82,7 +83,7 @@ public function setupCommandWorksWithoutErrors()
$this->executeMysqlQuery('DROP DATABASE IF EXISTS ' . getenv('TYPO3_INSTALL_DB_DBNAME'), false);
}
@unlink(getenv('TYPO3_PATH_ROOT') . '/typo3conf/PackageStates.php');
- @unlink(getenv('TYPO3_PATH_ROOT') . '/typo3conf/LocalConfiguration.php');
+ @unlink(Typo3CompatibilityBridge::getSystemConfigurationFileLocation());
$output = $this->executeConsoleCommand(
'install:setup',
[