intrigeri
e397888a77
po/doc: more security research results
...
Apart of the fuzzying part, I'm done with what I can do without help.
The "Running po4a on untrusted content" section needs at least a quick glance
from an experimented Perl programmer.
Signed-off-by: intrigeri <intrigeri@boum.org>
2008-11-10 23:52:50 +01:00
intrigeri
44bb872a97
po/todo(security): many research results
...
... and some questions to Joey (hint: look for your name)
Signed-off-by: intrigeri <intrigeri@boum.org>
2008-11-08 22:08:50 +01:00
intrigeri
41d13673c6
po/todo++: support other file formats than markdown
...
Signed-off-by: intrigeri <intrigeri@boum.org>
2008-11-08 12:21:54 +01:00
intrigeri
86edd539f4
po/todo: mostly security research
...
Signed-off-by: intrigeri <intrigeri@boum.org>
2008-11-08 02:13:37 +01:00
intrigeri
3c6c129100
po: started research on gettext/po4a security
...
Signed-off-by: intrigeri <intrigeri@boum.org>
2008-11-08 00:08:44 +01:00
intrigeri
a0ac346079
po: finished backlinks implementation
...
Signed-off-by: intrigeri <intrigeri@boum.org>
2008-11-07 22:17:54 +01:00
intrigeri
34ab884242
po: implemented linking/backlinks specification for po_link_to=negotiated
...
Signed-off-by: intrigeri <intrigeri@boum.org>
2008-11-07 21:27:00 +01:00
intrigeri
61a01d3388
po: write detailed specification of wished backlinks behaviour
...
Signed-off-by: intrigeri <intrigeri@boum.org>
2008-11-07 16:33:28 +01:00
intrigeri
daa04ae436
po: fix link to homepage in special case
...
... by wrapping IkiWiki::urlto in order to workaround hard-coded
/index.$config{htmlext}, which is wrong when usedirs=0 and po_link_to=current
and translatable homepage
Signed-off-by: intrigeri <intrigeri@boum.org>
2008-11-06 17:28:04 +01:00
intrigeri
8b001dbb00
po: redesign (once more) automatic POT/PO files update
...
Now use the change hook to update these files, check them into VCS, and trigger
IkiWiki::refresh as needed. The needsbuild hook's help was required to prevent
infinite looping.
This more rigorous way of doing this fixes recentchanges (that was previously
not updated in some cases), and probably is a better long-term solution than the
two previously tested ones.
Signed-off-by: intrigeri <intrigeri@boum.org>
2008-11-06 15:54:55 +01:00
intrigeri
c8cc03c824
po: doc/todo update
...
Signed-off-by: intrigeri <intrigeri@boum.org>
2008-11-06 14:22:54 +01:00
intrigeri
802be94104
po: use prep_writefile before creating any files in refreshpot and refreshpo
...
Signed-off-by: intrigeri <intrigeri@boum.org>
2008-11-06 14:17:33 +01:00
intrigeri
a4cbfce763
po: reported parentlinks misbehaviour in special case
...
Signed-off-by: intrigeri <intrigeri@boum.org>
2008-11-06 14:12:05 +01:00
intrigeri
769be3d48e
po: po_link_to is safe, and fallbacks to a working value if needed
...
warnings are displayed if it is set to an invalid or incompatible value
(e.g. po_link_to=negotiated and disabled usedirs)
Signed-off-by: intrigeri <intrigeri@boum.org>
2008-11-06 13:47:09 +01:00
intrigeri
419de149a6
po: mark po_translatable_pages as a safe configuration setting
...
Signed-off-by: intrigeri <intrigeri@boum.org>
2008-11-06 13:29:48 +01:00
intrigeri
34afa2c07d
po: po_master_language and po_slave_languages are safe config settings
...
... and check their validity in checkconfig
Signed-off-by: intrigeri <intrigeri@boum.org>
2008-11-06 13:26:45 +01:00
intrigeri
c96dd00480
po: added license and copyright
...
Signed-off-by: intrigeri <intrigeri@boum.org>
2008-11-06 13:01:33 +01:00
intrigeri
1f54c13ec2
Merge commit 'upstream/po' into prv/po
...
Conflicts:
IkiWiki/Plugin/po.pm
doc/plugins/po.mdwn
Signed-off-by: intrigeri <intrigeri@boum.org>
2008-11-06 12:28:31 +01:00
Joey Hess
fe580240d4
need license
2008-11-05 15:02:22 -05:00
Joey Hess
b609ae76ed
response
2008-11-05 14:58:35 -05:00
Joey Hess
6fbe214d91
fixed one security problem, two more need review
2008-11-05 14:47:50 -05:00
Joey Hess
7e95723dad
avoid hitting the shell with system()
2008-11-05 14:45:45 -05:00
Joey Hess
b76ee8a96d
minor wording improvements/changes
2008-11-05 14:22:02 -05:00
intrigeri
bd2dd8c603
po plugin: more detailed backlinks todo item
...
Signed-off-by: intrigeri <intrigeri@boum.org>
2008-11-05 12:50:42 +01:00
intrigeri
225e21f6c5
po plugin: redesign refresh mechanism after master page update
...
manually triggering IkiWiki::refresh() was at least dubious, and more or less
buggy (it randomly broke the whole backlinks feature); thinking a bit more to
add the necessary bits to @needsbuild seems like a better way. don't play with
ikiwiki's internals if not absolutely needed.
Signed-off-by: intrigeri <intrigeri@boum.org>
2008-11-04 23:32:32 +01:00
intrigeri
bc5b875de8
po plugin: remove broken parentlinks for home page's translations
...
Signed-off-by: intrigeri <intrigeri@boum.org>
2008-11-04 20:05:21 +01:00
intrigeri
61c4129aaa
po plugin: updated doc/todo
...
Signed-off-by: intrigeri <intrigeri@boum.org>
2008-11-04 19:24:37 +01:00
intrigeri
78155454a4
po plugin: updated doc+todo
...
Signed-off-by: intrigeri <intrigeri@boum.org>
2008-11-03 01:21:06 +01:00
intrigeri
c7fbcf6c5e
po plugin: slave pages link to the master's discussion page
...
Signed-off-by: intrigeri <intrigeri@boum.org>
2008-11-03 00:52:27 +01:00
intrigeri
c0d1f2cace
po plugin: updated todo / doc
...
Signed-off-by: intrigeri <intrigeri@boum.org>
2008-11-02 23:10:59 +01:00
intrigeri
c696239b6b
po plugin: added TODO about charset/encoding in new translations
...
Signed-off-by: intrigeri <intrigeri@boum.org>
2008-11-02 18:07:01 +01:00
intrigeri
654adc105e
po plugin: todo++
...
Signed-off-by: intrigeri <intrigeri@boum.org>
2008-10-20 14:30:22 +02:00
intrigeri
8211910566
po plugin: set every configuration item to unsafe
...
We will check later which ones are actually safe enough for websetup.
Signed-off-by: intrigeri <intrigeri@boum.org>
2008-10-19 17:19:42 +02:00
intrigeri
b4316fd941
po plugin: doc fix
...
Signed-off-by: intrigeri <intrigeri@boum.org>
2008-10-19 00:15:44 +02:00
intrigeri
f096a9d798
po plugin: added ISTRANSLATION and ISTRANSLATABLE template variables
...
Signed-off-by: intrigeri <intrigeri@boum.org>
2008-10-19 00:05:13 +02:00
intrigeri
72dc1a5f02
po plugin: todo++
...
Signed-off-by: intrigeri <intrigeri@boum.org>
2008-10-19 00:04:35 +02:00
intrigeri
a0deb3038c
po plugin: do not allow msgmerge to create backup files
...
Signed-off-by: intrigeri <intrigeri@boum.org>
2008-10-18 19:18:22 +02:00
intrigeri
d0c4d5061d
po plugin: todo++
...
Signed-off-by: intrigeri <intrigeri@boum.org>
2008-10-18 15:49:13 +02:00
intrigeri
7b7865150f
po plugin: add correct dependencies on pages using OTHERLANGUAGES
...
Signed-off-by: intrigeri <intrigeri@boum.org>
2008-10-18 15:49:13 +02:00
intrigeri
93b316f7c1
po plugin: todo++
...
Signed-off-by: intrigeri <intrigeri@boum.org>
2008-10-18 15:49:13 +02:00
intrigeri
1d76762517
po plugin: initial implementation of automatic POT/PO update
...
The updated or created PO files are put under version control.
Signed-off-by: intrigeri <intrigeri@boum.org>
2008-10-18 15:49:12 +02:00
intrigeri
c852203be8
po plugin: todo++ more security checks needed
...
... when creating new files.
Signed-off-by: intrigeri <intrigeri@boum.org>
2008-10-18 15:49:12 +02:00
intrigeri
58c77a01f7
po plugin: create missing POT/PO files in needsbuild hook
...
Signed-off-by: intrigeri <intrigeri@boum.org>
2008-10-18 15:49:12 +02:00
intrigeri
f42cf38076
po plugin: documentation work
...
Signed-off-by: intrigeri <intrigeri@boum.org>
2008-10-18 15:49:12 +02:00
intrigeri
6add615928
po plugin: added and documented PERCENTTRANSLATED template variable
...
Signed-off-by: intrigeri <intrigeri@boum.org>
2008-10-18 15:49:12 +02:00
intrigeri
1a670d3aca
po plugin: make translation percentage available in OTHERLANGUAGES loop
...
Signed-off-by: intrigeri <intrigeri@boum.org>
2008-10-18 15:49:12 +02:00
intrigeri
d8c2800674
po plugin: documented custom PageSpec tests, reorganized doc a bit
...
Signed-off-by: intrigeri <intrigeri@boum.org>
2008-10-18 15:49:12 +02:00
intrigeri
6f858cd59f
po plugin: todo update wrt. newly translatable pages
...
Signed-off-by: intrigeri <intrigeri@boum.org>
2008-10-18 15:49:11 +02:00
intrigeri
d07c6b707d
po plugin: todo++ : security note about system()
...
Signed-off-by: intrigeri <intrigeri@boum.org>
2008-10-18 15:49:11 +02:00
intrigeri
27bfe18f51
po plugin: updated todo wrt. automatic POT/PO update/creation
...
Signed-off-by: intrigeri <intrigeri@boum.org>
2008-10-18 15:49:11 +02:00
intrigeri
d4f787ef52
po plugin: make any slave page dependent on the corresponding master page
...
Signed-off-by: intrigeri <intrigeri@boum.org>
2008-10-18 15:49:11 +02:00
intrigeri
9332457e6c
po plugin: todo++: create POT/PO when the plugin is enabled
...
Signed-off-by: intrigeri <intrigeri@boum.org>
2008-10-18 15:49:11 +02:00
intrigeri
37222492a5
po plugin: updated doc to reflect current status of automatic PO files update
...
Signed-off-by: intrigeri <intrigeri@boum.org>
2008-10-18 15:49:11 +02:00
intrigeri
a28559798a
po plugin: created OTHERLANGUAGES template loop
...
It currently only provides basic translations/master pages links.
Updated documentation accordingly.
Signed-off-by: intrigeri <intrigeri@boum.org>
2008-10-18 15:49:10 +02:00
intrigeri
32cc0b336a
po plugin: po_slave_languages is a hash, rather than a hash of hashes
...
The latter seems to be unsupported by ikiwiki config system.
Signed-off-by: intrigeri <intrigeri@boum.org>
2008-10-18 15:49:10 +02:00
intrigeri
d39f69da7f
po plugin: fix formatting in documentation
...
Signed-off-by: intrigeri <intrigeri@boum.org>
2008-10-18 15:49:10 +02:00
intrigeri
ae827a43f8
po plugin: build %translations at scan time
...
... so that we can consider it as complete at preprocess time
Signed-off-by: intrigeri <intrigeri@boum.org>
2008-10-18 15:49:10 +02:00
intrigeri
458ccebdd3
po plugin: added *.pot to wiki_file_prune_regexps
...
Signed-off-by: intrigeri <intrigeri@boum.org>
2008-10-18 15:49:10 +02:00
intrigeri
e163b037bf
po plugin: move translatable pages to setup file, refactor
...
Replaced [[!translatable]] directive with po_translatable_pages setting.
Moved istranslatable/istranslation code to helper functions leaving place for
future caching and/or memoization. The PageSpec functions still work.
Signed-off-by: intrigeri <intrigeri@boum.org>
2008-10-18 15:49:10 +02:00
intrigeri
886f35153b
po plugin: added note about not publishing .pot files
...
Signed-off-by: intrigeri <intrigeri@boum.org>
2008-10-18 15:49:09 +02:00
intrigeri
b852b0655c
po plugin: added todo note about optimization
...
Signed-off-by: intrigeri <intrigeri@boum.org>
2008-10-18 15:49:09 +02:00
intrigeri
23dccccdf2
po plugin: update doc (move finished item from todo)
...
Signed-off-by: intrigeri <intrigeri@boum.org>
2008-10-18 15:49:09 +02:00
intrigeri
79d6f52d30
po plugin: implemented po_link_to=current
...
Signed-off-by: intrigeri <intrigeri@boum.org>
2008-10-18 15:49:09 +02:00
intrigeri
fdc7974b2a
po plugin: implemented po_link_to=negotiated
...
Signed-off-by: intrigeri <intrigeri@boum.org>
2008-10-18 15:49:09 +02:00
intrigeri
9c25f5cfe9
po plugin: rewrite internal linking specification
...
(not implemented yet)
Signed-off-by: intrigeri <intrigeri@boum.org>
2008-10-18 15:49:09 +02:00
intrigeri
cc4736d9ee
po plugin: clearer file naming specs
...
i.e. clarify that master pages do not have to obey a special naming convention,
so that migration from/to this plugin is smooth
Signed-off-by: intrigeri <intrigeri@boum.org>
2008-10-18 15:49:08 +02:00
intrigeri
24726f2836
po plugin: add one more pagespec function to the specification
...
(not implemented yet)
Signed-off-by: intrigeri <intrigeri@boum.org>
2008-10-18 15:49:08 +02:00
intrigeri
a926f9840e
po plugin: linking behavior specification
...
(no implementation yet)
Signed-off-by: intrigeri <intrigeri@boum.org>
2008-10-18 15:49:08 +02:00
intrigeri
bd50ba3e83
po plugin: switch to page.LL.html naming convention
...
Signed-off-by: intrigeri <intrigeri@boum.org>
2008-10-18 15:49:08 +02:00
intrigeri
968106cc80
po plugin: enhance documentation
...
Signed-off-by: intrigeri <intrigeri@boum.org>
2008-10-18 15:49:07 +02:00
intrigeri
45d08022bb
po plugin: name rendered master pages like slave ones (page.html.LL)
...
Apache's content negotiation transparently redirects any old URL (page.html) to
the new one, depending on the client preferred language (i.e. a German browser
will be fed with page.html.de). Transition to this naming convention is then
really smooth.
This naming convention allows one to deliberately display the master page, even
if her browser is configured for another language.
Signed-off-by: intrigeri <intrigeri@boum.org>
2008-10-18 15:49:07 +02:00
intrigeri
fae57e807a
po plugin: initial documentation, along with huge TODO list
...
Signed-off-by: intrigeri <intrigeri@boum.org>
2008-10-18 15:49:07 +02:00