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
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.