[IPython-dev] Thoughts on the notebook format for version control

MinRK benjaminrk at gmail.com
Sat Nov 5 23:08:56 EDT 2011


On Sat, Nov 5, 2011 at 19:58, Fernando Perez <fperez.net at gmail.com> wrote:

> 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
> > painful.
>
> Yes, that sounds like a good balance between everyday usability and
> being VC-friendly.
>
> > 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).
>

Yes, and if I recall, for now you can just hit 'ClearAll outputs' prior to
save/commit, to remove output from VCS.


>
> Thanks for the feedback!
>
> Cheers,
>
> f
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/ipython-dev/attachments/20111105/4877f2f6/attachment.html>


More information about the IPython-dev mailing list