[IPython-dev] Thoughts on the notebook format for version control
fperez.net at gmail.com
Sat Nov 5 22:58:47 EDT 2011
On Sat, Nov 5, 2011 at 7:41 PM, MinRK <benjaminrk at gmail.com> wrote:
> On Sat, Nov 5, 2011 at 18:58, Fernando Perez <fperez.net at gmail.com> wrote:
> There is a *huge* disadvantage in portability to notebooks not being single
> files. I think this still makes
> sense, though. I would treat the output as a 'cache' (along the lines of
> .pyc / __cache__),
> rather than considering the notebook itself as a multi-file format. And you
> should be able
> to embed the outputs in a single file if you want, for easier portability.
> Doing it this way would not require changing the notebook format, because
> current (output-included)
> notebooks would still comply with the spec.
I agree that it's a big inconvenience for everyday, non-VC use. I
like the idea of making it optional, it can be a flag set in the
metadata dict, that indicates whether to keep outputs in the cache or
internally (and also to offer the single-file download option).
> I think this sounds like a good start, with the only change that we still
> allow (optionally) outputs in a single file via the download button, rather
> than the notebook format being canonically multifile, which is just too
Yes, that sounds like a good balance between everyday usability and
> I think the key-order issue you mention in the addendum is easily fixed by
> specifying `sort_keys=True` in the json dump.
That's great to hear, I thought we'd have to do the sorting manually.
That's a change we should make right away then, since it doesn't
change the format. People can manually remove outputs from their
notebooks and this will help if they use VC a little bit (even if the
singe-line cells issue isn't fixed yet).
Thanks for the feedback!
More information about the IPython-dev