diff options
author | Joey Hess <joey@gnu.kitenet.net> | 2009-05-19 13:06:35 -0400 |
---|---|---|
committer | Joey Hess <joey@gnu.kitenet.net> | 2009-05-19 13:06:35 -0400 |
commit | 53b1c6f559c1d09fbdbc28c8e4d5090dd455cd26 (patch) | |
tree | d379bb0acd2dd3e9370c37b27f03989398694977 /doc/bugs | |
parent | 18695056917a2f34a36e5e89df7f01deff9ab640 (diff) | |
parent | 4558457402a4ab6bc795589a2e400fa66144f76e (diff) | |
download | ikiwiki-53b1c6f559c1d09fbdbc28c8e4d5090dd455cd26.tar ikiwiki-53b1c6f559c1d09fbdbc28c8e4d5090dd455cd26.tar.gz |
Merge commit 'intrigeri/po' into po
Diffstat (limited to 'doc/bugs')
4 files changed, 176 insertions, 0 deletions
diff --git a/doc/bugs/CGI__44___formbuilder__44___non-existent_field_address.mdwn b/doc/bugs/CGI__44___formbuilder__44___non-existent_field_address.mdwn new file mode 100644 index 000000000..ef74deb91 --- /dev/null +++ b/doc/bugs/CGI__44___formbuilder__44___non-existent_field_address.mdwn @@ -0,0 +1,59 @@ +Error received when clicking on the "edit" link: + +> `Error: [CGI::FormBuilder::AUTOLOAD] Fatal: Attempt to address +> non-existent field 'text' by name at +> /home/tealart/bin/share/perl/5.8.4/IkiWiki/CGI.pm line 112` + +Error received when following a "Create New Page" (eg. ?) link: + +> `Error: [CGI::FormBuilder::AUTOLOAD] Fatal: Attempt to address +> non-existent field 'param' by name at +> /home/tealart/bin/share/perl/5.8.4/IkiWiki/Plugin/editpage.pm line 122` + +I could probably find several other flavors of this error if I went +looking, but I trust you get the idea. + +The CGI starts to render (this isn't the "you forgot to set the +permissions/turn on the CGI" error) and then fails. + +Further details: + +- Running on shared hosting (dreamhost; but everything compiles, + dependencies installed, the site generates perfectly, other CGIs + work, the file permissions work). + +- It's running perl 5.8.4, but I did upgrade gettext to 0.17 + +- the server is running gcc v3.3.5 (at this point, this is the main + difference between the working system and my box.) + +- I've removed the locale declarations from both the config file and + the environment variable. + +- I've also modified the page template and have my templates in a non + standard location. The wiki compiles fine, with the template, but + might this be an issue? The CGI script doesn't (seem) to load under + the new template, but I'm not sure how to address this issue. + +- All of the required/suggested module dependencies are installed + (finally) to the latest version including (relevantly) + CGI::FormBuilder 3.0501. + +- I'm running ikiwiki v3.08. Did I mention that it works perfectly in + nearly every other way that I've managed to test thusfar? + +---- + +> I suspect that your perl is too old and is incompatible with the version of CGI::FormBuilder you have installed. +> +> Is so, it seems likely that the same error message can be reproduced by running a simple command like this at the command line: +> +> perl -e 'use warnings; use strict; use CGI::FormBuilder; my $form=CGI::FormBuilder->new; $form->text("boo")' +> +> --[[Joey]] + +> > nope, that command produces no output. :/ +> > +> > I considered downgrading CGI::FormBuilder but I saw evidence of previous versions being incompatible with ikiwiki so I decided against that. +> > +> > -- [[tychoish]] diff --git a/doc/bugs/Dupe_entry_in_Bundle::IkiWiki::Extras.pm.mdwn b/doc/bugs/Dupe_entry_in_Bundle::IkiWiki::Extras.pm.mdwn new file mode 100644 index 000000000..236112786 --- /dev/null +++ b/doc/bugs/Dupe_entry_in_Bundle::IkiWiki::Extras.pm.mdwn @@ -0,0 +1,5 @@ +Authen::Passphrase + +is entered twice in the .pm file. + +[[done]] diff --git a/doc/bugs/Inline_doesn__39__t_wikilink_to_pages.mdwn b/doc/bugs/Inline_doesn__39__t_wikilink_to_pages.mdwn new file mode 100644 index 000000000..32f9f1245 --- /dev/null +++ b/doc/bugs/Inline_doesn__39__t_wikilink_to_pages.mdwn @@ -0,0 +1,100 @@ +It seems that the [[ikiwiki/directive/inline]] directive doesn't generate wikilinks to the pages it includes. For example I would expect the following to inline all bugs inside this bug report: + +\[[!inline pages="bugs/* and !*/discussion and backlink(bugs)" feeds=no postform=no archive=yes show="10"]] + +But here it is: + +[[!inline pages="bugs/* and !*/discussion and backlink(bugs)" feeds=no postform=no archive=yes show="10"]] + +and note that it only included the 'normal' wikilinks (and also note that this page is not marked done even though the done page is inlined). +One might also wonder if inline would make this page link to any internal links on those inlined pages too, but I think +that would be overkill. + +I'm not even really sure if this is a bug or defined behaviour, but I thought it might work and it didn't. Regardless, +the correct behaviour, whichever is decided, should be documented. -- [[Will]] + +It appears that [[ikiwiki/directive/map]] also doesn't wikilink to the pages it links. Perhaps in each of these +cases there should be another parameter to the directive that allows linking to switched on. Just switching +it on universally at this point might break a number of people's pagespecs. -- [[Will]] + +> There's a simple reason why these directives don't generate a record of a +> wikilink between them and the pages they include: Semantically, inlining +> a page is not the same as writing a link to it. Nor is generating a map that +> lists a page the same as linking to it. I don't think this is a bug. +> --[[Joey]] + +>> Fair enough. I guess we can mark this as [[done]] then. +>> +>> Just a bit of background on where I was going here... I was looking for +>> a simpler way of attacking [[todo/tracking_bugs_with_dependencies]]. +>> In particular, rather than introducing changes to the pagespec definition, +>> I wondered if you could use wiki pages as the defined pagespec and +>> introduce a 'match_mutual' function which matches whenever two pages +>> link to the same third page, then you don't need to alter the pagespec +>> handling code. +>> +>> But that requires being able use use a pagespec to decide what pages +>> are linked to. e.g. I want to make an 'openbugs' page that links to all +>> open bugs. Then I could make a 'readybugs' page that links to +>> `backlink(openbugs) and !mutualLink(openbugs)`. That is, all bugs +>> that are open and do not themselves link to an open bug. +>> +>> The problem with all this is that it introduces an ordering dependency, +>> as I noted below. I think the original proposal is better, because it +>> handles that ordering dependency in the definition of the pagespecs. +>> --[[Will]] + +Here is a patch to make map link to its linked pages (when passed `link="yes"`). It is a bit problematic in that it uses a pagespec +to decide what to link to (which is why I wanted it). However, at the time the pagespec is used the links +for each page haven't finished being calculated (we're using the pagespec to figure out those links, +remember). This means that some pagespec match functions may not work correctly. Sigh. +It would be nice to find a topological ordering of the pages and scan them in that order +so that everything we need is found before we need it, but this patch doesn't do that (it would be +complex). + +If you just use simple pagespecs you'll be fine. Unfortunately I really wanted this for more complex +pagespecs. -- [[Will]] + + diff --git a/IkiWiki/Plugin/map.pm b/IkiWiki/Plugin/map.pm + index 3284931..57c0a7a 100644 + --- a/IkiWiki/Plugin/map.pm + +++ b/IkiWiki/Plugin/map.pm + @@ -13,7 +13,7 @@ use IkiWiki 3.00; + + sub import { + hook(type => "getsetup", id => "map", call => \&getsetup); + - hook(type => "preprocess", id => "map", call => \&preprocess); + + hook(type => "preprocess", id => "map", call => \&preprocess, scan => 1); + } + + sub getsetup () { + @@ -27,7 +27,9 @@ sub getsetup () { + sub preprocess (@) { + my %params=@_; + $params{pages}="*" unless defined $params{pages}; + - + + + + return if (!defined wantarray && !IkiWiki::yesno($params{link})); + + + my $common_prefix; + + # Get all the items to map. + @@ -42,6 +44,9 @@ sub preprocess (@) { + else { + $mapitems{$page}=''; + } + + if (!defined wantarray && IkiWiki::yesno($params{link})) { + + push @{$links{$params{page}}}, $page; + + } + # Check for a common prefix. + if (! defined $common_prefix) { + $common_prefix=$page; + @@ -62,6 +67,8 @@ sub preprocess (@) { + } + } + + + return if ! defined wantarray; + + + # Common prefix should not be a page in the map. + while (defined $common_prefix && length $common_prefix && + exists $mapitems{$common_prefix}) { diff --git a/doc/bugs/user_links_on_recentchanges_pages_problem.mdwn b/doc/bugs/user_links_on_recentchanges_pages_problem.mdwn new file mode 100644 index 000000000..d00f6815b --- /dev/null +++ b/doc/bugs/user_links_on_recentchanges_pages_problem.mdwn @@ -0,0 +1,12 @@ +When I click on a linked username for commits on the recentchanges page (on +the live ikiwiki.info) I get a link such as +<http://ikiwiki.info/ikiwiki.cgi?page=users%2Fjoey&do=recentchanges_link> +which returns something like + + <a href="http://ikiwiki.info">ikiwiki</a>/ Error + <p class="error">Error: unknown do parameter + +-- [[Jon]] + +> That was fixed in 3.04 but ikiwiki.info had not been upgraded to it yet. +> [[done]] --[[Joey]] |