Item13357: Configure issues installing older extensions

pencil
Priority: Urgent
Current State: Closed
Released In: 1.2.0
Target Release: minor
Applies To: Engine
Component: Configure
Branches: master Item13331
Reported By: GeorgeClark
Waiting For:
Last Change By: CrawfordCurrie
Configure crashes trying to install GenPDFAddOn. Seems to be an issue in the definition of the Switchboard entry in Config.spec.

Failure:
Undefined subroutine &Foswiki::Configure::Value::HASH called at (eval 673) line 1.
at (eval 673) line 1.
eval 'HASH(0x92bd410)' called at /var/www/data/Foswiki-1.2.0/lib/Foswiki/Configure/Value.pm line 435
Foswiki::Configure::Value::decodeValue(Foswiki::Configure::Value=HASH(0x92d1678), HASH(0x92bd410)) called at /var/www/data/Foswiki-1.2.0/lib/Foswiki/Configure/Package.pm line 500
...

-- GeorgeClark - 07 Apr 2015

Any more information? Such as: (1) command-line or browser (2) exactly what you did (3) stack dumps/log contents?

-- CrawfordCurrie - 08 Apr 2015

  • Installed Beta 1, bootstrap and save config
  • Search for GenPDF extension
  • Study, and Install "GenPDFAddOn"
Install runs, and at conclusion a pink error pop-up occurs:

Undefined subroutine &Foswiki::Configure::Value::HASH called at (eval 672) line 1.
at (eval 672) line 1.
eval 'HASH(0x92dfef8)' called at /var/www/data/Foswiki-1.2.0_Beta_1/lib/Foswiki/Configure/Value.pm line 435
Foswiki::Configure::Value::decodeValue(Foswiki::Configure::Value=HASH(0x92e04d8), HASH(0x92dfef8)) called at /var/www/data/Foswiki-1.2.0_Beta_1/lib/Foswiki/Configure/Package.pm line 500
_SpecChecker::startVisit(_SpecChecker=HASH(0x92dfec8), Foswiki::Configure::Value=HASH(0x92e04d8)) called at /var/www/data/Foswiki-1.2.0_Beta_1/lib/Foswiki/Configure/Item.pm line 483
Foswiki::Configure::Item::visit(Foswiki::Configure::Value=HASH(0x92e04d8), _SpecChecker=HASH(0x92dfec8)) called at /var/www/data/Foswiki-1.2.0_Beta_1/lib/Foswiki/Configure/Section.pm line 133
Foswiki::Configure::Section::visit(Foswiki::Configure::Section=HASH(0x92e03f8), _SpecChecker=HASH(0x92dfec8)) called at /var/www/data/Foswiki-1.2.0_Beta_1/lib/Foswiki/Configure/Section.pm line 133
Foswiki::Configure::Section::visit(Foswiki::Configure::Section=HASH(0x92e0388), _SpecChecker=HASH(0x92dfec8)) called at /var/www/data/Foswiki-1.2.0_Beta_1/lib/Foswiki/Configure/Section.pm line 133
Foswiki::Configure::Section::visit(Foswiki::Configure::Root=HASH(0x92e6c40), _SpecChecker=HASH(0x92dfec8)) called at /var/www/data/Foswiki-1.2.0_Beta_1/lib/Foswiki/Configure/Package.pm line 934
Foswiki::Configure::Package::_install(Foswiki::Configure::Package=HASH(0x98d2af0), LoggingReporter=HASH(0x8f8c940)) called at /var/www/data/Foswiki-1.2.0_Beta_1/lib/Foswiki/Configure/Package.pm line 393
Foswiki::Configure::Package::install(Foswiki::Configure::Package=HASH(0x98d2af0), Foswiki::Configure::Reporter=HASH(0x900fcf8)) called at /var/www/data/Foswiki-1.2.0_Beta_1/lib/Foswiki/Configure/Wizards/InstallExtensions.pm line 182
Foswiki::Configure::Wizards::InstallExtensions::add(Foswiki::Configure::Wizards::InstallExtensions=HASH(0x903ad80), Foswiki::Configure::Reporter=HASH(0x900fcf8)) called at /var/www/data/Foswiki-1.2.0_Beta_1/lib/Foswiki/Configure/Query.pm line 538
Foswiki::Configure::Query::wizard(HASH(0x8ed3298), Foswiki::Configure::Reporter=HASH(0x900fcf8)) called at /var/www/data/Foswiki-1.2.0_Beta_1/lib/Foswiki/Plugins/ConfigurePlugin.pm line 150
Foswiki::Plugins::ConfigurePlugin::__ANON__(Foswiki=HASH(0x885cb58), Foswiki::Contrib::JsonRpcContrib::Request=HASH(0x8f8c030), Foswiki::Response=HASH(0x885cc08), undef) called at /var/www/data/Foswiki-1.2.0_Beta_1/lib/Foswiki/Contrib/JsonRpcContrib/Server.pm line 169
Foswiki::Contrib::JsonRpcContrib::Server::__ANON__() called at /usr/lib/perl5/vendor_perl/5.20.1/Error.pm line 419
eval {...} called at /usr/lib/perl5/vendor_perl/5.20.1/Error.pm line 411
Error::subs::try(CODE(0x8f8bd30), HASH(0x8ff0e50)) called at /var/www/data/Foswiki-1.2.0_Beta_1/lib/Foswiki/Contrib/JsonRpcContrib/Server.pm line 183
Foswiki::Contrib::JsonRpcContrib::Server::dispatch(Foswiki::Contrib::JsonRpcContrib::Server=HASH(0x8eaba08), Foswiki=HASH(0x885cb58)) called at /var/www/data/Foswiki-1.2.0_Beta_1/lib/Foswiki/Contrib/JsonRpcContrib.pm line 48
Foswiki::Contrib::JsonRpcContrib::dispatch(Foswiki=HASH(0x885cb58)) called at /var/www/data/Foswiki-1.2.0_Beta_1/lib/Foswiki/UI.pm line 374
Foswiki::UI::__ANON__() called at /usr/lib/perl5/vendor_perl/5.20.1/Error.pm line 419
eval {...} called at /usr/lib/perl5/vendor_perl/5.20.1/Error.pm line 411
Error::subs::try(CODE(0x804deb8), HASH(0x885c778)) called at /var/www/data/Foswiki-1.2.0_Beta_1/lib/Foswiki/UI.pm line 500
Foswiki::UI::_execute(Foswiki::Request=HASH(0x883f7b0), CODE(0x883f790), "jsonrpc", 1) called at 

-- GeorgeClark - 08 Apr 2015

Fails using shell installer as well, but no stackdump returned:

tools/extension_installer GenPDFAddOn install
...
> Installed:  pub/System/GenPDFAddOn/pdf-64.png as /var/www/data/Foswiki-1.2.0_Beta_1/pub/System/GenPDFAddOn/pdf-64.png
> Installed:  templates/view.genpdf.tmpl as /var/www/data/Foswiki-1.2.0_Beta_1/templates/view.genpdf.tmpl
Undefined subroutine &Foswiki::Configure::Value::HASH called at (eval 135) line 1.

-- GeorgeClark - 08 Apr 2015

All done, i think.

-- CrawfordCurrie - 09 Apr 2015

Sorry Crawford, I still can't install extensions on 1.2.0. I searched for ControlWikiWordPlugin. 2 issues

  1. On the search results, the checkbox is also the link to the Extensions web, so when I click the checkbox to select the extension, it opens a new browser window for the Extensions web topic.
  2. After the crash, revisiting the configuration, all the new config variables report ALERT! May not be undefined
  3. It crashes after the install with:
Can't call method "encodeValue" on an undefined value at /var/www/data/Foswiki-1.2.0_Beta_1/lib/Foswiki/Configure/Query.pm line 554.
at /var/www/data/Foswiki-1.2.0_Beta_1/lib/Foswiki/Configure/Query.pm line 554.
Foswiki::Configure::Query::wizard(HASH(0x8ed24f0), Foswiki::Configure::Reporter=HASH(0x900f670)) called at /var/www/data/Foswiki-1.2.0_Beta_1/lib/Foswiki/Plugins/ConfigurePlugin.pm line 159
Foswiki::Plugins::ConfigurePlugin::__ANON__(Foswiki=HASH(0x885c278), Foswiki::Contrib::JsonRpcContrib::Request=HASH(0x8f2f340), Foswiki::Response=HASH(0x885c328), undef) called at /var/www/data/Foswiki-1.2.0_Beta_1/lib/Foswiki/Contrib/JsonRpcContrib/Server.pm line 169
Foswiki::Contrib::JsonRpcContrib::Server::__ANON__() called at /usr/lib/perl5/vendor_perl/5.20.1/Error.pm line 419
eval {...} called at /usr/lib/perl5/vendor_perl/5.20.1/Error.pm line 411
Error::subs::try(CODE(0x8e1baf0), HASH(0x8fe1d90)) called at /var/www/data/Foswiki-1.2.0_Beta_1/lib/Foswiki/Contrib/JsonRpcContrib/Server.pm line 183
Foswiki::Contrib::JsonRpcContrib::Server::dispatch(Foswiki::Contrib::JsonRpcContrib::Server=HASH(0x8eae868), Foswiki=HASH(0x885c278)) called at /var/www/data/Foswiki-1.2.0_Beta_1/lib/Foswiki/Contrib/JsonRpcContrib.pm line 48
Foswiki::Contrib::JsonRpcContrib::dispatch(Foswiki=HASH(0x885c278)) called at /var/www/data/Foswiki-1.2.0_Beta_1/lib/Foswiki/UI.pm line 374
Foswiki::UI::__ANON__() called at /usr/lib/perl5/vendor_perl/5.20.1/Error.pm line 419
eval {...} called at /usr/lib/perl5/vendor_perl/5.20.1/Error.pm line 411
Error::subs::try(CODE(0x804deb8), HASH(0x885be98)) called at /var/www...

I also tried GenPdfAddOn ... same issues.

Steps to recreate:
  • Generate a new beta. cd tools && perl build.pl release
  • Extract into a new install, bootstrap and save config.
  • Search for new extensions: "GenPDF" or "ControlWiki"
  • Select GenPDFAddOn, or ControlWikiWordPlugin and try to install.

-- GeorgeClark - 16 Apr 2015

The Package.pm was not adding what it read from Config.spec of the package back into the root config, so the reporter had no way of knowing what type the newly added things were. It needs that type, as it uses it to correctly format the values it sends back to the UI.

Once again, "should be OK now"

-- CrawfordCurrie - 17 Apr 2015

 
Topic revision: r12 - 23 Apr 2015, CrawfordCurrie
The copyright of the content on this website is held by the contributing authors, except where stated elsewhere. See Copyright Statement. Creative Commons License    Legal Imprint    Privacy Policy