Commit Graph

8936 Commits (4e4fb18dbecf22a9eeea37f2632924f6d1ea67da)

Author SHA1 Message Date
intrigeri cb1fe44f5d po(change): avoid losing information before guessing the same...
Signed-off-by: intrigeri <intrigeri@boum.org>
2008-11-13 01:07:52 +01:00
intrigeri 8745d67f06 po(istranslatablefile): extracted this from istranslatable
... will need this soon to deal with master file deletion.

Signed-off-by: intrigeri <intrigeri@boum.org>
2008-11-13 00:56:23 +01:00
intrigeri c51202c11e po.t: cleanup
Signed-off-by: intrigeri <intrigeri@boum.org>
2008-11-13 00:54:51 +01:00
intrigeri 40324175aa po/todo: added test results
Signed-off-by: intrigeri <intrigeri@boum.org>
2008-11-13 00:54:46 +01:00
Joey Hess 699aa79c2e add news item for ikiwiki 2.70 2008-11-12 18:08:10 -05:00
Joey Hess 31a1a3215b releasing version 2.70 2008-11-12 18:01:46 -05:00
Joey Hess 97cb036811 note fix versions 2008-11-12 17:35:21 -05:00
Joey Hess 716560b7f1 check for invalid utf-8, and toss it back to avoid crashes
Since ikiwiki uses open :utf8, perl assumes that files contain valid utf-8.
If it turns out to be malformed it may later crash while processing strings
read from them, with 'Malformed UTF-8 character (fatal)'.

As at least a quick fix, use utf8::valid as soon as data is read, and if
it's not valid, call encode_utf8 on the string, thus clearing the utf-8
flag. This may cause follow-on encoding problems, but will avoid this
crash, and the input file was broken anyway, so GIGO is a reasonable
response. (I looked at calling decode_utf8 after, but it seemed to cause
more trouble than it was worth. BTW, use open ':encoding(utf8)' avaoids
this problem, but the corrupted data later causes Storable to crash when
writing the index.)

This is a quick fix, clearly imperfect:
- It might be better to explicitly call decode_utf8 when reading files,
  rather than using the IO layer.
- Data read other than by readfile() can still sneak in bad utf-8. While
  ikiwiki does very little file input not using it, stdin for the CGI
  would be one way.
2008-11-12 17:30:54 -05:00
intrigeri 190c641c8a po(otherlanguages): return pages that should exist
... instead of already existing ones.
This fixes the "missing otherlanguages links on master pages just created via
the CGI" bug.

Signed-off-by: intrigeri <intrigeri@boum.org>
2008-11-12 23:27:30 +01:00
intrigeri 36312b13b4 po: memoized istranslatable, eventually
And enjoy a 10% rebuild time enhancement on a complex wiki full of maps and
other pseudo-dynamic content, with some other costly plugins enabled. So it
could well mean 20% on a more usual wiki.

Signed-off-by: intrigeri <intrigeri@boum.org>
2008-11-12 22:32:47 +01:00
intrigeri 10c4e858b8 po(change): flush Memoize cache, to fix bug after rename/remove
Signed-off-by: intrigeri <intrigeri@boum.org>
2008-11-12 21:18:48 +01:00
intrigeri 776be85a22 po/todo: first pass of robustness tests, added todo for remove/rename
Signed-off-by: intrigeri <intrigeri@boum.org>
2008-11-12 20:13:40 +01:00
intrigeri c440a39ba4 po(htmlize): ignore PO files not managed by this plugin
This way, the po plugin will not appropriate PO files it is not responsible for,
and PO files existing before this plugin was enabled can coexist peacefully with
our own ones.

Signed-off-by: intrigeri <intrigeri@boum.org>
2008-11-12 18:06:04 +01:00
intrigeri 2f27eb9693 po: ooops, fixed just introduced bug
(I just removed in istranslation and _istranslation the dependency on
istranslatable... which broke things in a subtle way, hard to see at the first
glance.)

Signed-off-by: intrigeri <intrigeri@boum.org>
2008-11-12 17:52:00 +01:00
intrigeri e18a9d9a88 parentlinks: fixed links when po plugin is enabled
(and usedirs is disabled)

Signed-off-by: intrigeri <intrigeri@boum.org>
2008-11-12 17:36:00 +01:00
intrigeri aed42eb34a po: fix istranslation/istranslatable for pages starting with /
Signed-off-by: intrigeri <intrigeri@boum.org>
2008-11-12 17:29:12 +01:00
intrigeri f4815e3b12 po(mybestlink): fixed when fed with path beginning with /
Signed-off-by: intrigeri <intrigeri@boum.org>
2008-11-12 16:54:51 +01:00
intrigeri 86c58119e0 po/todo: added robustness tests that have to be done
Signed-off-by: intrigeri <intrigeri@boum.org>
2008-11-12 15:54:20 +01:00
intrigeri eba2dee941 po: compute internal links from a slave page relative to its master page
e.g. a link appearing on a slave page links to its masterpage's subpages.

Signed-off-by: intrigeri <intrigeri@boum.org>
2008-11-12 15:04:50 +01:00
Joey Hess 2c858c9c95 add news item for ikiwiki 2.69 2008-11-11 21:07:06 -05:00
Joey Hess 2ab3132d3b document other files in .ikiwiki 2008-11-11 21:01:16 -05:00
Joey Hess ecd4f0ee55 make unlockwiki drop the cgilock
This is necessary so that things that fork to the background,
like pinger, and inline ping, don't block other cgis from running.

Note that websetup also calls unlockwiki, before refreshing / rebuilding
the wiki. It makes perfect sense for that not to block other cgis.
2008-11-11 20:48:02 -05:00
intrigeri 521d76e508 pagetitle vs meta: announcing a working prototype
Signed-off-by: intrigeri <intrigeri@boum.org>
2008-11-12 01:10:09 +01:00
intrigeri b19d0d3d24 Merge commit 'upstream/po' into prv/po 2008-11-12 01:08:57 +01:00
Joey Hess 50b95a0742 response 2008-11-11 18:34:18 -05:00
Joey Hess 3937e1fb16 patch and a few comments 2008-11-11 18:33:04 -05:00
Joey Hess 0d1593a201 Merge commit 'intrigeri/po' into po 2008-11-11 17:52:51 -05:00
Joey Hess 2a56ec6644 Merge branch 'master' into po 2008-11-11 17:52:32 -05:00
intrigeri ef536f46bd po/todo: bug report about linking to subpages from translation pages
Signed-off-by: intrigeri <intrigeri@boum.org>
2008-11-11 23:08:13 +01:00
intrigeri 40ffc92953 po: fixed bug when a new translatable page is created
Signed-off-by: intrigeri <intrigeri@boum.org>
2008-11-11 23:04:58 +01:00
intrigeri 2b4e76a961 po: change a bit the way links are generated
This will soon enable usage of translated page titles in link.

Signed-off-by: intrigeri <intrigeri@boum.org>
2008-11-11 22:29:47 +01:00
intrigeri b7a4e5a51c po/todo: fixed internal links
Signed-off-by: intrigeri <intrigeri@boum.org>
2008-11-11 22:29:41 +01:00
Joey Hess d1b22b2524 lockwiki changes
* Stop busy-waiting in lockwiki, as this could delay ikiwiki from waking up
  for up to one second. The bailout code is no longer needed.
* Remove support for unused optional wait parameter from lockwiki.
2008-11-11 15:54:52 -05:00
Joey Hess eef8b966b3 O_CREATE needs mode 2008-11-11 15:53:55 -05:00
Joey Hess 9a48669f1e avoid multiple ikiwiki cgi processes piling up, eating all memory, and thrashing
Fixed by making the cgi wrapper wait on a cgilock.
If you had to set apache's MaxClients low to avoid ikiwiki thrashing
your server, you can now turn it up to a high value.

The downside to this is that a cgi call that doesn't need to call lockwiki
will be serialised by this so only one can run at a time. (For example,
do=search.) There are few such calls, and all of them call loadindex,
so each still eats gobs of memory, so serialising them still seems ok.
2008-11-11 15:40:04 -05:00
intrigeri 18c086ec04 po/todo: added note about backlinks not being updated
Signed-off-by: intrigeri <intrigeri@boum.org>
2008-11-11 20:04:58 +01:00
Joey Hess 6611f3a2d9 bzr: Fix dates for recentchanges. 2008-11-11 13:44:47 -05:00
Joey Hess 72a2fa9441 Merge branch 'master' of ssh://git.ikiwiki.info/srv/git/ikiwiki.info 2008-11-11 13:40:50 -05:00
Joey Hess 700c4bef29 let's stop sucking :-) 2008-11-11 13:40:02 -05:00
intrigeri f0abaa9fc9 po: fixed link to home page when po_link_to=negotiated, added testcase
Signed-off-by: intrigeri <intrigeri@boum.org>
2008-11-11 18:42:14 +01:00
intrigeri 4c45dfce19 po/todo: update
Signed-off-by: intrigeri <intrigeri@boum.org>
2008-11-11 17:30:19 +01:00
intrigeri fb9130c18c po: answered Joey's "create a new translation" question
... that I previously completely missed.

Signed-off-by: intrigeri <intrigeri@boum.org>
2008-11-11 17:17:56 +01:00
intrigeri f0e796d9a1 po(change): fix uninitialized variables when running IkiWiki::refresh()
Signed-off-by: intrigeri <intrigeri@boum.org>
2008-11-11 16:04:40 +01:00
intrigeri 43a1d36378 po: added HOMEPAGEURL template variable, documented when to use it
Hopefully all links should now be consistent with the chosen linking behavior,
but who knows...

Signed-off-by: intrigeri <intrigeri@boum.org>
2008-11-11 15:27:39 +01:00
intrigeri 18331e9261 po/todo: added bug report for weird Perl warnings
Signed-off-by: intrigeri <intrigeri@boum.org>
2008-11-11 15:25:23 +01:00
intrigeri cfe101fff9 po: fixed link to homepage from non-translation page
Added testcases for this bug.
It remains broken when generated from <TMPL_VAR BASEURL>, though.

Signed-off-by: intrigeri <intrigeri@boum.org>
2008-11-11 15:06:26 +01:00
intrigeri 6b82ef44b0 po: some code simplification/clarification
Signed-off-by: intrigeri <intrigeri@boum.org>
2008-11-11 14:11:34 +01:00
http://edward.myopenid.com/ 71ea77a780 add item to watch list 2008-11-11 07:59:06 -05:00
bcdugga ebd9f4ce8a 2008-11-11 00:23:20 -05:00
intrigeri 6a9dafdc1d po/todo: updated page formats, broken links, documentation
Signed-off-by: intrigeri <intrigeri@boum.org>
2008-11-11 05:17:26 +01:00