summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorintrigeri <intrigeri@boum.org>2010-08-02 11:18:35 +0200
committerintrigeri <intrigeri@boum.org>2010-08-02 11:18:35 +0200
commit22d982243716bb04f56e4e78e573e3ec49077309 (patch)
tree840c33fd504f5942f808c9c63b268ea1d20a5f93
parent5948bb01cb45f715befd107356873a3d3bb1d7d9 (diff)
parente083e4caa8175c4ccc45dd06e9b9cd784dcbbc94 (diff)
Merge remote branch 'upstream/master' into prv/po
-rw-r--r--Bundle/IkiWiki/Extras.pm1
-rw-r--r--IkiWiki/Plugin/graphviz.pm4
-rw-r--r--IkiWiki/Plugin/search.pm6
-rw-r--r--IkiWiki/Plugin/sparkline.pm4
-rw-r--r--debian/changelog2
-rw-r--r--debian/control2
-rw-r--r--doc/bugs/po:_new_pages_not_translatable.mdwn2
-rw-r--r--doc/plugins/graphviz.mdwn2
-rw-r--r--doc/plugins/po.mdwn17
-rw-r--r--doc/plugins/po/discussion.mdwn22
-rw-r--r--doc/plugins/search.mdwn2
-rw-r--r--doc/plugins/sparkline.mdwn2
-rw-r--r--doc/todo/po:_avoid_rebuilding_to_fix_meta_titles.mdwn43
-rw-r--r--doc/todo/po:_remove_po_files_when_disabling_plugin.mdwn2
-rw-r--r--ikiwiki.spec1
15 files changed, 75 insertions, 37 deletions
diff --git a/Bundle/IkiWiki/Extras.pm b/Bundle/IkiWiki/Extras.pm
index 5bbd7b8c6..64e907306 100644
--- a/Bundle/IkiWiki/Extras.pm
+++ b/Bundle/IkiWiki/Extras.pm
@@ -16,7 +16,6 @@ perl -MCPAN -e 'install Bundle::IkiWiki::Extras'
=head1 CONTENTS
-Digest::SHA1
Authen::Passphrase
Search::Xapian
RPC::XML
diff --git a/IkiWiki/Plugin/graphviz.pm b/IkiWiki/Plugin/graphviz.pm
index dfd66a03e..4ed8b89f1 100644
--- a/IkiWiki/Plugin/graphviz.pm
+++ b/IkiWiki/Plugin/graphviz.pm
@@ -37,10 +37,10 @@ sub render_graph (\%) {
$src .= "}\n";
# Use the sha1 of the graphviz code as part of its filename.
- eval q{use Digest::SHA1};
+ eval q{use Digest::SHA};
error($@) if $@;
my $dest=$params{page}."/graph-".
- IkiWiki::possibly_foolish_untaint(Digest::SHA1::sha1_hex($src)).
+ IkiWiki::possibly_foolish_untaint(Digest::SHA::sha1_hex($src)).
".png";
will_render($params{page}, $dest);
diff --git a/IkiWiki/Plugin/search.pm b/IkiWiki/Plugin/search.pm
index 1cf762fce..8fb9dff0c 100644
--- a/IkiWiki/Plugin/search.pm
+++ b/IkiWiki/Plugin/search.pm
@@ -190,15 +190,15 @@ sub pageterm ($) {
# 240 is the number used by omindex to decide when to hash an
# overlong term. This does not use a compatible hash method though.
if (length $page > 240) {
- eval q{use Digest::SHA1};
+ eval q{use Digest::SHA};
if ($@) {
- debug("search: ".sprintf(gettext("need Digest::SHA1 to index %s"), $page)) if $@;
+ debug("search: ".sprintf(gettext("need Digest::SHA to index %s"), $page)) if $@;
return undef;
}
# Note no colon, therefore it's guaranteed to not overlap
# with a page with the same name as the hash..
- return "U".lc(Digest::SHA1::sha1_hex($page));
+ return "U".lc(Digest::SHA::sha1_hex($page));
}
else {
return "U:".$page;
diff --git a/IkiWiki/Plugin/sparkline.pm b/IkiWiki/Plugin/sparkline.pm
index 1b1d04cba..e28d2605a 100644
--- a/IkiWiki/Plugin/sparkline.pm
+++ b/IkiWiki/Plugin/sparkline.pm
@@ -122,10 +122,10 @@ sub preprocess (@) {
# Use the sha1 of the php code that generates the sparkline as
# the base for its filename.
- eval q{use Digest::SHA1};
+ eval q{use Digest::SHA};
error($@) if $@;
my $fn=$params{page}."/sparkline-".
- IkiWiki::possibly_foolish_untaint(Digest::SHA1::sha1_hex($php)).
+ IkiWiki::possibly_foolish_untaint(Digest::SHA::sha1_hex($php)).
".png";
will_render($params{page}, $fn);
diff --git a/debian/changelog b/debian/changelog
index 5645b34d4..25123cecc 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -8,6 +8,8 @@ ikiwiki (3.20100723) UNRELEASED; urgency=low
* meta: Allow syntax closer to html meta to be used.
* Add new disable hook, allowing plugins to perform cleanup after they
have been disabled.
+ * Use Digest::SHA built into perl rather than external Digest::SHA1
+ to simplify dependencies. Closes: #591040
-- Joey Hess <joeyh@debian.org> Fri, 23 Jul 2010 14:00:32 -0400
diff --git a/debian/control b/debian/control
index 0562a4a99..049a685b0 100644
--- a/debian/control
+++ b/debian/control
@@ -34,7 +34,7 @@ Suggests: viewvc | gitweb | viewcvs, libsearch-xapian-perl,
libxml-feed-perl, libmailtools-perl, perlmagick,
libfile-mimeinfo-perl, libcrypt-ssleay-perl,
liblocale-gettext-perl (>= 1.05-1), libtext-typography-perl,
- libtext-csv-perl, libdigest-sha1-perl, graphviz, libnet-amazon-s3-perl,
+ libtext-csv-perl, graphviz, libnet-amazon-s3-perl,
libsparkline-php, texlive, dvipng, libtext-wikicreole-perl,
libsort-naturally-perl, libtext-textile-perl, libhighlight-perl,
po4a (>= 0.35-1), gettext, libyaml-perl
diff --git a/doc/bugs/po:_new_pages_not_translatable.mdwn b/doc/bugs/po:_new_pages_not_translatable.mdwn
index 84156bacc..c19f66594 100644
--- a/doc/bugs/po:_new_pages_not_translatable.mdwn
+++ b/doc/bugs/po:_new_pages_not_translatable.mdwn
@@ -8,3 +8,5 @@ I can reproduce this bug in a test site. --[[Joey]]
> I could reproduce this bug at some point during the merge of a buggy
> version of my ordered slave languages patch, but I cannot anymore.
> Could you please try again? --[[intrigeri]]
+
+>> Cannot reproduce with 3.20100722, [[done]] I guess. --[[Joey]]
diff --git a/doc/plugins/graphviz.mdwn b/doc/plugins/graphviz.mdwn
index 65130ae8c..d57d7dc94 100644
--- a/doc/plugins/graphviz.mdwn
+++ b/doc/plugins/graphviz.mdwn
@@ -22,4 +22,4 @@ Some example graphs:
[[!graph src="a -- b -- c -- a;" prog="circo" type="graph"]]
"""]]
-This plugin uses the [[!cpan Digest::SHA1]] perl module.
+This plugin uses the [[!cpan Digest::SHA]] perl module.
diff --git a/doc/plugins/po.mdwn b/doc/plugins/po.mdwn
index ac2df2d18..0f1d66d32 100644
--- a/doc/plugins/po.mdwn
+++ b/doc/plugins/po.mdwn
@@ -247,8 +247,8 @@ TODO
[[!inline pages="todo/po:* and !todo/done and !link(todo/done) and !todo/*/*"
feeds=no actions=no archive=yes show=0]]
-l10n wiki misconfiguration
---------------------------
+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?)
@@ -302,3 +302,16 @@ underlay, and the underlays lack translation to a given language.
>>>> 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]]
diff --git a/doc/plugins/po/discussion.mdwn b/doc/plugins/po/discussion.mdwn
index 73858c818..50998e822 100644
--- a/doc/plugins/po/discussion.mdwn
+++ b/doc/plugins/po/discussion.mdwn
@@ -644,28 +644,6 @@ daring a timid "please pull"... or rather, please review again :)
>>> need improvements to the deletion UI to de-confuse that. It's fine to
>>> put that off until needed --[[Joey]]
>>
-> * Re the meta title escaping issue worked around by `change`.
-> I suppose this does not only affect meta, but other things
-> at scan time too. Also, handling it only on rebuild feels
-> suspicious -- a refresh could involve changes to multiple
-> pages and trigger the same problem, I think. Also, exposing
-> this rebuild to the user seems really ugly, not confidence inducing.
->
-> So I wonder if there's a better way. Such as making po, at scan time,
-> re-run the scan hooks, passing them modified content (either converted
-> from po to mdwn or with the escaped stuff cheaply de-escaped). (Of
-> course the scan hook would need to avoid calling itself!)
->
-> (This doesn't need to block the merge, but I hope it can be addressed
-> eventually..)
->
-> --[[Joey]]
->>
->> I'll think about it soon.
->>
->> --[[intrigeri]]
->>
->>> Did you get a chance to? --[[Joey]]
* As discussed at [[todo/l10n]] the templates needs to be translatable too. They
should be treated properly by po4a using the markdown option - at least with my
diff --git a/doc/plugins/search.mdwn b/doc/plugins/search.mdwn
index 92cc5945a..e95739cf3 100644
--- a/doc/plugins/search.mdwn
+++ b/doc/plugins/search.mdwn
@@ -4,7 +4,7 @@
This plugin adds full text search to ikiwiki, using the
[xapian](http://xapian.org/) engine, its
[omega](http://xapian.org/docs/omega/overview.html) frontend, and the
-[[!cpan Search::Xapian]], [[!cpan Digest::SHA1]], and [[!cpan HTML::Scrubber]]
+[[!cpan Search::Xapian]], [[!cpan Digest::SHA]], and [[!cpan HTML::Scrubber]]
perl modules.
The [[ikiwiki/searching]] page describes how to write search queries.
diff --git a/doc/plugins/sparkline.mdwn b/doc/plugins/sparkline.mdwn
index ee3928d7e..83e24a27d 100644
--- a/doc/plugins/sparkline.mdwn
+++ b/doc/plugins/sparkline.mdwn
@@ -16,7 +16,7 @@ to use the plugin, you will need:
php can find it when `sparkline/Sparkline.php` is required.
* The GD PHP module used by the Sparkline library.
* A "php" program in the path, that can run standalone php programs.
-* [[!cpan Digest::SHA1]]
+* [[!cpan Digest::SHA]]
On a Debian system, this can be accomplished by installing these packages:
`libsparkline-php` `php5-gd` `php5-cli` `libdigest-sha1-perl`
diff --git a/doc/todo/po:_avoid_rebuilding_to_fix_meta_titles.mdwn b/doc/todo/po:_avoid_rebuilding_to_fix_meta_titles.mdwn
new file mode 100644
index 000000000..d4e1f743c
--- /dev/null
+++ b/doc/todo/po:_avoid_rebuilding_to_fix_meta_titles.mdwn
@@ -0,0 +1,43 @@
+Re the meta title escaping issue worked around by `change`.
+
+> I suppose this does not only affect meta, but other things
+> at scan time too. Also, handling it only on rebuild feels
+> suspicious -- a refresh could involve changes to multiple
+> pages and trigger the same problem, I think. Also, exposing
+> this rebuild to the user seems really ugly, not confidence inducing.
+>
+> So I wonder if there's a better way. Such as making po, at scan time,
+> re-run the scan hooks, passing them modified content (either converted
+> from po to mdwn or with the escaped stuff cheaply de-escaped). (Of
+> course the scan hook would need to avoid calling itself!)
+>
+> (This doesn't need to block the merge, but I hope it can be addressed
+> eventually..)
+>
+> --[[Joey]]
+>>
+>> I'll think about it soon.
+>>
+>> --[[intrigeri]]
+>>
+>>> Did you get a chance to? --[[Joey]]
+
+>>>> I eventually did, and got rid of the ugly double rebuild of pages
+>>>> at build time. This involved adding a `rescan` hook. Rationale
+>>>> and details are in my po branch commit messages. I believe this
+>>>> new way of handling meta title escaping to be far more robust.
+>>>> Moreover this new implementation is more generic, feels more
+>>>> logical to me, and probably fixes other similar bugs outside the
+>>>> meta plugin scope. Please have a look when you can.
+>>>> --[[intrigeri]]
+
+>>>>> Glad you have tackled this. Looking at
+>>>>> 25447bccae0439ea56da7a788482a4807c7c459d,
+>>>>> I wonder how this rescan hook is different from a scan hook
+>>>>> with `last => 1` ? Ah, it comes *after* the preprocess hook
+>>>>> in scan mode. Hmm, I wonder if there's any reason to have
+>>>>> the scan hook called before those as it does now. Reordering
+>>>>> those 2 lines could avoid adding a new hook. --[[Joey]]
+
+>>>>>> Sure. I was fearing to break other plugins if I did so, so I
+>>>>>> did not dare to. I'll try this. --[[intrigeri]]
diff --git a/doc/todo/po:_remove_po_files_when_disabling_plugin.mdwn b/doc/todo/po:_remove_po_files_when_disabling_plugin.mdwn
index 4ddd0fa1e..26b1964ba 100644
--- a/doc/todo/po:_remove_po_files_when_disabling_plugin.mdwn
+++ b/doc/todo/po:_remove_po_files_when_disabling_plugin.mdwn
@@ -1,2 +1,4 @@
ikiwiki now has a `disable` hook. Should the po plugin remove the po
files from the source repository when it has been disabled?
+
+> pot files, possibly, but the po files contain work, so no. --[[Joey]]
diff --git a/ikiwiki.spec b/ikiwiki.spec
index 43065b7f5..ca5794704 100644
--- a/ikiwiki.spec
+++ b/ikiwiki.spec
@@ -31,7 +31,6 @@ Requires: perl(HTML::Scrubber)
Requires: perl(XML::Simple)
Requires: perl(CGI::FormBuilder)
Requires: perl(CGI::Session)
-Requires: perl(Digest::SHA1)
Requires: python-docutils