summaryrefslogtreecommitdiff
path: root/doc/todo/need_global_renamepage_hook.mdwn
diff options
context:
space:
mode:
Diffstat (limited to 'doc/todo/need_global_renamepage_hook.mdwn')
-rw-r--r--doc/todo/need_global_renamepage_hook.mdwn25
1 files changed, 25 insertions, 0 deletions
diff --git a/doc/todo/need_global_renamepage_hook.mdwn b/doc/todo/need_global_renamepage_hook.mdwn
index f4e18baa2..62e91eee4 100644
--- a/doc/todo/need_global_renamepage_hook.mdwn
+++ b/doc/todo/need_global_renamepage_hook.mdwn
@@ -55,3 +55,28 @@ would solve my problem. Hmmm? --[[intrigeri]]
>> In my `po` branch, I renamed `renamepage` to `renamelink`, and
>> created a `rename` hook that is passed a reference to `@torename`.
>> --[[intrigeri]]
+
+>>> As Joey highlights it on [[plugins/contrib/po]], it's too late to
+>>> merge such a change, as the 3.x plugin API is released and should
+>>> not be broken. I will thus keep the existing `renamepage` as it
+>>> is, and call `rename` the global hook I need. --[[intrigeri]]
+
+>>>> Done in my `po` branch. --[[intrigeri]]
+
+I think I see a problem in the rename hook. The hook is called
+before the plugin adds any subpages to the set of pages to rename.
+So, if the user choses to rename subpages, po will not notice
+they are moving, and will not move their po files.
+
+Perhaps the hooks should be moved to come after subpages are added.
+This would, though, mean that if the hook somehow decides to add
+entirely other pages to the list, their subpages would not be
+automatically added.
+
+I also have some qualms about the design of the hook. In particular,
+passing the mutable array reference probably makes it impossible
+to use from external plugins. Instead it could return any additional
+rename hashes it wants to add. Or, if the ability to modify existing
+hashes is desired, it could return the full set of hashes.
+
+--[[Joey]]