From c11ed256ca011e3baa5a795fdb75af1ce03a2a92 2014-06-10 00:54:00 From: Thomas Kluyver Date: 2014-06-10 00:54:00 Subject: [PATCH] Pass history request keys as **kwargs --- diff --git a/IPython/kernel/zmq/kernelbase.py b/IPython/kernel/zmq/kernelbase.py index 80e5a3e..b7ef71f 100755 --- a/IPython/kernel/zmq/kernelbase.py +++ b/IPython/kernel/zmq/kernelbase.py @@ -416,19 +416,9 @@ class KernelBase(Configurable): return {'status': 'ok', 'data':{}, 'metadata':{}, 'found':False} def history_request(self, stream, ident, parent): - # We need to pull these out, as passing **kwargs doesn't work with - # unicode keys before Python 2.6.5. content = parent['content'] - reply_content = self.do_history(content['hist_access_type'], - content['output'], content['raw'], - content.get('session', None), - content.get('start', None), - content.get('stop', None), - content.get('n', None), - content.get('pattern', None), - content.get('unique', False), - ) + reply_content = self.do_history(**content) reply_content = json_clean(reply_content) msg = self.session.send(stream, 'history_reply', diff --git a/docs/source/development/wrapperkernels.rst b/docs/source/development/wrapperkernels.rst index 3c0cf0c..bf18776 100644 --- a/docs/source/development/wrapperkernels.rst +++ b/docs/source/development/wrapperkernels.rst @@ -128,7 +128,9 @@ relevant section of the :doc:`messaging spec `. .. method:: do_history(hist_access_type, output, raw, session=None, start=None, stop=None, n=None, pattern=None, unique=False) - History access + History access. Only the relevant parameters for the type of history + request concerned will be passed, so your method definition must have defaults + for all the arguments shown with defaults here. .. seealso::