From 6b079261a5f58ea7986952dd1fcaf3911bcfd7bc Mon Sep 17 00:00:00 2001 From: Lukas Lipavsky Date: Thu, 27 Jun 2013 16:46:25 +0200 Subject: [PATCH 01/35] add forum question and link to my git repo --- doc/forum/Howto_add_tag_from_plugin_code.mdwn | 12 ++++++++++++ doc/git.mdwn | 1 + 2 files changed, 13 insertions(+) create mode 100644 doc/forum/Howto_add_tag_from_plugin_code.mdwn diff --git a/doc/forum/Howto_add_tag_from_plugin_code.mdwn b/doc/forum/Howto_add_tag_from_plugin_code.mdwn new file mode 100644 index 000000000..a17faf727 --- /dev/null +++ b/doc/forum/Howto_add_tag_from_plugin_code.mdwn @@ -0,0 +1,12 @@ +Hi, I want to add tags to some pages automatically (generating album images +and want to tag all generated pages). I managed to do so in following way: + + IkiWiki::Plugin::tag::preprocess_tag( + page => $viewer, + destpage => $params{destpage}, + map { ($_ => 1) } @tags, + ); + +This works, however if some tag does not exist, it is not created. I tracked it so far that I found that the Render.pm's method gen_autofile() is not called , so it is most likely that I need to somehow trigger Render.pm's refresh()...but how can I do it? + +BTW: The code is modified album plugin that is in [my git](https://github.com/llipavsky/ikiwiki) diff --git a/doc/git.mdwn b/doc/git.mdwn index b743f6175..b86132ed2 100644 --- a/doc/git.mdwn +++ b/doc/git.mdwn @@ -77,6 +77,7 @@ think about merging them. This is recommended. :-) * [[anarcat]] `git://src.anarcat.ath.cx/ikiwiki` * anderbubble `git://civilfritz.net/ikiwiki.git` * frioux `git://github.com/frioux/ikiwiki` +* llipavsky `git://github.com/llipavsky/ikiwiki` ## branches From c849a9f409e8b3cd5091dd8b674670850d7bd3b9 Mon Sep 17 00:00:00 2001 From: Joey Hess Date: Sat, 29 Jun 2013 13:31:47 -0400 Subject: [PATCH 02/35] openid: Automatically upgrade openid_realm to https when accessed via https. --- IkiWiki/Plugin/openid.pm | 15 ++++++++++++--- debian/changelog | 2 ++ 2 files changed, 14 insertions(+), 3 deletions(-) diff --git a/IkiWiki/Plugin/openid.pm b/IkiWiki/Plugin/openid.pm index 40a956849..e3b9982f2 100644 --- a/IkiWiki/Plugin/openid.pm +++ b/IkiWiki/Plugin/openid.pm @@ -156,8 +156,8 @@ sub validate ($$$;$) { $trust_root=$cgiurl if ! defined $trust_root; my $check_url = $claimed_identity->check_url( - return_to => "$cgiurl?do=postsignin", - trust_root => $trust_root, + return_to => auto_upgrade_https($q, "$cgiurl?do=postsignin"), + trust_root => auto_upgrade_https($q, $trust_root), delayed_return => 1, ); # Redirect the user to the OpenID server, which will @@ -258,10 +258,19 @@ sub getobj ($$) { ua => $ua, args => $q, consumer_secret => sub { return shift()+$secret }, - required_root => $cgiurl, + required_root => auto_upgrade_https($q, $cgiurl), ); } +sub auto_upgrade_https { + my $q=shift; + my $url=shift; + if ($q->https()) { + $url=~s/^http:/https:/i; + } + return $url; +} + sub load_openid_module { # Give up if module is unavailable to avoid needing to depend on it. eval q{use Net::OpenID::Consumer}; diff --git a/debian/changelog b/debian/changelog index d98af52cf..587a375b9 100644 --- a/debian/changelog +++ b/debian/changelog @@ -11,6 +11,8 @@ ikiwiki (3.20130519) UNRELEASED; urgency=low * osm: Remove trailing slash from KML maps icon. * page.tmpl: omit searchform, trails, sidebar and most metadata in CGI (smcv) + * openid: Automatically upgrade openid_realm to https when + accessed via https. -- Joey Hess Sun, 23 Jun 2013 14:02:01 -0400 From 31becb066fecf04fd5031473e6cde017630e4742 Mon Sep 17 00:00:00 2001 From: chrysn Date: Sun, 30 Jun 2013 21:12:21 +0200 Subject: [PATCH 03/35] fix link to moved plugin --- doc/todo/wikitrails.mdwn | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/todo/wikitrails.mdwn b/doc/todo/wikitrails.mdwn index f2f87ac82..f9daea6b1 100644 --- a/doc/todo/wikitrails.mdwn +++ b/doc/todo/wikitrails.mdwn @@ -3,7 +3,7 @@ at times it is useful to have a guided tour or trail through a subset of the pag ### smcv's implementation -... is the out-of-tree [[plugins/contrib/trail]] plugin, see there for details. +... is the out-of-tree [[plugins/trail]] plugin, see there for details. > And will be the one landing in ikiwiki. So, I'm closing this bug report. [[done]] --[[Joey]] From 913c14b77b5f2f021b44fb2e56fbe14721d32ec8 Mon Sep 17 00:00:00 2001 From: "http://smcv.pseudorandom.co.uk/" Date: Mon, 1 Jul 2013 05:14:00 -0400 Subject: [PATCH 04/35] Added a comment --- ..._c61454825874a6fe1905cb549386deb0._comment | 77 +++++++++++++++++++ 1 file changed, 77 insertions(+) create mode 100644 doc/forum/Howto_add_tag_from_plugin_code/comment_1_c61454825874a6fe1905cb549386deb0._comment diff --git a/doc/forum/Howto_add_tag_from_plugin_code/comment_1_c61454825874a6fe1905cb549386deb0._comment b/doc/forum/Howto_add_tag_from_plugin_code/comment_1_c61454825874a6fe1905cb549386deb0._comment new file mode 100644 index 000000000..2122083ec --- /dev/null +++ b/doc/forum/Howto_add_tag_from_plugin_code/comment_1_c61454825874a6fe1905cb549386deb0._comment @@ -0,0 +1,77 @@ +[[!comment format=mdwn + username="http://smcv.pseudorandom.co.uk/" + nickname="smcv" + subject="comment 1" + date="2013-07-01T09:13:51Z" + content=""" +(If you want to branch from my version of album, please add my git repo +as a remote and merge or cherry-pick the album4 branch: pasting from my +gitweb seems to have given you some incorrect UTF-8.) + +The problem you have here is that for this plugin, the correct order +for IkiWiki to do things is quite subtle. Am I right in thinking that +the feature you want goes something like this? + +> To add a set of tags to every \"viewer\" page in the album, you can add +> the tags parameter to the album: +> +> \[[!album tags=\"holiday hawaii\"]] +> +> The individual viewers will all be tagged \"holiday\" and \"hawaii\", +> for instance. These tags cannot be removed by editing the viewers. + +`preprocess_albumimage` runs twice: once in the scan stage, and once in +the render stage. In the render stage, it's too late to add tags, because +tags are a special form of [[ikiwiki/wikilinks]], and wikilinks have to +be added during the scan stage to work correctly. + +The part of `preprocess_albumimage` after the line +`return unless defined wantarray;` only runs in the render stage, which +is too late. You'd need to set up the tags further up: just after the +calls to `IkiWiki::Plugin::meta::preprocess` would be a good place. + +I would also suggest checking for +`IkiWiki::Plugin::tag->can('preprocess_tag')`, +like I do for meta - if you do that, you won't need to force the tag plugin +to be loaded. + +Unfortunately, I'm still not sure that this is fully correct. Pages +are scanned in a random order. If the `\[[!album]]` is scanned before +a \"viewer\" page, then everything is fine: the tags are present when +the \"viewer\" is scanned. However, if the \"viewer\" is scanned first, +then it will get the tags that the `\[[!album]]` had in the *previous* +IkiWiki run (if any), which are still in the index, because the +`\[[!album]]` hasn't been re-scanned yet... + +Are you sure this form of the feature is what you want? You'll end up with +a *lot* of pages with those tags. If it's what you want, it might be +clearer how it works if you changed the syntax to something like this, +perhaps? + +> +> \[[!album tag_all=\"holiday hawaii\"]] + +Another possible syntax would be to have the feature be more like this: + +> If you use the `tag_default` parameter to the `\[[!album]]` directive, +> each \"viewer\" page created for images will have those tags by +> default. Changing the `\[[!album]]` will not affect any \"viewer\" +> pages that have already been created, and editing the \"viewer\" +> can add or remove those default tags. +> +> \[[!album tag_default=\"holiday hawaii\"]] + +which I think removes the ordering problems? If you go this route, +you'd want to either add e.g. `[[!tag holiday hawaii]]` +to the generated viewer page in `create_viewer`, or add a `tag` +parameter to `\[[!albumimage]]` that's a shortcut for the +tag directive, in the same way that author is a shortcut for +`[[!meta author]]`). + +The purpose of the \"shortcut\" parameters in `\[[!albumimage]]`, +like title, author and date, is that I eventually want to add +a specialized CGI interface to this plugin so you can edit +all the images of an album in one go; when I add that, +it'll probably only be able to process something as +machine-readable as `\[[!albumimage]]`. +"""]] From b549c6280d67633eaf6718a66181056b23b66fee Mon Sep 17 00:00:00 2001 From: rameses2 Date: Wed, 3 Jul 2013 16:58:27 -0400 Subject: [PATCH 05/35] --- doc/sandbox.mdwn | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/sandbox.mdwn b/doc/sandbox.mdwn index 3ecd58843..46a2ae9bb 100644 --- a/doc/sandbox.mdwn +++ b/doc/sandbox.mdwn @@ -31,7 +31,7 @@ Numbered list Bulleted list * item -* *item* +* *bold item* * item * one * footballs; runner; unices From 3d3fa243ac9e2bf66ae7b92d7e13a52c69f6129b Mon Sep 17 00:00:00 2001 From: rameses2 Date: Wed, 3 Jul 2013 16:59:00 -0400 Subject: [PATCH 06/35] --- doc/sandbox.mdwn | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/sandbox.mdwn b/doc/sandbox.mdwn index 46a2ae9bb..f0d7de149 100644 --- a/doc/sandbox.mdwn +++ b/doc/sandbox.mdwn @@ -31,7 +31,7 @@ Numbered list Bulleted list * item -* *bold item* +* *italic item* * item * one * footballs; runner; unices From ad9388de7dfcf294a57e69d1f4e34e6ae782856f Mon Sep 17 00:00:00 2001 From: rameses2 Date: Wed, 3 Jul 2013 17:01:42 -0400 Subject: [PATCH 07/35] --- doc/sandbox.mdwn | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/doc/sandbox.mdwn b/doc/sandbox.mdwn index f0d7de149..3536e327d 100644 --- a/doc/sandbox.mdwn +++ b/doc/sandbox.mdwn @@ -21,12 +21,13 @@ hello world Numbered list 1. First item. - 1. Sub item. + 1. Sub item. + 1. Number 2 1. Another. 1. And another.. - 1. foo - 2. bar - 3. quz + 1. foo + 2. bar + 3. quz Bulleted list From 80e5d439a08dc196923eaebe4e65f7edf6c83a50 Mon Sep 17 00:00:00 2001 From: rmacgregor Date: Thu, 4 Jul 2013 21:52:35 -0400 Subject: [PATCH 08/35] --- .../Attachment_plug-in_not_committing_files.mdwn | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100644 doc/bugs/Attachment_plug-in_not_committing_files.mdwn diff --git a/doc/bugs/Attachment_plug-in_not_committing_files.mdwn b/doc/bugs/Attachment_plug-in_not_committing_files.mdwn new file mode 100644 index 000000000..05db1f86e --- /dev/null +++ b/doc/bugs/Attachment_plug-in_not_committing_files.mdwn @@ -0,0 +1,12 @@ +I've added the attachment plug-in to our wiki. I am able to add files to the working copy of the website on the server, but none of the file are being checked into the SVN repository. Using logging I've tracked the problem to line 293 of attachment.pm: + + IkiWiki::rcs_add($_) foreach @attachments; + +Here it is trying to add an absolute path to the file when rcs_add is expecting a path relative to the SVN root. + +From this code it looks like $dest needs to be absolute and that a relative path needs to be pushed to @attachments: + + rename($filename, $dest); + push @attachments, $dest; + +I'm using ikiwiki version 3.20120202ubuntu1. From be77b7773efe0f282814b98086cccd15d1219fe5 Mon Sep 17 00:00:00 2001 From: acodispo Date: Fri, 5 Jul 2013 11:04:48 -0400 Subject: [PATCH 09/35] --- doc/forum/users/acodispo.mdwn | 2 ++ 1 file changed, 2 insertions(+) create mode 100644 doc/forum/users/acodispo.mdwn diff --git a/doc/forum/users/acodispo.mdwn b/doc/forum/users/acodispo.mdwn new file mode 100644 index 000000000..cf07b6386 --- /dev/null +++ b/doc/forum/users/acodispo.mdwn @@ -0,0 +1,2 @@ +# ACodispo + From 9eea60f0cbd2a25f06adae1636d41a4936c3e8a2 Mon Sep 17 00:00:00 2001 From: acodispo Date: Fri, 5 Jul 2013 11:05:50 -0400 Subject: [PATCH 10/35] --- ...ariables___40__where_are_they_set__63____41__.mdwn | 11 +++++++++++ 1 file changed, 11 insertions(+) create mode 100644 doc/forum/copyright_and_license_template_variables___40__where_are_they_set__63____41__.mdwn diff --git a/doc/forum/copyright_and_license_template_variables___40__where_are_they_set__63____41__.mdwn b/doc/forum/copyright_and_license_template_variables___40__where_are_they_set__63____41__.mdwn new file mode 100644 index 000000000..be1aa9bd8 --- /dev/null +++ b/doc/forum/copyright_and_license_template_variables___40__where_are_they_set__63____41__.mdwn @@ -0,0 +1,11 @@ +The default template includes TMPL_IF LICENSE and TMPL_IF COPYRIGHT, but I can't figure out where these are set. + +This page seems to indicate they are created by the [[plugins/meta]] plugin: + +[[Default Content for Copyright and License|plugins/contrib/default_content_for___42__copyright__42___and___42__license__42__/]] + +Is this true? It just seems a little odd that the default template contains variables that are set by a non-default plugin, so I just wanted to confirm that. + +Thanks! + +--[[users/acodispo]] From 533793ee462552dd0b782a69e2cfe48c8f93dedc Mon Sep 17 00:00:00 2001 From: Joey Hess Date: Mon, 8 Jul 2013 11:49:38 -0400 Subject: [PATCH 11/35] The ip() pagespec can now contain glob characters to match eg, a subnet full of spammers. --- IkiWiki.pm | 8 +++++--- debian/changelog | 2 ++ doc/ikiwiki/pagespec.mdwn | 3 ++- 3 files changed, 9 insertions(+), 4 deletions(-) diff --git a/IkiWiki.pm b/IkiWiki.pm index 0570c8bc5..c497dd38f 100644 --- a/IkiWiki.pm +++ b/IkiWiki.pm @@ -2776,12 +2776,12 @@ sub match_user ($$;@) { my $user=shift; my %params=@_; - my $regexp=IkiWiki::glob2re($user); - if (! exists $params{user}) { return IkiWiki::ErrorReason->new("no user specified"); } + my $regexp=IkiWiki::glob2re($user); + if (defined $params{user} && $params{user}=~$regexp) { return IkiWiki::SuccessReason->new("user is $user"); } @@ -2821,8 +2821,10 @@ sub match_ip ($$;@) { if (! exists $params{ip}) { return IkiWiki::ErrorReason->new("no IP specified"); } + + my $regexp=IkiWiki::glob2re(lc $ip); - if (defined $params{ip} && lc $params{ip} eq lc $ip) { + if (defined $params{ip} && lc $params{ip}=~$regexp) { return IkiWiki::SuccessReason->new("IP is $ip"); } else { diff --git a/debian/changelog b/debian/changelog index 587a375b9..04feaffcb 100644 --- a/debian/changelog +++ b/debian/changelog @@ -13,6 +13,8 @@ ikiwiki (3.20130519) UNRELEASED; urgency=low (smcv) * openid: Automatically upgrade openid_realm to https when accessed via https. + * The ip() pagespec can now contain glob characters to match eg, a subnet + full of spammers. -- Joey Hess Sun, 23 Jun 2013 14:02:01 -0400 diff --git a/doc/ikiwiki/pagespec.mdwn b/doc/ikiwiki/pagespec.mdwn index fe1af4c15..0f298ad78 100644 --- a/doc/ikiwiki/pagespec.mdwn +++ b/doc/ikiwiki/pagespec.mdwn @@ -51,7 +51,8 @@ Some more elaborate limits can be added to what matches using these functions: * "`admin()`" - tests whether a modification is being made by one of the wiki admins. * "`ip(address)`" - tests whether a modification is being made from the - specified IP address. + specified IP address. Glob patterns can be used in the address. For + example, `ip(127.0.0.*)` * "`comment(glob)`" - matches comments to a page matching the glob. * "`comment_pending(glob)`" - matches unmoderated, pending comments. * "`postcomment(glob)`" - matches only when comments are being From f253117b5d3bad5c6b08b80b93273b616e865cc4 Mon Sep 17 00:00:00 2001 From: chrysn Date: Mon, 8 Jul 2013 20:28:50 +0200 Subject: [PATCH 12/35] report bug in proxy.py with solution --- doc/bugs/proxy.py_utf8_troubles.mdwn | 33 ++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) create mode 100644 doc/bugs/proxy.py_utf8_troubles.mdwn diff --git a/doc/bugs/proxy.py_utf8_troubles.mdwn b/doc/bugs/proxy.py_utf8_troubles.mdwn new file mode 100644 index 000000000..a4e848102 --- /dev/null +++ b/doc/bugs/proxy.py_utf8_troubles.mdwn @@ -0,0 +1,33 @@ +when writing an external plugin using `proxy.py`, the getstate and setstate +functions don't accept unicode data: + + uncaught exception: 'ascii' codec can't encode character u'\xe4' in position 25: ordinal not in range(128) + Traceback (most recent call last): + File "proxy.py", line 309, in run + self._in_fd, self._out_fd) + File "proxy.py", line 192, in handle_rpc + ret = self._dispatcher.dispatch(method, params) + File "proxy.py", line 84, in dispatch + return self._dispatch(method, params) + File "/usr/lib/python2.7/SimpleXMLRPCServer.py", line 420, in _dispatch + return func(*params) + File "proxy.py", line 251, in hook_proxy + ret = function(self, *args) + File "/home/chrysn/git/ikiwiki-plugins//plugins/my_plugin", line 49, in data2html + proxy.setstate(kwargs['page'], 'meta', 'title', unicode_containing_umlauts) + File "proxy.py", line 291, in setstate + return self.rpc('setstate', page, id, key, value) + File "proxy.py", line 233, in rpc + *args, **kwargs) + File "proxy.py", line 178, in send_rpc + cmd, data)) + UnicodeEncodeError: 'ascii' codec can't encode character u'\xe4' in position 25: ordinal not in range(128) + +the culprit is the last `_debug_fn` invocation in `send_rpc` (line 178), where +unicode data is format-fed into a string. while this could be circumvented by +making the formatting string a unicode string, that would cause trouble with +python3 and we'd just move the problem to the stderr writing later on; instead, +"`cmd, data))`" should become "`cmd, repr(data)))`" and everything is fine. +debug output doesn't look that pretty any more, but is safe. + +--[[chrysn]] From c870043c97b6daa138df4d763d872c94a41e9d20 Mon Sep 17 00:00:00 2001 From: "https://www.google.com/accounts/o8/id?id=AItOawkq11bTnmln5O-k-utYZYK8N9TzG3T1THk" Date: Mon, 8 Jul 2013 19:13:25 -0400 Subject: [PATCH 13/35] Added leikuradbokum.net to the list --- doc/ikiwikiusers.mdwn | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/ikiwikiusers.mdwn b/doc/ikiwikiusers.mdwn index ecba46e03..eda6e3ab0 100644 --- a/doc/ikiwikiusers.mdwn +++ b/doc/ikiwikiusers.mdwn @@ -88,7 +88,7 @@ Projects & Organizations * [The RS-232 Club](http://rs232club.org) * [FusionInventory project](http://www.fusioninventory.org) * FabLab Deventer i.o. -* [Börn og tónlist](http://bornogtonlist.net/) - an Icelandic open-content site, primarily for kindergarten teachers, about music and music-related activites with children. Migrated from MediaWiki to IkiWiki in June 2013. Heavily changed appearance with only minimal changes to page.tmpl. +* [Börn og tónlist](http://bornogtonlist.net/) - an Icelandic open-content site, primarily for kindergarten teachers, about music and music-related activites with children. Migrated from MediaWiki to IkiWiki in June 2013. Heavily changed appearance with only minimal changes to page.tmpl. Also its sister site [Leikur að bókum](http://leikuradbokum.net), about children's books in a kindergarten/pre-school context. * [Réseaulibre.ca](http://wiki.reseaulibre.ca) - a mesh project in Montréal, most data is stored in the wiki, including IP address allocation and geographic data. Features map ([[plugins/osm]]) integration. * [Foufem](http://foufem.orangeseeds.org/) - Foufem, a feminist hackerspace From acb07ef4164643ac0dac28aab2ceae24510e5641 Mon Sep 17 00:00:00 2001 From: Joey Hess Date: Wed, 10 Jul 2013 17:02:24 -0400 Subject: [PATCH 14/35] Fix crash that could occur when a needsbuild hook returned a file that does not exist. I saw this happen with calendar, when it wanted to update a page, that had a calendar on it, but the page had just been deleted. This caused srcfile_stat to crash. --- IkiWiki/Render.pm | 10 +++++++++- debian/changelog | 2 ++ 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/IkiWiki/Render.pm b/IkiWiki/Render.pm index a90d202ee..c41dac9f6 100644 --- a/IkiWiki/Render.pm +++ b/IkiWiki/Render.pm @@ -770,9 +770,17 @@ sub refresh () { my ($new, $internal_new)=find_new_files($files); my ($del, $internal_del)=find_del_files($pages); my ($changed, $internal_changed)=find_changed($files); + my %existingfiles; run_hooks(needsbuild => sub { my $ret=shift->($changed, [@$del, @$internal_del]); - $changed=$ret if ref $ret eq 'ARRAY'; + if (ref $ret eq 'ARRAY') { + if (! %existingfiles) { + foreach my $f (@$files) { + $existingfiles{$f}=1; + } + } + @$changed=grep $existingfiles{$_}, @$ret; + } }); my $oldlink_targets=calculate_old_links($changed, $del); diff --git a/debian/changelog b/debian/changelog index 04feaffcb..c3f4db798 100644 --- a/debian/changelog +++ b/debian/changelog @@ -15,6 +15,8 @@ ikiwiki (3.20130519) UNRELEASED; urgency=low accessed via https. * The ip() pagespec can now contain glob characters to match eg, a subnet full of spammers. + * Fix crash that could occur when a needsbuild hook returned a file + that does not exist. -- Joey Hess Sun, 23 Jun 2013 14:02:01 -0400 From 46e0c5742ce2d380904987b8a2655fe157faca3e Mon Sep 17 00:00:00 2001 From: Joey Hess Date: Wed, 10 Jul 2013 17:40:33 -0400 Subject: [PATCH 15/35] optimize for common case where list is not changed --- IkiWiki/Render.pm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/IkiWiki/Render.pm b/IkiWiki/Render.pm index c41dac9f6..58b374ad7 100644 --- a/IkiWiki/Render.pm +++ b/IkiWiki/Render.pm @@ -773,7 +773,7 @@ sub refresh () { my %existingfiles; run_hooks(needsbuild => sub { my $ret=shift->($changed, [@$del, @$internal_del]); - if (ref $ret eq 'ARRAY') { + if (ref $ret eq 'ARRAY' && $ret != $changed) { if (! %existingfiles) { foreach my $f (@$files) { $existingfiles{$f}=1; From 86abde54c0b63dedcf62a9a6ccc6870e1af96c54 Mon Sep 17 00:00:00 2001 From: Joey Hess Date: Wed, 10 Jul 2013 18:00:53 -0400 Subject: [PATCH 16/35] Fix python proxy to not crash when fed unicode data in getstate and setstate. --- doc/bugs/proxy.py_utf8_troubles.mdwn | 2 ++ plugins/proxy.py | 2 +- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/doc/bugs/proxy.py_utf8_troubles.mdwn b/doc/bugs/proxy.py_utf8_troubles.mdwn index a4e848102..7e8f70e59 100644 --- a/doc/bugs/proxy.py_utf8_troubles.mdwn +++ b/doc/bugs/proxy.py_utf8_troubles.mdwn @@ -31,3 +31,5 @@ python3 and we'd just move the problem to the stderr writing later on; instead, debug output doesn't look that pretty any more, but is safe. --[[chrysn]] + +> ok, [[done]] --[[Joey]] diff --git a/plugins/proxy.py b/plugins/proxy.py index 41cc45700..ca731301f 100755 --- a/plugins/proxy.py +++ b/plugins/proxy.py @@ -175,7 +175,7 @@ class _IkiWikiExtPluginXMLRPCHandler(object): data = _xmlrpc_client.loads(xml)[0][0] self._debug_fn( 'parsed data from response to procedure {0}: [{1}]'.format( - cmd, data)) + cmd, repr(data))) return data def handle_rpc(self, in_fd, out_fd): From 9710d989781038b58a71ec2aebb25f85faa92b53 Mon Sep 17 00:00:00 2001 From: Joey Hess Date: Wed, 10 Jul 2013 18:15:13 -0400 Subject: [PATCH 17/35] remove old commit that added calendar to basewiki sandbox --- doc/basewiki/sandbox.mdwn | 2 -- 1 file changed, 2 deletions(-) diff --git a/doc/basewiki/sandbox.mdwn b/doc/basewiki/sandbox.mdwn index e76bdb8d1..c66534fc2 100644 --- a/doc/basewiki/sandbox.mdwn +++ b/doc/basewiki/sandbox.mdwn @@ -30,5 +30,3 @@ Bulleted list * item [[ikiwiki/WikiLink]] - -[[!calendar type="month" pages="blog/*"]] From 87f46582f518e48d3875864bfc490a52be739520 Mon Sep 17 00:00:00 2001 From: Joey Hess Date: Wed, 10 Jul 2013 18:23:09 -0400 Subject: [PATCH 18/35] Fix committing attachments when using svn. --- IkiWiki/Plugin/attachment.pm | 12 ++++++------ .../Attachment_plug-in_not_committing_files.mdwn | 6 ++++++ 2 files changed, 12 insertions(+), 6 deletions(-) diff --git a/IkiWiki/Plugin/attachment.pm b/IkiWiki/Plugin/attachment.pm index aea70429d..83dd120f6 100644 --- a/IkiWiki/Plugin/attachment.pm +++ b/IkiWiki/Plugin/attachment.pm @@ -274,15 +274,15 @@ sub attachments_save { foreach my $filename (glob("$dir/*")) { $filename=Encode::decode_utf8($filename); next unless -f $filename; - my $destdir=$config{srcdir}."/". - linkpage(IkiWiki::possibly_foolish_untaint( - attachment_location($form->field('page')))); + my $destdir=linkpage(IkiWiki::possibly_foolish_untaint( + attachment_location($form->field('page')))); + my $absdestdir=$config{srcdir}."/".$destdir; my $destfile=IkiWiki::basename($filename); - my $dest=$destdir.$destfile; + my $dest=$absdestdir.$destfile; unlink($dest); - IkiWiki::prep_writefile($destfile, $destdir); + IkiWiki::prep_writefile($destfile, $absdestdir); rename($filename, $dest); - push @attachments, $dest; + push @attachments, $destdir.$destfile; } return unless @attachments; require IkiWiki::Render; diff --git a/doc/bugs/Attachment_plug-in_not_committing_files.mdwn b/doc/bugs/Attachment_plug-in_not_committing_files.mdwn index 05db1f86e..aaba13326 100644 --- a/doc/bugs/Attachment_plug-in_not_committing_files.mdwn +++ b/doc/bugs/Attachment_plug-in_not_committing_files.mdwn @@ -10,3 +10,9 @@ From this code it looks like $dest needs to be absolute and that a relative path push @attachments, $dest; I'm using ikiwiki version 3.20120202ubuntu1. + +> I don't think this affects git, just because it happens to +> allow adding with an absolute path. +> +> So, this is an interesting way svn support can bit rot if nothing +> is testing it! [[fixed|done]] --[[Joey]] From 723ff7a9ac3285d727b339ad17a70b45f83d1003 Mon Sep 17 00:00:00 2001 From: Joey Hess Date: Wed, 10 Jul 2013 18:24:38 -0400 Subject: [PATCH 19/35] response --- ...template_variables___40__where_are_they_set__63____41__.mdwn | 2 ++ 1 file changed, 2 insertions(+) diff --git a/doc/forum/copyright_and_license_template_variables___40__where_are_they_set__63____41__.mdwn b/doc/forum/copyright_and_license_template_variables___40__where_are_they_set__63____41__.mdwn index be1aa9bd8..afca582fd 100644 --- a/doc/forum/copyright_and_license_template_variables___40__where_are_they_set__63____41__.mdwn +++ b/doc/forum/copyright_and_license_template_variables___40__where_are_they_set__63____41__.mdwn @@ -9,3 +9,5 @@ Is this true? It just seems a little odd that the default template contains vari Thanks! --[[users/acodispo]] + +> It is true. --[[Joey]] From 6d84c91a9b199657539ede3bad0c0bb013c9483b Mon Sep 17 00:00:00 2001 From: Joey Hess Date: Wed, 10 Jul 2013 18:26:37 -0400 Subject: [PATCH 20/35] response --- doc/forum/Translating_ikiwiki_interface.mdwn | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/doc/forum/Translating_ikiwiki_interface.mdwn b/doc/forum/Translating_ikiwiki_interface.mdwn index 4003302e5..747af15b5 100644 --- a/doc/forum/Translating_ikiwiki_interface.mdwn +++ b/doc/forum/Translating_ikiwiki_interface.mdwn @@ -1,2 +1,8 @@ I am using ikiwiki for a spanish language wiki. I've read the [[translation]] page and [[plugins/po]] plugin page but it is not completely clear to me. As I understand it the po plugin is the recommended way to create translated versions of existing pages in your wiki based on a master language. But I actually don't need that as myself and other users already edit the wiki in spanish. What I would actually like is to have the ikiwiki interface itself translated into spanish. Is it possible to have my wiki always appear in spanish? I can see that the debian package already includes po files for spanish. How do i activate the spanish translation permanently? Did I miss something obvious? + +> Ikiwiki has a Spanish translation of much of the program's output. +> However, there is currently no translation of the page.tmpl and other +> templates that are used to build your wiki. You can of course modify +> these and translate them yourself, but we have no way to maintaining +> those translations in po files. --[[Joey]] From 24a57423b85f2c630bece12a3ab767b1c21ac3bb Mon Sep 17 00:00:00 2001 From: Joey Hess Date: Wed, 10 Jul 2013 18:39:18 -0400 Subject: [PATCH 21/35] releasing version 3.20130710 --- debian/changelog | 8 ++++++-- debian/control | 8 ++++---- ikiwiki.spec | 2 +- po/ikiwiki.pot | 48 ++++++++++++++++++++++++------------------------ 4 files changed, 35 insertions(+), 31 deletions(-) diff --git a/debian/changelog b/debian/changelog index c3f4db798..8d55d5df8 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,4 +1,4 @@ -ikiwiki (3.20130519) UNRELEASED; urgency=low +ikiwiki (3.20130710) unstable; urgency=low * blogspam: Fix encoding issue in RPC::XML call. Thanks, Changaco @@ -17,8 +17,12 @@ ikiwiki (3.20130519) UNRELEASED; urgency=low full of spammers. * Fix crash that could occur when a needsbuild hook returned a file that does not exist. + * Fix python proxy to not crash when fed unicode data in getstate + and setstate. + Thanks, chrysn + * Fix committing attachments when using svn. - -- Joey Hess Sun, 23 Jun 2013 14:02:01 -0400 + -- Joey Hess Wed, 10 Jul 2013 17:45:40 -0400 ikiwiki (3.20130518) unstable; urgency=low diff --git a/debian/control b/debian/control index 9c6ab7ad9..dbc7b4ac7 100644 --- a/debian/control +++ b/debian/control @@ -10,13 +10,13 @@ Build-Depends-Indep: dpkg-dev (>= 1.9.0), libxml-simple-perl, libfile-chdir-perl, libyaml-libyaml-perl, python-support Maintainer: Joey Hess Uploaders: Josh Triplett -Standards-Version: 3.9.3 +Standards-Version: 3.9.4 Homepage: http://ikiwiki.info/ Vcs-Git: git://git.ikiwiki.info/ Package: ikiwiki Architecture: all -Depends: ${misc:Depends}, ${perl:Depends}, ${python:Depends}, +Depends: ${misc:Depends}, ${perl:Depends}, libtext-markdown-discount-perl, libhtml-scrubber-perl, libhtml-template-perl, libhtml-parser-perl, liburi-perl (>= 1.36), libyaml-libyaml-perl, libjson-perl @@ -45,8 +45,8 @@ Provides: ikiwiki-plugin-table Description: a wiki compiler Ikiwiki converts a directory full of wiki pages into HTML pages suitable for publishing on a website. Unlike many wikis, ikiwiki does not have its - own ad-hoc means of storing page history, and instead uses a revision control - system such as Subversion or Git. + own ad-hoc means of storing page history, and instead uses a revision + control system such as Subversion or Git. . Ikiwiki implements all of the other standard features of a wiki, including web-based page editing, user registration and logins, a RecentChanges diff --git a/ikiwiki.spec b/ikiwiki.spec index 9d799da3f..91f1be2e3 100644 --- a/ikiwiki.spec +++ b/ikiwiki.spec @@ -1,5 +1,5 @@ Name: ikiwiki -Version: 3.20130518 +Version: 3.20130710 Release: 1%{?dist} Summary: A wiki compiler diff --git a/po/ikiwiki.pot b/po/ikiwiki.pot index 3f2fac90b..6136e9311 100644 --- a/po/ikiwiki.pot +++ b/po/ikiwiki.pot @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2013-05-18 16:34-0400\n" +"POT-Creation-Date: 2013-07-10 18:33-0400\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -188,7 +188,7 @@ msgstr "" msgid "creating index page %s" msgstr "" -#: ../IkiWiki/Plugin/blogspam.pm:118 +#: ../IkiWiki/Plugin/blogspam.pm:119 msgid "" "Sorry, but that looks like spam to blogspam: " @@ -203,87 +203,87 @@ msgstr "" msgid "There are no broken links!" msgstr "" -#: ../IkiWiki/Plugin/comments.pm:113 +#: ../IkiWiki/Plugin/comments.pm:124 #, perl-format msgid "this comment needs %s" msgstr "" -#: ../IkiWiki/Plugin/comments.pm:116 +#: ../IkiWiki/Plugin/comments.pm:127 msgid "moderation" msgstr "" -#: ../IkiWiki/Plugin/comments.pm:137 ../IkiWiki/Plugin/format.pm:50 +#: ../IkiWiki/Plugin/comments.pm:154 ../IkiWiki/Plugin/format.pm:50 #, perl-format msgid "unsupported page format %s" msgstr "" -#: ../IkiWiki/Plugin/comments.pm:142 +#: ../IkiWiki/Plugin/comments.pm:159 msgid "comment must have content" msgstr "" -#: ../IkiWiki/Plugin/comments.pm:200 +#: ../IkiWiki/Plugin/comments.pm:217 msgid "Anonymous" msgstr "" -#: ../IkiWiki/Plugin/comments.pm:262 +#: ../IkiWiki/Plugin/comments.pm:279 msgid "Comment Moderation" msgstr "" -#: ../IkiWiki/Plugin/comments.pm:358 ../IkiWiki/Plugin/comments.pm:362 +#: ../IkiWiki/Plugin/comments.pm:375 ../IkiWiki/Plugin/comments.pm:379 msgid "email replies to me" msgstr "" -#: ../IkiWiki/Plugin/comments.pm:396 ../IkiWiki/Plugin/editpage.pm:96 +#: ../IkiWiki/Plugin/comments.pm:413 ../IkiWiki/Plugin/editpage.pm:96 #: ../IkiWiki/Plugin/editpage.pm:102 msgid "bad page name" msgstr "" -#: ../IkiWiki/Plugin/comments.pm:399 +#: ../IkiWiki/Plugin/comments.pm:416 #, perl-format msgid "commenting on %s" msgstr "" -#: ../IkiWiki/Plugin/comments.pm:416 +#: ../IkiWiki/Plugin/comments.pm:433 #, perl-format msgid "page '%s' doesn't exist, so you can't comment" msgstr "" -#: ../IkiWiki/Plugin/comments.pm:423 +#: ../IkiWiki/Plugin/comments.pm:440 #, perl-format msgid "comments on page '%s' are closed" msgstr "" -#: ../IkiWiki/Plugin/comments.pm:548 +#: ../IkiWiki/Plugin/comments.pm:565 msgid "comment stored for moderation" msgstr "" -#: ../IkiWiki/Plugin/comments.pm:550 +#: ../IkiWiki/Plugin/comments.pm:567 msgid "Your comment will be posted after moderator review" msgstr "" -#: ../IkiWiki/Plugin/comments.pm:563 +#: ../IkiWiki/Plugin/comments.pm:580 msgid "Added a comment" msgstr "" -#: ../IkiWiki/Plugin/comments.pm:567 +#: ../IkiWiki/Plugin/comments.pm:584 #, perl-format msgid "Added a comment: %s" msgstr "" -#: ../IkiWiki/Plugin/comments.pm:637 ../IkiWiki/Plugin/userlist.pm:55 +#: ../IkiWiki/Plugin/comments.pm:654 ../IkiWiki/Plugin/userlist.pm:55 #: ../IkiWiki/Plugin/websetup.pm:272 msgid "you are not logged in as an admin" msgstr "" -#: ../IkiWiki/Plugin/comments.pm:691 +#: ../IkiWiki/Plugin/comments.pm:708 msgid "Comment moderation" msgstr "" -#: ../IkiWiki/Plugin/comments.pm:732 +#: ../IkiWiki/Plugin/comments.pm:749 msgid "comment moderation" msgstr "" -#: ../IkiWiki/Plugin/comments.pm:893 +#: ../IkiWiki/Plugin/comments.pm:910 #, perl-format msgid "%i comment" msgid_plural "%i comments" @@ -293,7 +293,7 @@ msgstr[1] "" #. translators: Here "Comment" is a verb; #. translators: the user clicks on it to #. translators: post a comment. -#: ../IkiWiki/Plugin/comments.pm:903 +#: ../IkiWiki/Plugin/comments.pm:920 msgid "Comment" msgstr "" @@ -1164,12 +1164,12 @@ msgstr "" msgid "building %s, to update its backlinks" msgstr "" -#: ../IkiWiki/Render.pm:798 +#: ../IkiWiki/Render.pm:806 #, perl-format msgid "building %s" msgstr "" -#: ../IkiWiki/Render.pm:863 +#: ../IkiWiki/Render.pm:871 #, perl-format msgid "ikiwiki: cannot build %s" msgstr "" From 697c3f1256faa19776fbf203d1098154f53f319c Mon Sep 17 00:00:00 2001 From: Joey Hess Date: Wed, 10 Jul 2013 18:40:56 -0400 Subject: [PATCH 22/35] add news item for ikiwiki 3.20130710 --- doc/news/version_3.20121017.mdwn | 3 --- doc/news/version_3.20130710.mdwn | 23 +++++++++++++++++++++++ 2 files changed, 23 insertions(+), 3 deletions(-) delete mode 100644 doc/news/version_3.20121017.mdwn create mode 100644 doc/news/version_3.20130710.mdwn diff --git a/doc/news/version_3.20121017.mdwn b/doc/news/version_3.20121017.mdwn deleted file mode 100644 index 98a5caffe..000000000 --- a/doc/news/version_3.20121017.mdwn +++ /dev/null @@ -1,3 +0,0 @@ -ikiwiki 3.20121017 released with [[!toggle text="these changes"]] -[[!toggleable text=""" - * recentchangesdiff: fix further breakage to the template from 3.20120725"""]] \ No newline at end of file diff --git a/doc/news/version_3.20130710.mdwn b/doc/news/version_3.20130710.mdwn new file mode 100644 index 000000000..f1b30a7ff --- /dev/null +++ b/doc/news/version_3.20130710.mdwn @@ -0,0 +1,23 @@ +ikiwiki 3.20130710 released with [[!toggle text="these changes"]] +[[!toggleable text=""" + * blogspam: Fix encoding issue in RPC::XML call. + Thanks, Changaco + * comments: The formats allowed to be used in comments can be configured + using comments\_allowformats. + Thanks, Michal Sojka + * calendar: When there are multiple pages for a given day, they're + displayed in a popup on mouseover. + Thanks, Louis + * osm: Remove trailing slash from KML maps icon. + * page.tmpl: omit searchform, trails, sidebar and most metadata in CGI + (smcv) + * openid: Automatically upgrade openid\_realm to https when + accessed via https. + * The ip() pagespec can now contain glob characters to match eg, a subnet + full of spammers. + * Fix crash that could occur when a needsbuild hook returned a file + that does not exist. + * Fix python proxy to not crash when fed unicode data in getstate + and setstate. + Thanks, chrysn + * Fix committing attachments when using svn."""]] \ No newline at end of file From b162563dc1c6126953e66cdcc508f389b9d39d8e Mon Sep 17 00:00:00 2001 From: Joey Hess Date: Wed, 10 Jul 2013 21:48:16 -0400 Subject: [PATCH 23/35] Deal with git behavior change in 1.7.8 and newer that broke support for commits with an empty commit message. --- IkiWiki/Plugin/git.pm | 5 ++++- debian/changelog | 7 +++++++ 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/IkiWiki/Plugin/git.pm b/IkiWiki/Plugin/git.pm index 3879abeae..0852ce10d 100644 --- a/IkiWiki/Plugin/git.pm +++ b/IkiWiki/Plugin/git.pm @@ -550,7 +550,10 @@ sub rcs_commit_helper (@) { # Force git to allow empty commit messages. # (If this version of git supports it.) my ($version)=`git --version` =~ /git version (.*)/; - if ($version ge "1.5.4") { + if ($version ge "1.7.2") { + push @opts, "--allow-empty-message"; + } + elsif ($version ge "1.5.4") { push @opts, '--cleanup=verbatim'; } else { diff --git a/debian/changelog b/debian/changelog index 8d55d5df8..22dc3eb47 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,10 @@ +ikiwiki (3.20130711) unstable; urgency=low + + * Deal with git behavior change in 1.7.2 and newer that broke support + for commits with an empty commit message. + + -- Joey Hess Wed, 10 Jul 2013 21:49:23 -0400 + ikiwiki (3.20130710) unstable; urgency=low * blogspam: Fix encoding issue in RPC::XML call. From 946af13ae60da6a8688e66bbe17dd1a012e5d747 Mon Sep 17 00:00:00 2001 From: Joey Hess Date: Wed, 10 Jul 2013 21:52:43 -0400 Subject: [PATCH 24/35] Pass --no-edit when used with git 1.7.8 and newer. Not sure if this is needed to avoid it trying to run an editor. Probably there is never a controlling terminal and probably git notices and does nothing. But I'm just copying what I have in git-annex assistant here. (Although with a much worse git version comparion, that only really works due to luck.) --- IkiWiki/Plugin/git.pm | 3 +++ debian/changelog | 1 + 2 files changed, 4 insertions(+) diff --git a/IkiWiki/Plugin/git.pm b/IkiWiki/Plugin/git.pm index 0852ce10d..bbdcbdba8 100644 --- a/IkiWiki/Plugin/git.pm +++ b/IkiWiki/Plugin/git.pm @@ -550,6 +550,9 @@ sub rcs_commit_helper (@) { # Force git to allow empty commit messages. # (If this version of git supports it.) my ($version)=`git --version` =~ /git version (.*)/; + if ($version ge "1.7.8") { + push @opts, "--allow-empty-message", "--no-edit"; + } if ($version ge "1.7.2") { push @opts, "--allow-empty-message"; } diff --git a/debian/changelog b/debian/changelog index 22dc3eb47..242460ca3 100644 --- a/debian/changelog +++ b/debian/changelog @@ -2,6 +2,7 @@ ikiwiki (3.20130711) unstable; urgency=low * Deal with git behavior change in 1.7.2 and newer that broke support for commits with an empty commit message. + * Pass --no-edit when used with git 1.7.8 and newer. -- Joey Hess Wed, 10 Jul 2013 21:49:23 -0400 From f034dbff79770ecdad83475a083ee9fc1c54013a Mon Sep 17 00:00:00 2001 From: Joey Hess Date: Wed, 10 Jul 2013 22:04:36 -0400 Subject: [PATCH 25/35] releasing version 3.20130711 --- ikiwiki.spec | 2 +- po/ikiwiki.pot | 12 ++++++------ 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/ikiwiki.spec b/ikiwiki.spec index 91f1be2e3..fc312f0bf 100644 --- a/ikiwiki.spec +++ b/ikiwiki.spec @@ -1,5 +1,5 @@ Name: ikiwiki -Version: 3.20130710 +Version: 3.20130711 Release: 1%{?dist} Summary: A wiki compiler diff --git a/po/ikiwiki.pot b/po/ikiwiki.pot index 6136e9311..f0e79e10c 100644 --- a/po/ikiwiki.pot +++ b/po/ikiwiki.pot @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2013-07-10 18:33-0400\n" +"POT-Creation-Date: 2013-07-10 21:56-0400\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -378,26 +378,26 @@ msgstr "" msgid "%s is an attachment, not a page." msgstr "" -#: ../IkiWiki/Plugin/git.pm:783 ../IkiWiki/Plugin/git.pm:846 +#: ../IkiWiki/Plugin/git.pm:789 ../IkiWiki/Plugin/git.pm:852 #: ../IkiWiki.pm:1721 #, perl-format msgid "you are not allowed to change %s" msgstr "" -#: ../IkiWiki/Plugin/git.pm:805 +#: ../IkiWiki/Plugin/git.pm:811 #, perl-format msgid "you cannot act on a file with mode %s" msgstr "" -#: ../IkiWiki/Plugin/git.pm:809 +#: ../IkiWiki/Plugin/git.pm:815 msgid "you are not allowed to change file modes" msgstr "" -#: ../IkiWiki/Plugin/git.pm:879 +#: ../IkiWiki/Plugin/git.pm:885 msgid "you are not allowed to revert a merge" msgstr "" -#: ../IkiWiki/Plugin/git.pm:896 +#: ../IkiWiki/Plugin/git.pm:902 #, perl-format msgid "Failed to revert commit %s" msgstr "" From 968a7ca39e2435ebf08013b9da77f54295b71e36 Mon Sep 17 00:00:00 2001 From: Joey Hess Date: Wed, 10 Jul 2013 22:06:19 -0400 Subject: [PATCH 26/35] add news item for ikiwiki 3.20130711 --- doc/news/version_3.20121212.mdwn | 6 ------ doc/news/version_3.20130711.mdwn | 5 +++++ 2 files changed, 5 insertions(+), 6 deletions(-) delete mode 100644 doc/news/version_3.20121212.mdwn create mode 100644 doc/news/version_3.20130711.mdwn diff --git a/doc/news/version_3.20121212.mdwn b/doc/news/version_3.20121212.mdwn deleted file mode 100644 index 473b63190..000000000 --- a/doc/news/version_3.20121212.mdwn +++ /dev/null @@ -1,6 +0,0 @@ -ikiwiki 3.20121212 released with [[!toggle text="these changes"]] -[[!toggleable text=""" - * filecheck: Fix bug that prevented File::MimeInfo::Magic from ever - being used. - * openid: Display openid in Preferences page as a comment, so it can be - selected in all browsers."""]] \ No newline at end of file diff --git a/doc/news/version_3.20130711.mdwn b/doc/news/version_3.20130711.mdwn new file mode 100644 index 000000000..2f4a5ef59 --- /dev/null +++ b/doc/news/version_3.20130711.mdwn @@ -0,0 +1,5 @@ +ikiwiki 3.20130711 released with [[!toggle text="these changes"]] +[[!toggleable text=""" + * Deal with git behavior change in 1.7.2 and newer that broke support + for commits with an empty commit message. + * Pass --no-edit when used with git 1.7.8 and newer."""]] \ No newline at end of file From f5278f94b9ea9c9b990fc4658fcd9a919598f1c7 Mon Sep 17 00:00:00 2001 From: "W. Trevor King" Date: Sat, 13 Jul 2013 11:33:54 -0400 Subject: [PATCH 27/35] Propose a URL directive for robust relative URLs --- .../images_in_inlined_pages_have_wrong_relative_URL.mdwn | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/doc/bugs/images_in_inlined_pages_have_wrong_relative_URL.mdwn b/doc/bugs/images_in_inlined_pages_have_wrong_relative_URL.mdwn index 8cda7a70f..e73c7e662 100644 --- a/doc/bugs/images_in_inlined_pages_have_wrong_relative_URL.mdwn +++ b/doc/bugs/images_in_inlined_pages_have_wrong_relative_URL.mdwn @@ -12,4 +12,11 @@ If I then inline that page, the (relative) URL no longer points to the right pla > However, there is a simple way to avoid both problems: Use WikiLinks > and/or the [[img_directive|ikiwiki/directive/img]]. --[[Joey]] +> > For some inline HTML (e.g. SVG embedded with `` tags, it +> > would be nice to have a URL directive for URL-only WikiLinks. +> > Something like: +> > ``. +> > This would be a more general solution than an [[SVG-specific +> > fix|todo/svg]]. --[[wtk]] + [[!tag done]] From 55d1fbb9558b04f1d688648fc54944b1e7f13295 Mon Sep 17 00:00:00 2001 From: sciunto Date: Sun, 14 Jul 2013 10:00:48 -0400 Subject: [PATCH 28/35] --- doc/plugins/contrib/pandoc.mdwn | 1 + 1 file changed, 1 insertion(+) diff --git a/doc/plugins/contrib/pandoc.mdwn b/doc/plugins/contrib/pandoc.mdwn index 264aafd95..c93803605 100644 --- a/doc/plugins/contrib/pandoc.mdwn +++ b/doc/plugins/contrib/pandoc.mdwn @@ -4,3 +4,4 @@ This plugin enables Markdown processing using [Pandoc](http://johnmacfarlane.net This is an expanded and updated version of [[Jason Blevin|users/jasonblevins]]'s pandoc plugin. Get it and see further details at . +A version, merging enhancements in various forks is available at . PR are welcome. From 1c195b4fa71fc07fe129891109c05e080e6d082d Mon Sep 17 00:00:00 2001 From: "http://smcv.pseudorandom.co.uk/" Date: Wed, 17 Jul 2013 03:48:26 -0400 Subject: [PATCH 29/35] rename forum/users/acodispo.mdwn to users/acodispo.mdwn --- doc/{forum => }/users/acodispo.mdwn | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename doc/{forum => }/users/acodispo.mdwn (100%) diff --git a/doc/forum/users/acodispo.mdwn b/doc/users/acodispo.mdwn similarity index 100% rename from doc/forum/users/acodispo.mdwn rename to doc/users/acodispo.mdwn From 871e0f3482913b95267420936390e977d9abf363 Mon Sep 17 00:00:00 2001 From: "http://smcv.pseudorandom.co.uk/" Date: Wed, 17 Jul 2013 04:08:59 -0400 Subject: [PATCH 30/35] Added a comment: It's a wiki --- ..._223a8061b9a4cd45da927ff088f6b0b8._comment | 27 +++++++++++++++++++ 1 file changed, 27 insertions(+) create mode 100644 doc/forum/Can_ikiwiki_be_configured_as_multi_user_blog__63__/comment_1_223a8061b9a4cd45da927ff088f6b0b8._comment diff --git a/doc/forum/Can_ikiwiki_be_configured_as_multi_user_blog__63__/comment_1_223a8061b9a4cd45da927ff088f6b0b8._comment b/doc/forum/Can_ikiwiki_be_configured_as_multi_user_blog__63__/comment_1_223a8061b9a4cd45da927ff088f6b0b8._comment new file mode 100644 index 000000000..97011401b --- /dev/null +++ b/doc/forum/Can_ikiwiki_be_configured_as_multi_user_blog__63__/comment_1_223a8061b9a4cd45da927ff088f6b0b8._comment @@ -0,0 +1,27 @@ +[[!comment format=mdwn + username="http://smcv.pseudorandom.co.uk/" + nickname="smcv" + subject="It's a wiki" + date="2013-07-17T08:08:50Z" + content=""" +Ikiwiki is a wiki, so you can certainly have multiple users. Any user +with appropriate access can create any number of blogs: they just need +to put an [[ikiwiki/directive/inline]] directive on any page they can +edit. + +If you want \"most\" users to *only* be able to write on their own blog, +and not on other users' blogs (for instance: Alice the wiki admin +can edit anything, but Bob can only edit /users/bob/... and Chris can +only edit /users/chris/...) then you can use [[plugins/lockedit]], +something like: + + locked_pages: * and !(user(bob) and (users/bob or users/bob/*)) and !(user(chris) and (users/chris or users/chris/*)) + +(Wiki admins can always edit locked pages.) + +If you have lots of users and you know a bit of Perl, you might want to +[[plugins/write|write a plugin]] that adds a function-like [[ikiwiki/PageSpec]] +like `owndirectory(users)`, which would match if there is a logged-in user +and the page being edited is equal to or a subpage of their directory in +`users`. +"""]] From 9f71ca5ffef194c12a96679e1e21c70a7cd9ac5a Mon Sep 17 00:00:00 2001 From: "http://smcv.pseudorandom.co.uk/" Date: Wed, 17 Jul 2013 04:11:25 -0400 Subject: [PATCH 31/35] removed --- ..._223a8061b9a4cd45da927ff088f6b0b8._comment | 27 ------------------- 1 file changed, 27 deletions(-) delete mode 100644 doc/forum/Can_ikiwiki_be_configured_as_multi_user_blog__63__/comment_1_223a8061b9a4cd45da927ff088f6b0b8._comment diff --git a/doc/forum/Can_ikiwiki_be_configured_as_multi_user_blog__63__/comment_1_223a8061b9a4cd45da927ff088f6b0b8._comment b/doc/forum/Can_ikiwiki_be_configured_as_multi_user_blog__63__/comment_1_223a8061b9a4cd45da927ff088f6b0b8._comment deleted file mode 100644 index 97011401b..000000000 --- a/doc/forum/Can_ikiwiki_be_configured_as_multi_user_blog__63__/comment_1_223a8061b9a4cd45da927ff088f6b0b8._comment +++ /dev/null @@ -1,27 +0,0 @@ -[[!comment format=mdwn - username="http://smcv.pseudorandom.co.uk/" - nickname="smcv" - subject="It's a wiki" - date="2013-07-17T08:08:50Z" - content=""" -Ikiwiki is a wiki, so you can certainly have multiple users. Any user -with appropriate access can create any number of blogs: they just need -to put an [[ikiwiki/directive/inline]] directive on any page they can -edit. - -If you want \"most\" users to *only* be able to write on their own blog, -and not on other users' blogs (for instance: Alice the wiki admin -can edit anything, but Bob can only edit /users/bob/... and Chris can -only edit /users/chris/...) then you can use [[plugins/lockedit]], -something like: - - locked_pages: * and !(user(bob) and (users/bob or users/bob/*)) and !(user(chris) and (users/chris or users/chris/*)) - -(Wiki admins can always edit locked pages.) - -If you have lots of users and you know a bit of Perl, you might want to -[[plugins/write|write a plugin]] that adds a function-like [[ikiwiki/PageSpec]] -like `owndirectory(users)`, which would match if there is a logged-in user -and the page being edited is equal to or a subpage of their directory in -`users`. -"""]] From 7ddccdec7f78eef8b3ee3461b15a13793a0b74ff Mon Sep 17 00:00:00 2001 From: "http://smcv.pseudorandom.co.uk/" Date: Wed, 17 Jul 2013 04:17:23 -0400 Subject: [PATCH 32/35] Added a comment: It's a wiki: any editor can have as many blogs as they want --- ..._8e34b10699bed1b53b6c929ed1e9f19c._comment | 32 +++++++++++++++++++ 1 file changed, 32 insertions(+) create mode 100644 doc/forum/Can_ikiwiki_be_configured_as_multi_user_blog__63__/comment_1_8e34b10699bed1b53b6c929ed1e9f19c._comment diff --git a/doc/forum/Can_ikiwiki_be_configured_as_multi_user_blog__63__/comment_1_8e34b10699bed1b53b6c929ed1e9f19c._comment b/doc/forum/Can_ikiwiki_be_configured_as_multi_user_blog__63__/comment_1_8e34b10699bed1b53b6c929ed1e9f19c._comment new file mode 100644 index 000000000..1f0577c9c --- /dev/null +++ b/doc/forum/Can_ikiwiki_be_configured_as_multi_user_blog__63__/comment_1_8e34b10699bed1b53b6c929ed1e9f19c._comment @@ -0,0 +1,32 @@ +[[!comment format=mdwn + username="http://smcv.pseudorandom.co.uk/" + nickname="smcv" + subject="It's a wiki: any editor can have as many blogs as they want" + date="2013-07-17T08:17:05Z" + content=""" +Ikiwiki is a wiki, so you can certainly have multiple users. Any user +with appropriate access can create any number of blogs: they just need +to put an [[ikiwiki/directive/inline]] directive on any page they can +edit, with a [[ikiwiki/PageSpec]] pointing to pages (blog posts) in a +directory where they can create pages. + +If you want a limited set of users to be able to edit the wiki without +making them full wiki admins, you can use [[plugins/lockedit]]: + + locked_pages: * and !(user(bob) or user(chris)) + +or if you want \"most\" users to only be able to write on their own blog, and +not on other users' blogs (for instance: Alice the wiki admin can edit +anything, but Bob can only edit `users/bob/...` and Chris can only edit +`users/chris/...`) then you can use [[plugins/lockedit]], something like: + + locked_pages: * and !(user(bob) and (users/bob or users/bob/*)) and !(user(chris) and (users/chris or users/chris/*)) + +(Wiki admins can always edit locked pages.) + +If you have lots of users and you know a bit of Perl, you might want +to [[write a plugin|plugins/write]] that adds a function-like +[[ikiwiki/PageSpec]] like `owndirectory(users)`, which would match if +there is a logged-in user and the page being edited is equal to or +a subpage of their directory in users. +"""]] From 1282051f877db06f844a5dc7ef7f897ccec6a5fd Mon Sep 17 00:00:00 2001 From: "http://smcv.pseudorandom.co.uk/" Date: Wed, 17 Jul 2013 04:23:42 -0400 Subject: [PATCH 33/35] Added a comment --- ...mment_2_6083e16f72e12c03bdf739b84bd2f352._comment | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100644 doc/forum/Can_ikiwiki_be_configured_as_multi_user_blog__63__/comment_2_6083e16f72e12c03bdf739b84bd2f352._comment diff --git a/doc/forum/Can_ikiwiki_be_configured_as_multi_user_blog__63__/comment_2_6083e16f72e12c03bdf739b84bd2f352._comment b/doc/forum/Can_ikiwiki_be_configured_as_multi_user_blog__63__/comment_2_6083e16f72e12c03bdf739b84bd2f352._comment new file mode 100644 index 000000000..10929a35a --- /dev/null +++ b/doc/forum/Can_ikiwiki_be_configured_as_multi_user_blog__63__/comment_2_6083e16f72e12c03bdf739b84bd2f352._comment @@ -0,0 +1,12 @@ +[[!comment format=mdwn + username="http://smcv.pseudorandom.co.uk/" + nickname="smcv" + subject="comment 2" + date="2013-07-17T08:23:32Z" + content=""" +IkiWiki's own [[bugs]], [[news]] and [[to-do list|todo]] are functionally +equivalent to blogs, in fact. ([[news]] is the most obviously blog-like, +[[bugs]] is like a blog except that solved bugs disappear from the +page/feed, and [[todo]] only shows titles, not content, but is otherwise +like [[bugs]].) +"""]] From a82a15bd0008d04f0e91d53e56a37356be16b117 Mon Sep 17 00:00:00 2001 From: Amitai Schlair Date: Wed, 17 Jul 2013 16:43:07 -0400 Subject: [PATCH 34/35] I think planets now behave as they should. --- doc/todo/fancypodcast.mdwn | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/doc/todo/fancypodcast.mdwn b/doc/todo/fancypodcast.mdwn index 64af7e8a9..6345cdf9d 100644 --- a/doc/todo/fancypodcast.mdwn +++ b/doc/todo/fancypodcast.mdwn @@ -303,6 +303,20 @@ could negatively impact eg, Planet style aggregators using ikiwiki. --[[Joey]] >>> a simple matter of getting \[[!aggregate]] to populate author in >>> `add_page()`. I'll see what I can figure out. --[[schmonz]] +>>>> Yep, that was mostly it. If the feed entry defines an author, +>>>> and the author is distinct from the feed name, we now show `NAME: +>>>> AUTHOR`, else just show `NAME` (same as always). In addition, +>>>> the W3 feed validator says `` is invalid, so +>>>> I replaced it with ``, and all of a sudden `r2e` +>>>> gives me better `From:` headers. With the latest on my branch, +>>>> when I generate the same planet as updo and run `r2e` over it, +>>>> the names I get in `From:` look like so: + + "updo: Junio C Hamano" + "updo: Greg Kroah-Hartman" + "updo: Eric Raymond: esr"` (article author != feed name, so we get both) + "updo: Jannis Pohlman: Jannis Pohlmann"` (oops! I tweaked the real updo) + +++ b/templates/rsspage.tmpl + xmlns:atom="http://www.w3.org/2005/Atom" + @@ -312,7 +326,7 @@ every crummy rss reader on earth is going to understand this? I'd put it at about 0%; I doubt ikiwiki's own rss reader understands such a mashup. --[[Joey]] -> The validator I used (, I think) told me to. +> The validator I used () told me to. > Pretty sure it doesn't make anything work better in the podcatchers > I tried. Hadn't considered that it might break some readers. > Removed. --[[schmonz]] From ac386bc7b69a8bf946918c0b46533975d249cf97 Mon Sep 17 00:00:00 2001 From: Amitai Schlair Date: Wed, 17 Jul 2013 16:47:57 -0400 Subject: [PATCH 35/35] Sign previous. --- doc/todo/fancypodcast.mdwn | 2 ++ 1 file changed, 2 insertions(+) diff --git a/doc/todo/fancypodcast.mdwn b/doc/todo/fancypodcast.mdwn index 6345cdf9d..31b6c44f9 100644 --- a/doc/todo/fancypodcast.mdwn +++ b/doc/todo/fancypodcast.mdwn @@ -317,6 +317,8 @@ could negatively impact eg, Planet style aggregators using ikiwiki. --[[Joey]] "updo: Eric Raymond: esr"` (article author != feed name, so we get both) "updo: Jannis Pohlman: Jannis Pohlmann"` (oops! I tweaked the real updo) +>>>> --[[schmonz]] + +++ b/templates/rsspage.tmpl + xmlns:atom="http://www.w3.org/2005/Atom" +