ikiwiki/doc/bugs/undefined_value_as_a_HASH_r...

69 lines
3.4 KiB
Markdown

Hello,
does anyone have an idea why I see the following error when I run websetup (Setup button in Preferences)?
Error: Can't use an undefined value as a HASH reference at /usr/share/perl5/IkiWiki/Plugin/websetup.pm line 82, line 97.
Maybe, related to this is also
$ ikiwiki --setup /etc/ikiwiki/auto-blog.setup
What will the blog be named? tmpblog
What revision control system to use? git
What wiki user (or openid) will be admin? wsh
Setting up tmpblog ...
Importing /home/wsh/tmpblog into git
Initialized empty shared Git repository in /home/wsh/tmpblog.git/
Initialized empty Git repository in /home/wsh/tmpblog/.git/
[master (root-commit) d6847e1] initial commit
8 files changed, 48 insertions(+)
create mode 100644 .gitignore
create mode 100644 archives.mdwn
create mode 100644 comments.mdwn
create mode 100644 index.mdwn
create mode 100644 posts.mdwn
create mode 100644 posts/first_post.mdwn
create mode 100644 sidebar.mdwn
create mode 100644 tags.mdwn
Counting objects: 11, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (9/9), done.
Writing objects: 100% (11/11), 1.53 KiB, done.
Total 11 (delta 0), reused 0 (delta 0)
Unpacking objects: 100% (11/11), done.
To /home/wsh/tmpblog.git
* [new branch] master -> master
Directory /home/wsh/tmpblog is now a clone of git repository /home/wsh/tmpblog.git
Reference found where even-sized list expected at /usr/share/perl5/IkiWiki/Setup.pm line 177, <GEN4> line 97.
Reference found where even-sized list expected at /usr/share/perl5/IkiWiki/Setup.pm line 224, <GEN4> line 97.
Use of uninitialized value $section in hash element at /usr/share/perl5/IkiWiki/Setup.pm line 226, <GEN4> line 97.
Use of uninitialized value $section in hash element at /usr/share/perl5/IkiWiki/Setup.pm line 227, <GEN4> line 97.
Use of uninitialized value $section in concatenation (.) or string at /usr/share/perl5/IkiWiki/Setup.pm line 233, <GEN4> line 97.
/etc/ikiwiki/auto-blog.setup: Can't use an undefined value as a HASH reference at /usr/share/perl5/IkiWiki/Setup.pm line 252, <GEN4> line 97.
usage: ikiwiki [options] source dest
ikiwiki --setup configfile
I'm on Debian unstable.
Thanks,
-Michal
> Some plugin has a broken getsetup hook, and is feeding a corrupted setup list in. Both the websetup and the auto.setup files cause all plugins to be loaded and all their setup to be available.
>
> This command will help you find the plugin. Here it prints some noise around the rst plugin, for unrelated reasons,
> but what you're looking for is the plugin printed before the "even sized list" message.
<pre>
perl -le 'use warnings; use strict; use Data::Dumper; use IkiWiki; %config=IkiWiki::defaultconfig(); use IkiWiki::Setup; my @s=IkiWiki::Setup::getsetup(); foreach my $pair (@s) { print "plugin ".$pair->[0]; my $setup=$pair->[1]; if ($pair->[0] eq "rst") { print Dumper($setup)} my %s=@{$setup} }'
</pre>
> I was able to replicate this by making a plugin's getsetup hook return a list reference, rather than a list,
> and have put in a guard against that sort of thing.
> --[[Joey]]
>> Thanks. Your command didn't helped me, but with trial and error approach I found that the victim an old version asciidoc plugin. For some reason, asciidoc was never listed in the output of the command. --[[wentasah]]
>>> Ok. My fix should prevent the problem, so [[done]] --[[Joey]]