Re: [jupyter] Fork or Revert Kernel?

2017-11-02 Thread Brian Granger
Cool, thanks for posting Robert!

On Thu, Nov 2, 2017 at 6:10 PM, Robert Schroll
 wrote:
> This is tangentially related at best, but several years ago, I worked on a
> project called Reinteract [1] that tried to do something similar.  Working
> at the AST level, we were able to identify 99% of the mutations that would
> occur, allowing Reinteract to save and rewind to checkpoints.
> Unfortunately, that last 1% proved to be essentially impossible to detect
> with this approach.
>
> I'm happy to discuss this further if there's interest, but I'll hold off on
> further thread hijacking for now.
>
> Robert
>
> [1] http://www.reinteract.org/
>
>
> On Nov 2 2017, at 4:16 pm, Brian Granger  wrote:
>>
>> JupyterLab has a "Code Console" that is similar to this Scratchpad,
>> but allows more flexibility in terms of which kernel is used.
>>
>> As far as 1) and 2) are concerned, I don't know of any general way of
>> forking, rewinding a full runtime without full blown process level
>> checkpointing. I am guessing that would take you down a rabbit hole.
>> You could begin to explore some of the immutable namespace ideas from
>> my talk at UCSD though. But keep in mind, there a ton of subtleties in
>> getting that to work robustly (have to serialize state to disk to
>> avoid growing memory, not all objects are easy to serialize).
>>
>>
>>
>> On Thu, Nov 2, 2017 at 3:51 PM, Adam Rule  wrote:
>>
>> I am modifying Min's Scratchpad extension and am wondering if there is a
>> way
>> to make it so code executed in the scratchpad does not impact the main
>> notebook. As it is, if I mess with parameters in the scratchpad, it will
>> change those parameters in the notebook as both share the same kernel.
>> Would
>> it be possible to either:
>>
>> Fork the kernel to start a new one for risk-free experimenting (this seems
>> to break the one kernel per notebook paradigm)
>> Revert the kernel to a prior state when the scratchpad is closed?
>>
>> I'll look through the kernel management source code in the meantime.
>>
>> --
>> 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 jupyter+unsubscr...@googlegroups.com.
>> To post to this group, send email to jupyter@googlegroups.com.
>> To view this discussion on the web visit
>>
>> https://groups.google.com/d/msgid/jupyter/7bc20957-5fc2-4442-97f2-aee3200d1660%40googlegroups.com.
>> For more options, visit https://groups.google.com/d/optout.
>>
>>
>>
>>
>> -- br />Brian E. Granger
>> Associate Professor of Physics and Data Science
>> Cal Poly State University, San Luis Obispo
>> @ellisonbg on Twitter and GitHub
>> bgran...@calpoly.edu and elliso...@gmail.com
>>
>> -- br />You received this message because you are subscribed too the
>> Google Groups "Project Jupyter" group.
>> To unsubscribe from this group and stop receiving emails from it, send an
>> email to jupyter+unsubscr...@googlegroups.com.
>> To post to this group, send email to jupyter@googlegroups.com.
>> To view this discussion on the web visit
>> https://groups.google.com/d/msgid/jupyter/CAH4pYpTAJuVamp4zaU2rcYDDZiZ-NVGMZLLZu2pCRFBPCsJwUQ%40mail.gmail.com.
>> 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 jupyter+unsubscr...@googlegroups.com.
> To post to this group, send email to jupyter@googlegroups.com.
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/jupyter/local-bc6edb9e-9f58%40mando.
>
> For more options, visit https://groups.google.com/d/optout.



-- 
Brian E. Granger
Associate Professor of Physics and Data Science
Cal Poly State University, San Luis Obispo
@ellisonbg on Twitter and GitHub
bgran...@calpoly.edu and elliso...@gmail.com

-- 
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 jupyter+unsubscr...@googlegroups.com.
To post to this group, send email to jupyter@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/jupyter/CAH4pYpQfUmiUjCrcsJn-F2MgvZj7rFfmy1fKo9mk_wNdYMpOKQ%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.


Re: [jupyter] Fork or Revert Kernel?

2017-11-02 Thread Robert Schroll
This is tangentially related at best, but several years ago, I worked on a 
project called Reinteract [1] that tried to do something similar. Working at 
the AST level, we were able to identify 99% of the mutations that would occur, 
allowing Reinteract to save and rewind to checkpoints. Unfortunately, that last 
1% proved to be essentially impossible to detect with this approach.

I'm happy to discuss this further if there's interest, but I'll hold off on 
further thread hijacking for now.

Robert

[1] http://www.reinteract.org/

On Nov 2 2017, at 4:16 pm, Brian Granger  wrote:
> JupyterLab has a "Code Console" that is similar to this Scratchpad,
> but allows more flexibility in terms of which kernel is used.
>
> As far as 1) and 2) are concerned, I don't know of any general way of
> forking, rewinding a full runtime without full blown process level
> checkpointing. I am guessing that would take you down a rabbit hole.
> You could begin to explore some of the immutable namespace ideas from
> my talk at UCSD though. But keep in mind, there a ton of subtleties in
> getting that to work robustly (have to serialize state to disk to
> avoid growing memory, not all objects are easy to serialize).
>
>
>
> On Thu, Nov 2, 2017 at 3:51 PM, Adam Rule  wrote:
> > I am modifying Min's Scratchpad extension and am wondering if there is a way
> > to make it so code executed in the scratchpad does not impact the main
> > notebook. As it is, if I mess with parameters in the scratchpad, it will
> > change those parameters in the notebook as both share the same kernel. Would
> > it be possible to either:
> >
> > Fork the kernel to start a new one for risk-free experimenting (this seems
> > to break the one kernel per notebook paradigm)
> > Revert the kernel to a prior state when the scratchpad is closed?
> >
> > I'll look through the kernel management source code in the meantime.
> >
> > --
> > 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 jupyter+unsubscr...@googlegroups.com.
> > To post to this group, send email to jupyter@googlegroups.com.
> > To view this discussion on the web visit
> > https://groups.google.com/d/msgid/jupyter/7bc20957-5fc2-4442-97f2-aee3200d1660%40googlegroups.com.
> > For more options, visit https://groups.google.com/d/optout.
>
>
>
> --
> Brian E. Granger
> Associate Professor of Physics and Data Science
> Cal Poly State University, San Luis Obispo
> @ellisonbg on Twitter and GitHub
> bgran...@calpoly.edu and elliso...@gmail.com
>
> --
> 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 jupyter+unsubscr...@googlegroups.com.
> To post to this group, send email to jupyter@googlegroups.com.
> To view this discussion on the web visit 
> https://groups.google.com/d/msgid/jupyter/CAH4pYpTAJuVamp4zaU2rcYDDZiZ-NVGMZLLZu2pCRFBPCsJwUQ%40mail.gmail.com.
> 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 jupyter+unsubscr...@googlegroups.com.
To post to this group, send email to jupyter@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/jupyter/local-bc6edb9e-9f58%40mando.
For more options, visit https://groups.google.com/d/optout.


Re: [jupyter] Repo for exploring a debugger protocol + UI for Jupyter

2017-11-02 Thread Jason Grout
Awesome!

It looks like that repo is a private repo.

Thanks,

Jason


On Thu, Nov 2, 2017 at 4:33 PM Brian Granger  wrote:

> Hi all,
>
> Wanted to let the community know that we have created a repo for
> exploring an interactive debugger protocol and UI for Jupyter:
>
> https://github.com/jupyter/debugger
>
> We will be using this repo for discussions, research and prototypes of
> the different pieces. If you are interested in debuggers for Jupyter,
> we encourage you to join in!
>
> Cheers,
>
> Brian
>
> --
> Brian E. Granger
> Associate Professor of Physics and Data Science
> Cal Poly State University, San Luis Obispo
> @ellisonbg on Twitter and GitHub
> bgran...@calpoly.edu and elliso...@gmail.com
>
> --
> 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 jupyter+unsubscr...@googlegroups.com.
> To post to this group, send email to jupyter@googlegroups.com.
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/jupyter/CAH4pYpSe8q%2BcCrCTGtX3LGuPekuc3oH3q9aYeEnEy%2BSz%3Drwz-A%40mail.gmail.com
> .
> 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 jupyter+unsubscr...@googlegroups.com.
To post to this group, send email to jupyter@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/jupyter/CAPDWZHx%3Dg7-nurAF%2B2K-DKew0nQWoT7c41Nb5%3DoN%2BUbhGtnkpQ%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.


Re: [jupyter] Repo for exploring a debugger protocol + UI for Jupyter

2017-11-02 Thread Doug Blank
Is it private? I couldn't access it. (I have built a debugger for Calysto
Scheme [1], and would love to re-build on a solid foundation.)

-Doug

[1] - https://www.youtube.com/watch?v=2w-iO701g_w

On Thu, Nov 2, 2017 at 7:33 PM, Brian Granger  wrote:

> Hi all,
>
> Wanted to let the community know that we have created a repo for
> exploring an interactive debugger protocol and UI for Jupyter:
>
> https://github.com/jupyter/debugger
>
> We will be using this repo for discussions, research and prototypes of
> the different pieces. If you are interested in debuggers for Jupyter,
> we encourage you to join in!
>
> Cheers,
>
> Brian
>
> --
> Brian E. Granger
> Associate Professor of Physics and Data Science
> Cal Poly State University, San Luis Obispo
> @ellisonbg on Twitter and GitHub
> bgran...@calpoly.edu and elliso...@gmail.com
>
> --
> 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 jupyter+unsubscr...@googlegroups.com.
> To post to this group, send email to jupyter@googlegroups.com.
> To view this discussion on the web visit https://groups.google.com/d/
> msgid/jupyter/CAH4pYpSe8q%2BcCrCTGtX3LGuPekuc3oH3q9aYeEn
> Ey%2BSz%3Drwz-A%40mail.gmail.com.
> 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 jupyter+unsubscr...@googlegroups.com.
To post to this group, send email to jupyter@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/jupyter/CAAusYCjBL-i83L3SxJUtsen8oxsHCw%3DuCSq1bRAabDb0SKVZ-Q%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.


[jupyter] Repo for exploring a debugger protocol + UI for Jupyter

2017-11-02 Thread Brian Granger
Hi all,

Wanted to let the community know that we have created a repo for
exploring an interactive debugger protocol and UI for Jupyter:

https://github.com/jupyter/debugger

We will be using this repo for discussions, research and prototypes of
the different pieces. If you are interested in debuggers for Jupyter,
we encourage you to join in!

Cheers,

Brian

-- 
Brian E. Granger
Associate Professor of Physics and Data Science
Cal Poly State University, San Luis Obispo
@ellisonbg on Twitter and GitHub
bgran...@calpoly.edu and elliso...@gmail.com

-- 
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 jupyter+unsubscr...@googlegroups.com.
To post to this group, send email to jupyter@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/jupyter/CAH4pYpSe8q%2BcCrCTGtX3LGuPekuc3oH3q9aYeEnEy%2BSz%3Drwz-A%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.


Re: [jupyter] Fork or Revert Kernel?

2017-11-02 Thread Brian Granger
JupyterLab has a "Code Console" that is similar to this Scratchpad,
but allows more flexibility in terms of which kernel is used.

As far as 1) and 2) are concerned, I don't know of any general way of
forking, rewinding a full runtime without full blown process level
checkpointing. I am guessing that would take you down a rabbit hole.
You could begin to explore some of the immutable namespace ideas from
my talk at UCSD though. But keep in mind, there a ton of subtleties in
getting that to work robustly (have to serialize state to disk to
avoid growing memory, not all objects are easy to serialize).



On Thu, Nov 2, 2017 at 3:51 PM, Adam Rule  wrote:
> I am modifying Min's Scratchpad extension and am wondering if there is a way
> to make it so code executed in the scratchpad does not impact the main
> notebook. As it is, if I mess with parameters in the scratchpad, it will
> change those parameters in the notebook as both share the same kernel. Would
> it be possible to either:
>
> Fork the kernel to start a new one for risk-free experimenting (this seems
> to break the one kernel per notebook paradigm)
> Revert the kernel to a prior state when the scratchpad is closed?
>
> I'll look through the kernel management source code in the meantime.
>
> --
> 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 jupyter+unsubscr...@googlegroups.com.
> To post to this group, send email to jupyter@googlegroups.com.
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/jupyter/7bc20957-5fc2-4442-97f2-aee3200d1660%40googlegroups.com.
> For more options, visit https://groups.google.com/d/optout.



-- 
Brian E. Granger
Associate Professor of Physics and Data Science
Cal Poly State University, San Luis Obispo
@ellisonbg on Twitter and GitHub
bgran...@calpoly.edu and elliso...@gmail.com

-- 
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 jupyter+unsubscr...@googlegroups.com.
To post to this group, send email to jupyter@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/jupyter/CAH4pYpTAJuVamp4zaU2rcYDDZiZ-NVGMZLLZu2pCRFBPCsJwUQ%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.


[jupyter] Fork or Revert Kernel?

2017-11-02 Thread Adam Rule
I am modifying  Min's Scratchpad 
 extension and am 
wondering if there is a way to make it so code executed in the scratchpad 
does not impact the main notebook. As it is, if I mess with parameters in 
the scratchpad, it will change those parameters in the notebook as both 
share the same kernel. Would it be possible to either:

   1. Fork the kernel to start a new one for risk-free experimenting (this 
   seems to break the one kernel per notebook paradigm)
   2. Revert the kernel to a prior state when the scratchpad is closed?

I'll look through the kernel management source code in the meantime.

-- 
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 jupyter+unsubscr...@googlegroups.com.
To post to this group, send email to jupyter@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/jupyter/7bc20957-5fc2-4442-97f2-aee3200d1660%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


[jupyter] Re: Where to put shared settings for jupyterlab extensions on hub

2017-11-02 Thread Steven Silvester
Hi Charles,

Yes, the approach you describe sounds correct for now.  We had been 
avoiding the auto-merge behavior that the classic notebook uses because the 
merge order is difficult to get right for every situation.  However, it 
sounds like we should at least allow you to provide a specific defaults 
folder.  I opened https://github.com/jupyterlab/jupyterlab/issues/3179.


Regards,

Steve

On Wednesday, November 1, 2017 at 8:29:10 AM UTC-5, Charles Forelle wrote:
>
> Hello,
>
> I have the following setup:
> -JupyterHub using the default local spawner
> -c.Spawner.cmd = ['jupyter', 'labhub'] to run JupyterLab when single-user 
> servers are spawned (labhub extension installed).
>
> What's the best way to get common jupyterlab extension settings loaded for 
> each of the users' servers? (One use case: all users need to have the same 
> clientId setting configured for the google-drive extension.)
>
> Should I be using c.Spawner.pre_spawn_hook to run a shell script that 
> writes the settings json to /home/{USERNAME}/.jupyter/lab/user-settings? Or 
> is there another option? (I may be fundamentally misunderstanding how these 
> settings work!)
>
> JupyterLab 0.28.11
> JupyterHub 0.8
>
> Thanks! I'm grateful for any guidance.
> -Charles
>

-- 
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 jupyter+unsubscr...@googlegroups.com.
To post to this group, send email to jupyter@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/jupyter/0f0b94e2-3933-4c25-954e-7a2578aea474%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.