Feature #38562

Task #38086: Enhance TYPO3 bootstrap mechanism

Refactor localconf.php handling

Added by Christian Kuhn about 3 years ago. Updated about 3 years ago.

Status:Resolved Start date:2012-07-02
Priority:Should have Due date:
Assigned To:- % Done:

100%

Category:Default Spent time: -
Target version:6.0.0-alpha3
PHP Version:5.3 Sprint Focus:
Complexity:hard

38562-phpunit.diff Magnifier (808 Bytes) Christian Kuhn, 2012-07-15 18:48


Related issues

related to Core - Bug #39346: localconf migration wizard breaks if escaped tick is used Resolved 2012-07-28
related to Core - Bug #39306: Generate random key is not updating Resolved 2012-07-27
related to PHPUnit - Bug #39091: Adapt to the new localconf handling in TYPO3 6.0 Resolved 2012-07-19
related to Core - Bug #39111: Fix dbal & workspace install tool Resolved 2012-07-20
related to Core - Bug #39112: Fix 1-2-3(-4) wizards Resolved 2012-07-20
related to Core - Task #39134: t3lib_utility_array::arrayExport should recognize int keys Resolved 2012-07-20
related to Core - Bug #39242: Better isLocalconfWritable handling Resolved 2012-07-25
related to Core - Bug #39224: Adapt to the new localconf handling Resolved 2012-07-24
related to Core - Bug #39237: Re-read extListArray in em at runtime Resolved 2012-07-25
related to Core - Bug #39241: Deprecate / cleanup t3lib_install Closed 2012-07-25
related to Core - Bug #39135: localconf upgrade wizard should recognize $globals['typo3... Resolved 2012-07-20
precedes Documentation - Task #39144: typo3conf/localconf.php has been replaced New 2013-07-22
precedes Core - Bug #39110: Fix install tool -> Basic Configuration Closed 2012-07-20

Associated revisions

Revision 7f1fa4f9
Added by Helge Funk about 3 years ago

[!!!][TASK] New local configuration handling

This patch removes the file typo3conf/localconf.php and introduces
a new file called typo3conf/LocalConfiguration.php instead. The file
returns the local overrides of the TYPO3_CONF_VARS default array,
which is merged with the default array during bootstrap.

An upgrade wizard transfers the settings from localconf to the new
file. As an effect, the LocalConfiguration file is now fully under
core control. There must be no additional custom code in it. If an
instance needs such code, it can be added to a second file called
typo3conf/AdditionalConfiguration.php, which is executed as is
during bootstrap after LocalConfiguration was read.

This enables us to store the local configuration as an array,
exports the file with a clear schema.

Furthermore, the list of loaded extensions (extList) is now stored
as an array (extListArray). The old comma separated extList string is
still kept for now, but core usage is adapted to use extListArray. The
old extList string is still written and maintained, but is only kept
for extensions for backwards compatibility.

Important notes:
- Frontend, backend, cli and install tool must still come up, even
if the upgrade wizard was not run, yet.
- The variables '$typo3_db_*' that where in localconf.php are now
merged with the TYPO3_CONF_VARS. The upgrade wizard should find
and transfer them.
- The settings in install tool > Basic Configuration are currently
broken. This would have made the patch even bigger, and must be
fixed with an additional patch.
It is advised to run the update wizard as soon as possible after
this patch is merged, it will be the first wizard in the line.
- Some follow ups for dbal and probably workspaces are still needed.
- Currently the 1-2-3 install wizards are broken. The dummy and
other packages need some love to adapt to the new handling.

If some of the above problems are not solved until 6.0
stabilizes, this patch needs to be reverted again.

Change-Id: I3bf6a176117f501946123b921b6d2f1932627270
Resolves: #38562
Release: 6.0
Reviewed-on: http://review.typo3.org/12519
Reviewed-by: Helmut Hummel
Tested-by: Helmut Hummel
Reviewed-by: Christian Kuhn
Tested-by: Christian Kuhn

Revision d3e3e73c
Added by Helge Funk about 3 years ago

[!!!][TASK] New local configuration handling

This patch removes the file typo3conf/localconf.php and introduces
a new file called typo3conf/LocalConfiguration.php instead. The file
returns the local overrides of the TYPO3_CONF_VARS default array,
which is merged with the default array during bootstrap.

An upgrade wizard transfers the settings from localconf to the new
file. As an effect, the LocalConfiguration file is now fully under
core control. There must be no additional custom code in it. If an
instance needs such code, it can be added to a second file called
typo3conf/AdditionalConfiguration.php, which is executed as is
during bootstrap after LocalConfiguration was read.

This enables us to store the local configuration as an array,
exports the file with a clear schema.

Furthermore, the list of loaded extensions (extList) is now stored
as an array (extListArray). The old comma separated extList string is
still kept for now, but core usage is adapted to use extListArray. The
old extList string is still written and maintained, but is only kept
for extensions for backwards compatibility.

Important notes:
- Frontend, backend, cli and install tool must still come up, even
if the upgrade wizard was not run, yet.
- The variables '$typo3_db_*' that where in localconf.php are now
merged with the TYPO3_CONF_VARS. The upgrade wizard should find
and transfer them.
- The settings in install tool > Basic Configuration are currently
broken. This would have made the patch even bigger, and must be
fixed with an additional patch.
It is advised to run the update wizard as soon as possible after
this patch is merged, it will be the first wizard in the line.
- Some follow ups for dbal and probably workspaces are still needed.
- Currently the 1-2-3 install wizards are broken. The dummy and
other packages need some love to adapt to the new handling.

If some of the above problems are not solved until 6.0
stabilizes, this patch needs to be reverted again.

Change-Id: I3bf6a176117f501946123b921b6d2f1932627270
Resolves: #38562
Release: 6.0
Reviewed-on: http://review.typo3.org/12519
Reviewed-by: Helmut Hummel
Tested-by: Helmut Hummel
Reviewed-by: Christian Kuhn
Tested-by: Christian Kuhn

History

#1 Updated by Gerrit Code Review about 3 years ago

  • Status changed from New to Under Review

Patch set 1 for branch master has been pushed to the review server.
It is available at http://review.typo3.org/12519

#2 Updated by Gerrit Code Review about 3 years ago

Patch set 2 for branch master has been pushed to the review server.
It is available at http://review.typo3.org/12519

#3 Updated by Gerrit Code Review about 3 years ago

Patch set 3 for branch master has been pushed to the review server.
It is available at http://review.typo3.org/12519

#4 Updated by Gerrit Code Review about 3 years ago

Patch set 4 for branch master has been pushed to the review server.
It is available at http://review.typo3.org/12519

#5 Updated by Gerrit Code Review about 3 years ago

Patch set 5 for branch master has been pushed to the review server.
It is available at http://review.typo3.org/12519

#6 Updated by Gerrit Code Review about 3 years ago

Patch set 6 for branch master has been pushed to the review server.
It is available at http://review.typo3.org/12519

#7 Updated by Gerrit Code Review about 3 years ago

Patch set 7 for branch master has been pushed to the review server.
It is available at http://review.typo3.org/12519

#8 Updated by Gerrit Code Review about 3 years ago

Patch set 8 for branch master has been pushed to the review server.
It is available at http://review.typo3.org/12519

#9 Updated by Gerrit Code Review about 3 years ago

Patch set 9 for branch master has been pushed to the review server.
It is available at http://review.typo3.org/12519

#10 Updated by Gerrit Code Review about 3 years ago

Patch set 10 for branch master has been pushed to the review server.
It is available at http://review.typo3.org/12519

#11 Updated by Gerrit Code Review about 3 years ago

Patch set 11 for branch master has been pushed to the review server.
It is available at http://review.typo3.org/12519

#12 Updated by Gerrit Code Review about 3 years ago

Patch set 12 for branch master has been pushed to the review server.
It is available at http://review.typo3.org/12519

#13 Updated by Gerrit Code Review about 3 years ago

Patch set 13 for branch master has been pushed to the review server.
It is available at http://review.typo3.org/12519

#14 Updated by Gerrit Code Review about 3 years ago

Patch set 14 for branch master has been pushed to the review server.
It is available at http://review.typo3.org/12519

#15 Updated by Gerrit Code Review about 3 years ago

Patch set 15 for branch master has been pushed to the review server.
It is available at http://review.typo3.org/12519

#16 Updated by Gerrit Code Review about 3 years ago

Patch set 16 for branch master has been pushed to the review server.
It is available at http://review.typo3.org/12519

#17 Updated by Gerrit Code Review about 3 years ago

Patch set 17 for branch master has been pushed to the review server.
It is available at http://review.typo3.org/12519

#18 Updated by Christian Kuhn about 3 years ago

Immediate patch for phpunit (also as file)

--- a/Classes/Service/TestFinder.php
+++ b/Classes/Service/TestFinder.php
@ -365,7 +365,12 @ class Tx_Phpunit_Service_TestFinder implements t3lib_Singleton {

$loadedExtensionList = isset($GLOBALS['TYPO3_CONF_VARS']['EXT']['extList'])
? $GLOBALS['TYPO3_CONF_VARS']['EXT']['extList'] : '';
- $allExtensionKeys = t3lib_div::trimExplode(',', $loadedExtensionList . ',' . $requiredExtensionList, TRUE);

if (!is_array($loadedExtensionList)) {
+ $allExtensionKeys = t3lib_div::trimExplode(',', $loadedExtensionList . ',' . $requiredExtensionList, TRUE);
+ } else {
+ $allExtensionKeys = t3lib_extMgm::getLoadedExtensionListArray();
+ }
return array_unique($allExtensionKeys);
}

#20 Updated by Gerrit Code Review about 3 years ago

Patch set 18 for branch master has been pushed to the review server.
It is available at http://review.typo3.org/12519

#21 Updated by Gerrit Code Review about 3 years ago

Patch set 19 for branch master has been pushed to the review server.
It is available at http://review.typo3.org/12519

#22 Updated by Gerrit Code Review about 3 years ago

Patch set 20 for branch master has been pushed to the review server.
It is available at http://review.typo3.org/12519

#23 Updated by Gerrit Code Review about 3 years ago

Patch set 21 for branch master has been pushed to the review server.
It is available at http://review.typo3.org/12519

#24 Updated by Gerrit Code Review about 3 years ago

Patch set 22 for branch master has been pushed to the review server.
It is available at http://review.typo3.org/12519

#25 Updated by Gerrit Code Review about 3 years ago

Patch set 24 for branch master has been pushed to the review server.
It is available at http://review.typo3.org/12519

#26 Updated by Helge Funk about 3 years ago

  • Status changed from Under Review to Resolved
  • % Done changed from 0 to 100

Also available in: Atom PDF