Priority: Urgent
Current State: Closed
Released In: 1.2.0
Target Release:
Applies To: Engine
Component: Configure
Branches: trunk
Configure does not correctly detect pseudo-installed extensions.
For example:
http://trunk.foswiki.org/bin/configure/FindMoreExtensions Reports that the following extensions are eligible for upgrade / not pseudo-installed
Also the
UpdatesPlugin reports that pseudo-installed extensions need update. And
UpdatesPlugin itself is not detected as installed in
FindMoreExtensions however it does show up in the Enable/Disable list in configure.
--
GeorgeClark - 03 Jan 2014
The issue is that
Dependency.pm
issues a load to obtain the module version. When run under configure, this also creates a full Foswiki instance, which in turn loads
LocalSite.cfg and can overlay the configure hash.
Configure now detects this, which causes load errors, and the check for symbolic link / pseudo installed in Dependency.pm is bypassed.
Configure has mostly been changed to use
Foswiki::Configure::UI::extractModuleVersion()
to avoid loading any modules. This all needs a bit more refactoring. We should not have multiple dependency check mechanisms.
--
GeorgeClark - 03 Jan 2014
I'm moving extractModuleVersion into Dependency and reworked Dependency.pm to no longer load modules. This is much safer, as we've had numerous issues, configure hangs, and other issues where loading a module caused problems.
This also moves all dependency checking into a single location.
Some more refactoring could still be done. Configure does it's own version checks in
Foswiki::Configure::UI::checkPerlModules()
. This should probably be folded into Dependency, as that module has unit test coverage.
--
GeorgeClark - 04 Jan 2014