Attaching the test notebook here.

On Thursday, November 10, 2016 at 11:57:13 AM UTC-8, Jeremy Douglass wrote:
>
> Thank you again for advice on this.
>
> I am now able to programmatically halt notebooks -- this is really helpful 
> for our multiuser workflow environment.
>
> I created a test notebook (attached).
>
> -  On "Run All" the final %%javascript cell 
> "Jupyter.notebook.session.delete();" correctly stops the notebook.
> -  The notebook interface shows "No Kernel", the Running tab no longer 
> lists the notebook.
> -  The previous cell still incorrectly shows a running status [ * ], 
> however the output has returned.
>
> Restart the notebook with:
>
> -  Menu > Kernel > Restart ... "Dead Kernel" warning > Try restarting now
> -  ...or refresh the browser tab.
>
>
> On Wednesday, November 9, 2016 at 8:26:37 AM UTC-8, Jeremy Douglass wrote:
>>
>> Thank you Peter! I will try and report back.
>>
>>
>> On Wednesday, November 9, 2016, Peter Parente <[email protected]> wrote:
>>
>>> Hi Jeremy,
>>>
>>> For a Python kernel, try this in the last cell:
>>>
>>> %%javascript
>>> Jupyter.notebook.session.delete();
>>>
>>> It's borrowed from 
>>> https://github.com/jupyter/notebook/blob/master/notebook/static/notebook/js/menubar.js#L225.
>>>  
>>> The additional close_window logic in the notebook code probably won't work 
>>> in the cell because the action is not directly triggered by a user click.
>>>
>>> Cheers,
>>> Pete
>>>
>>> On Tuesday, November 8, 2016 at 11:43:01 AM UTC-8, Jeremy Douglass wrote:
>>>>
>>>> Can a Jupyter notebook programmatically halt itself, such that it no 
>>>> longer appears in the "Running" tab?
>>>>
>>>> At the end of a notebook "Run All", I would like the last notebook cell 
>>>> to contain code, and for that code to trigger the equivalent of:
>>>>
>>>>    - the "Running tab > Shutdown notebook" action
>>>>    - ...or, failing that, the "Close and Halt" menu item
>>>>    - ...or, failing that, the "Kernel > Interrupt" menu item
>>>>    
>>>> Can this be done with javascript, or with %magic, or something else?
>>>>
>>>> I am running the Docker image Jupyer Datascience Notebook 
>>>> <https://github.com/jupyter/docker-stacks/blob/master/datascience-notebook/Dockerfile>,
>>>>  
>>>> not JupyterHub.
>>>>
>>>> I have tried to review related information, but none of these answered 
>>>> my question:
>>>>
>>>>    1. keyboard shortcuts to close and halt 
>>>>    <https://github.com/jupyter/notebook/issues/1097>
>>>>    2. handling leftover singlehubs and kernels 
>>>>    <https://groups.google.com/forum/#!msg/jupyter/sRhbV9UOwIw/Pwq23I_YAAAJ>
>>>>    3. server cleanup on browser-exit notebooks 
>>>>    <https://groups.google.com/forum/#!msg/jupyter/Qqd2MeL9R1g/jyS4mawADQAJ>
>>>>    4. the cull-idle script for JupyterHub 
>>>>    
>>>> <https://github.com/jupyterhub/jupyterhub/tree/master/examples/cull-idle>
>>>>    5. request to automatically shut down inactive notebooks 
>>>>    <https://github.com/ipython/ipython/issues/5539>
>>>>
>>>>
>>>> In certain use cases, idle notebook cruft is a huge problem. 
>>>> Information isn't exposed that makes identifying an idle notebook easier, 
>>>> and tools for culling notebooks are still wishlist items -- the consensus 
>>>> is it is hard to define idle, and hard to intervene with the browser in 
>>>> certain ways (e.g. event-on-tab-close).
>>>>
>>>> I'm trying to cut the gordian knot by having a run-all notebook 
>>>> explicitly declare the notebook is halted / interrupted / done / closed as 
>>>> its last act. This seems like it should be possible, as it is a 
>>>> consequence 
>>>> of a user action (Run).
>>>>
>>>> Is it possible? Or are there other ways of accomplishing this?
>>>>
>>>>
>>>> -- 
>>> You received this message because you are subscribed to a topic in the 
>>> Google Groups "Project Jupyter" group.
>>> To unsubscribe from this topic, visit 
>>> https://groups.google.com/d/topic/jupyter/3zAVHofQykg/unsubscribe.
>>> To unsubscribe from this group and all its topics, send an email to 
>>> [email protected].
>>> To post to this group, send email to [email protected].
>>> To view this discussion on the web visit 
>>> https://groups.google.com/d/msgid/jupyter/890e47f5-dfb3-47fb-a373-af2dcd81ef60%40googlegroups.com
>>>  
>>> <https://groups.google.com/d/msgid/jupyter/890e47f5-dfb3-47fb-a373-af2dcd81ef60%40googlegroups.com?utm_medium=email&utm_source=footer>
>>> .
>>> For more options, visit https://groups.google.com/d/optout.
>>>
>>

-- 
You received this message because you are subscribed to the Google Groups 
"Project Jupyter" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/jupyter/6ec8dba1-bf2e-4498-ba19-a23bce8ba291%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Attachment: shutdown-test.ipynb
Description: Binary data

Reply via email to