| Commit message (Collapse) | Author | Age |
| |
|
|
|
|
|
|
|
| |
explicitly en- and decoding xmlrpc requests in the python proxy broke
plugins on debian sid, while it was introduced to fix breakage in debian
stable. it is assumed that an xml module involved changed its behavior
from str to unicode, this patch handles both cases.
|
|
|
|
| |
somehow, in receive this is not necessary/possible because the xml library expects strings and not unicode
|
| |
|
| |
|
|
|
|
|
| |
For Python 2.6 compatibility. You're only allowed to omit the
positional argument specifiers in Python 2.7 and later.
|
|
|
|
| |
The former no longer exist in Python 3.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This avoids:
Traceback (most recent call last):
File "./plugins/rst", line 86, in <module>
proxy.run()
File "/home/wking/src/ikiwiki/plugins/proxy.py", line 316, in run
e, traceback.format_exc(sys.exc_info()[2])))
File "/usr/lib/python3.2/traceback.py", line 269, in format_exc
...
TypeError: unorderable types: int() < traceback()
The syntax for format_exc in Python 2.x is:
traceback.format_exc([limit])
In Python 3.x, it is:
traceback.format_exc(limit=None, chain=True)
Neither of these need any information from sys.exc_info() passed in.
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
| |
Bug-Debian: http://bugs.debian.org/637604
Signed-off-by: Simon McVittie <smcv@debian.org>
|
|
|
|
|
|
| |
Apparently the rst library is changing to a GPL-2 incompatable license.
"madduck: joeyh: so yes, do as you think is right."
|
| |
|
| |
|
| |
|
|
|
|
| |
(cherry picked from commit 7d788655104089b5747a5ff1a4c5106eac871c14)
|
|
|
|
|
|
|
|
|
|
|
| |
Add an inject function, that can be used by plugins that want to replace
one of ikiwiki's functions with their own version. (This is a scary thing
that grubs through the symbol table, and replaces all exported occurances
of a function with the injected version.)
external: RPC functions can be injected to replace exported functions.
Removed the stupid displaytime hook, and use injection instead.
|
| |
|
|
|
|
| |
in python, even, wow
|
|
|
|
| |
Signed-off-by: martin f. krafft <madduck@madduck.net>
|
|
|
|
| |
Signed-off-by: martin f. krafft <madduck@madduck.net>
|
|
|
|
|
|
|
| |
This implements most hooks with stupid demo code, and also still has
some TODO items.
Signed-off-by: martin f. krafft <madduck@madduck.net>
|
|
|
|
|
|
|
|
| |
We previously used None as a sentinel to exit, but None is now a proper
value, so now it's the job of an exception-like object (except it isn't
an exception).
Signed-off-by: martin f. krafft <madduck@madduck.net>
|
|
|
|
|
|
|
| |
Since we might throw sub-class exceptions, the class should be in the
public namespace, meaning its name should not be prefixed with _.
Signed-off-by: martin f. krafft <madduck@madduck.net>
|
|
|
|
|
|
|
|
|
| |
The preprocessor hooks need to specify IDs different from the ID used to
initialise the proxy. Thus, the hook function now takes an optional id
keyword argument and uses the ID used during initialisation if none is
provided.
Signed-off-by: martin f. krafft <madduck@madduck.net>
|
|
|
|
|
|
|
|
|
|
|
| |
Add an rpc() method to the proxy to allow users to call remote
procedures, and route the proxy's own import registration via this
function.
Also, implement convenience functions for the RPC calls exported in the
IkiWiki::XML::RPC namespace.
Signed-off-by: martin f. krafft <madduck@madduck.net>
|
|
|
|
|
|
|
| |
Hook functions now get the proxy object as first argument to be able to
use RPC via the proxy.
Signed-off-by: martin f. krafft <madduck@madduck.net>
|
|
|
|
| |
Signed-off-by: martin f. krafft <madduck@madduck.net>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Instead of using the XML-RPC v2 extension <nil/>, which Perl's
XML::RPC::Parser does not (yet) support (Joey's patch is pending), we
agreed on a sentinel: {'null':''}, that is, a hash with a single key
"null" pointing to the empty string.
The Python proxy automatically converts None appropriately and raises an
exception if a hook function should, by weird coincidence, attempt to
return {'null':''}.
Signed-off-by: martin f. krafft <madduck@madduck.net>
|
|
|
|
| |
(cherry picked from commit bbdf127917a13b81cef50995098f479ef4fe1cf9)
|
|
|
|
| |
(cherry picked from commit 65c24d4aeca6188f4423ad1809f2415285843155)
|
|
|
|
| |
(cherry picked from commit 10574a324e03cd0533e77f46ead6e4c6a6e5568f)
|
| |
|
| |
|
|
|
|
|
| |
Signed-off-by: martin f. krafft <madduck@madduck.net>
(cherry picked from commit e924b6777ac0b6d04116f563f0fe749595e03d13)
|
|
|
|
|
| |
Signed-off-by: martin f. krafft <madduck@madduck.net>
(cherry picked from commit 63c7e393692b44bfa69d8b78a936f58beadef2b2)
|
|
|
|
|
| |
Signed-off-by: martin f. krafft <madduck@madduck.net>
(cherry picked from commit c6e7416f65285eba154a6a9b08c1401490f68bd1)
|
|
|
|
|
| |
Signed-off-by: martin f. krafft <madduck@madduck.net>
(cherry picked from commit 4b039b81deef852759f2aa88ae04f38d792b9bf8)
|
|
|
|
|
| |
Signed-off-by: martin f. krafft <madduck@madduck.net>
(cherry picked from commit 338cacc006d3b58bc827a8009e9a991b0cabf367)
|
|
|
|
|
| |
Signed-off-by: martin f. krafft <madduck@madduck.net>
(cherry picked from commit c877e9b4b93b550710cb26e2b0bafad4922ff209)
|
|
|
|
|
|
|
|
|
| |
The proxy module provides an abstraction to facilitate writing ikiwiki
plugins in Python.
Signed-off-by: martin f. krafft <madduck@madduck.net>
(cherry picked from commit f347e83d82f26cdc59de17b754a78db58a933ea6)
|
|
|
|
| |
Signed-off-by: martin f. krafft <madduck@madduck.net>
|
|
|
|
|
|
|
|
| |
SimpleXMLRPCDispatcher.__init__ takes 3 arguments instead of 1 since
python 2.5, so we check for that with a hack, for I found no better way,
other than catching a TypeError exception.
Signed-off-by: martin f. krafft <madduck@madduck.net>
|