[TYPO3-core] RFC: Bug #17244: Error Message while Updating 4.4.6 > 4.5

Ernesto Baschny [cron IT] ernst at cron-it.de
Mon Jan 31 08:18:25 CET 2011


Steffen Kamper schrieb am 28.01.2011 22:27:

> Am 28.01.2011 21:21, schrieb Oliver Hader:
>> Well, I don't think this makes things complicated. We just should ensure
>> that the install tool has the basic required extensions available if
>> they are required there. It's not required to load all EM classes by
>> default and create a new very special case there...
>>
>> If there are doubts concerning the new "ignoredExt" settings, this could
>> be removed. Thus the install tool uses the extensions defined in the new
>> constant - otherwise in FE and BE the values as given in requiredExt are
>> used.

> yes, it makes sense.
> So why not simply overwrite
> $GLOBALS['TYPO3_CONF_VARS']['EXT']['requiredExt'] in install tool? I
> don't think we need ignored extensions, just make sure that all tools
> installtool needs are available.

I think the problem is more broad than just the "Install Tool":

The wrong "requiredExt" in localconf.php is was usually written by an
old TYPO3 version (with only "cms,lang,sv"). So it also doesn't contain
"recordlist" sysext (so live search will break). The user / upgrader
usually doesn't recall they have this line (because it always worked
with it).

So we have to create a way to "re-add" the new sysext to the users setup.

1) One way would be to define a constant like Olly proposes, which is
not configurable, but we ship it with TYPO3: "this is our list of
required extensions".

But keeping the features we used to have:

* requiredExt => users might have added other extensions they think are
"required" in their particular setup, so that they cannot be uninstalled
through the EM. We need to respect that.

* ignoredExt => the "em", since it is a sysext now, should be
"removeable", but since introducing the constant won't make it possible,
this new setting re-allows that.

> Isn't that the same fpr DBAL which is also only activated for install tool?

Chicken / Egg problem: how to enable "EM" if the "EM" is required to do so?

In my opinion just loading the ext_autoload is weak, because we might
have other dependencies added in the EM classes in future, which assume
the "EM" extension is installed, which will be really difficult to spot
(e.g. loading some external file with "EXT:em", ...).


Cheers,
Ernesto


More information about the TYPO3-team-core mailing list