[IPython-dev] How to get the notebook name/path in the kernel?

Thomas Kluyver takowl at gmail.com
Thu Feb 27 14:52:23 EST 2014


On 27 February 2014 08:56, Konrad Hinsen <konrad.hinsen at fastmail.net> wrote:

> Provenance tracking in ActivePapers is part of code execution. Every
> time a codelet (the equivalent of a script in an ActivePaper) creates
> a dataset, directly or through a call to library code, the
> ActivePapers infrastructure notes the name of the codelet as a
> dependency. Notebooks are just codelets with a user interface,
> so the same rules apply.
>
> There is no way to figure out which datasets a notebook creates just
> by scanning its code, because the datasnotes downet could well be created
> in a
> library function. The notebook manager has nothing but the static
> code, so it can't handle provenance tracking.
>

I think I see - you're tracking both code and datasets. Only the kernel
knows about the provenance and use of data, while only the notebook server
knows about the provenance of code. Is that right?

I think I'd still be inclined to deal with provenance in the notebook
server. I think it should be possible to make the kernel record the data
used by a cell its sent to run, and then send that information to the
server in the execute_reply message, perhaps in the metadata field. It
seems like the notebook server is the part that should actually know about
the relationships between different pieces of code and between code and
data.

Thomas
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/ipython-dev/attachments/20140227/64dcfe7e/attachment.html>


More information about the IPython-dev mailing list