Re: [sage-devel] Re: Jupyter notebook by default?
Jason Grout <[email protected]>
| Newsgroups | gmane.comp.python.ipython.devel,gmane.comp.mathematics.sage.devel |
|---|---|
| Message-ID | <CAPDWZHx_WY9jpk4AvhDw_fKv7Q-7+A8iS2QfENWbK-zmj9dXAA@mail.gmail.com> |
(cross-posting to ipython-dev) Jon, At the recent San Francisco meetings, we talked about this. What do you think about: 1. keeping track of the size of the io messages sent from any specific kernel execution 2. When the total size of io reaches some specific size (user-configurable), transmitting a special "throwing away output, but here's how to save the output to a file if you want in the future, or how to increase the limit" message 3. keep a running buffer of the last bit of output attempted to be sent, and send it when the execution finishes (so basically a ring buffer that overwrites the oldest message) This: * allows small output through * provides an explanatory message * provides the last bit of output as well One thing to figure out: a limit on size of output that is text may not be appropriate for output that is images, etc. Thanks, Jason On Tue, Jan 5, 2016 at 12:11 PM, Jason Grout <[email protected]> wrote: > > ---------- Forwarded message ---------- > From: Jonathan Frederic <[email protected]> > Date: Tue, Jan 5, 2016 at 11:42 AM > Subject: Re: [sage-devel] Re: Jupyter notebook by default? > To: Jason Grout <[email protected]> > Cc: sage-devel <[email protected]> > > > Jason, > > Thanks for pulling me in on this. > > William, > > I agree, getting a bunch of people to agree on stuff can seem impossible. > However, you mention Sage offers a couple options to mitigate output > overflows, can you point me to those options? The Jupyter Notebook should > provide multiple options too - this will also make it easier for everyone > to agree. > > Also, in you experience, which of these options work the best? > > I was thinking initially of doing something simple, like hard limiting > data/time, then printing an error if that's exceeded. In the Jupyter > Notebook, we have to worry about > - Too many messages sent on the websocket > - The notebook json file growing too large and consequently becoming > unopenable > - Too much data being appended to the DOM, crashing the browser > > > Thanks! > -Jon > > On Tue, Jan 5, 2016 at 10:19 AM, Jason Grout <[email protected]> > wrote: > >> >> >> On Tuesday, January 5, 2016 at 8:17:45 AM UTC-7, William wrote: >>> >>> >>> One example of a subtle feature in Sage (notebook and worksheets) not >>> in Jupyter, which I was just reminded of, is output limiting. In Sage >>> there are numerous rules/options to deal with people doing stuff like: >>> >>> while True: >>> print "hi!" >>> >>> ... which is exactly what students will tend to do by accident... >>> Jupyter doesn't deal with this, but it might not be too hard to >>> implement in theory. One of the main problems is figuring out what >>> the arbitrary rate limiting defaults "should" be; it's arbitrary, and >>> depends a lot on whether everything is local, over the web, etc. so >>> getting a bunch of people to agree is hard, which might mean they will >>> never implement anything. >>> >> >> >> William, >> >> Jon Frederic in the Jupyter dev meeting happening right now said that he >> will be working on output limiting as one of his next things. >> >> Jason >> > > > _______________________________________________ IPython-dev mailing list [email protected] https://mail.scipy.org/mailman/listinfo/ipython-dev