From 7ab84dcfe52a37b93e6faa49895ae963a3b5d0d1 Mon Sep 17 00:00:00 2001 From: Joey Hess Date: Mon, 30 Aug 2010 13:15:49 -0400 Subject: highlight: Make location of highlight's files configurable in setup file to allow for nonstandard installations. --- doc/bugs/Highlight_extension_uses_hard_coded_paths.mdwn | 2 ++ 1 file changed, 2 insertions(+) (limited to 'doc/bugs') diff --git a/doc/bugs/Highlight_extension_uses_hard_coded_paths.mdwn b/doc/bugs/Highlight_extension_uses_hard_coded_paths.mdwn index 1b9cb2e2d..275661fb8 100644 --- a/doc/bugs/Highlight_extension_uses_hard_coded_paths.mdwn +++ b/doc/bugs/Highlight_extension_uses_hard_coded_paths.mdwn @@ -1 +1,3 @@ The [[plugins/highlight]] plugin hard codes some paths up the top of the plugin. This means that you need to edit the ikiwiki source if you have highlight installed in a non-standard location (e.g. if you have done a user-level install of the highlight package). + +> configurable now, [[done]] --[[Joey]] -- cgit v1.2.3 From 88594e75994c80ca5f2f311f0375b7ce98ecd3ed Mon Sep 17 00:00:00 2001 From: Joey Hess Date: Mon, 30 Aug 2010 13:42:55 -0400 Subject: more info? --- doc/bugs/po:_po_files_instead_of_html_files.mdwn | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'doc/bugs') diff --git a/doc/bugs/po:_po_files_instead_of_html_files.mdwn b/doc/bugs/po:_po_files_instead_of_html_files.mdwn index 933e348c4..6e12b51be 100644 --- a/doc/bugs/po:_po_files_instead_of_html_files.mdwn +++ b/doc/bugs/po:_po_files_instead_of_html_files.mdwn @@ -4,3 +4,9 @@ Links: index index.fr templates templates.fr When i click on "templates.fr", i get the po.file instead of html. Sorry for the noise! I set "po_master_language" to fr and all was ok. [[done]]. + +> Any chance you could be a bit more verbose about what the +> misconfiguration was? I don't think the po plugin should behave like that +> in any configuration. Unless, perhaps, it was just not configured to +> support any languages at all, and so the po file was treated as a raw +> file. --[[Joey]] -- cgit v1.2.3 From 5afd6e0f701d98f1dbb512c11853589c96c9dd0b Mon Sep 17 00:00:00 2001 From: Joey Hess Date: Mon, 30 Aug 2010 15:27:26 -0400 Subject: forgot to add this --- ...nslatable_basewiki_pages_that_lack_po_fies.mdwn | 73 ++++++++++++++++++++++ 1 file changed, 73 insertions(+) create mode 100644 doc/bugs/po:broken_links_to_translatable_basewiki_pages_that_lack_po_fies.mdwn (limited to 'doc/bugs') diff --git a/doc/bugs/po:broken_links_to_translatable_basewiki_pages_that_lack_po_fies.mdwn b/doc/bugs/po:broken_links_to_translatable_basewiki_pages_that_lack_po_fies.mdwn new file mode 100644 index 000000000..121d33807 --- /dev/null +++ b/doc/bugs/po:broken_links_to_translatable_basewiki_pages_that_lack_po_fies.mdwn @@ -0,0 +1,73 @@ +broken links to translatable basewiki pages that lack po files +-------------------------------------------------------------- + +If a page is not translated yet, the "translated" version of it +displays wikilinks to other, existing (but not yet translated?) +pages as edit links, as if those pages do not exist. + +That's really confusing, especially as clicking such a link +brings up an edit form to create a new, english page. + +This is with po_link_to=current or negotiated. With default, it doesn't +happen.. + +Also, this may only happen if the page being linked to is coming from an +underlay, and the underlays lack translation to a given language. +--[[Joey]] + +> Any simple testcase to reproduce it, please? I've never seen this +> happen yet. --[[intrigeri]] + +>> Sure, go here +>> (Currently 0% translateed) and see the 'WikiLink' link at the bottom, +>> which goes to +>> Compare with eg, the 100% translated Dansk version, where +>> the WikiLink link links to the English WikiLink page. --[[Joey]] + +>>> Seems not related to the page/string translation status: the 0% +>>> translated Spanish version has the correct link, just like the +>>> Dansk version => I'm changing the bug title accordingly. +>>> +>>> I tested forcing the sv html page to be rebuilt by translating a +>>> string in it, it did not fix the bug. I did the same for the +>>> Spanish page, it did not introduce the bug. So this is really +>>> weird. +>>> +>>> The smiley underlay seems to be the only place where the wrong +>>> thing happens: the basewiki underlay has similar examples +>>> that do not exhibit this bug. An underlay linking to another might +>>> be necessary to reproduce it. Going to dig deeper. --[[intrigeri]] + +>>>> After a few hours lost in the Perl debugger, I think I have found +>>>> the root cause of the problem: in l10n wiki's configured +>>>> `underlaydir`, the basewiki is present in every slave language +>>>> that is enabled for this wiki *but* Swedish. With such a +>>>> configuration, the `ikiwiki/wikilink` page indeed does not exist +>>>> in Swedish language: no `ikiwiki/wikilink.sv.po` can be found +>>>> where ikiwiki is looking. Have a look to +>>>> , the basewiki is not +>>>> available in Swedish language on this wiki. So this is not a po +>>>> bug, but a configuration or directories layout issue. This is +>>>> solved by adding the Swedish basewiki to the underlay dir, which +>>>> is I guess not a possibility in the l10n wiki context. I guess +>>>> this could be solved by adding `SRCDIR/basewiki` as an underlay +>>>> to your l10n wiki configuration, possibly using the +>>>> `add_underlays` configuration directive. --[[intrigeri]] + +>>>>> There is no complete Swedish underlay translation yet, so it is not +>>>>> shipped in ikiwiki. I don't think it's a misconfiguration to use +>>>>> a language that doesn't have translated underlays. --[[Joey]] + +>>>>>> Ok. The problem is triggered when using a language that doesn't +>>>>>> have translated underlays, *and* defining +>>>>>> `po_translatable_pages` in a way that renders the base wiki +>>>>>> pages translatable in po's view of things, which in turns makes +>>>>>> the po plugin act as if the translation pages did exist, +>>>>>> although they do not in this case. I still need to have a deep +>>>>>> look at the underlays-related code you added to `po.pm` a while +>>>>>> ago. Stay tuned. --[[intrigeri]] + +>>>>>>> Fixed in my po branch, along with other related small bugs that +>>>>>>> happen in the very same situation only. --[[intrigeri]] + +>>>>>>>> Merged. Not tested yet, but I trust you; [[done]] --[[Joey]] -- cgit v1.2.3 From 47cfd14e8436e201facfa906a615fd272dfc156b Mon Sep 17 00:00:00 2001 From: Joey Hess Date: Mon, 30 Aug 2010 15:53:37 -0400 Subject: add bug lifted from irc --- .../httpauth_conflicts_with_git_anon_push.mdwn | 25 ++++++++++++++++++++++ 1 file changed, 25 insertions(+) create mode 100644 doc/bugs/httpauth_conflicts_with_git_anon_push.mdwn (limited to 'doc/bugs') diff --git a/doc/bugs/httpauth_conflicts_with_git_anon_push.mdwn b/doc/bugs/httpauth_conflicts_with_git_anon_push.mdwn new file mode 100644 index 000000000..3e496fef4 --- /dev/null +++ b/doc/bugs/httpauth_conflicts_with_git_anon_push.mdwn @@ -0,0 +1,25 @@ +Someone tried to report a bug using IRC while I was on vacation. +--[[Joey]] + +
+julm: [11:58:35] han, it's me the problem; I was generating a post-update hook instead of a pre-receive hook
+julm: [12:03:59] why does the pre-receive hook return: "Status: 302 Found" and a "Location: "? Is it normal?
+julm: [00:08:44] it's Plugin/httpauth.pm which is outputing those Status and Location
+julm: [00:09:12] problem is that it's an anonymous push via git://
+julm: [03:28:53] hacked my way to fix it somehow: http://git.internet.alpes.fr.eu.org/?p=web/ikiwiki.git;a=commitdiff;h=7211df4f7457c3afab53822a97cbd21825c473f4
+
+ +Analysis: + +* IkiWiki::Receive calls `check_canedit`. +* httpauth's canedit hook returns an error handler function + which redirects the browser through the cgiauthurl. + (Similarly, signinedit's hook may call needsignin, which + can display a signin form. +* That doesn't work well when doing a git anon push. :) +* Also, IkiWiki::Receive calls `check_canattach` and + `check_canremove`, which both also call `check_canedit`. + +So, all these calls need to avoid running the error handler +functions returned by canedit hooks, and just return error +messages. -- cgit v1.2.3 From a330b1ee743f093a03ff23b2d4bff42df7def8b9 Mon Sep 17 00:00:00 2001 From: Joey Hess Date: Mon, 30 Aug 2010 16:05:15 -0400 Subject: Avoid trying to log the user in when receiving anonymous pushes from git and a plugin like httpauth returns a login function. Just use check_canedit in nonfatal mode. --- IkiWiki/Receive.pm | 3 +-- debian/changelog | 2 ++ doc/bugs/httpauth_conflicts_with_git_anon_push.mdwn | 2 +- 3 files changed, 4 insertions(+), 3 deletions(-) (limited to 'doc/bugs') diff --git a/IkiWiki/Receive.pm b/IkiWiki/Receive.pm index d116049c4..14936f8cd 100644 --- a/IkiWiki/Receive.pm +++ b/IkiWiki/Receive.pm @@ -95,8 +95,7 @@ sub test () { if ($change->{action} eq 'change' || $change->{action} eq 'add') { if (defined $page) { - IkiWiki::check_canedit($page, $cgi, $session); - next; + next if IkiWiki::check_canedit($page, $cgi, $session, 1); } else { if (IkiWiki::Plugin::attachment->can("check_canattach")) { diff --git a/debian/changelog b/debian/changelog index df74e35d1..a1ef33b22 100644 --- a/debian/changelog +++ b/debian/changelog @@ -23,6 +23,8 @@ ikiwiki (3.20100816) UNRELEASED; urgency=low setup. (intrigeri) * t/bazaar.t: Work around bzr 2.2.0's new requirement to configure bzr whoami before committing. + * Avoid trying to log the user in when receiving anonymous pushes + from git and a plugin like httpauth returns a login function. -- Joey Hess Sun, 15 Aug 2010 11:45:48 -0400 diff --git a/doc/bugs/httpauth_conflicts_with_git_anon_push.mdwn b/doc/bugs/httpauth_conflicts_with_git_anon_push.mdwn index 3e496fef4..91507f57a 100644 --- a/doc/bugs/httpauth_conflicts_with_git_anon_push.mdwn +++ b/doc/bugs/httpauth_conflicts_with_git_anon_push.mdwn @@ -22,4 +22,4 @@ Analysis: So, all these calls need to avoid running the error handler functions returned by canedit hooks, and just return error -messages. +messages. [[done]] --[[Joey]] -- cgit v1.2.3 From 3f9244ccf4b7e85acf7816217db67c0b34650854 Mon Sep 17 00:00:00 2001 From: philippe Date: Sat, 4 Sep 2010 07:39:10 +0000 Subject: --- doc/bugs/po:_po_files_instead_of_html_files.mdwn | 10 ++++++++++ 1 file changed, 10 insertions(+) (limited to 'doc/bugs') diff --git a/doc/bugs/po:_po_files_instead_of_html_files.mdwn b/doc/bugs/po:_po_files_instead_of_html_files.mdwn index 6e12b51be..d893c71d9 100644 --- a/doc/bugs/po:_po_files_instead_of_html_files.mdwn +++ b/doc/bugs/po:_po_files_instead_of_html_files.mdwn @@ -10,3 +10,13 @@ When i click on "templates.fr", i get the po.file instead of html. > in any configuration. Unless, perhaps, it was just not configured to > support any languages at all, and so the po file was treated as a raw > file. --[[Joey]] + +>> I can reproduce the bug with: + # po plugin + # master language (non-PO files) + po_master_language => { + code => 'en', + name => 'English' + }, + # slave languages (PO files) + po_slave_languages => [qw{fr|Français}], -- cgit v1.2.3 From 0842297678e72819273cd3bfa52420958b36c7e2 Mon Sep 17 00:00:00 2001 From: "https://www.google.com/accounts/o8/id?id=AItOawkIl2-FajX9MSbbfcPYvzbmbsemGJJfXds" Date: Mon, 6 Sep 2010 14:13:49 +0000 Subject: --- doc/bugs/ikiwiki_ignores_PATH_environment.mdwn | 9 +++++++++ 1 file changed, 9 insertions(+) create mode 100644 doc/bugs/ikiwiki_ignores_PATH_environment.mdwn (limited to 'doc/bugs') diff --git a/doc/bugs/ikiwiki_ignores_PATH_environment.mdwn b/doc/bugs/ikiwiki_ignores_PATH_environment.mdwn new file mode 100644 index 000000000..63ac4bc31 --- /dev/null +++ b/doc/bugs/ikiwiki_ignores_PATH_environment.mdwn @@ -0,0 +1,9 @@ +At the very top of the main ikiwiki executable script the `PATH` environment is set like this: + + $ENV{PATH}="/usr/local/bin:/usr/bin:/bin:/opt/local/bin"; + +This makes it a little hard to specify which specific binaries should be used, especially if there is more than one of them available (see c.f. where the MacPorts-supplied, up-to-date subversion should be used and not an arcane one from the base distro / OS). Is there a specific reason why ikiwiki wipes out `$PATH` like this or could that line be improved to + + $ENV{PATH}="$ENV{PATH}:/usr/local/bin:/usr/bin:/bin:/opt/local/bin"; + +? The alternative is of course to patch ikiwiki as suggested in the bug, but I wanted to ask here first :) -- cgit v1.2.3 From 5f101ab1209e36c6e1a415a2e17677224025077c Mon Sep 17 00:00:00 2001 From: intrigeri Date: Tue, 7 Sep 2010 19:18:24 +0200 Subject: Removing tag done as it seems to need some more care. --- doc/bugs/po:_po_files_instead_of_html_files.mdwn | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'doc/bugs') diff --git a/doc/bugs/po:_po_files_instead_of_html_files.mdwn b/doc/bugs/po:_po_files_instead_of_html_files.mdwn index d893c71d9..8238f50df 100644 --- a/doc/bugs/po:_po_files_instead_of_html_files.mdwn +++ b/doc/bugs/po:_po_files_instead_of_html_files.mdwn @@ -3,7 +3,7 @@ At the bottom of this page, there is the "Links" line: Links: index index.fr templates templates.fr When i click on "templates.fr", i get the po.file instead of html. - Sorry for the noise! I set "po_master_language" to fr and all was ok. [[done]]. + Sorry for the noise! I set "po_master_language" to fr and all was ok. > Any chance you could be a bit more verbose about what the > misconfiguration was? I don't think the po plugin should behave like that -- cgit v1.2.3 From 5c6c0813ca8dff8c42ac32ed9702568228f8407b Mon Sep 17 00:00:00 2001 From: Joey Hess Date: Tue, 7 Sep 2010 13:47:50 -0400 Subject: Remove PATH overriding code in ikiwiki script that was present to make perl taint checking happy, but taint checking is disabled. --- debian/changelog | 2 ++ doc/bugs/ikiwiki_ignores_PATH_environment.mdwn | 9 +++++++++ ikiwiki.in | 3 --- 3 files changed, 11 insertions(+), 3 deletions(-) (limited to 'doc/bugs') diff --git a/debian/changelog b/debian/changelog index 430bd302c..a9892938a 100644 --- a/debian/changelog +++ b/debian/changelog @@ -3,6 +3,8 @@ ikiwiki (3.20100832) UNRELEASED; urgency=low * needsbuild hook interface changed; the hooks should now return the modified array of things that need built. (Backwards compatability code keeps plugins using the old interface working.) + * Remove PATH overriding code in ikiwiki script that was present to make + perl taint checking happy, but taint checking is disabled. -- Joey Hess Tue, 07 Sep 2010 12:08:05 -0400 diff --git a/doc/bugs/ikiwiki_ignores_PATH_environment.mdwn b/doc/bugs/ikiwiki_ignores_PATH_environment.mdwn index 63ac4bc31..5097acaef 100644 --- a/doc/bugs/ikiwiki_ignores_PATH_environment.mdwn +++ b/doc/bugs/ikiwiki_ignores_PATH_environment.mdwn @@ -7,3 +7,12 @@ This makes it a little hard to specify which specific binaries should be used, e $ENV{PATH}="$ENV{PATH}:/usr/local/bin:/usr/bin:/bin:/opt/local/bin"; ? The alternative is of course to patch ikiwiki as suggested in the bug, but I wanted to ask here first :) + +> You can use the ENV setting in your setup file to set any environment +> variables you like. Since ikiwiki.cgi is run by the web browser, that +> is the best way to ensure ikiwiki always runs with a given variable set. +> +> As a suid program, the ikiwiki wrappers have to sanitize the environment. +> The ikiwiki script's own sanitization of PATH was done to make perl taint +> checking happy, but as taint checking is disabled anyway, I have removed +> that. [[done]] --[[Joey]] diff --git a/ikiwiki.in b/ikiwiki.in index bcda2469b..339efd37c 100755 --- a/ikiwiki.in +++ b/ikiwiki.in @@ -1,7 +1,4 @@ #!/usr/bin/perl -$ENV{PATH}="/usr/local/bin:/usr/bin:/bin"; -delete @ENV{qw{IFS CDPATH ENV BASH_ENV}}; - package IkiWiki; use warnings; -- cgit v1.2.3 From a68e98d9c26e6133624a3b4a54a6a67ce0d2fd86 Mon Sep 17 00:00:00 2001 From: Joey Hess Date: Sat, 11 Sep 2010 13:06:45 -0400 Subject: bug report --- doc/bugs/po:_markdown_link_parse_bug.mdwn | 14 ++++++++++++++ 1 file changed, 14 insertions(+) create mode 100644 doc/bugs/po:_markdown_link_parse_bug.mdwn (limited to 'doc/bugs') diff --git a/doc/bugs/po:_markdown_link_parse_bug.mdwn b/doc/bugs/po:_markdown_link_parse_bug.mdwn new file mode 100644 index 000000000..93400f4c0 --- /dev/null +++ b/doc/bugs/po:_markdown_link_parse_bug.mdwn @@ -0,0 +1,14 @@ +Apparently this is legal markdown, though unusual syntax for a link: + + \[Branchable](http://www.branchable.com/ "Ikiwiki hosting") + +If that is put on a translatable page, the translations display it not as a +link, but in the escaped form that appears above. + +Probably a po4a bug, but I don't see the bug clearly in the gernerated po +file: + + "This was posted automatically by [Branchable](http://www.branchable.com/ " + "\"Ikiwiki hosting\") when I signed up." + +--[[Joey]] -- cgit v1.2.3 From 0ef8c10fe4a025ad13a8e5e1d3a4569489455ec4 Mon Sep 17 00:00:00 2001 From: Joey Hess Date: Sat, 11 Sep 2010 13:08:31 -0400 Subject: formatting --- doc/bugs/po:_markdown_link_parse_bug.mdwn | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'doc/bugs') diff --git a/doc/bugs/po:_markdown_link_parse_bug.mdwn b/doc/bugs/po:_markdown_link_parse_bug.mdwn index 93400f4c0..10715001c 100644 --- a/doc/bugs/po:_markdown_link_parse_bug.mdwn +++ b/doc/bugs/po:_markdown_link_parse_bug.mdwn @@ -1,9 +1,9 @@ Apparently this is legal markdown, though unusual syntax for a link: - \[Branchable](http://www.branchable.com/ "Ikiwiki hosting") + [Branchable](http://www.branchable.com/ "Ikiwiki hosting") If that is put on a translatable page, the translations display it not as a -link, but in the escaped form that appears above. +link, but as plain text. Probably a po4a bug, but I don't see the bug clearly in the gernerated po file: -- cgit v1.2.3 From 75bf370d4c9aedaa039a93753ff093447c8f09fc Mon Sep 17 00:00:00 2001 From: blipvert Date: Sun, 12 Sep 2010 15:36:28 +0000 Subject: --- doc/bugs/git.pm_should_prune_remote_branches_when_fetching.mdwn | 3 +++ 1 file changed, 3 insertions(+) create mode 100644 doc/bugs/git.pm_should_prune_remote_branches_when_fetching.mdwn (limited to 'doc/bugs') diff --git a/doc/bugs/git.pm_should_prune_remote_branches_when_fetching.mdwn b/doc/bugs/git.pm_should_prune_remote_branches_when_fetching.mdwn new file mode 100644 index 000000000..50047789e --- /dev/null +++ b/doc/bugs/git.pm_should_prune_remote_branches_when_fetching.mdwn @@ -0,0 +1,3 @@ +The _git_ module does not appear ever to prune obsolete remote branches in the _srcdir_ repository, leading to spurious errors when fetching. + +Pruning remote branches is done automatically with the --prune option to "git fetch" or in a separate command "git remote prune". -- cgit v1.2.3 From c2950540725db1dda7c02f567c7c26a0f86c98f3 Mon Sep 17 00:00:00 2001 From: blipvert Date: Sun, 12 Sep 2010 15:38:19 +0000 Subject: added signature --- doc/bugs/git.pm_should_prune_remote_branches_when_fetching.mdwn | 2 ++ 1 file changed, 2 insertions(+) (limited to 'doc/bugs') diff --git a/doc/bugs/git.pm_should_prune_remote_branches_when_fetching.mdwn b/doc/bugs/git.pm_should_prune_remote_branches_when_fetching.mdwn index 50047789e..137fc2398 100644 --- a/doc/bugs/git.pm_should_prune_remote_branches_when_fetching.mdwn +++ b/doc/bugs/git.pm_should_prune_remote_branches_when_fetching.mdwn @@ -1,3 +1,5 @@ The _git_ module does not appear ever to prune obsolete remote branches in the _srcdir_ repository, leading to spurious errors when fetching. Pruning remote branches is done automatically with the --prune option to "git fetch" or in a separate command "git remote prune". + +--[[blipvert]] -- cgit v1.2.3 From adfe73de439162ec3dca344573409fb89a8909ce Mon Sep 17 00:00:00 2001 From: blipvert Date: Sun, 12 Sep 2010 17:01:55 +0000 Subject: minor grammatical edit --- doc/bugs/git.pm_should_prune_remote_branches_when_fetching.mdwn | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'doc/bugs') diff --git a/doc/bugs/git.pm_should_prune_remote_branches_when_fetching.mdwn b/doc/bugs/git.pm_should_prune_remote_branches_when_fetching.mdwn index 137fc2398..4f42b082f 100644 --- a/doc/bugs/git.pm_should_prune_remote_branches_when_fetching.mdwn +++ b/doc/bugs/git.pm_should_prune_remote_branches_when_fetching.mdwn @@ -1,5 +1,5 @@ The _git_ module does not appear ever to prune obsolete remote branches in the _srcdir_ repository, leading to spurious errors when fetching. -Pruning remote branches is done automatically with the --prune option to "git fetch" or in a separate command "git remote prune". +Pruning remote branches can be done automatically with the --prune option to "git fetch" or in a separate command "git remote prune". --[[blipvert]] -- cgit v1.2.3 From f4392bc4dd3be5833b8a7b3c1b37515a7e3b3b1f Mon Sep 17 00:00:00 2001 From: Joey Hess Date: Sun, 12 Sep 2010 15:56:17 -0400 Subject: response --- doc/bugs/git.pm_should_prune_remote_branches_when_fetching.mdwn | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'doc/bugs') diff --git a/doc/bugs/git.pm_should_prune_remote_branches_when_fetching.mdwn b/doc/bugs/git.pm_should_prune_remote_branches_when_fetching.mdwn index 4f42b082f..bf68350e3 100644 --- a/doc/bugs/git.pm_should_prune_remote_branches_when_fetching.mdwn +++ b/doc/bugs/git.pm_should_prune_remote_branches_when_fetching.mdwn @@ -3,3 +3,7 @@ The _git_ module does not appear ever to prune obsolete remote branches in the _ Pruning remote branches can be done automatically with the --prune option to "git fetch" or in a separate command "git remote prune". --[[blipvert]] + +> I'll need more information than that before I add extra processing +> work to the current git commands it uses. I don't see any errors here +> from obsolete remote branches. --[[Joey]] -- cgit v1.2.3 From 827bd1d99027b845cb2fbc9f87200b5316f449c6 Mon Sep 17 00:00:00 2001 From: "https://www.google.com/accounts/o8/id?id=AItOawngqGADV9fidHK5qabIzKN0bx1ZIfvaTqs" Date: Sun, 12 Sep 2010 22:48:49 +0000 Subject: --- doc/bugs/ikiwiki_ignores_PATH_environment.mdwn | 2 ++ 1 file changed, 2 insertions(+) (limited to 'doc/bugs') diff --git a/doc/bugs/ikiwiki_ignores_PATH_environment.mdwn b/doc/bugs/ikiwiki_ignores_PATH_environment.mdwn index 5097acaef..992ea0a2a 100644 --- a/doc/bugs/ikiwiki_ignores_PATH_environment.mdwn +++ b/doc/bugs/ikiwiki_ignores_PATH_environment.mdwn @@ -16,3 +16,5 @@ This makes it a little hard to specify which specific binaries should be used, e > The ikiwiki script's own sanitization of PATH was done to make perl taint > checking happy, but as taint checking is disabled anyway, I have removed > that. [[done]] --[[Joey]] + +Question: Do ikiwiki.cgi and the RCS post-commit script sanitize the $PATH separately from bin/ikiwiki? If not, then bin/ikiwiki is probably right to sanitize the $PATH; otherwise you've created a security hole with access to the account that ikiwiki is SUID to. It'd be nice if /opt/local/bin were earlier in the $PATH, but that can be changed (as noted) in the setup file. [[Glenn|geychaner@mac.com]] -- cgit v1.2.3 From f6127eb9fa53d375f6ad3d079c75a279c268e9cd Mon Sep 17 00:00:00 2001 From: "https://www.google.com/accounts/o8/id?id=AItOawngqGADV9fidHK5qabIzKN0bx1ZIfvaTqs" Date: Sun, 12 Sep 2010 22:50:33 +0000 Subject: Add comment about this issue --- doc/bugs/ikiwiki_ignores_PATH_environment.mdwn | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'doc/bugs') diff --git a/doc/bugs/ikiwiki_ignores_PATH_environment.mdwn b/doc/bugs/ikiwiki_ignores_PATH_environment.mdwn index 992ea0a2a..1cf99d826 100644 --- a/doc/bugs/ikiwiki_ignores_PATH_environment.mdwn +++ b/doc/bugs/ikiwiki_ignores_PATH_environment.mdwn @@ -17,4 +17,4 @@ This makes it a little hard to specify which specific binaries should be used, e > checking happy, but as taint checking is disabled anyway, I have removed > that. [[done]] --[[Joey]] -Question: Do ikiwiki.cgi and the RCS post-commit script sanitize the $PATH separately from bin/ikiwiki? If not, then bin/ikiwiki is probably right to sanitize the $PATH; otherwise you've created a security hole with access to the account that ikiwiki is SUID to. It'd be nice if /opt/local/bin were earlier in the $PATH, but that can be changed (as noted) in the setup file. [[Glenn|geychaner@mac.com]] +Question: Do ikiwiki.cgi and the RCS post-commit script sanitize the $PATH separately from bin/ikiwiki? If not, then bin/ikiwiki is probably right to sanitize the $PATH; otherwise you've created a security hole with access to the account that ikiwiki is SUID to. It'd be nice if /opt/local/bin were earlier in the $PATH, but that can be changed (as noted) in the setup file. [[Glenn|geychaner@mac.com]] (Also the person who started this by filing an issue with MacPorts; I'm experimenting with ikiwiki for collaborative documentation.) -- cgit v1.2.3 From a52ef8d746bacdf3137effe03393c0ef06cc7917 Mon Sep 17 00:00:00 2001 From: Joey Hess Date: Sun, 12 Sep 2010 18:53:34 -0400 Subject: response --- doc/bugs/ikiwiki_ignores_PATH_environment.mdwn | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'doc/bugs') diff --git a/doc/bugs/ikiwiki_ignores_PATH_environment.mdwn b/doc/bugs/ikiwiki_ignores_PATH_environment.mdwn index 1cf99d826..6781d4b4b 100644 --- a/doc/bugs/ikiwiki_ignores_PATH_environment.mdwn +++ b/doc/bugs/ikiwiki_ignores_PATH_environment.mdwn @@ -18,3 +18,7 @@ This makes it a little hard to specify which specific binaries should be used, e > that. [[done]] --[[Joey]] Question: Do ikiwiki.cgi and the RCS post-commit script sanitize the $PATH separately from bin/ikiwiki? If not, then bin/ikiwiki is probably right to sanitize the $PATH; otherwise you've created a security hole with access to the account that ikiwiki is SUID to. It'd be nice if /opt/local/bin were earlier in the $PATH, but that can be changed (as noted) in the setup file. [[Glenn|geychaner@mac.com]] (Also the person who started this by filing an issue with MacPorts; I'm experimenting with ikiwiki for collaborative documentation.) + +> The suid wrappers remove all environment variables except for a few used +> for CGI. PATH is not propigated by them, so when they run ikiwiki it will +> get the system's default path now. --[[Joey]] -- cgit v1.2.3 From bed67815fb34ed8210e8cf9c53017f902e7439c5 Mon Sep 17 00:00:00 2001 From: blipvert Date: Mon, 13 Sep 2010 01:44:37 +0000 Subject: --- doc/bugs/git.pm_should_prune_remote_branches_when_fetching.mdwn | 2 ++ 1 file changed, 2 insertions(+) (limited to 'doc/bugs') diff --git a/doc/bugs/git.pm_should_prune_remote_branches_when_fetching.mdwn b/doc/bugs/git.pm_should_prune_remote_branches_when_fetching.mdwn index bf68350e3..5b7be1187 100644 --- a/doc/bugs/git.pm_should_prune_remote_branches_when_fetching.mdwn +++ b/doc/bugs/git.pm_should_prune_remote_branches_when_fetching.mdwn @@ -7,3 +7,5 @@ Pruning remote branches can be done automatically with the --prune option to "gi > I'll need more information than that before I add extra processing > work to the current git commands it uses. I don't see any errors here > from obsolete remote branches. --[[Joey]] + +Suppose a remote repository contains a branch named "foo", and you fetch from it. Then, someone renames that branch to "foo/bar". The next time you fetch from that repository, you will get an error because the obsolete branch "foo" is blocking the branch "foo/bar" from being created (due to the way git stores refs for branches). Pruning gets around the problem. It doesn't really add much overhead to the fetch, and in fact it can *save* overhead since obsolete branches do consume resource (any commits they point to cannot be garbage collected). -- cgit v1.2.3 From c647e12c92fe635e07734946e815db41ec44ddfd Mon Sep 17 00:00:00 2001 From: blipvert Date: Mon, 13 Sep 2010 01:45:13 +0000 Subject: --- doc/bugs/git.pm_should_prune_remote_branches_when_fetching.mdwn | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'doc/bugs') diff --git a/doc/bugs/git.pm_should_prune_remote_branches_when_fetching.mdwn b/doc/bugs/git.pm_should_prune_remote_branches_when_fetching.mdwn index 5b7be1187..4c1e461e3 100644 --- a/doc/bugs/git.pm_should_prune_remote_branches_when_fetching.mdwn +++ b/doc/bugs/git.pm_should_prune_remote_branches_when_fetching.mdwn @@ -8,4 +8,4 @@ Pruning remote branches can be done automatically with the --prune option to "gi > work to the current git commands it uses. I don't see any errors here > from obsolete remote branches. --[[Joey]] -Suppose a remote repository contains a branch named "foo", and you fetch from it. Then, someone renames that branch to "foo/bar". The next time you fetch from that repository, you will get an error because the obsolete branch "foo" is blocking the branch "foo/bar" from being created (due to the way git stores refs for branches). Pruning gets around the problem. It doesn't really add much overhead to the fetch, and in fact it can *save* overhead since obsolete branches do consume resource (any commits they point to cannot be garbage collected). +Suppose a remote repository contains a branch named "foo", and you fetch from it. Then, someone renames that branch to "foo/bar". The next time you fetch from that repository, you will get an error because the obsolete branch "foo" is blocking the branch "foo/bar" from being created (due to the way git stores refs for branches). Pruning gets around the problem. It doesn't really add much overhead to the fetch, and in fact it can *save* overhead since obsolete branches do consume resource (any commits they point to cannot be garbage collected). --[[blipvert]] -- cgit v1.2.3 From 0586d52f1f8978e53e90df32a21ebd346eabaa1b Mon Sep 17 00:00:00 2001 From: blipvert Date: Mon, 13 Sep 2010 01:46:22 +0000 Subject: fix typo --- doc/bugs/git.pm_should_prune_remote_branches_when_fetching.mdwn | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'doc/bugs') diff --git a/doc/bugs/git.pm_should_prune_remote_branches_when_fetching.mdwn b/doc/bugs/git.pm_should_prune_remote_branches_when_fetching.mdwn index 4c1e461e3..01f3d1a28 100644 --- a/doc/bugs/git.pm_should_prune_remote_branches_when_fetching.mdwn +++ b/doc/bugs/git.pm_should_prune_remote_branches_when_fetching.mdwn @@ -8,4 +8,4 @@ Pruning remote branches can be done automatically with the --prune option to "gi > work to the current git commands it uses. I don't see any errors here > from obsolete remote branches. --[[Joey]] -Suppose a remote repository contains a branch named "foo", and you fetch from it. Then, someone renames that branch to "foo/bar". The next time you fetch from that repository, you will get an error because the obsolete branch "foo" is blocking the branch "foo/bar" from being created (due to the way git stores refs for branches). Pruning gets around the problem. It doesn't really add much overhead to the fetch, and in fact it can *save* overhead since obsolete branches do consume resource (any commits they point to cannot be garbage collected). --[[blipvert]] +Suppose a remote repository contains a branch named "foo", and you fetch from it. Then, someone renames that branch to "foo/bar". The next time you fetch from that repository, you will get an error because the obsolete branch "foo" is blocking the branch "foo/bar" from being created (due to the way git stores refs for branches). Pruning gets around the problem. It doesn't really add much overhead to the fetch, and in fact it can *save* overhead since obsolete branches do consume resources (any commits they point to cannot be garbage collected). --[[blipvert]] -- cgit v1.2.3 From 8e8b011c1a64cc15b08e0e61f1bb85eede1e3318 Mon Sep 17 00:00:00 2001 From: "http://jmtd.livejournal.com/" Date: Mon, 13 Sep 2010 19:37:50 +0000 Subject: mixing template vars into directive arguments --- ..._39__t_mix_template_vars_inside_directives.mdwn | 33 ++++++++++++++++++++++ 1 file changed, 33 insertions(+) create mode 100644 doc/bugs/can__39__t_mix_template_vars_inside_directives.mdwn (limited to 'doc/bugs') diff --git a/doc/bugs/can__39__t_mix_template_vars_inside_directives.mdwn b/doc/bugs/can__39__t_mix_template_vars_inside_directives.mdwn new file mode 100644 index 000000000..0fa85effb --- /dev/null +++ b/doc/bugs/can__39__t_mix_template_vars_inside_directives.mdwn @@ -0,0 +1,33 @@ +I often find myself wrapping the same boiler plate around [[ikiwiki/directives/img]] img directives, so I tried to encapsulate it using the following [[ikiwiki/directives/template]]: + + +
+ [\[!img + size="" + + + alt="" + + + alt="" + + alt="[pic]" + + + + ]] + +

+
+
+ +The result, even with htmlscrubber disabled, is mangled, something like + +
+ ?size + +
+ +Any suggestions gladly received. -- [[Jon]] -- cgit v1.2.3 From 382b0b349988d92f8571b38beb8be003e0b334a0 Mon Sep 17 00:00:00 2001 From: "http://k1024.org/~iusty/" Date: Tue, 14 Sep 2010 18:33:15 +0000 Subject: Add new bug about the comments/blogspam plugins --- .../blog_spam_plugin_not_allowing_non-ASCII_chars__63__.mdwn | 10 ++++++++++ 1 file changed, 10 insertions(+) create mode 100644 doc/bugs/blog_spam_plugin_not_allowing_non-ASCII_chars__63__.mdwn (limited to 'doc/bugs') diff --git a/doc/bugs/blog_spam_plugin_not_allowing_non-ASCII_chars__63__.mdwn b/doc/bugs/blog_spam_plugin_not_allowing_non-ASCII_chars__63__.mdwn new file mode 100644 index 000000000..22242a97f --- /dev/null +++ b/doc/bugs/blog_spam_plugin_not_allowing_non-ASCII_chars__63__.mdwn @@ -0,0 +1,10 @@ +Hi, + +I'm trying to add a comment, and ikiwiki fails with this error message: + + Error: HTTP::Message content must be bytes at /usr/share/perl5/RPC/XML/Client.pm line 308 + +This seems to happen because I had a non-ASCII character in the comment (an ellipse, …). +The interesting part is that the comment preview works fine, just the save fails. Probably +this means that the blogspam plugin is the culprit (hence the error in RPC::XML::Client library). +I'm using version 3.20100815~bpo50+. Thanks! -- cgit v1.2.3 From e0898ae1a8e64a12c4e47b3f922d6cf1fad4f31c Mon Sep 17 00:00:00 2001 From: Joey Hess Date: Tue, 14 Sep 2010 15:23:16 -0400 Subject: blogspam: Fix crash when content contained utf-8. I also tried setting RPC::XML::ENCODING but that did not prevent the crash, and it seems that blogspam.net doesn't like getting xml encoded in unicode, since it mis-flagged comments as spammy that way that are normally allowed through. --- IkiWiki/Plugin/blogspam.pm | 12 +++++++----- debian/changelog | 1 + .../blog_spam_plugin_not_allowing_non-ASCII_chars__63__.mdwn | 5 +++++ 3 files changed, 13 insertions(+), 5 deletions(-) (limited to 'doc/bugs') diff --git a/IkiWiki/Plugin/blogspam.pm b/IkiWiki/Plugin/blogspam.pm index 8db3780e8..f0b6cb2a2 100644 --- a/IkiWiki/Plugin/blogspam.pm +++ b/IkiWiki/Plugin/blogspam.pm @@ -4,6 +4,7 @@ package IkiWiki::Plugin::blogspam; use warnings; use strict; use IkiWiki 3.00; +use Encode; my $defaulturl='http://test.blogspam.net:8888/'; @@ -68,6 +69,7 @@ sub checkcontent (@) { my $url=$defaulturl; $url = $config{blogspam_server} if exists $config{blogspam_server}; + my $client = RPC::XML::Client->new($url); my @options = split(",", $config{blogspam_options}) @@ -90,12 +92,12 @@ sub checkcontent (@) { my %req=( ip => $session->remote_addr(), - comment => defined $params{diff} ? $params{diff} : $params{content}, - subject => defined $params{subject} ? $params{subject} : "", - name => defined $params{author} ? $params{author} : "", - link => exists $params{url} ? $params{url} : "", + comment => encode_utf8(defined $params{diff} ? $params{diff} : $params{content}), + subject => encode_utf8(defined $params{subject} ? $params{subject} : ""), + name => encode_utf8(defined $params{author} ? $params{author} : ""), + link => encode_utf8(exists $params{url} ? $params{url} : ""), options => join(",", @options), - site => $config{url}, + site => encode_utf8($config{url}), version => "ikiwiki ".$IkiWiki::version, ); my $res = $client->send_request('testComment', \%req); diff --git a/debian/changelog b/debian/changelog index 8b127b574..0eb5810d0 100644 --- a/debian/changelog +++ b/debian/changelog @@ -18,6 +18,7 @@ ikiwiki (3.20100832) UNRELEASED; urgency=low * actiontabs: Improve tab padding. * blueview: Fix display of links to translated pages in the page header. * Set isPermaLink="no" for guids in rss feeds. + * blogspam: Fix crash when content contained utf-8. -- Joey Hess Tue, 07 Sep 2010 12:08:05 -0400 diff --git a/doc/bugs/blog_spam_plugin_not_allowing_non-ASCII_chars__63__.mdwn b/doc/bugs/blog_spam_plugin_not_allowing_non-ASCII_chars__63__.mdwn index 22242a97f..265040d67 100644 --- a/doc/bugs/blog_spam_plugin_not_allowing_non-ASCII_chars__63__.mdwn +++ b/doc/bugs/blog_spam_plugin_not_allowing_non-ASCII_chars__63__.mdwn @@ -8,3 +8,8 @@ This seems to happen because I had a non-ASCII character in the comment (an elli The interesting part is that the comment preview works fine, just the save fails. Probably this means that the blogspam plugin is the culprit (hence the error in RPC::XML::Client library). I'm using version 3.20100815~bpo50+. Thanks! + +> I've filed an upstream bug about this on RPC::XML: +> +> +> Worked around it in blogspam by decoding. --[[Joey]] -- cgit v1.2.3 From 0ff945ddf19010b890458face057505f7b48b572 Mon Sep 17 00:00:00 2001 From: Joey Hess Date: Tue, 14 Sep 2010 15:37:45 -0400 Subject: external: Disable RPC::XML's "smart" encoding, which sent ints for strings that contained only a number, fixing a longstanding crash of the rst plugin. --- IkiWiki/Plugin/external.pm | 2 ++ debian/changelog | 3 +++ doc/bugs/rst_fails_on_file_containing_only_a_number.mdwn | 3 +++ 3 files changed, 8 insertions(+) (limited to 'doc/bugs') diff --git a/IkiWiki/Plugin/external.pm b/IkiWiki/Plugin/external.pm index ec91c79db..a4cc1dd3c 100644 --- a/IkiWiki/Plugin/external.pm +++ b/IkiWiki/Plugin/external.pm @@ -28,7 +28,9 @@ sub import { $plugins{$plugin}={in => $plugin_read, out => $plugin_write, pid => $pid, accum => ""}; + $RPC::XML::ENCODING="utf-8"; + $RPC::XML::FORCE_STRING_ENCODING="true"; rpc_call($plugins{$plugin}, "import"); } diff --git a/debian/changelog b/debian/changelog index 0eb5810d0..46401b58c 100644 --- a/debian/changelog +++ b/debian/changelog @@ -19,6 +19,9 @@ ikiwiki (3.20100832) UNRELEASED; urgency=low * blueview: Fix display of links to translated pages in the page header. * Set isPermaLink="no" for guids in rss feeds. * blogspam: Fix crash when content contained utf-8. + * external: Disable RPC::XML's "smart" encoding, which sent ints + for strings that contained only a number, fixing a longstanding crash + of the rst plugin. -- Joey Hess Tue, 07 Sep 2010 12:08:05 -0400 diff --git a/doc/bugs/rst_fails_on_file_containing_only_a_number.mdwn b/doc/bugs/rst_fails_on_file_containing_only_a_number.mdwn index dab3b7e5b..99e46aac9 100644 --- a/doc/bugs/rst_fails_on_file_containing_only_a_number.mdwn +++ b/doc/bugs/rst_fails_on_file_containing_only_a_number.mdwn @@ -24,3 +24,6 @@ throwing code..): > No, still the same failure. I think it's failing parsing the input data, > (which perl probably transmitted as an int due to perl internals) > not writing out its response. --[[Joey]] + +> On second thought, this was a bug in ikiwiki, it should be transmitting +> that as a string. Fixed in external.pm --[[Joey]] -- cgit v1.2.3 From 8c8d2c2d2cd259f3e72fd0a4022d02e15e66104f Mon Sep 17 00:00:00 2001 From: Joey Hess Date: Tue, 14 Sep 2010 15:44:52 -0400 Subject: close --- doc/bugs/blog_spam_plugin_not_allowing_non-ASCII_chars__63__.mdwn | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'doc/bugs') diff --git a/doc/bugs/blog_spam_plugin_not_allowing_non-ASCII_chars__63__.mdwn b/doc/bugs/blog_spam_plugin_not_allowing_non-ASCII_chars__63__.mdwn index 265040d67..59bf93d14 100644 --- a/doc/bugs/blog_spam_plugin_not_allowing_non-ASCII_chars__63__.mdwn +++ b/doc/bugs/blog_spam_plugin_not_allowing_non-ASCII_chars__63__.mdwn @@ -12,4 +12,4 @@ I'm using version 3.20100815~bpo50+. Thanks! > I've filed an upstream bug about this on RPC::XML: > > -> Worked around it in blogspam by decoding. --[[Joey]] +> Worked around it in blogspam by decoding. [[done]] --[[Joey]] -- cgit v1.2.3 From cd794613b6f5140365e51f79023c882e8ea71197 Mon Sep 17 00:00:00 2001 From: Joey Hess Date: Tue, 14 Sep 2010 15:45:38 -0400 Subject: git: When updating from remote, use git pull --prune, to avoid possible errors from conflicting obsolete remote branches. --- IkiWiki/Plugin/git.pm | 2 +- debian/changelog | 2 ++ doc/bugs/git.pm_should_prune_remote_branches_when_fetching.mdwn | 3 +++ 3 files changed, 6 insertions(+), 1 deletion(-) (limited to 'doc/bugs') diff --git a/IkiWiki/Plugin/git.pm b/IkiWiki/Plugin/git.pm index d342a7398..fd57ce1e4 100644 --- a/IkiWiki/Plugin/git.pm +++ b/IkiWiki/Plugin/git.pm @@ -462,7 +462,7 @@ sub rcs_update () { # Update working directory. if (length $config{gitorigin_branch}) { - run_or_cry('git', 'pull', $config{gitorigin_branch}); + run_or_cry('git', 'pull', '--prune', $config{gitorigin_branch}); } } diff --git a/debian/changelog b/debian/changelog index 46401b58c..27e0fb103 100644 --- a/debian/changelog +++ b/debian/changelog @@ -22,6 +22,8 @@ ikiwiki (3.20100832) UNRELEASED; urgency=low * external: Disable RPC::XML's "smart" encoding, which sent ints for strings that contained only a number, fixing a longstanding crash of the rst plugin. + * git: When updating from remote, use git pull --prune, to avoid possible + errors from conflicting obsolete remote branches. -- Joey Hess Tue, 07 Sep 2010 12:08:05 -0400 diff --git a/doc/bugs/git.pm_should_prune_remote_branches_when_fetching.mdwn b/doc/bugs/git.pm_should_prune_remote_branches_when_fetching.mdwn index 01f3d1a28..5dc4250e3 100644 --- a/doc/bugs/git.pm_should_prune_remote_branches_when_fetching.mdwn +++ b/doc/bugs/git.pm_should_prune_remote_branches_when_fetching.mdwn @@ -9,3 +9,6 @@ Pruning remote branches can be done automatically with the --prune option to "gi > from obsolete remote branches. --[[Joey]] Suppose a remote repository contains a branch named "foo", and you fetch from it. Then, someone renames that branch to "foo/bar". The next time you fetch from that repository, you will get an error because the obsolete branch "foo" is blocking the branch "foo/bar" from being created (due to the way git stores refs for branches). Pruning gets around the problem. It doesn't really add much overhead to the fetch, and in fact it can *save* overhead since obsolete branches do consume resources (any commits they point to cannot be garbage collected). --[[blipvert]] + +> Ok, so git pull --prune can be used to do everything in one command. +> [[done]] --[[Joey]] -- cgit v1.2.3 From 953ff0e6de65f084f733e9506788c0c12bc1d187 Mon Sep 17 00:00:00 2001 From: tschwinge Date: Wed, 15 Sep 2010 05:31:41 +0000 Subject: Report. --- ..._in_this_page_--_missing_page_dependencies.mdwn | 26 ++++++++++++++++++++++ 1 file changed, 26 insertions(+) create mode 100644 doc/bugs/Error:_no_text_was_copied_in_this_page_--_missing_page_dependencies.mdwn (limited to 'doc/bugs') diff --git a/doc/bugs/Error:_no_text_was_copied_in_this_page_--_missing_page_dependencies.mdwn b/doc/bugs/Error:_no_text_was_copied_in_this_page_--_missing_page_dependencies.mdwn new file mode 100644 index 000000000..356f9155a --- /dev/null +++ b/doc/bugs/Error:_no_text_was_copied_in_this_page_--_missing_page_dependencies.mdwn @@ -0,0 +1,26 @@ +That one has bitten me for some time; here is the minimal testcase. There is +also an equivalent (I suppose) problem when using another plugin, but I hope +it's enough to track it down for this one. + + $ tar -xj < [bug-dep_order.tar.bz2](http://www.thomas.schwinge.homeip.net/tmp/bug-dep_order.tar.bz2) + $ cd bug-dep_order/ + $ ./render_locally + [...] + $ find "$PWD".rendered/ -print0 | xargs -0 grep 'no text was copied' + $ [no output] + $ touch news/2010-07-31.mdwn + $ ./render_locally + refreshing wiki.. + scanning news/2010-07-31.mdwn + building news/2010-07-31.mdwn + building news.mdwn, which depends on news/2010-07-31 + building index.mdwn, which depends on news/2010-07-31 + done + $ find "$PWD".rendered/ -print0 | xargs -0 grep 'no text was copied' + /home/thomas/tmp/hurd-web/bug-dep_order.rendered/news.html:

[[!paste Error: no text was copied in this page]]

+ /home/thomas/tmp/hurd-web/bug-dep_order.rendered/news.html:

[[!paste Error: no text was copied in this page]]

+ +This error shows up only for *news.html*, but not in *news/2010-07-31* or for +the aggregation in *index.html* or its RSS and atom files. + +--[[tschwinge]] -- cgit v1.2.3 From 884835ce1cd3b1ba24d6f6bb19786d04e6b8ae90 Mon Sep 17 00:00:00 2001 From: Joey Hess Date: Wed, 15 Sep 2010 16:24:50 -0400 Subject: cutpaste: Fix bug that occured in some cases involving inlines when text was pasted on a page before being cut. --- IkiWiki/Plugin/cutpaste.pm | 31 +++++++++++++++------- debian/changelog | 2 ++ ..._in_this_page_--_missing_page_dependencies.mdwn | 20 ++++++++++++++ 3 files changed, 44 insertions(+), 9 deletions(-) (limited to 'doc/bugs') diff --git a/IkiWiki/Plugin/cutpaste.pm b/IkiWiki/Plugin/cutpaste.pm index 4a8817168..0f6ea0b1f 100644 --- a/IkiWiki/Plugin/cutpaste.pm +++ b/IkiWiki/Plugin/cutpaste.pm @@ -5,10 +5,9 @@ use warnings; use strict; use IkiWiki 3.00; -my %savedtext; - sub import { hook(type => "getsetup", id => "cutpaste", call => \&getsetup); + hook(type => "needsbuild", id => "cutpaste", call => \&needsbuild); hook(type => "preprocess", id => "cut", call => \&preprocess_cut, scan => 1); hook(type => "preprocess", id => "copy", call => \&preprocess_copy, scan => 1); hook(type => "preprocess", id => "paste", call => \&preprocess_paste); @@ -23,6 +22,22 @@ sub getsetup () { }, } +sub needsbuild (@) { + my $needsbuild=shift; + foreach my $page (keys %pagestate) { + if (exists $pagestate{$page}{cutpaste}) { + if (exists $pagesources{$page} && + grep { $_ eq $pagesources{$page} } @$needsbuild) { + # remove state, will be re-added if + # the cut/copy directive is still present + # on rebuild. + delete $pagestate{$page}{cutpaste}; + } + } + } + return $needsbuild; +} + sub preprocess_cut (@) { my %params=@_; @@ -32,8 +47,7 @@ sub preprocess_cut (@) { } } - $savedtext{$params{page}} = {} if not exists $savedtext{$params{"page"}}; - $savedtext{$params{page}}->{$params{id}} = $params{text}; + $pagestate{$params{page}}{cutpaste}{$params{id}} = $params{text}; return "" if defined wantarray; } @@ -47,8 +61,7 @@ sub preprocess_copy (@) { } } - $savedtext{$params{page}} = {} if not exists $savedtext{$params{"page"}}; - $savedtext{$params{page}}->{$params{id}} = $params{text}; + $pagestate{$params{page}}{cutpaste}{$params{id}} = $params{text}; return IkiWiki::preprocess($params{page}, $params{destpage}, $params{text}) if defined wantarray; @@ -63,15 +76,15 @@ sub preprocess_paste (@) { } } - if (! exists $savedtext{$params{page}}) { + if (! exists $pagestate{$params{page}}{cutpaste}) { error gettext('no text was copied in this page'); } - if (! exists $savedtext{$params{page}}->{$params{id}}) { + if (! exists $pagestate{$params{page}}{cutpaste}{$params{id}}) { error sprintf(gettext('no text was copied in this page with id %s'), $params{id}); } return IkiWiki::preprocess($params{page}, $params{destpage}, - $savedtext{$params{page}}->{$params{id}}); + $pagestate{$params{page}}{cutpaste}{$params{id}}); } 1; diff --git a/debian/changelog b/debian/changelog index 27e0fb103..d6eebea78 100644 --- a/debian/changelog +++ b/debian/changelog @@ -24,6 +24,8 @@ ikiwiki (3.20100832) UNRELEASED; urgency=low of the rst plugin. * git: When updating from remote, use git pull --prune, to avoid possible errors from conflicting obsolete remote branches. + * cutpaste: Fix bug that occured in some cases involving inlines when + text was pasted on a page before being cut. -- Joey Hess Tue, 07 Sep 2010 12:08:05 -0400 diff --git a/doc/bugs/Error:_no_text_was_copied_in_this_page_--_missing_page_dependencies.mdwn b/doc/bugs/Error:_no_text_was_copied_in_this_page_--_missing_page_dependencies.mdwn index 356f9155a..4535cf35d 100644 --- a/doc/bugs/Error:_no_text_was_copied_in_this_page_--_missing_page_dependencies.mdwn +++ b/doc/bugs/Error:_no_text_was_copied_in_this_page_--_missing_page_dependencies.mdwn @@ -24,3 +24,23 @@ This error shows up only for *news.html*, but not in *news/2010-07-31* or for the aggregation in *index.html* or its RSS and atom files. --[[tschwinge]] + +> So the cutpaste plugin, in order to support pastes +> that come before the corresponding cut in the page, +> relies on the scan hook being called for the page +> before it is preprocessed. +> +> In the case of an inline, this doesn't happen, if +> the page in question has not changed. +> +> Really though it's not just inline, it's potentially anything +> that preprocesses content. None of those things guarantee that +> scan gets re-run on it first. +> +> I think cutpaste is going beyond the intended use of scan hooks, +> which is to gather link information, not do arbitrary data collection. +> Requiring scan be run repeatedly could be a lot more work. +> +> Using `%pagestate` to store the cut content when scanning would be +> one way to fix this bug. It would mean storing potentially big chunks +> of page content in the indexdb. --[[Joey]] -- cgit v1.2.3 From 3f8ba63a9968b6fc670ea2b49b86ba62571ef15b Mon Sep 17 00:00:00 2001 From: tschwinge Date: Fri, 17 Sep 2010 11:48:29 +0000 Subject: Report. --- doc/bugs/cutpaste.pm:_missing_filter_call.mdwn | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) create mode 100644 doc/bugs/cutpaste.pm:_missing_filter_call.mdwn (limited to 'doc/bugs') diff --git a/doc/bugs/cutpaste.pm:_missing_filter_call.mdwn b/doc/bugs/cutpaste.pm:_missing_filter_call.mdwn new file mode 100644 index 000000000..30bd52996 --- /dev/null +++ b/doc/bugs/cutpaste.pm:_missing_filter_call.mdwn @@ -0,0 +1,23 @@ +Consider this: + + $ wget http://www.thomas.schwinge.homeip.net/tmp/cutpaste_filter.tar.bz2 + $ wget http://www.thomas.schwinge.homeip.net/tmp/cutpaste_filter.patch + + $ tar -xj < cutpaste_filter.tar.bz2 + $ cd cutpaste_filter/ + $ ./render_locally + $ find "$PWD".rendered/ -type f -print0 | xargs -0 grep -H -E 'FOO|BAR' + [notice one FOO in there] + $ rm -rf .ikiwiki "$PWD".rendered + + $ cp /usr/share/perl5/IkiWiki/Plugin/cutpaste.pm .library/IkiWiki/Plugin/ + $ patch -p0 < ../cutpaste_filter.patch + $ ./render_locally + $ find "$PWD".rendered/ -type f -print0 | xargs -0 grep -H -E 'FOO|BAR' + [correct; notice no more FOO] + +I guess this needs a general audit -- there are other places where `preprocess` +is being doing without `filter`ing first, for example in the same file, `copy` +function. + +--[[tschwinge]] -- cgit v1.2.3 From 96a8ea0ebbd93a8cc56222234d4a5815b30a3934 Mon Sep 17 00:00:00 2001 From: Joey Hess Date: Sat, 18 Sep 2010 12:58:37 -0400 Subject: add --- ...:_apache_config_serves_index.rss_for_index.mdwn | 28 ++++++++++++++++++++++ 1 file changed, 28 insertions(+) create mode 100644 doc/bugs/po:_apache_config_serves_index.rss_for_index.mdwn (limited to 'doc/bugs') diff --git a/doc/bugs/po:_apache_config_serves_index.rss_for_index.mdwn b/doc/bugs/po:_apache_config_serves_index.rss_for_index.mdwn new file mode 100644 index 000000000..e6e1b57a8 --- /dev/null +++ b/doc/bugs/po:_apache_config_serves_index.rss_for_index.mdwn @@ -0,0 +1,28 @@ +The apache config documented in [[plugins/po]] has a subtle bug. It works +until a site gets an index.atom or index.rss file. (Acutally, with po +enabled, they're called index.en.atom or index.en.rss etc, but the result +is the same). + +Then, when wget, curl, or w3m is pointed at http://site/, apache serves +up the rss/atom file rather than the index page. + +Analysis: + +* /etc/mime.types gives mime types to .rss and .atom files +* `mod_negotiation`'s MultiViews allows any file with a mime type to be + served up via content negotiation, if the client requests that type. +* wget etc send "Accept: */*" to accept all content types. Compare + with firefox, which sends "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*" +* So apache has a tie between a html encoded Enlish file, and a rss encoded + English file and the client has no preference. In a tie, apache will serve up the + *smallest* file, which tends to be the rss file. (Apache's docs say it uses that + strange criteria to break ties; see ) + +The only way I have found to work around this problem is to remove +atom and rss from /etc/mime.types. Of course, that has other undesirable +results. + +I wonder if it would be worth making the po plugin generate apache +[type map files](http://httpd.apache.org/docs/2.0/mod/mod_negotiation.html#typemaps). +That should avoid this problem. +--[[Joey]] -- cgit v1.2.3 From 4079c06be22d0eb31bd0bead4b8f53a9831804e9 Mon Sep 17 00:00:00 2001 From: Joey Hess Date: Sat, 18 Sep 2010 13:03:33 -0400 Subject: format --- doc/bugs/po:_apache_config_serves_index.rss_for_index.mdwn | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'doc/bugs') diff --git a/doc/bugs/po:_apache_config_serves_index.rss_for_index.mdwn b/doc/bugs/po:_apache_config_serves_index.rss_for_index.mdwn index e6e1b57a8..bf5973325 100644 --- a/doc/bugs/po:_apache_config_serves_index.rss_for_index.mdwn +++ b/doc/bugs/po:_apache_config_serves_index.rss_for_index.mdwn @@ -11,8 +11,8 @@ Analysis: * /etc/mime.types gives mime types to .rss and .atom files * `mod_negotiation`'s MultiViews allows any file with a mime type to be served up via content negotiation, if the client requests that type. -* wget etc send "Accept: */*" to accept all content types. Compare - with firefox, which sends "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*" +* wget etc send `Accept: */*` to accept all content types. Compare + with firefox, which sends `Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*` * So apache has a tie between a html encoded Enlish file, and a rss encoded English file and the client has no preference. In a tie, apache will serve up the *smallest* file, which tends to be the rss file. (Apache's docs say it uses that -- cgit v1.2.3 From b2b599dfb9d042da324480e03d3a55873ac336d6 Mon Sep 17 00:00:00 2001 From: Joey Hess Date: Sat, 18 Sep 2010 13:36:29 -0400 Subject: response --- doc/bugs/cutpaste.pm:_missing_filter_call.mdwn | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) (limited to 'doc/bugs') diff --git a/doc/bugs/cutpaste.pm:_missing_filter_call.mdwn b/doc/bugs/cutpaste.pm:_missing_filter_call.mdwn index 30bd52996..475880f0a 100644 --- a/doc/bugs/cutpaste.pm:_missing_filter_call.mdwn +++ b/doc/bugs/cutpaste.pm:_missing_filter_call.mdwn @@ -21,3 +21,21 @@ is being doing without `filter`ing first, for example in the same file, `copy` function. --[[tschwinge]] + +> So, in English, page text inside a cut directive will not be filtered. +> Because the cut directive takes the text during the scan pass, before +> filtering happens. +> +> Commit 192ce7a238af9021b0fd6dd571f22409af81ebaf and +> [[bugs/po_vs_templates]] has to do with this. +> There I decided that filter hooks should *only* act on the complete +> text of a page. +> +> I also suggested that anything that wants to reliably +> s/FOO/BAR/ should probably use a sanitize hook, not a filter hook. +> I think that would make sense in this example. +> +> I don't see any way to make cut text be filtered while satisfying these +> constraints, without removing cutpaste's ability to have forward pastes +> of text cut laster in the page. (That does seems like an increasingly +> bad idea..) --[[Joey]] -- cgit v1.2.3 From 26c38c8049e3e8794984079b3b6d4c22ba888d3a Mon Sep 17 00:00:00 2001 From: Joey Hess Date: Sat, 18 Sep 2010 15:09:14 -0400 Subject: better fix developed on #httpd channel --- doc/bugs/po:_apache_config_serves_index.rss_for_index.mdwn | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'doc/bugs') diff --git a/doc/bugs/po:_apache_config_serves_index.rss_for_index.mdwn b/doc/bugs/po:_apache_config_serves_index.rss_for_index.mdwn index bf5973325..7acbfe82d 100644 --- a/doc/bugs/po:_apache_config_serves_index.rss_for_index.mdwn +++ b/doc/bugs/po:_apache_config_serves_index.rss_for_index.mdwn @@ -26,3 +26,11 @@ I wonder if it would be worth making the po plugin generate apache [type map files](http://httpd.apache.org/docs/2.0/mod/mod_negotiation.html#typemaps). That should avoid this problem. --[[Joey]] + +Update: A non-intrusive fix is to add this to apache configuration. +This tunes the "quality" of the rss and atom files, in an apparently currently +undocumented way (though someone on #httpd suggested it should get documented). +Result is that apache will prefer serving index.html. --[[Joey]] + + AddType application/rss+xml;qs=0.8 .rss + AddType application/atom+xml;qs=0.8 .atom -- cgit v1.2.3 From ea487472ed05f633e3cd9479b933656309c0d3c8 Mon Sep 17 00:00:00 2001 From: Joey Hess Date: Sat, 18 Sep 2010 18:48:46 -0400 Subject: document settings needed to fix bug --- doc/bugs/po:_apache_config_serves_index.rss_for_index.mdwn | 2 +- doc/plugins/po.mdwn | 9 +++++++-- 2 files changed, 8 insertions(+), 3 deletions(-) (limited to 'doc/bugs') diff --git a/doc/bugs/po:_apache_config_serves_index.rss_for_index.mdwn b/doc/bugs/po:_apache_config_serves_index.rss_for_index.mdwn index 7acbfe82d..a2b68c4b1 100644 --- a/doc/bugs/po:_apache_config_serves_index.rss_for_index.mdwn +++ b/doc/bugs/po:_apache_config_serves_index.rss_for_index.mdwn @@ -30,7 +30,7 @@ That should avoid this problem. Update: A non-intrusive fix is to add this to apache configuration. This tunes the "quality" of the rss and atom files, in an apparently currently undocumented way (though someone on #httpd suggested it should get documented). -Result is that apache will prefer serving index.html. --[[Joey]] +Result is that apache will prefer serving index.html. --[[Joey]] [[done]] AddType application/rss+xml;qs=0.8 .rss AddType application/atom+xml;qs=0.8 .atom diff --git a/doc/plugins/po.mdwn b/doc/plugins/po.mdwn index ca1775f6e..f91e44ea3 100644 --- a/doc/plugins/po.mdwn +++ b/doc/plugins/po.mdwn @@ -117,8 +117,13 @@ serve any page in the client's preferred language, if available. Add 'Options MultiViews' to the wiki directory's configuration in Apache. -When `usedirs` is enabled, one has to set `DirectoryIndex index` for -the wiki context. +When `usedirs` is enabled, you should also set `DirectoryIndex index`. + +These settings are also recommended, in order to avoid serving up rss files +as index pages: + + AddType application/rss+xml;qs=0.8 .rss + AddType application/atom+xml;qs=0.8 .atom For details, see [Apache's documentation](http://httpd.apache.org/docs/2.2/content-negotiation.html). -- cgit v1.2.3 From 8c8856601f76c16b2be51b16c095a276f9c9a9b5 Mon Sep 17 00:00:00 2001 From: tschwinge Date: Sun, 19 Sep 2010 06:17:01 +0000 Subject: Back to Joey. --- doc/bugs/cutpaste.pm:_missing_filter_call.mdwn | 14 ++++++++++++++ 1 file changed, 14 insertions(+) (limited to 'doc/bugs') diff --git a/doc/bugs/cutpaste.pm:_missing_filter_call.mdwn b/doc/bugs/cutpaste.pm:_missing_filter_call.mdwn index 475880f0a..f7138cba0 100644 --- a/doc/bugs/cutpaste.pm:_missing_filter_call.mdwn +++ b/doc/bugs/cutpaste.pm:_missing_filter_call.mdwn @@ -39,3 +39,17 @@ function. > constraints, without removing cutpaste's ability to have forward pastes > of text cut laster in the page. (That does seems like an increasingly > bad idea..) --[[Joey]] + +> > OK -- so the FOO/BAR thing was only a very stripped-down example, of +> > course, and the real thing is being observed with the +> > *[[plugins/contrib/getfield]]* plugin. This one needs to run *before* +> > `preprocess`ing, for its `{{$page#field}}` syntax is (a) meant to be usable +> > inside ikiwiki directives, and (b) the field values are meant to still be +> > `preprocess`ed before being embedded. That's why it's using the `filter` +> > hook instead of `sanitize`. + +> > Would adding another kind of hook be a way to fix this? My idea is that +> > *cut* (and others) would then take their data not during `scan`ning, but +> > *after* `filter`ing. + +> > --[[tschwinge]] -- cgit v1.2.3 From 4a5d68a139e946b64a89625919a5398fd5268a1f Mon Sep 17 00:00:00 2001 From: Javier Rojas Date: Wed, 22 Sep 2010 22:41:18 -0500 Subject: possible bug with img plugin --- doc/bugs/img_plugin_and_class_attr.mdwn | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) create mode 100644 doc/bugs/img_plugin_and_class_attr.mdwn (limited to 'doc/bugs') diff --git a/doc/bugs/img_plugin_and_class_attr.mdwn b/doc/bugs/img_plugin_and_class_attr.mdwn new file mode 100644 index 000000000..7fd457c31 --- /dev/null +++ b/doc/bugs/img_plugin_and_class_attr.mdwn @@ -0,0 +1,25 @@ +The [[plugins/img]] plugin is not generating the proper `class` +attribute in its HTML output. + +The plugin receives something like the following: + + [[!img 129199047595759991.jpg class="centered"]] + +And is supossed to generate an HTML code like the following: + + + +But is generating the following + + + +This seems to be happening with all images inserted using the plugin (that use +the `class=yaddayadda` argument to the `img` directive.) I remember it didn't +happen before, and I suspect an ikiwiki upgrade is to blame. I tested with a +blog created from scratch, and a single post, and the problem appeared there +too. + +This is happening with version 3.20100815 of ikiwiki. + +[[jerojasro]] + -- cgit v1.2.3 From 7481329bdd11d81c4b3e85a446ab1e4bfcc298c8 Mon Sep 17 00:00:00 2001 From: Javier Rojas Date: Wed, 22 Sep 2010 22:44:07 -0500 Subject: typo --- doc/bugs/img_plugin_and_class_attr.mdwn | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'doc/bugs') diff --git a/doc/bugs/img_plugin_and_class_attr.mdwn b/doc/bugs/img_plugin_and_class_attr.mdwn index 7fd457c31..4dd0df4ec 100644 --- a/doc/bugs/img_plugin_and_class_attr.mdwn +++ b/doc/bugs/img_plugin_and_class_attr.mdwn @@ -3,7 +3,7 @@ attribute in its HTML output. The plugin receives something like the following: - [[!img 129199047595759991.jpg class="centered"]] + \[[!img 129199047595759991.jpg class="centered"]] And is supossed to generate an HTML code like the following: -- cgit v1.2.3 From c9cceef939d83d0e3bb3793b2995ee5917da082e Mon Sep 17 00:00:00 2001 From: Joey Hess Date: Sat, 25 Sep 2010 15:02:32 -0400 Subject: notabug --- doc/bugs/img_plugin_and_class_attr.mdwn | 2 ++ 1 file changed, 2 insertions(+) (limited to 'doc/bugs') diff --git a/doc/bugs/img_plugin_and_class_attr.mdwn b/doc/bugs/img_plugin_and_class_attr.mdwn index 4dd0df4ec..7e880b4fc 100644 --- a/doc/bugs/img_plugin_and_class_attr.mdwn +++ b/doc/bugs/img_plugin_and_class_attr.mdwn @@ -23,3 +23,5 @@ This is happening with version 3.20100815 of ikiwiki. [[jerojasro]] +> How is this a bug? It's perfectly legal html for a class attribute to +> put an element into multiple classes. [[notabug|done]] --[[Joey]] -- cgit v1.2.3 From 81d0871dd90166cfd41767b4dc3cfc2cb91c69c2 Mon Sep 17 00:00:00 2001 From: Joey Hess Date: Sat, 25 Sep 2010 15:04:00 -0400 Subject: forgot to close this, was fixed using %pagestate --- ...r:_no_text_was_copied_in_this_page_--_missing_page_dependencies.mdwn | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'doc/bugs') diff --git a/doc/bugs/Error:_no_text_was_copied_in_this_page_--_missing_page_dependencies.mdwn b/doc/bugs/Error:_no_text_was_copied_in_this_page_--_missing_page_dependencies.mdwn index 4535cf35d..6996a9fbf 100644 --- a/doc/bugs/Error:_no_text_was_copied_in_this_page_--_missing_page_dependencies.mdwn +++ b/doc/bugs/Error:_no_text_was_copied_in_this_page_--_missing_page_dependencies.mdwn @@ -43,4 +43,4 @@ the aggregation in *index.html* or its RSS and atom files. > > Using `%pagestate` to store the cut content when scanning would be > one way to fix this bug. It would mean storing potentially big chunks -> of page content in the indexdb. --[[Joey]] +> of page content in the indexdb. [[done]] --[[Joey]] -- cgit v1.2.3 From 5d201da7188e39787fe08485113300d8e590ba58 Mon Sep 17 00:00:00 2001 From: Joey Hess Date: Sat, 25 Sep 2010 15:20:41 -0400 Subject: pebak? --- .../can__39__t_mix_template_vars_inside_directives.mdwn | 14 ++++++++++++++ 1 file changed, 14 insertions(+) (limited to 'doc/bugs') diff --git a/doc/bugs/can__39__t_mix_template_vars_inside_directives.mdwn b/doc/bugs/can__39__t_mix_template_vars_inside_directives.mdwn index 0fa85effb..462852ef8 100644 --- a/doc/bugs/can__39__t_mix_template_vars_inside_directives.mdwn +++ b/doc/bugs/can__39__t_mix_template_vars_inside_directives.mdwn @@ -31,3 +31,17 @@ The result, even with htmlscrubber disabled, is mangled, something like Any suggestions gladly received. -- [[Jon]] + +> Well, you *should* be able to do things like this, and in my testing, I +> *can*. I used your exact example above (removing the backslash escape) +> and invoked it as: +> \[[!template id=test href=himom.png size=100x]] +> +> And got just what you would expect. +> +> I don't know what went wrong for you, but I don't see a bug here. +> My guess, at the moment, is that you didn't specify the required href +> and size parameters when using the template. If I leave those off, +> I of course reproduce what you reported, since the img directive gets +> called with no filename, and so assumes the size parameter is the image +> to display.. [[done]]? --[[Joey]] -- cgit v1.2.3 From fd7062959a6c2d301cfc091795e9989d0df94b23 Mon Sep 17 00:00:00 2001 From: "http://smcv.pseudorandom.co.uk/" Date: Sun, 26 Sep 2010 21:39:07 +0000 Subject: HTML::Tree v4 is not entirely backwards-compatible --- doc/bugs/htmlbalance_fails_with_HTML-Tree_v4.mdwn | 13 +++++++++++++ 1 file changed, 13 insertions(+) create mode 100644 doc/bugs/htmlbalance_fails_with_HTML-Tree_v4.mdwn (limited to 'doc/bugs') diff --git a/doc/bugs/htmlbalance_fails_with_HTML-Tree_v4.mdwn b/doc/bugs/htmlbalance_fails_with_HTML-Tree_v4.mdwn new file mode 100644 index 000000000..c02ec114f --- /dev/null +++ b/doc/bugs/htmlbalance_fails_with_HTML-Tree_v4.mdwn @@ -0,0 +1,13 @@ +[[!template id=gitbranch branch=smcv/ready/htmlbalance author="[[smcv]]"]] + +My one-patch htmlbalance branch fixes incompatibility with HTML::Tree 4.0. +From the git commit: + + The HTML::Tree changelog says: + + [THINGS THAT MAY BREAK YOUR CODE OR TESTS] + ... + * Attribute names are now validated in as_XML and invalid names will + cause an error. + + and indeed the regression tests do get an error. -- cgit v1.2.3 From 82d751cf32d14acfaf09edad70e387c28a946145 Mon Sep 17 00:00:00 2001 From: "http://smcv.pseudorandom.co.uk/" Date: Sun, 26 Sep 2010 21:39:47 +0000 Subject: +patch --- doc/bugs/htmlbalance_fails_with_HTML-Tree_v4.mdwn | 2 ++ 1 file changed, 2 insertions(+) (limited to 'doc/bugs') diff --git a/doc/bugs/htmlbalance_fails_with_HTML-Tree_v4.mdwn b/doc/bugs/htmlbalance_fails_with_HTML-Tree_v4.mdwn index c02ec114f..e608e1b3d 100644 --- a/doc/bugs/htmlbalance_fails_with_HTML-Tree_v4.mdwn +++ b/doc/bugs/htmlbalance_fails_with_HTML-Tree_v4.mdwn @@ -11,3 +11,5 @@ From the git commit: cause an error. and indeed the regression tests do get an error. + +[[!tag patch]] -- cgit v1.2.3 From 759260f7c836f3491d4250e77aea2c14ad9369b5 Mon Sep 17 00:00:00 2001 From: "http://smcv.pseudorandom.co.uk/" Date: Sun, 26 Sep 2010 21:54:32 +0000 Subject: sign --- doc/bugs/htmlbalance_fails_with_HTML-Tree_v4.mdwn | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'doc/bugs') diff --git a/doc/bugs/htmlbalance_fails_with_HTML-Tree_v4.mdwn b/doc/bugs/htmlbalance_fails_with_HTML-Tree_v4.mdwn index e608e1b3d..2613224cf 100644 --- a/doc/bugs/htmlbalance_fails_with_HTML-Tree_v4.mdwn +++ b/doc/bugs/htmlbalance_fails_with_HTML-Tree_v4.mdwn @@ -1,4 +1,5 @@ [[!template id=gitbranch branch=smcv/ready/htmlbalance author="[[smcv]]"]] +[[!tag patch]] My one-patch htmlbalance branch fixes incompatibility with HTML::Tree 4.0. From the git commit: @@ -12,4 +13,4 @@ From the git commit: and indeed the regression tests do get an error. -[[!tag patch]] +--[[smcv]] -- cgit v1.2.3 From 43c99f907674de2207a7b411ee1b0c2996ce79d2 Mon Sep 17 00:00:00 2001 From: Joey Hess Date: Sun, 26 Sep 2010 22:37:18 -0400 Subject: htmlbalance: Fix compatability with HTML::Tree 4.0. (smcv) --- debian/changelog | 1 + doc/bugs/htmlbalance_fails_with_HTML-Tree_v4.mdwn | 2 ++ 2 files changed, 3 insertions(+) (limited to 'doc/bugs') diff --git a/debian/changelog b/debian/changelog index 97f9d3c79..a71a08ea2 100644 --- a/debian/changelog +++ b/debian/changelog @@ -3,6 +3,7 @@ ikiwiki (3.20100916) UNRELEASED; urgency=low * meta: Ensure that the url specified by xrds-location is absolute. * attachment: Fix attachment file size display. * Propigate PATH into wrapper. + * htmlbalance: Fix compatability with HTML::Tree 4.0. (smcv) -- Joey Hess Sun, 19 Sep 2010 20:13:06 -0400 diff --git a/doc/bugs/htmlbalance_fails_with_HTML-Tree_v4.mdwn b/doc/bugs/htmlbalance_fails_with_HTML-Tree_v4.mdwn index 2613224cf..92427065d 100644 --- a/doc/bugs/htmlbalance_fails_with_HTML-Tree_v4.mdwn +++ b/doc/bugs/htmlbalance_fails_with_HTML-Tree_v4.mdwn @@ -14,3 +14,5 @@ From the git commit: and indeed the regression tests do get an error. --[[smcv]] + +[[done]] --[[Joey]] -- cgit v1.2.3 From 142c77ff6f0f08cc486aa12f4e52eb32ec9f1c71 Mon Sep 17 00:00:00 2001 From: "http://jmtd.livejournal.com/" Date: Mon, 27 Sep 2010 22:17:29 +0000 Subject: probably PEBKAC (but still haven't figured it out) --- doc/bugs/can__39__t_mix_template_vars_inside_directives.mdwn | 2 ++ 1 file changed, 2 insertions(+) (limited to 'doc/bugs') diff --git a/doc/bugs/can__39__t_mix_template_vars_inside_directives.mdwn b/doc/bugs/can__39__t_mix_template_vars_inside_directives.mdwn index 462852ef8..7bb39470f 100644 --- a/doc/bugs/can__39__t_mix_template_vars_inside_directives.mdwn +++ b/doc/bugs/can__39__t_mix_template_vars_inside_directives.mdwn @@ -45,3 +45,5 @@ Any suggestions gladly received. -- [[Jon]] > I of course reproduce what you reported, since the img directive gets > called with no filename, and so assumes the size parameter is the image > to display.. [[done]]? --[[Joey]] + +>> Hmm, eek. Just double-checked, and done a full rebuild. No dice! Version 3.20100831. Feel free to leave this marked done, It probably *is* PEBKAC. I shall look again in day time. -- [[Jon]] -- cgit v1.2.3 From a70f8dad67a2abe09e451ffefb96be3f7ef67176 Mon Sep 17 00:00:00 2001 From: Joey Hess Date: Mon, 27 Sep 2010 18:47:13 -0400 Subject: test case --- doc/bugs/can__39__t_mix_template_vars_inside_directives.mdwn | 3 +++ 1 file changed, 3 insertions(+) (limited to 'doc/bugs') diff --git a/doc/bugs/can__39__t_mix_template_vars_inside_directives.mdwn b/doc/bugs/can__39__t_mix_template_vars_inside_directives.mdwn index 7bb39470f..72bd1cfa2 100644 --- a/doc/bugs/can__39__t_mix_template_vars_inside_directives.mdwn +++ b/doc/bugs/can__39__t_mix_template_vars_inside_directives.mdwn @@ -47,3 +47,6 @@ Any suggestions gladly received. -- [[Jon]] > to display.. [[done]]? --[[Joey]] >> Hmm, eek. Just double-checked, and done a full rebuild. No dice! Version 3.20100831. Feel free to leave this marked done, It probably *is* PEBKAC. I shall look again in day time. -- [[Jon]] + +>>> As always, if you'd like to mail me a larger test case that reproduces a +>>> problem for you, I can take a look at it. --[[Joey]] -- cgit v1.2.3 From 0f2f769229459effdb4dfaff9e7f617670b3d519 Mon Sep 17 00:00:00 2001 From: "http://jmtd.livejournal.com/" Date: Thu, 30 Sep 2010 08:59:12 +0000 Subject: lists and bullets --- ...rkdown:_mixing_code_and_lists_doesn__39__t_work_nicely.mdwn | 10 ++++++++++ 1 file changed, 10 insertions(+) create mode 100644 doc/bugs/markdown:_mixing_code_and_lists_doesn__39__t_work_nicely.mdwn (limited to 'doc/bugs') diff --git a/doc/bugs/markdown:_mixing_code_and_lists_doesn__39__t_work_nicely.mdwn b/doc/bugs/markdown:_mixing_code_and_lists_doesn__39__t_work_nicely.mdwn new file mode 100644 index 000000000..4accaa1de --- /dev/null +++ b/doc/bugs/markdown:_mixing_code_and_lists_doesn__39__t_work_nicely.mdwn @@ -0,0 +1,10 @@ +Consider: + + * one bullet + * another + + end of bullet list, this should be a code block + + * later on bullets + + tailing code block -- cgit v1.2.3 From 13945890c3292020bc0a9bb54668557115f5ad48 Mon Sep 17 00:00:00 2001 From: "http://jmtd.livejournal.com/" Date: Thu, 30 Sep 2010 09:00:39 +0000 Subject: removed --- ...rkdown:_mixing_code_and_lists_doesn__39__t_work_nicely.mdwn | 10 ---------- 1 file changed, 10 deletions(-) delete mode 100644 doc/bugs/markdown:_mixing_code_and_lists_doesn__39__t_work_nicely.mdwn (limited to 'doc/bugs') diff --git a/doc/bugs/markdown:_mixing_code_and_lists_doesn__39__t_work_nicely.mdwn b/doc/bugs/markdown:_mixing_code_and_lists_doesn__39__t_work_nicely.mdwn deleted file mode 100644 index 4accaa1de..000000000 --- a/doc/bugs/markdown:_mixing_code_and_lists_doesn__39__t_work_nicely.mdwn +++ /dev/null @@ -1,10 +0,0 @@ -Consider: - - * one bullet - * another - - end of bullet list, this should be a code block - - * later on bullets - - tailing code block -- cgit v1.2.3 From b9b505210457f5a8f6c19b60295b2a657d23f244 Mon Sep 17 00:00:00 2001 From: "http://jmtd.livejournal.com/" Date: Thu, 30 Sep 2010 21:49:55 +0000 Subject: gah --- doc/bugs/can__39__t_mix_template_vars_inside_directives.mdwn | 3 +++ 1 file changed, 3 insertions(+) (limited to 'doc/bugs') diff --git a/doc/bugs/can__39__t_mix_template_vars_inside_directives.mdwn b/doc/bugs/can__39__t_mix_template_vars_inside_directives.mdwn index 72bd1cfa2..5fc50c22b 100644 --- a/doc/bugs/can__39__t_mix_template_vars_inside_directives.mdwn +++ b/doc/bugs/can__39__t_mix_template_vars_inside_directives.mdwn @@ -50,3 +50,6 @@ Any suggestions gladly received. -- [[Jon]] >>> As always, if you'd like to mail me a larger test case that reproduces a >>> problem for you, I can take a look at it. --[[Joey]] + +>>>> Thank you for the offer. I might still take you up on it. I've just proven that this +>>>> does work for a clean repo / bare bones test case. -- [[Jon]] -- cgit v1.2.3 From e46f15f371fdb2a904f65e2772a941c9f24f1611 Mon Sep 17 00:00:00 2001 From: "http://jmtd.livejournal.com/" Date: Thu, 30 Sep 2010 21:57:39 +0000 Subject: done, PEBKAC. Thank you for your time :) --- doc/bugs/can__39__t_mix_template_vars_inside_directives.mdwn | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) (limited to 'doc/bugs') diff --git a/doc/bugs/can__39__t_mix_template_vars_inside_directives.mdwn b/doc/bugs/can__39__t_mix_template_vars_inside_directives.mdwn index 5fc50c22b..e91a8923d 100644 --- a/doc/bugs/can__39__t_mix_template_vars_inside_directives.mdwn +++ b/doc/bugs/can__39__t_mix_template_vars_inside_directives.mdwn @@ -51,5 +51,11 @@ Any suggestions gladly received. -- [[Jon]] >>> As always, if you'd like to mail me a larger test case that reproduces a >>> problem for you, I can take a look at it. --[[Joey]] ->>>> Thank you for the offer. I might still take you up on it. I've just proven that this ->>>> does work for a clean repo / bare bones test case. -- [[Jon]] +>>>> Thank you for the offer. I might still take you up on it. I've just proven that this +>>>> does work for a clean repo / bare bones test case. -- [[Jon]] Figured it out. The +>>>> problem was I'd copied a page (old_new) which had two images embedded in it to test. +>>>> I'd stored the images under a subdir "old_new". The new page was called "old_new_test" +>>>> and the images thus could not be found by a pagespec "some-image.jpg". Adjusting the +>>>> href argument to the template (consequently the src argument to img) to +>>>> "old_new/some-image.jpg" fixed it all. [[done]], PEBKAC. Thank you for your time :) +>>>> -- [[Jon]] -- cgit v1.2.3 From 0b0ce854d0cfa716ed5af7830884ca04358b230b Mon Sep 17 00:00:00 2001 From: "http://smcv.pseudorandom.co.uk/" Date: Fri, 1 Oct 2010 23:01:36 +0000 Subject: workaround --- doc/bugs/404_plugin_and_lighttpd.mdwn | 10 ++++++++++ 1 file changed, 10 insertions(+) (limited to 'doc/bugs') diff --git a/doc/bugs/404_plugin_and_lighttpd.mdwn b/doc/bugs/404_plugin_and_lighttpd.mdwn index e478d98c3..8508d0dcd 100644 --- a/doc/bugs/404_plugin_and_lighttpd.mdwn +++ b/doc/bugs/404_plugin_and_lighttpd.mdwn @@ -1,5 +1,15 @@ Lighttpd apparently sets REDIRECT_STATUS=200 for the server.error-handler-404 page. This breaks the [[plugins/404]] plugin which checks this variable for 404 before processing the URI. It also doesn't seem to set REDIRECT_URL. +> For what it's worth, the first half is . +> One workaround would be to make this script your 404 handler: +> +> #!/bin/sh +> REDIRECT_STATUS=404; export REDIRECT_STATUS +> REDIRECT_URL="$SERVER_NAME$REQUEST_URI"; export REDIRECT_URL +> exec /path/to/your/ikiwiki.cgi "$@" +> +> --[[smcv]] + I was able to fix my server to check the REQUEST_URI for ikiwiki.cgi and to continue processing if it was not found, passing $ENV{SEVER_NAME} . $ENV{REQUEST_URI} as the first parameter to cgi_page_from_404. However, my perl is terrible and I just made it work rather than figuring out exactly what to do to get it to work on both lighttpd and apache. This is with lighttpd 1.4.19 on Debian. -- cgit v1.2.3 From 380a80adfa8df712876095d684e8a564b8a86aea Mon Sep 17 00:00:00 2001 From: JoeRayhawk Date: Tue, 5 Oct 2010 01:09:42 +0000 Subject: Bug: UTF-16 and UTF-32 are unhandled: New --- doc/bugs/UTF-16_and_UTF-32_are_unhandled.mdwn | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) create mode 100644 doc/bugs/UTF-16_and_UTF-32_are_unhandled.mdwn (limited to 'doc/bugs') diff --git a/doc/bugs/UTF-16_and_UTF-32_are_unhandled.mdwn b/doc/bugs/UTF-16_and_UTF-32_are_unhandled.mdwn new file mode 100644 index 000000000..21df334a8 --- /dev/null +++ b/doc/bugs/UTF-16_and_UTF-32_are_unhandled.mdwn @@ -0,0 +1,20 @@ +Wide characters should probably be supported, or, at the very least, warned about. + +Test case: + + mkdir -p ikiwiki-utf-test/raw ikiwiki-utf-test/rendered + for page in txt mdwn; do + echo hello > ikiwiki-utf-test/raw/$page.$page + for text in 8 16 16BE 16LE 32 32BE 32LE; do + iconv -t UTF$text ikiwiki-utf-test/raw/$page.$page > ikiwiki-utf-test/raw/$page-utf$text.$page; + done + done + ikiwiki --verbose --plugin txt --plugin mdwn ikiwiki-utf-test/raw/ ikiwiki-utf-test/rendered/ + www-browser ikiwiki-utf-test/rendered/ || x-www-browser ikiwiki-utf-test/rendered/ + # rm -r ikiwiki-utf-test/ # some browsers rather stupidly daemonize themselves, so this operation can't easily be safely automated + +BOMless LE and BE input is probably a lost cause. + +Optimally, UTF-16 (which is ubiquitous in the Windows world) and UTF-32 should be fully supported, probably by converting to mostly-UTF-8 and using `&#xXXXX;` or `&#DDDDD;` XML escapes where necessary. + +Suboptimally, UTF-16 and UTF-32 should be converted to UTF-8 where cleanly possible and a warning printed where impossible. -- cgit v1.2.3 From 2ef899d9f94768d714b81ff5bc157e5f2c521395 Mon Sep 17 00:00:00 2001 From: Anonymous Date: Mon, 11 Oct 2010 11:45:38 +0200 Subject: Bugreport --- ..._of_img_directive_behave_not_as_documented.mdwn | 29 ++++++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 doc/bugs/class_parameter_of_img_directive_behave_not_as_documented.mdwn (limited to 'doc/bugs') diff --git a/doc/bugs/class_parameter_of_img_directive_behave_not_as_documented.mdwn b/doc/bugs/class_parameter_of_img_directive_behave_not_as_documented.mdwn new file mode 100644 index 000000000..10ba15066 --- /dev/null +++ b/doc/bugs/class_parameter_of_img_directive_behave_not_as_documented.mdwn @@ -0,0 +1,29 @@ +On [[ikiwiki/directive/img/]] I read that + +> You can also pass alt, title, class, align, id, hspace, and vspace +> parameters. These are passed through unchanged to the html img tag. + +but when I pass `class="myclass"` to an img directive, I obtain + + img: Add a margin around images displayed by this directive. +> +> Particularly important for floating images, which could before be placed +> uncomfortably close to text. + +which adds to img.pm: + + if (exists $params{class}) { + $params{class}.=" img"; + } + else { + $params{class}="img"; + } + +I would prefer if the `img` class were only added if no class attribute is +passed. + +If you keep the current behaviour, please document it. -- cgit v1.2.3 From 6dd49d0df7ac97b2a74517f18fcb24881c940cad Mon Sep 17 00:00:00 2001 From: Joey Hess Date: Mon, 11 Oct 2010 19:23:24 -0400 Subject: bug --- doc/bugs/monotone_backend_does_not_support_srcdir_in_subdir.mdwn | 3 +++ 1 file changed, 3 insertions(+) create mode 100644 doc/bugs/monotone_backend_does_not_support_srcdir_in_subdir.mdwn (limited to 'doc/bugs') diff --git a/doc/bugs/monotone_backend_does_not_support_srcdir_in_subdir.mdwn b/doc/bugs/monotone_backend_does_not_support_srcdir_in_subdir.mdwn new file mode 100644 index 000000000..9e1924472 --- /dev/null +++ b/doc/bugs/monotone_backend_does_not_support_srcdir_in_subdir.mdwn @@ -0,0 +1,3 @@ +The [[rcs/monotone]] backend does not currently support putting the ikiwiki srcdir +in a subdirectory of the repository. It must be at the top. Git has +special code to handle this case. --[[Joey]] -- cgit v1.2.3 From 7ba0f7d297e7d3e833756016b635ffa0cc78200e Mon Sep 17 00:00:00 2001 From: Joey Hess Date: Mon, 11 Oct 2010 20:30:14 -0400 Subject: monotone: Fix recentchanges page when the srcdir is not at the top of the monotone workspace. Thanks, tommyd. --- IkiWiki/Plugin/monotone.pm | 13 ++++++++++++- debian/changelog | 2 ++ .../monotone_backend_does_not_support_srcdir_in_subdir.mdwn | 2 ++ 3 files changed, 16 insertions(+), 1 deletion(-) (limited to 'doc/bugs') diff --git a/IkiWiki/Plugin/monotone.pm b/IkiWiki/Plugin/monotone.pm index 95fbcee76..75bf2f458 100644 --- a/IkiWiki/Plugin/monotone.pm +++ b/IkiWiki/Plugin/monotone.pm @@ -252,9 +252,20 @@ sub get_changed_files ($$) { my @ret; my %seen = (); - + + # we need to strip off the relative path to the source dir + # because monotone outputs all file paths absolute according + # to the workspace root + my $rel_src_dir = $config{'srcdir'}; + $rel_src_dir =~ s/^\Q$config{'mtnrootdir'}\E\/?//; + $rel_src_dir .= "/" if length $rel_src_dir; + while ($changes =~ m/\s*(add_file|patch|delete|rename)\s"(.*?)(? Wed, 29 Sep 2010 11:58:23 -0400 diff --git a/doc/bugs/monotone_backend_does_not_support_srcdir_in_subdir.mdwn b/doc/bugs/monotone_backend_does_not_support_srcdir_in_subdir.mdwn index 9e1924472..35f624f78 100644 --- a/doc/bugs/monotone_backend_does_not_support_srcdir_in_subdir.mdwn +++ b/doc/bugs/monotone_backend_does_not_support_srcdir_in_subdir.mdwn @@ -1,3 +1,5 @@ The [[rcs/monotone]] backend does not currently support putting the ikiwiki srcdir in a subdirectory of the repository. It must be at the top. Git has special code to handle this case. --[[Joey]] + +[[done]] -- cgit v1.2.3 From 8555d10f6369d78c44cf4677010b7e1260d9f5c0 Mon Sep 17 00:00:00 2001 From: Joey Hess Date: Wed, 13 Oct 2010 12:57:16 -0400 Subject: img: If a class is specified, don't also put the img in the img class. --- IkiWiki/Plugin/img.pm | 5 +---- debian/changelog | 2 ++ .../class_parameter_of_img_directive_behave_not_as_documented.mdwn | 2 ++ 3 files changed, 5 insertions(+), 4 deletions(-) (limited to 'doc/bugs') diff --git a/IkiWiki/Plugin/img.pm b/IkiWiki/Plugin/img.pm index 2375ead89..bd527c8c8 100644 --- a/IkiWiki/Plugin/img.pm +++ b/IkiWiki/Plugin/img.pm @@ -156,10 +156,7 @@ sub preprocess (@) { $imgurl="$config{url}/$imglink"; } - if (exists $params{class}) { - $params{class}.=" img"; - } - else { + if (! exists $params{class}) { $params{class}="img"; } diff --git a/debian/changelog b/debian/changelog index 12cc90b11..5433ba05f 100644 --- a/debian/changelog +++ b/debian/changelog @@ -14,6 +14,8 @@ ikiwiki (3.20100927) UNRELEASED; urgency=low * websetup: Fix defaults of checkboxes in advanced mode. * monotone: Fix recentchanges page when the srcdir is not at the top of the monotone workspace. Thanks, tommyd. + * img: If a class is specified, don't also put the img in the img + class. -- Joey Hess Wed, 29 Sep 2010 11:58:23 -0400 diff --git a/doc/bugs/class_parameter_of_img_directive_behave_not_as_documented.mdwn b/doc/bugs/class_parameter_of_img_directive_behave_not_as_documented.mdwn index 10ba15066..e7797765f 100644 --- a/doc/bugs/class_parameter_of_img_directive_behave_not_as_documented.mdwn +++ b/doc/bugs/class_parameter_of_img_directive_behave_not_as_documented.mdwn @@ -27,3 +27,5 @@ I would prefer if the `img` class were only added if no class attribute is passed. If you keep the current behaviour, please document it. + +> [[done]] --[[Joey]] -- cgit v1.2.3 From a14c2a9cd0f04062e32c218b799076adaf8b934e Mon Sep 17 00:00:00 2001 From: "http://hendry.iki.fi/" Date: Thu, 14 Oct 2010 12:25:48 +0000 Subject: perms --- doc/bugs/More_permission_checking.mdwn | 9 +++++++++ 1 file changed, 9 insertions(+) create mode 100644 doc/bugs/More_permission_checking.mdwn (limited to 'doc/bugs') diff --git a/doc/bugs/More_permission_checking.mdwn b/doc/bugs/More_permission_checking.mdwn new file mode 100644 index 000000000..e56cda98b --- /dev/null +++ b/doc/bugs/More_permission_checking.mdwn @@ -0,0 +1,9 @@ +I'm often confused about permissions and I wish ikiwiki could stamp it's foot down and ensure all the permissions are correctly (canonically?) setup. + +I keep ending up having to `sudo chown -R :www-data` and `sudo chmod -R g+w` on srcdir, destdir. I'm never quite sure what is the best practice for the srcdirs' `/srv/git/` is. Currently everything looks like `hendry:www-data` with ug+rw. + +I think I've triggered these problems by (not thinking and) running `ikiwiki --rebuild --setup /home/hendry/.ikiwiki/mywiki.setup` as my user. + +I don't know if there can be some lookup with `/etc/ikiwiki/wikilist`. Though shouldn't everything be under the `www-data` group in reality? + +Also when I use `sudo ikiwiki -setup /etc/ikiwiki/auto.setup`, I think I create a ton of problems for myself since everything is created as the root user, right? And `/etc/ikiwiki/wikilist` doesn't seem to have the latest created wiki added. I have to reluctantly manually do this. -- cgit v1.2.3 From 1c8d7c450b6ec1e6bf9973525bf117035b907e98 Mon Sep 17 00:00:00 2001 From: "http://jmtd.livejournal.com/" Date: Sat, 23 Oct 2010 18:06:17 +0000 Subject: web reversion - hmm --- doc/bugs/web_reversion_on_ikiwiki.info.mdwn | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 doc/bugs/web_reversion_on_ikiwiki.info.mdwn (limited to 'doc/bugs') diff --git a/doc/bugs/web_reversion_on_ikiwiki.info.mdwn b/doc/bugs/web_reversion_on_ikiwiki.info.mdwn new file mode 100644 index 000000000..c8563b1b5 --- /dev/null +++ b/doc/bugs/web_reversion_on_ikiwiki.info.mdwn @@ -0,0 +1,5 @@ +I created [[sandbox/revert me]] and then tried the revert button on [[recentchanges]], but I was not allowed to revert it. The specific error was + + Error: you are not allowed to change sandbox/revert_me.mdwn + +I've just tried reading through the revert code, and I haven't figured out what permission I am lacking. Perhaps the error message could be a little clearer on that. The error might have been thrown by git_parse_changes in git.pm or check_canchange in IkiWiki.pm, via IkiWiki::Receive. -- Jon -- cgit v1.2.3 From 9d78e484da5c0f8734cbc26bb1a8f89617d6afe8 Mon Sep 17 00:00:00 2001 From: Joey Hess Date: Sat, 23 Oct 2010 16:33:27 -0400 Subject: fixed --- doc/bugs/web_reversion_on_ikiwiki.info.mdwn | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) (limited to 'doc/bugs') diff --git a/doc/bugs/web_reversion_on_ikiwiki.info.mdwn b/doc/bugs/web_reversion_on_ikiwiki.info.mdwn index c8563b1b5..19a073da2 100644 --- a/doc/bugs/web_reversion_on_ikiwiki.info.mdwn +++ b/doc/bugs/web_reversion_on_ikiwiki.info.mdwn @@ -1,5 +1,12 @@ -I created [[sandbox/revert me]] and then tried the revert button on [[recentchanges]], but I was not allowed to revert it. The specific error was +I created [[sandbox/revert me]] and then tried the revert button on +[[recentchanges]], but I was not allowed to revert it. The specific error +was Error: you are not allowed to change sandbox/revert_me.mdwn -I've just tried reading through the revert code, and I haven't figured out what permission I am lacking. Perhaps the error message could be a little clearer on that. The error might have been thrown by git_parse_changes in git.pm or check_canchange in IkiWiki.pm, via IkiWiki::Receive. -- Jon +I've just tried reading through the revert code, and I haven't figured out +what permission I am lacking. Perhaps the error message could be a little +clearer on that. The error might have been thrown by git_parse_changes in +git.pm or check_canchange in IkiWiki.pm, via IkiWiki::Receive. -- Jon + +[[fixed|done]] --[[Joey]] -- cgit v1.2.3 From 3993757cf8f5747dd19cf35e95e1078de1513acf Mon Sep 17 00:00:00 2001 From: "http://jmtd.livejournal.com/" Date: Sat, 23 Oct 2010 20:48:03 +0000 Subject: Thanks Joey --- doc/bugs/web_reversion_on_ikiwiki.info.mdwn | 2 ++ 1 file changed, 2 insertions(+) (limited to 'doc/bugs') diff --git a/doc/bugs/web_reversion_on_ikiwiki.info.mdwn b/doc/bugs/web_reversion_on_ikiwiki.info.mdwn index 19a073da2..6f18cfcba 100644 --- a/doc/bugs/web_reversion_on_ikiwiki.info.mdwn +++ b/doc/bugs/web_reversion_on_ikiwiki.info.mdwn @@ -10,3 +10,5 @@ clearer on that. The error might have been thrown by git_parse_changes in git.pm or check_canchange in IkiWiki.pm, via IkiWiki::Receive. -- Jon [[fixed|done]] --[[Joey]] + +: Brilliant, many thanks. -- [[Jon]] -- cgit v1.2.3 From a12dd235ea6afff3540da3f5e66e7abbadaa6944 Mon Sep 17 00:00:00 2001 From: Thomas Schwinge Date: Wed, 27 Oct 2010 14:49:21 +0200 Subject: Fix some more links. DynDNS (which was resolving *.schwinge.homeip.net to my server at home) stopped supporting wildcard CNAMEs *.schwinge.homeip.net, so I now always have to use the canonical name (or pay for getting this back, or go looking for another service provider)... --- ..._no_text_was_copied_in_this_page_--_missing_page_dependencies.mdwn | 2 +- doc/bugs/cutpaste.pm:_missing_filter_call.mdwn | 4 ++-- doc/forum/cutpaste.pm_not_only_file-local.mdwn | 2 +- doc/plugins/contrib/texinfo.mdwn | 2 +- .../__42__forward__42__ing_functionality_for_the_meta_plugin.mdwn | 2 +- doc/todo/passwordauth:_sendmail_interface.mdwn | 2 +- doc/users/tschwinge.mdwn | 4 ++-- 7 files changed, 9 insertions(+), 9 deletions(-) (limited to 'doc/bugs') diff --git a/doc/bugs/Error:_no_text_was_copied_in_this_page_--_missing_page_dependencies.mdwn b/doc/bugs/Error:_no_text_was_copied_in_this_page_--_missing_page_dependencies.mdwn index 6996a9fbf..0082eed4d 100644 --- a/doc/bugs/Error:_no_text_was_copied_in_this_page_--_missing_page_dependencies.mdwn +++ b/doc/bugs/Error:_no_text_was_copied_in_this_page_--_missing_page_dependencies.mdwn @@ -2,7 +2,7 @@ That one has bitten me for some time; here is the minimal testcase. There is also an equivalent (I suppose) problem when using another plugin, but I hope it's enough to track it down for this one. - $ tar -xj < [bug-dep_order.tar.bz2](http://www.thomas.schwinge.homeip.net/tmp/bug-dep_order.tar.bz2) + $ tar -xj < [bug-dep_order.tar.bz2](http://schwinge.homeip.net/~thomas/tmp/bug-dep_order.tar.bz2) $ cd bug-dep_order/ $ ./render_locally [...] diff --git a/doc/bugs/cutpaste.pm:_missing_filter_call.mdwn b/doc/bugs/cutpaste.pm:_missing_filter_call.mdwn index f7138cba0..4b22fd06c 100644 --- a/doc/bugs/cutpaste.pm:_missing_filter_call.mdwn +++ b/doc/bugs/cutpaste.pm:_missing_filter_call.mdwn @@ -1,7 +1,7 @@ Consider this: - $ wget http://www.thomas.schwinge.homeip.net/tmp/cutpaste_filter.tar.bz2 - $ wget http://www.thomas.schwinge.homeip.net/tmp/cutpaste_filter.patch + $ wget http://schwinge.homeip.net/~thomas/tmp/cutpaste_filter.tar.bz2 + $ wget http://schwinge.homeip.net/~thomas/tmp/cutpaste_filter.patch $ tar -xj < cutpaste_filter.tar.bz2 $ cd cutpaste_filter/ diff --git a/doc/forum/cutpaste.pm_not_only_file-local.mdwn b/doc/forum/cutpaste.pm_not_only_file-local.mdwn index 3563e3e01..0c5221cc9 100644 --- a/doc/forum/cutpaste.pm_not_only_file-local.mdwn +++ b/doc/forum/cutpaste.pm_not_only_file-local.mdwn @@ -3,7 +3,7 @@ has \[[!cut id=foo text="foo"]], and fileB does \[[!absorb pagenames=fileA]], and can then use \[[!paste id=foo]]. Therefore, I've written an [*absorb* directive / -plugin](http://www.thomas.schwinge.homeip.net/tmp/absorb.pm), which is meant to +plugin](http://schwinge.homeip.net/~thomas/tmp/absorb.pm), which is meant to absorb pages in order to get hold of their *cut* and *copy* directives' contents. This does work as expected. But it also absorbs page fileA's *meta* values, like a *meta title*, etc. How to avoid / solve this? diff --git a/doc/plugins/contrib/texinfo.mdwn b/doc/plugins/contrib/texinfo.mdwn index 595bd27aa..a2769166d 100644 --- a/doc/plugins/contrib/texinfo.mdwn +++ b/doc/plugins/contrib/texinfo.mdwn @@ -8,7 +8,7 @@ This plugin is not neccessarily meant to enable people to write arbitrary wiki pages in the Texinfo format (even though that is possible, of course), but rather to ease collaboration on existing Texinfo documents. -The plugin is available at . +The plugin is available at . It's very basic at the moment, but will be improved over time. diff --git a/doc/todo/__42__forward__42__ing_functionality_for_the_meta_plugin.mdwn b/doc/todo/__42__forward__42__ing_functionality_for_the_meta_plugin.mdwn index 61b19d302..b3804d652 100644 --- a/doc/todo/__42__forward__42__ing_functionality_for_the_meta_plugin.mdwn +++ b/doc/todo/__42__forward__42__ing_functionality_for_the_meta_plugin.mdwn @@ -4,7 +4,7 @@ to the [[`meta`_plugin|plugins/meta]]. > [[done]], with some changes --[[Joey]] Find the most recent version at -. +. I can't use `scrub(...)`, as that will strip out the forwarding HTML command. How to deal with that? diff --git a/doc/todo/passwordauth:_sendmail_interface.mdwn b/doc/todo/passwordauth:_sendmail_interface.mdwn index 29f28ca32..556240964 100644 --- a/doc/todo/passwordauth:_sendmail_interface.mdwn +++ b/doc/todo/passwordauth:_sendmail_interface.mdwn @@ -35,7 +35,7 @@ in the ikiwiki source code, where emailing is done. OK, so I'll have a look at replacing all email handling with *Email::Send*. [[!tag patch]] -** +** Remaining TODOs: diff --git a/doc/users/tschwinge.mdwn b/doc/users/tschwinge.mdwn index 944105349..435208a71 100644 --- a/doc/users/tschwinge.mdwn +++ b/doc/users/tschwinge.mdwn @@ -1,8 +1,8 @@ [[!meta title="Thomas Schwinge"]] # Thomas Schwinge - - + + I have converted the [GNU Hurd](http://www.gnu.org/software/hurd/)'s previous web pages and previous wiki pages to a *[[ikiwiki]]* system; and all that while -- cgit v1.2.3 From 34ef3fb40f0a8a5d595ce5cf5f0b6470b7c78198 Mon Sep 17 00:00:00 2001 From: "https://www.google.com/accounts/o8/id?id=AItOawmE7z4CSv-ctBarutQCd70R3CcaSPPxjVk" Date: Thu, 28 Oct 2010 14:20:24 +0000 Subject: I'm curious if there has been any progress on better RSS output --- ...not_use_recommended_encoding_of_entities_for_some_fields.mdwn | 9 +++++++++ 1 file changed, 9 insertions(+) (limited to 'doc/bugs') diff --git a/doc/bugs/rss_feeds_do_not_use_recommended_encoding_of_entities_for_some_fields.mdwn b/doc/bugs/rss_feeds_do_not_use_recommended_encoding_of_entities_for_some_fields.mdwn index 48c168997..85c317669 100644 --- a/doc/bugs/rss_feeds_do_not_use_recommended_encoding_of_entities_for_some_fields.mdwn +++ b/doc/bugs/rss_feeds_do_not_use_recommended_encoding_of_entities_for_some_fields.mdwn @@ -34,3 +34,12 @@ For Atom, at least, I believe adding `type="xhtml"` to the title element will wo > Update: Ok, I've fixed this for titles, as a special case, but the > underlying problem remains for other fields in rss feeds (such as > author), so I'm leaving this bug report open. --[[Joey]] + +>> I'm curious if there has been any progress on better RSS output? +>> I've been prototyping a new blog and getting good RSS out of it +>> seems important as the bulk of my current readers use RSS. +>> I note, in passing that the "more" plugin doesn't quite do what +>> I want either - I'd like to pass a full RSS feed of a post and only +>> have "more" apply to the front page of the blog. Is there a way to do that? +>> -- [[dtaht]] +>> -- cgit v1.2.3 From 99749dfdeac07b975cfba6eef617f3d7362eec73 Mon Sep 17 00:00:00 2001 From: "https://www.google.com/accounts/o8/id?id=AItOawmE7z4CSv-ctBarutQCd70R3CcaSPPxjVk" Date: Thu, 28 Oct 2010 14:28:04 +0000 Subject: more plugin and rss --- doc/bugs/more_and_RSS_generation.mdwn | 7 +++++++ 1 file changed, 7 insertions(+) create mode 100644 doc/bugs/more_and_RSS_generation.mdwn (limited to 'doc/bugs') diff --git a/doc/bugs/more_and_RSS_generation.mdwn b/doc/bugs/more_and_RSS_generation.mdwn new file mode 100644 index 000000000..72d636f18 --- /dev/null +++ b/doc/bugs/more_and_RSS_generation.mdwn @@ -0,0 +1,7 @@ +I'd like the more plugin and RSS to play better together. In the case of the html generation of the main page of a blog, I'd like to get the first paragraph out, but keep RSS as a full feed. + +Maybe there is a different plugin (I also tried toggle)? + +I also note, that at least currently, more seems to break on a few pages, not being parsed at all when aggregated into the front page. + +see also: [[/bugs/rss_feeds_do_not_use_recommended_encoding_of_entities_for_some_fields/]] -- cgit v1.2.3 From 1b770bea3fd5b5dfb4e75237218db204139d9189 Mon Sep 17 00:00:00 2001 From: "https://www.google.com/accounts/o8/id?id=AItOawmE7z4CSv-ctBarutQCd70R3CcaSPPxjVk" Date: Thu, 28 Oct 2010 14:38:32 +0000 Subject: --- doc/bugs/logout_in_ikiwiki.mdwn | 1 + 1 file changed, 1 insertion(+) create mode 100644 doc/bugs/logout_in_ikiwiki.mdwn (limited to 'doc/bugs') diff --git a/doc/bugs/logout_in_ikiwiki.mdwn b/doc/bugs/logout_in_ikiwiki.mdwn new file mode 100644 index 000000000..ad89f4c2d --- /dev/null +++ b/doc/bugs/logout_in_ikiwiki.mdwn @@ -0,0 +1 @@ +It looks like there is no way to logout of ikiwiki at present, meaning that if you edit the ikiwiki in, say, a cybercafe, the cookie remains... is there some other security mechanism in place that can check for authorization, or should I hack in a logout routine into ikiwiki.cgi? -- cgit v1.2.3 From 663d2578832dd0808ea98a624b49cec4bf3c0243 Mon Sep 17 00:00:00 2001 From: "http://liw.fi/" Date: Thu, 28 Oct 2010 17:39:29 +0000 Subject: --- doc/bugs/logout_in_ikiwiki.mdwn | 2 ++ 1 file changed, 2 insertions(+) (limited to 'doc/bugs') diff --git a/doc/bugs/logout_in_ikiwiki.mdwn b/doc/bugs/logout_in_ikiwiki.mdwn index ad89f4c2d..9f974be15 100644 --- a/doc/bugs/logout_in_ikiwiki.mdwn +++ b/doc/bugs/logout_in_ikiwiki.mdwn @@ -1 +1,3 @@ It looks like there is no way to logout of ikiwiki at present, meaning that if you edit the ikiwiki in, say, a cybercafe, the cookie remains... is there some other security mechanism in place that can check for authorization, or should I hack in a logout routine into ikiwiki.cgi? + +> Click on "Preferences". There is a logout button there. --liw -- cgit v1.2.3 From 47b9f10e6254277918873a980af0cf0631326165 Mon Sep 17 00:00:00 2001 From: Joey Hess Date: Thu, 28 Oct 2010 15:39:22 -0400 Subject: response --- doc/bugs/logout_in_ikiwiki.mdwn | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'doc/bugs') diff --git a/doc/bugs/logout_in_ikiwiki.mdwn b/doc/bugs/logout_in_ikiwiki.mdwn index 9f974be15..5df19c405 100644 --- a/doc/bugs/logout_in_ikiwiki.mdwn +++ b/doc/bugs/logout_in_ikiwiki.mdwn @@ -1,3 +1,7 @@ It looks like there is no way to logout of ikiwiki at present, meaning that if you edit the ikiwiki in, say, a cybercafe, the cookie remains... is there some other security mechanism in place that can check for authorization, or should I hack in a logout routine into ikiwiki.cgi? > Click on "Preferences". There is a logout button there. --liw + +> It would be nice if it were not buried there, but putting it on the +> action bar statically would be confusing. The best approach might be to +> use javascript. --[[Joey]] -- cgit v1.2.3 From f54a91c3021b304fdde183834542418720e4f792 Mon Sep 17 00:00:00 2001 From: "https://www.google.com/accounts/o8/id?id=AItOawmE7z4CSv-ctBarutQCd70R3CcaSPPxjVk" Date: Fri, 29 Oct 2010 00:56:13 +0000 Subject: trying to figure out how to make ikiwiki slightly more interactive --- doc/bugs/logout_in_ikiwiki.mdwn | 15 +++++++++++++++ 1 file changed, 15 insertions(+) (limited to 'doc/bugs') diff --git a/doc/bugs/logout_in_ikiwiki.mdwn b/doc/bugs/logout_in_ikiwiki.mdwn index 5df19c405..a9c407ba2 100644 --- a/doc/bugs/logout_in_ikiwiki.mdwn +++ b/doc/bugs/logout_in_ikiwiki.mdwn @@ -5,3 +5,18 @@ It looks like there is no way to logout of ikiwiki at present, meaning that if y > It would be nice if it were not buried there, but putting it on the > action bar statically would be confusing. The best approach might be to > use javascript. --[[Joey]] + + +>> I agree that javascript seems to be a solution, but my brain falls +>> off the end of the world while looking at ways to manipulate the DOM. +>> (I'd argue also in favor of the openid_provider cookie expiring +>> in less time than it does now, and being session based) + +>> It would be nice to move navigational elements to the upper right corner +>> of the page... + +>> I have two kinds of pages (wiki and blog), and three classes of users +>> anonymous users - display things like login, help, and recentchanges, +>> non-admin users - on a per subdir basis (blog and !blog) display +>> logout, help, recentchanges, edit, comment +>> admin users - logout, help, recentchanges, edit, comment, etc -- cgit v1.2.3 From cfc1b6ac486e11cb11d6c72602bf70b0a440b747 Mon Sep 17 00:00:00 2001 From: "https://www.google.com/accounts/o8/id?id=AItOawmE7z4CSv-ctBarutQCd70R3CcaSPPxjVk" Date: Fri, 29 Oct 2010 00:58:34 +0000 Subject: --- doc/bugs/logout_in_ikiwiki.mdwn | 3 +++ 1 file changed, 3 insertions(+) (limited to 'doc/bugs') diff --git a/doc/bugs/logout_in_ikiwiki.mdwn b/doc/bugs/logout_in_ikiwiki.mdwn index a9c407ba2..3ca85fddc 100644 --- a/doc/bugs/logout_in_ikiwiki.mdwn +++ b/doc/bugs/logout_in_ikiwiki.mdwn @@ -16,7 +16,10 @@ It looks like there is no way to logout of ikiwiki at present, meaning that if y >> of the page... >> I have two kinds of pages (wiki and blog), and three classes of users + >> anonymous users - display things like login, help, and recentchanges, + >> non-admin users - on a per subdir basis (blog and !blog) display >> logout, help, recentchanges, edit, comment + >> admin users - logout, help, recentchanges, edit, comment, etc -- cgit v1.2.3 From d16104f55d8b31929d0466ca9abc3ccb4af0a8e8 Mon Sep 17 00:00:00 2001 From: Joey Hess Date: Sat, 30 Oct 2010 12:41:31 -0400 Subject: response --- doc/bugs/more_and_RSS_generation.mdwn | 13 +++++++++++++ 1 file changed, 13 insertions(+) (limited to 'doc/bugs') diff --git a/doc/bugs/more_and_RSS_generation.mdwn b/doc/bugs/more_and_RSS_generation.mdwn index 72d636f18..00ab43fa2 100644 --- a/doc/bugs/more_and_RSS_generation.mdwn +++ b/doc/bugs/more_and_RSS_generation.mdwn @@ -2,6 +2,19 @@ I'd like the more plugin and RSS to play better together. In the case of the htm Maybe there is a different plugin (I also tried toggle)? +> I am not a fan of the more directive (thus the rant about it sucking +> embedded in its [[example|ikiwiki/directive/more]]). But I don't think +> that weakening it to not work in rss feeds is a good idea, if someone +> wants to force users to go somewhere to view their full content, +> they should be able to do it, even though it does suck. +> +> The toggle directive will degrade fairly well in an rss feed to +> display the full text. (There is an annoying toggle link that does +> nothing when embedded in an rss feed). --[[Joey]] + I also note, that at least currently, more seems to break on a few pages, not being parsed at all when aggregated into the front page. +> It's just a simple directive, it should work anywhere any directive will, +> and does as far as I can see. Details? --[[Joey]] + see also: [[/bugs/rss_feeds_do_not_use_recommended_encoding_of_entities_for_some_fields/]] -- cgit v1.2.3 From 313a28b8f68b76aee4b94413e4e9d47dca93a34e Mon Sep 17 00:00:00 2001 From: Joey Hess Date: Sat, 30 Oct 2010 12:50:26 -0400 Subject: response --- ...o_not_use_recommended_encoding_of_entities_for_some_fields.mdwn | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'doc/bugs') diff --git a/doc/bugs/rss_feeds_do_not_use_recommended_encoding_of_entities_for_some_fields.mdwn b/doc/bugs/rss_feeds_do_not_use_recommended_encoding_of_entities_for_some_fields.mdwn index 85c317669..0a435cea3 100644 --- a/doc/bugs/rss_feeds_do_not_use_recommended_encoding_of_entities_for_some_fields.mdwn +++ b/doc/bugs/rss_feeds_do_not_use_recommended_encoding_of_entities_for_some_fields.mdwn @@ -43,3 +43,10 @@ For Atom, at least, I believe adding `type="xhtml"` to the title element will wo >> have "more" apply to the front page of the blog. Is there a way to do that? >> -- [[dtaht]] >> +>>> To be clear, the RSS spec sucks to such an extent that, as far as +>>> I know, there is no sort of title escaping that will work in all +>>> RSS consumers. Titles are currently escaped in the way +>>> that tends to break the fewest according to what I've read. +>>> If you're unlucky enough to +>>> have a "&" or "<" in your **name**, then you may still run into +>>> problems with how that is escaped in rss feeds. --[[Joey]] -- cgit v1.2.3 From cb45d3cf44760411746414ba1218c925ad097149 Mon Sep 17 00:00:00 2001 From: Joey Hess Date: Sat, 30 Oct 2010 12:59:31 -0400 Subject: re the openid_provider cookie --- doc/bugs/logout_in_ikiwiki.mdwn | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'doc/bugs') diff --git a/doc/bugs/logout_in_ikiwiki.mdwn b/doc/bugs/logout_in_ikiwiki.mdwn index 3ca85fddc..d9b6df677 100644 --- a/doc/bugs/logout_in_ikiwiki.mdwn +++ b/doc/bugs/logout_in_ikiwiki.mdwn @@ -12,6 +12,12 @@ It looks like there is no way to logout of ikiwiki at present, meaning that if y >> (I'd argue also in favor of the openid_provider cookie expiring >> in less time than it does now, and being session based) +>>> (The `openid_provider` cookie is purely a convenience cookie to +>>> auto-select the user's openid provider the next time they log +>>> in. As such, it cannot be a session cookie. It does not provide any +>>> personally-identifying information so it should not really matter +>>> when it expires.) --[[Joey]] + >> It would be nice to move navigational elements to the upper right corner >> of the page... -- cgit v1.2.3 From 263cfa7d1e938e3b41d1b6826427f0d613b2b97c Mon Sep 17 00:00:00 2001 From: "http://jmtd.livejournal.com/" Date: Mon, 15 Nov 2010 10:08:30 +0000 Subject: aggregate: too long filenames --- doc/bugs/aggregate_generates_long_filenames.mdwn | 10 ++++++++++ 1 file changed, 10 insertions(+) create mode 100644 doc/bugs/aggregate_generates_long_filenames.mdwn (limited to 'doc/bugs') diff --git a/doc/bugs/aggregate_generates_long_filenames.mdwn b/doc/bugs/aggregate_generates_long_filenames.mdwn new file mode 100644 index 000000000..cb5e6df73 --- /dev/null +++ b/doc/bugs/aggregate_generates_long_filenames.mdwn @@ -0,0 +1,10 @@ +the [[pluhins/aggregate]] plugin mashes the `title` of an aggregated post into a filename. This results in long filenames. I have hit a filesystem length limitation on several occasions. Some (ab)uses of RSS, e.g., twitter, +generate long titles. Especially once you throw escaping into the mix: + + $ ikiwiki --setup testsetup --aggregate --refresh + failed to write ./test/lifestream/Hidden_Features_Of_Perl__44___PHP__44___Javascript__44___C__44___C++__44___C__35____44___Java__44___Ruby___46____46____46__._aggregated.ikiwiki-new: File name too long + aggregation failed with code 9216 + $ echo $? + 25 + +-- [[Jon]] -- cgit v1.2.3 From 471ac78068532da53e4dad49d52c5ddccfcbff21 Mon Sep 17 00:00:00 2001 From: "http://jmtd.livejournal.com/" Date: Mon, 15 Nov 2010 10:09:41 +0000 Subject: typo --- doc/bugs/aggregate_generates_long_filenames.mdwn | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'doc/bugs') diff --git a/doc/bugs/aggregate_generates_long_filenames.mdwn b/doc/bugs/aggregate_generates_long_filenames.mdwn index cb5e6df73..3d98ee8b2 100644 --- a/doc/bugs/aggregate_generates_long_filenames.mdwn +++ b/doc/bugs/aggregate_generates_long_filenames.mdwn @@ -1,4 +1,4 @@ -the [[pluhins/aggregate]] plugin mashes the `title` of an aggregated post into a filename. This results in long filenames. I have hit a filesystem length limitation on several occasions. Some (ab)uses of RSS, e.g., twitter, +the [[plugins/aggregate]] plugin mashes the `title` of an aggregated post into a filename. This results in long filenames. I have hit a filesystem length limitation on several occasions. Some (ab)uses of RSS, e.g., twitter, generate long titles. Especially once you throw escaping into the mix: $ ikiwiki --setup testsetup --aggregate --refresh -- cgit v1.2.3 From 85ee24a9e53aec7d70bb4fb758428e59ea76e853 Mon Sep 17 00:00:00 2001 From: "http://jmtd.livejournal.com/" Date: Mon, 15 Nov 2010 10:11:40 +0000 Subject: --- doc/bugs/aggregate_generates_long_filenames.mdwn | 3 +++ 1 file changed, 3 insertions(+) (limited to 'doc/bugs') diff --git a/doc/bugs/aggregate_generates_long_filenames.mdwn b/doc/bugs/aggregate_generates_long_filenames.mdwn index 3d98ee8b2..40decb392 100644 --- a/doc/bugs/aggregate_generates_long_filenames.mdwn +++ b/doc/bugs/aggregate_generates_long_filenames.mdwn @@ -7,4 +7,7 @@ generate long titles. Especially once you throw escaping into the mix: $ echo $? 25 +It would also appear this abrubtly terminates aggregate processing (if not ikiwiki itself). Only after moving my test repo to `/tmp` to shorten the filename did I see newer RSS feeds (from a totally different source) picked up. + + -- [[Jon]] -- cgit v1.2.3 From 53e519931f3a6b7cea0af652d749344757d4e2bc Mon Sep 17 00:00:00 2001 From: "http://jmtd.livejournal.com/" Date: Mon, 15 Nov 2010 14:23:01 +0000 Subject: template files being treated as regular pages and the problems that can cause --- ...c:_mixing_templates_and_creation__95__date.mdwn | 58 ++++++++++++++++++++++ 1 file changed, 58 insertions(+) create mode 100644 doc/bugs/argument_isn__39__t_numeric:_mixing_templates_and_creation__95__date.mdwn (limited to 'doc/bugs') diff --git a/doc/bugs/argument_isn__39__t_numeric:_mixing_templates_and_creation__95__date.mdwn b/doc/bugs/argument_isn__39__t_numeric:_mixing_templates_and_creation__95__date.mdwn new file mode 100644 index 000000000..70af505c1 --- /dev/null +++ b/doc/bugs/argument_isn__39__t_numeric:_mixing_templates_and_creation__95__date.mdwn @@ -0,0 +1,58 @@ +I get the following error when building my wiki + + Argument "\x{3c}\x{54}..." isn't numeric in numeric eq (==) at /usr/share/perl5/IkiWiki.pm line 2547. + Argument "\x{3c}\x{54}..." isn't numeric in numeric eq (==) at /usr/share/perl5/IkiWiki.pm line 2547. + +that line corresponds to + + sub match_creation_year ($$;@) { + if ((localtime($IkiWiki::pagectime{shift()}))[5] + 1900 == shift) { <-- this one + return IkiWiki::SuccessReason->new('creation_year matched'); + } + +A git bisect shows that the offending commit introduced this hunk + + + --- /dev/null + +++ b/templates/all_entry.mdwn + @@ -0,0 +1,23 @@ + +## + + + +There + + + +have been + + + +were + + + +[[!pagecount pages=" + +log/* and !tagged(aggregation) and !*/Discussion and !tagged(draft) + +and creation_year() + +and !*.png and !*.jpg + +"]] posts + + + +so far + + + +in . + + + +[[!inline pages=" + + log/* and !tagged(aggregation) and !*/Discussion and !tagged(draft) + + and creation_year() + + and !*.png and !*.jpg + + " archive=yes feeds=no]] + +The lines which feature creation_year() are most likely the culprits. That would explain why the error was repeated twice, and would tally with the file in `templates/` being rendered, rather than the inclusionists. + +A workaround is to move the template outside of the srcdir into the external templates directory and include the file suffix when using it, e.g. + + \[[!template id=all_entry.tmpl year=2010 current=true]] + +An alternative fix is to wrap the entire template inside a test to see whether the page is included or not. E.g. + + + \[[!if test="included()" then=""" + ...template... + """ else=""" + Nothing to see here. + """]] + +In fact, this is probably best practice for in-srcdir templates. I'd consider this done if the documentation for the directive suggested it. -- [[Jon]] -- cgit v1.2.3 From 9d0ac3170a8f90d2139ef75698e8af21a6435fb4 Mon Sep 17 00:00:00 2001 From: "http://jmtd.livejournal.com/" Date: Mon, 15 Nov 2010 14:28:50 +0000 Subject: done with commit da9e1ea667f82d5fca916 --- ...ent_isn__39__t_numeric:_mixing_templates_and_creation__95__date.mdwn | 2 ++ 1 file changed, 2 insertions(+) (limited to 'doc/bugs') diff --git a/doc/bugs/argument_isn__39__t_numeric:_mixing_templates_and_creation__95__date.mdwn b/doc/bugs/argument_isn__39__t_numeric:_mixing_templates_and_creation__95__date.mdwn index 70af505c1..5485bba9c 100644 --- a/doc/bugs/argument_isn__39__t_numeric:_mixing_templates_and_creation__95__date.mdwn +++ b/doc/bugs/argument_isn__39__t_numeric:_mixing_templates_and_creation__95__date.mdwn @@ -56,3 +56,5 @@ An alternative fix is to wrap the entire template inside a test to see whether t """]] In fact, this is probably best practice for in-srcdir templates. I'd consider this done if the documentation for the directive suggested it. -- [[Jon]] + +> [[done]] with -- [[Jon]] -- cgit v1.2.3 From 5430d5dc3bc37df92eb01cd65382c0f2be78b8e7 Mon Sep 17 00:00:00 2001 From: "http://jmtd.livejournal.com/" Date: Mon, 15 Nov 2010 14:43:35 +0000 Subject: not quite done yet: if/included() doesn't work that way. --- ...sn__39__t_numeric:_mixing_templates_and_creation__95__date.mdwn | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) (limited to 'doc/bugs') diff --git a/doc/bugs/argument_isn__39__t_numeric:_mixing_templates_and_creation__95__date.mdwn b/doc/bugs/argument_isn__39__t_numeric:_mixing_templates_and_creation__95__date.mdwn index 5485bba9c..83093895b 100644 --- a/doc/bugs/argument_isn__39__t_numeric:_mixing_templates_and_creation__95__date.mdwn +++ b/doc/bugs/argument_isn__39__t_numeric:_mixing_templates_and_creation__95__date.mdwn @@ -46,8 +46,7 @@ A workaround is to move the template outside of the srcdir into the external tem \[[!template id=all_entry.tmpl year=2010 current=true]] -An alternative fix is to wrap the entire template inside a test to see whether the page is included or not. E.g. - +I believed (until I tested) that the [[ikiwiki/directive/if]] directive, with the `included()` test, would be an option here, E.g. \[[!if test="included()" then=""" ...template... @@ -55,6 +54,4 @@ An alternative fix is to wrap the entire template inside a test to see whether t Nothing to see here. """]] -In fact, this is probably best practice for in-srcdir templates. I'd consider this done if the documentation for the directive suggested it. -- [[Jon]] - -> [[done]] with -- [[Jon]] +However this doesn't work. I assume "included" in this context means e.g. via an `inline` or `map`, not template trans-clusion. -- [[Jon]] -- cgit v1.2.3 From 8de7fde49c295a6c9098767b9fdfea79de8476eb Mon Sep 17 00:00:00 2001 From: Joey Hess Date: Tue, 16 Nov 2010 13:24:50 -0400 Subject: already fixed --- ...nt_isn__39__t_numeric:_mixing_templates_and_creation__95__date.mdwn | 3 +++ 1 file changed, 3 insertions(+) (limited to 'doc/bugs') diff --git a/doc/bugs/argument_isn__39__t_numeric:_mixing_templates_and_creation__95__date.mdwn b/doc/bugs/argument_isn__39__t_numeric:_mixing_templates_and_creation__95__date.mdwn index 83093895b..b1053fc38 100644 --- a/doc/bugs/argument_isn__39__t_numeric:_mixing_templates_and_creation__95__date.mdwn +++ b/doc/bugs/argument_isn__39__t_numeric:_mixing_templates_and_creation__95__date.mdwn @@ -55,3 +55,6 @@ I believed (until I tested) that the [[ikiwiki/directive/if]] directive, with th """]] However this doesn't work. I assume "included" in this context means e.g. via an `inline` or `map`, not template trans-clusion. -- [[Jon]] + +> As far as I know, this bug was fixed in +> 4a75dee651390b79ce4ceb1d951b02e28b3ce83a on October 20th. [[done]] --[[Joey]] -- cgit v1.2.3 From 2a452ddf146c4148155095e400f56b4674d76953 Mon Sep 17 00:00:00 2001 From: Joey Hess Date: Tue, 16 Nov 2010 13:34:41 -0400 Subject: but it already checks length.. --- doc/bugs/aggregate_generates_long_filenames.mdwn | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'doc/bugs') diff --git a/doc/bugs/aggregate_generates_long_filenames.mdwn b/doc/bugs/aggregate_generates_long_filenames.mdwn index 40decb392..c38ad6c7b 100644 --- a/doc/bugs/aggregate_generates_long_filenames.mdwn +++ b/doc/bugs/aggregate_generates_long_filenames.mdwn @@ -11,3 +11,11 @@ It would also appear this abrubtly terminates aggregate processing (if not ikiwi -- [[Jon]] + +> I have to wonder what filesystem you have there where 147 characters +> is a long filename. Ikiwiki already uses `POSIX::pathconf` on the srcdir +> to look up `_PC_NAME_MAX` +> to see if the filename is too long, and shortens it, so it seems +> that, in additional to having a rather antique long filename limit, your +> system also doesn't properly expose it via pathconf. Not sure what +> ikiwiki can do here. --[[Joey]] -- cgit v1.2.3 From dd9796375895752621cdcce103d1ad8d8a31d6cb Mon Sep 17 00:00:00 2001 From: "http://jmtd.livejournal.com/" Date: Wed, 17 Nov 2010 07:47:07 +0000 Subject: ext4, default settings... --- doc/bugs/aggregate_generates_long_filenames.mdwn | 13 +++++++++++++ 1 file changed, 13 insertions(+) (limited to 'doc/bugs') diff --git a/doc/bugs/aggregate_generates_long_filenames.mdwn b/doc/bugs/aggregate_generates_long_filenames.mdwn index c38ad6c7b..33e7b743b 100644 --- a/doc/bugs/aggregate_generates_long_filenames.mdwn +++ b/doc/bugs/aggregate_generates_long_filenames.mdwn @@ -19,3 +19,16 @@ It would also appear this abrubtly terminates aggregate processing (if not ikiwi > that, in additional to having a rather antique long filename limit, your > system also doesn't properly expose it via pathconf. Not sure what > ikiwiki can do here. --[[Joey]] + +>> This is an ext4 filesystem with default settings (which appears to mean +>> 256 bytes for pathnames). Despite the error saying file name, it's +>> definitely a path issue since moving my test repo to `/tmp`from +>> `/home/jon/wd/mine/www` hides the problem. I note the following comment +>> in `aggregate.pm`: + + # Make sure that the file name isn't too long. + # NB: This doesn't check for path length limits. + +>> I don't fully grok the aggregate source yet, but I wouldn't rule out +>> a bug in the path length checking, personally. I'm happy to try and +>> find it myself though :) -- [[Jon]] -- cgit v1.2.3 From c02f9d224cb78a3ad880cb749ef4a11eadfad79a Mon Sep 17 00:00:00 2001 From: Jon Dowland Date: Wed, 17 Nov 2010 10:13:32 +0000 Subject: sorry, I'll try against master in future. --- ...ent_isn__39__t_numeric:_mixing_templates_and_creation__95__date.mdwn | 2 ++ 1 file changed, 2 insertions(+) (limited to 'doc/bugs') diff --git a/doc/bugs/argument_isn__39__t_numeric:_mixing_templates_and_creation__95__date.mdwn b/doc/bugs/argument_isn__39__t_numeric:_mixing_templates_and_creation__95__date.mdwn index b1053fc38..ff98ba55f 100644 --- a/doc/bugs/argument_isn__39__t_numeric:_mixing_templates_and_creation__95__date.mdwn +++ b/doc/bugs/argument_isn__39__t_numeric:_mixing_templates_and_creation__95__date.mdwn @@ -58,3 +58,5 @@ However this doesn't work. I assume "included" in this context means e.g. via a > As far as I know, this bug was fixed in > 4a75dee651390b79ce4ceb1d951b02e28b3ce83a on October 20th. [[done]] --[[Joey]] + +>> Sorry Joey, I'll make sure to reproduce stuff against master in future. [[Jon]] -- cgit v1.2.3 From a4cb86d73327e7850eeb524ef387b17ac5e1614d Mon Sep 17 00:00:00 2001 From: Joey Hess Date: Wed, 17 Nov 2010 13:20:29 -0400 Subject: response --- doc/bugs/aggregate_generates_long_filenames.mdwn | 3 +++ 1 file changed, 3 insertions(+) (limited to 'doc/bugs') diff --git a/doc/bugs/aggregate_generates_long_filenames.mdwn b/doc/bugs/aggregate_generates_long_filenames.mdwn index 33e7b743b..fae8333ab 100644 --- a/doc/bugs/aggregate_generates_long_filenames.mdwn +++ b/doc/bugs/aggregate_generates_long_filenames.mdwn @@ -32,3 +32,6 @@ It would also appear this abrubtly terminates aggregate processing (if not ikiwi >> I don't fully grok the aggregate source yet, but I wouldn't rule out >> a bug in the path length checking, personally. I'm happy to try and >> find it myself though :) -- [[Jon]] + +>>> Path length seems unlikely, since the max is 4096 there. +>>> --[[Joey]] -- cgit v1.2.3 From 1968317cacc2f555af17286acf26a60ce616cc40 Mon Sep 17 00:00:00 2001 From: "http://churchkey.org/author/ian/" Date: Mon, 22 Nov 2010 21:26:27 +0000 Subject: added edittemplate bug for ikiwiki verison: 3.20100815.2 --- ...dittemplate__39__s_match__61____34____34___pagespec.mdwn | 13 +++++++++++++ 1 file changed, 13 insertions(+) create mode 100644 doc/bugs/inline_action_buttons_circumvent_exclude_criteria_from_edittemplate__39__s_match__61____34____34___pagespec.mdwn (limited to 'doc/bugs') diff --git a/doc/bugs/inline_action_buttons_circumvent_exclude_criteria_from_edittemplate__39__s_match__61____34____34___pagespec.mdwn b/doc/bugs/inline_action_buttons_circumvent_exclude_criteria_from_edittemplate__39__s_match__61____34____34___pagespec.mdwn new file mode 100644 index 000000000..45481bf21 --- /dev/null +++ b/doc/bugs/inline_action_buttons_circumvent_exclude_criteria_from_edittemplate__39__s_match__61____34____34___pagespec.mdwn @@ -0,0 +1,13 @@ +ikiwiki verison: 3.20100815.2 + +If I instruct editemplate to only match the top level pages in a directory using + + match="foo/* and !foo/*/* and !foo/*/*/*" + +everything works as expected for pages created via links on other wiki pages. So, if I open foo/bar (or any other page on the wiki) and create a link to foo/bar/bug, edittemplate appropriately does not insert any text into the new page. + +However, if I use an inline directive like the following + + !inline pages="page(foo/bar/*)" rootpage="foo/bar" postform=yes actions=yes + +every page created via the action buttons incorrectly pulls in the text from the edittemplate registration. Changing the order of the conditions in the match="" pagespec has no impact. -- cgit v1.2.3 From 47b4682ba7e8d2a0a5da87adbfb4adc3f857370f Mon Sep 17 00:00:00 2001 From: Joey Hess Date: Sun, 28 Nov 2010 19:23:06 -0400 Subject: bug --- doc/bugs/git_commit_adds_files_that_were_not_tracked.mdwn | 9 +++++++++ 1 file changed, 9 insertions(+) create mode 100644 doc/bugs/git_commit_adds_files_that_were_not_tracked.mdwn (limited to 'doc/bugs') diff --git a/doc/bugs/git_commit_adds_files_that_were_not_tracked.mdwn b/doc/bugs/git_commit_adds_files_that_were_not_tracked.mdwn new file mode 100644 index 000000000..6f7d4b72a --- /dev/null +++ b/doc/bugs/git_commit_adds_files_that_were_not_tracked.mdwn @@ -0,0 +1,9 @@ +Commit 3650d0265bc501219bc6d5cd4fa91a6b6ecd793a seems to have been caused by +a bug in ikiwiki. recentchanges/* was added to the git repo incorrectly. + +Part of the problem seems to be that git's `rcs_commit` does a git add followed +by a `rcs_commit_staged`, and so calling `rcs_commit` on files that were +not checked in before adds them, incorrectly. + +I'm unsure yet why the recentchanges files were being committed. Possibly +because of the link fixup code run when renaming a page. --[[Joey]] -- cgit v1.2.3 From c20eae4b264c83122c96fb94fe59c4d3d50c1fbb Mon Sep 17 00:00:00 2001 From: "http://lindi.myopenid.com/" Date: Mon, 29 Nov 2010 12:19:36 +0000 Subject: --- ...ed_SSH_keys:__34___shows_only_first_139_characters_of_each_key.mdwn | 3 +++ 1 file changed, 3 insertions(+) create mode 100644 doc/bugs/__34__Currently_enabled_SSH_keys:__34___shows_only_first_139_characters_of_each_key.mdwn (limited to 'doc/bugs') diff --git a/doc/bugs/__34__Currently_enabled_SSH_keys:__34___shows_only_first_139_characters_of_each_key.mdwn b/doc/bugs/__34__Currently_enabled_SSH_keys:__34___shows_only_first_139_characters_of_each_key.mdwn new file mode 100644 index 000000000..db88c9e97 --- /dev/null +++ b/doc/bugs/__34__Currently_enabled_SSH_keys:__34___shows_only_first_139_characters_of_each_key.mdwn @@ -0,0 +1,3 @@ +At least at http://free-thursday.pieni.net/ikiwiki.cgi the "SSH keys" page shows only the first 139 characters of each SSH key. I'm using iceweasel in 1024x768 resolution and there are not scrollbars visible. + +Please contact me at timo.lindfors@iki.fi -- cgit v1.2.3 From 3b7bf9a285bac3c17c9372756cb61c7b32e1e518 Mon Sep 17 00:00:00 2001 From: "http://liw.fi/" Date: Mon, 29 Nov 2010 12:22:04 +0000 Subject: --- ...ed_SSH_keys:__34___shows_only_first_139_characters_of_each_key.mdwn | 3 +++ 1 file changed, 3 insertions(+) (limited to 'doc/bugs') diff --git a/doc/bugs/__34__Currently_enabled_SSH_keys:__34___shows_only_first_139_characters_of_each_key.mdwn b/doc/bugs/__34__Currently_enabled_SSH_keys:__34___shows_only_first_139_characters_of_each_key.mdwn index db88c9e97..1dd843af3 100644 --- a/doc/bugs/__34__Currently_enabled_SSH_keys:__34___shows_only_first_139_characters_of_each_key.mdwn +++ b/doc/bugs/__34__Currently_enabled_SSH_keys:__34___shows_only_first_139_characters_of_each_key.mdwn @@ -1,3 +1,6 @@ At least at http://free-thursday.pieni.net/ikiwiki.cgi the "SSH keys" page shows only the first 139 characters of each SSH key. I'm using iceweasel in 1024x768 resolution and there are not scrollbars visible. Please contact me at timo.lindfors@iki.fi + +> I have access to the same wiki, and do not see the problem Timo sees. I see 380 chars of the SSH keys, and do have a scrollbar. +> Weird. --liw -- cgit v1.2.3 From fab1dc364f5cb073f0321887923f305db9366130 Mon Sep 17 00:00:00 2001 From: Joey Hess Date: Mon, 29 Nov 2010 12:10:17 -0400 Subject: bug moved to ikiwiki-hosting --- ...SSH_keys:__34___shows_only_first_139_characters_of_each_key.mdwn | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'doc/bugs') diff --git a/doc/bugs/__34__Currently_enabled_SSH_keys:__34___shows_only_first_139_characters_of_each_key.mdwn b/doc/bugs/__34__Currently_enabled_SSH_keys:__34___shows_only_first_139_characters_of_each_key.mdwn index 1dd843af3..3c3352f66 100644 --- a/doc/bugs/__34__Currently_enabled_SSH_keys:__34___shows_only_first_139_characters_of_each_key.mdwn +++ b/doc/bugs/__34__Currently_enabled_SSH_keys:__34___shows_only_first_139_characters_of_each_key.mdwn @@ -4,3 +4,9 @@ Please contact me at timo.lindfors@iki.fi > I have access to the same wiki, and do not see the problem Timo sees. I see 380 chars of the SSH keys, and do have a scrollbar. > Weird. --liw + +> Also, that's a Branchable.com site and the bug, if any is +> in ikiwiki-hosting's plugin, not ikiwiki proper. Moved +> [here](http://ikiwiki-hosting.branchable.com/bugs/__34__Currently_enabled_SSH_keys:__34___shows_only_first_139_characters_of_each_key/) --[[Joey]] + +[[!tag done]] -- cgit v1.2.3 From e8276cf13a38be929a45faeb9085e408e9d76cd7 Mon Sep 17 00:00:00 2001 From: "http://smcv.pseudorandom.co.uk/" Date: Mon, 29 Nov 2010 16:19:15 +0000 Subject: related bug --- doc/bugs/git_commit_adds_files_that_were_not_tracked.mdwn | 2 ++ 1 file changed, 2 insertions(+) (limited to 'doc/bugs') diff --git a/doc/bugs/git_commit_adds_files_that_were_not_tracked.mdwn b/doc/bugs/git_commit_adds_files_that_were_not_tracked.mdwn index 6f7d4b72a..1b6eeb2a5 100644 --- a/doc/bugs/git_commit_adds_files_that_were_not_tracked.mdwn +++ b/doc/bugs/git_commit_adds_files_that_were_not_tracked.mdwn @@ -7,3 +7,5 @@ not checked in before adds them, incorrectly. I'm unsure yet why the recentchanges files were being committed. Possibly because of the link fixup code run when renaming a page. --[[Joey]] + +> See also [[bugs/rename fixup not attributed to author]]. --[[smcv]] -- cgit v1.2.3 From b342d0960666804b595a105919e1288f6057a686 Mon Sep 17 00:00:00 2001 From: "http://smcv.pseudorandom.co.uk/" Date: Mon, 29 Nov 2010 16:22:50 +0000 Subject: bug page --- doc/bugs/rename_fixup_not_attributed_to_author.mdwn | 9 +++++++++ 1 file changed, 9 insertions(+) create mode 100644 doc/bugs/rename_fixup_not_attributed_to_author.mdwn (limited to 'doc/bugs') diff --git a/doc/bugs/rename_fixup_not_attributed_to_author.mdwn b/doc/bugs/rename_fixup_not_attributed_to_author.mdwn new file mode 100644 index 000000000..3122307a2 --- /dev/null +++ b/doc/bugs/rename_fixup_not_attributed_to_author.mdwn @@ -0,0 +1,9 @@ +When I renamed `todo/transient_in-memory_pages` to [[todo/transient pages]], +`rename::fixlinks` was meant to blame me for the link-fixing commit, and title it +`update for rename of %s to %s`. Instead, it blamed Joey for the commit, +and didn't set a commit message. + +(It also committed a pile of recentchanges pages which shouldn't have +been committed, for which see [[bugs/git_commit_adds_files_that_were_not_tracked]].) + +--[[smcv]] -- cgit v1.2.3 From a5120846cb6461616dce4d0042a4fd45211170e4 Mon Sep 17 00:00:00 2001 From: Joey Hess Date: Mon, 29 Nov 2010 13:28:28 -0400 Subject: rename: Fix to pass named parameters to rcs_commit --- IkiWiki/Plugin/rename.pm | 9 ++++----- debian/changelog | 1 + doc/bugs/git_commit_adds_files_that_were_not_tracked.mdwn | 7 +++++++ doc/bugs/rename_fixup_not_attributed_to_author.mdwn | 3 +++ 4 files changed, 15 insertions(+), 5 deletions(-) (limited to 'doc/bugs') diff --git a/IkiWiki/Plugin/rename.pm b/IkiWiki/Plugin/rename.pm index ad5e72645..a05e85be0 100644 --- a/IkiWiki/Plugin/rename.pm +++ b/IkiWiki/Plugin/rename.pm @@ -574,11 +574,10 @@ sub fixlinks ($$$) { eval { writefile($file, $config{srcdir}, $content) }; next if $@; my $conflict=IkiWiki::rcs_commit( - $file, - sprintf(gettext("update for rename of %s to %s"), $rename->{srcfile}, $rename->{destfile}), - $token, - $session->param("name"), - $session->remote_addr(), + file => $file, + message => sprintf(gettext("update for rename of %s to %s"), $rename->{srcfile}, $rename->{destfile}), + token => $token, + session => $session, ); push @fixedlinks, $page if ! defined $conflict; } diff --git a/debian/changelog b/debian/changelog index 6f97399d8..bab5eeb88 100644 --- a/debian/changelog +++ b/debian/changelog @@ -14,6 +14,7 @@ ikiwiki (3.20101113) UNRELEASED; urgency=low * edittemplate: Fix crash if using a .tmpl file or other non-page file as a template for a new page. * git: Fix temp file location. + * rename: Fix to pass named parameters to rcs_commit. -- Joey Hess Tue, 16 Nov 2010 14:23:47 -0400 diff --git a/doc/bugs/git_commit_adds_files_that_were_not_tracked.mdwn b/doc/bugs/git_commit_adds_files_that_were_not_tracked.mdwn index 1b6eeb2a5..829e80327 100644 --- a/doc/bugs/git_commit_adds_files_that_were_not_tracked.mdwn +++ b/doc/bugs/git_commit_adds_files_that_were_not_tracked.mdwn @@ -9,3 +9,10 @@ I'm unsure yet why the recentchanges files were being committed. Possibly because of the link fixup code run when renaming a page. --[[Joey]] > See also [[bugs/rename fixup not attributed to author]]. --[[smcv]] + +> Ok, there was a call to `rcs_commit` that was still using non-named +> parameters, which confused it thuroughly, and I think caused +> 'git add .' to be called. I've fixed that. +> +> I think there is still potential for the problem I described above to +> occur during a rename or possibly otherwise. --[[Joey]] diff --git a/doc/bugs/rename_fixup_not_attributed_to_author.mdwn b/doc/bugs/rename_fixup_not_attributed_to_author.mdwn index 3122307a2..bcfafac22 100644 --- a/doc/bugs/rename_fixup_not_attributed_to_author.mdwn +++ b/doc/bugs/rename_fixup_not_attributed_to_author.mdwn @@ -7,3 +7,6 @@ and didn't set a commit message. been committed, for which see [[bugs/git_commit_adds_files_that_were_not_tracked]].) --[[smcv]] + +> It was calling `rcs_commit` old-style, and so not passing the session +> object that is used to get the user's name. [[fixed|done]] --[[Joey]] -- cgit v1.2.3 From 170cb0247926d0b7c736e61b2ff66d6a3095f271 Mon Sep 17 00:00:00 2001 From: Joey Hess Date: Mon, 29 Nov 2010 13:42:03 -0400 Subject: git: Avoid adding files when committing, so as not to implicitly add files like recentchanges files that are not normally checked in, when fixing links after rename. --- IkiWiki/Plugin/git.pm | 20 +++++++++++--------- debian/changelog | 3 +++ .../git_commit_adds_files_that_were_not_tracked.mdwn | 3 ++- 3 files changed, 16 insertions(+), 10 deletions(-) (limited to 'doc/bugs') diff --git a/IkiWiki/Plugin/git.pm b/IkiWiki/Plugin/git.pm index 39d88d002..3db4af729 100644 --- a/IkiWiki/Plugin/git.pm +++ b/IkiWiki/Plugin/git.pm @@ -496,16 +496,16 @@ sub rcs_commit (@) { return $conflict if defined $conflict; } - rcs_add($params{file}); - return rcs_commit_staged( - message => $params{message}, - session => $params{session}, - ); + return rcs_commit_helper(@_); } sub rcs_commit_staged (@) { # Commits all staged changes. Changes can be staged using rcs_add, # rcs_remove, and rcs_rename. + return rcs_commit_helper(@_); +} + +sub rcs_commit_helper (@) { my %params=@_; my %env=%ENV; @@ -546,10 +546,12 @@ sub rcs_commit_staged (@) { $params{message}.="."; } } - push @opts, '-q'; - # git commit returns non-zero if file has not been really changed. - # so we should ignore its exit status (hence run_or_non). - if (run_or_non('git', 'commit', @opts, '-m', $params{message})) { + if (exists $params{file}) { + push @opts, '--', $params{file}; + } + # git commit returns non-zero if nothing really changed. + # So we should ignore its exit status (hence run_or_non). + if (run_or_non('git', 'commit', '-m', $params{message}, '-q', @opts)) { if (length $config{gitorigin_branch}) { run_or_cry('git', 'push', $config{gitorigin_branch}); } diff --git a/debian/changelog b/debian/changelog index bab5eeb88..1ae992b7a 100644 --- a/debian/changelog +++ b/debian/changelog @@ -15,6 +15,9 @@ ikiwiki (3.20101113) UNRELEASED; urgency=low as a template for a new page. * git: Fix temp file location. * rename: Fix to pass named parameters to rcs_commit. + * git: Avoid adding files when committing, so as not to implicitly add + files like recentchanges files that are not normally checked in, + when fixing links after rename. -- Joey Hess Tue, 16 Nov 2010 14:23:47 -0400 diff --git a/doc/bugs/git_commit_adds_files_that_were_not_tracked.mdwn b/doc/bugs/git_commit_adds_files_that_were_not_tracked.mdwn index 829e80327..587650c61 100644 --- a/doc/bugs/git_commit_adds_files_that_were_not_tracked.mdwn +++ b/doc/bugs/git_commit_adds_files_that_were_not_tracked.mdwn @@ -15,4 +15,5 @@ because of the link fixup code run when renaming a page. --[[Joey]] > 'git add .' to be called. I've fixed that. > > I think there is still potential for the problem I described above to -> occur during a rename or possibly otherwise. --[[Joey]] +> occur during a rename or possibly otherwise. Ok.. fixed `rcs_commit` +> to not add too. [[done]] --[[Joey]] -- cgit v1.2.3