These are chat archives for ipython/ipython

25th
Feb 2015
Sylvain Corlay
@SylvainCorlay
Feb 25 2015 00:01
@ctaf42 I looked at your screenshots and liked it very much. I think that it is worth looking into @sccolbert stuff
Cedric GESTES
@cgestes
Feb 25 2015 00:32
@sccolbert @SylvainCorlay works need to be done on the server side. do we want to share the kernel between notebooks? how do we store all the notebook on the server side? if the page is made of ten notebook should that be 10 distincts notebook?
S. Chris Colbert
@sccolbert
Feb 25 2015 01:22
@SylvainCorlay @ctaf42 any screenshots I can look at?
@ctaf42 ah, is this using dockspawn?
Cedric GESTES
@cgestes
Feb 25 2015 01:22
yep
S. Chris Colbert
@sccolbert
Feb 25 2015 01:23
ah yeah, I saw those
i built a visual-studio like dock area for Enaml, but I don't think that docking model is right for the web
in particular, i don't free floating frames within the browser window makes much sense
dont think*
Cedric GESTES
@cgestes
Feb 25 2015 01:25
Yes exactly. Web was meant to be about documents...Then it allowed to create application, that's where docking make sense. but I cant find a reason why pop-in would be needed.
and even docking is not needed in most application. If the application is made correctly then docking is not needed. But if you want to allow people to create their own GUI, or in the case of IDE like application it can still make sense.
S. Chris Colbert
@sccolbert
Feb 25 2015 01:27
yep
thats exactly how i feel about it
Cedric GESTES
@cgestes
Feb 25 2015 01:28
Right know I have an application with dockspawn (connected to an IPython kernel) that allow to move windows, we are experimenting to see what will be the best for our workflow. (manual sorting of clusters of neuron's spike)
Being able to dock notebook (or cells) in IPython, combined with the possibility to hide the input, pave the way to allow users to create application for a specific workflow, and allow them to share them.
S. Chris Colbert
@sccolbert
Feb 25 2015 01:30
A question you asked earlier is an interesting one: what's the server-side model for multiple notebooks in an application. Does each notebook get its own kernel (how I currently think about it), or do multiple notebooks share the same kernel
i would like to see the docking model live external to IPython
because there are other things in a larger application which will not be IPython, but which will also need to be docked
and mixing docking models is bad UX
ideally, IPython would expose the proper APIs to detach cells/widgets to enable them to be used with any docking system (within reason)
(ignore iframe issues for the moment)
ignoring*
Cedric GESTES
@cgestes
Feb 25 2015 01:43
But if it's a single window, should it be a single file? and if you want your notebook to communicate together they need to be connected to the same kernel. I think that's the default workflow, you want to dock one widget and keep it connected to your session and let it interact with others widgets/notebook.
Scott Sanderson
@ssanderson
Feb 25 2015 02:32
somebody used the Checkpoints API!
ipython/ipython#7862
(not sure that it belongs in the main repo rather than in a plugin, but it looks slick)
Cedric GESTES
@cgestes
Feb 25 2015 02:40
really nice :)
Jonathan Frederic
@jdfreder
Feb 25 2015 18:30
@minrk I'm working some more on the widget migration doc today, do you think I can squeeze that into our RST help for the 3.0 release?
Min RK
@minrk
Feb 25 2015 18:32
Yup, docs are wide open for 3.0
the more work done on docs and examples the better
Jonathan Frederic
@jdfreder
Feb 25 2015 18:32
And 3.0 is... this Friday?
Min RK
@minrk
Feb 25 2015 18:32
that's the plan
Jonathan Frederic
@jdfreder
Feb 25 2015 18:32
cool
Min RK
@minrk
Feb 25 2015 18:32
just not code
Jonathan Frederic
@jdfreder
Feb 25 2015 18:33
Makes sense
Min RK
@minrk
Feb 25 2015 18:33
(code meaning library code, code in example notebooks is fine to get a pass)
Peter Parente
@parente
Feb 25 2015 18:42
fun result from notebook i've been using for the past few months to track the number of notebooks (ipynb files) on github: today it crossed the 100,000 mark. http://nbviewer.ipython.org/facb555dfbae28e817e0
Jonathan Frederic
@jdfreder
Feb 25 2015 18:50
@parente very cool!
Peter Parente
@parente
Feb 25 2015 19:02
@jdfreder tnx. it's been fun to check each morning.
Jonathan Frederic
@jdfreder
Feb 25 2015 19:03
haha I bet :)
Brian E. Granger
@ellisonbg
Feb 25 2015 19:04
Cool!
What is the rate of new notebooks per month?
Min RK
@minrk
Feb 25 2015 19:05
Do you know if it counts my clone of the ipython repo as separate from the root one?
If so, then the number of clones of IPython examples or tutorial repos would significantly inflate the number of hits
Peter Parente
@parente
Feb 25 2015 19:14
@ellisonbg the avg is about 200-something per day i think. it's in there in text.
@minrk i believe it does count forks. i put that in the assumptions at the top. so don't treat the count as "unique notebooks on github." i think of it more as an indicator of rising interest.
Jonathan Frederic
@jdfreder
Feb 25 2015 19:37
There are 98 notebooks included with the IPython notebook and 1,726 forks of the IPython notebook which equals 169,148 notebooks.
Thomas Kluyver
@takluyver
Feb 25 2015 19:38
not all the forks will be up to date, though
but even so, that's probably a big chunk of the notebook count
Jonathan Frederic
@jdfreder
Feb 25 2015 19:41
Still, 200 notebooks/day = 2 forks of the IPython notebook a day.
@parente would it be hard to blacklist ipython/ipython forks?
Sylvain Corlay
@SylvainCorlay
Feb 25 2015 19:46
@jdfreder there seems to be a minor css issue with button / togglebutton, due to a rather recent change (over the last couple of month.) I did not look into it earlier as I thought it was in our css overload.
Jonathan Frederic
@jdfreder
Feb 25 2015 19:46
What's the problem?
Sylvain Corlay
@SylvainCorlay
Feb 25 2015 19:46
So first, it seems that all the basic widgets, which have the same height (Text, Slider etc) were added some padding, but not the button
I don't know why they need this padding by the way
second, the button is not 32 px high anymore. (need to check if this is the case without our custom css)
Jonathan Frederic
@jdfreder
Feb 25 2015 19:48
They need the padding to display inline correctly
It's being set by the traitlet default
you can change it in Python
Sylvain Corlay
@SylvainCorlay
Feb 25 2015 19:48
to display inline?
Peter Parente
@parente
Feb 25 2015 19:48
@jdfreder as far as i know, the github search doesn't have such an option to exclude forks
Jonathan Frederic
@jdfreder
Feb 25 2015 19:48
maybe inline was a bad adjective...
to display row by row
one after another
Sylvain Corlay
@SylvainCorlay
Feb 25 2015 19:49
in columns?
in a column?
Jonathan Frederic
@jdfreder
Feb 25 2015 19:49
row by row
one column yes
Sylvain Corlay
@SylvainCorlay
Feb 25 2015 19:49
ok, I was fine with the non-padded version, which can be overloaded anyway. But if you want to add the padding, button and toggle button should have it as well
right?
Jonathan Frederic
@jdfreder
Feb 25 2015 19:49
Remember I used to set the padding in the CSS but you and @jasongrout wanted didn't like that prepackaged padding.
So I moved it into the new traitlets.
Yes, I think the button and toggle button should have it
Have you tried rendering them in a single column (row by row) ?
Sylvain Corlay
@SylvainCorlay
Feb 25 2015 19:51
all the time.
Jonathan Frederic
@jdfreder
Feb 25 2015 19:51
That's what I use when I'm trying to calibrate the alignment.
Sylvain Corlay
@SylvainCorlay
Feb 25 2015 19:51
ok, I see your padding = CUnicode("2.5px", sync=True)
Jonathan Frederic
@jdfreder
Feb 25 2015 19:51
Yup
Sylvain Corlay
@SylvainCorlay
Feb 25 2015 19:52
so what we do in general in our widget library for styling attributes, is that they allow None, default to None, and when equal to None, default to the css styling
Jason Grout
@jasongrout
Feb 25 2015 19:53
@jdfreder - we didn't like padding on the boxes.
then it just adds up when you nest boxes.
Sylvain Corlay
@SylvainCorlay
Feb 25 2015 19:54
In any case, what happens at the moment, which can be considered a bug, is that the padding does not affect the Button, which is misaligned with respect to the other widgets.
Jonathan Frederic
@jdfreder
Feb 25 2015 19:59
@SylvainCorlay I can open a PR in a few minutes here, but I don't think it will be merged till 3.1 .
Sylvain Corlay
@SylvainCorlay
Feb 25 2015 20:00
We could have a super minimal fix for 3.0?
Jonathan Frederic
@jdfreder
Feb 25 2015 20:00
@takluyver I've converted my widget migration doc to RST and want to put it somewhere in our release docs. Looking at http://ipython.org/ipython-doc/dev/index.html - what's new seems like the right place. Is that file automatically generated though?
@SylvainCorlay I don't object, but I think @minrk has called a code freeze.
@takluyver maybe I should put it below the what's new link ... Like "Upgrading" -> "Widgets"?
Sylvain Corlay
@SylvainCorlay
Feb 25 2015 20:02
is css code ? ;)
Min RK
@minrk
Feb 25 2015 20:02
@jdfreder it's docs/source/index.rst
Jonathan Frederic
@jdfreder
Feb 25 2015 20:03
@minrk I was talking about docs/source/whatsnew/index.rst , may I modify that? Or does the build generate that?
Min RK
@minrk
Feb 25 2015 20:04
It should probably be in the 3.0 what's new, not top-level, right?
none of the .rst files are autogenerated outside /api/generated/
Jonathan Frederic
@jdfreder
Feb 25 2015 20:06
Well, it looks like more of a narrative than a bulleted list of changes.
Like a step 1, 2 ,3 kind of thing.
Min RK
@minrk
Feb 25 2015 20:11
but it's not generic to all versions of IPython, it's specific to 3.0
presumably you weren't planning to put the whole thing in the index, just a link, right?
Peter Parente
@parente
Feb 25 2015 20:13
so, on further investigation, i don't think the 100k count includes forks. i ran a search for extension:ipynb nbformat_minor Monitoring MPI which should turn up one of the samples and only got back 96 hits, not 1700+ like i would expect if github was counting forks in the results. plus, every exact dupe (5 maybe?) is in a repo that is not listed as a github fork of ipython.
some people just took the Monitoring an MPI Simulation - 1.ipynb and threw it in their own repos
Min RK
@minrk
Feb 25 2015 20:14
nice, thanks for looking into that.
Peter Parente
@parente
Feb 25 2015 20:14
so, cautious congrats? :)
Matthias Bussonnier
@Carreau
Feb 25 2015 20:15
@takluyver, question old-style class and py3k
we still have some old class style in IPython, is it worth adding (object) to make them new style ? What effect woudl it have ?
@parente damned this is not an exponentail growth, we shoudl do better :-)
Peter Parente
@parente
Feb 25 2015 20:21
can ask github to include the forks so the graph can lie but look more awesome :)
Matthias Bussonnier
@Carreau
Feb 25 2015 20:22
:-P
I think they have reasons not to index forks.
Peter Parente
@parente
Feb 25 2015 20:22
absolutely. i wouldn't want to see the bazillion clones of nodejs or linux kernel or ... in my results
Thomas Kluyver
@takluyver
Feb 25 2015 20:23
@Carreau that's actually more of a py2k question ;-)
In Python 3, it will have no effect at all, because there are only new style classes and (object) is entirely redundant. In Python 2, it will mostly have no effect, but it could cause unpredictable changes. My preference is therefore to leave them as they are, unless we're working on that code and need to make them new-style for some reason.
Sylvain Corlay
@SylvainCorlay
Feb 25 2015 20:23
@jdfreder ipython/ipython#7868
Matthias Bussonnier
@Carreau
Feb 25 2015 20:24
We could ask them the total number of notebook on github fork included, with more stats. And we also have Google Ananlytics WE could probably make (some) data of nbviewer public.
Sylvain Corlay
@SylvainCorlay
Feb 25 2015 20:24
I think this should be in 3.0. Most of the flexbox-based layouts look unaligned otherwise
Peter Parente
@parente
Feb 25 2015 20:25
yea, would be cool to see some of the stats on nbviewer
Matthias Bussonnier
@Carreau
Feb 25 2015 20:26
@takluyver Ok, just wanted to be sure.
on my way.
Sylvain Corlay
@SylvainCorlay
Feb 25 2015 20:42
@minrk could #7868 get into 3.0? It is removing a recent addition that is breaking a lot of layouts
Michael Borysow
@mborysow
Feb 25 2015 20:47
Anyone using the codemirror vim keybindings in 3.0? Can't seem to get it to work anymore, had no problems in 2.x.
Min RK
@minrk
Feb 25 2015 21:16
@SylvainCorlay I think that's fine. I'd like to see what the original change was meant to fixed before merging, though.
Jason Grout
@jasongrout
Feb 25 2015 21:34
It was this commit: ipython/ipython@e01e130
this issue: ipython/ipython#7139
Min RK
@minrk
Feb 25 2015 21:35
ok, I'll wait for @jdfreder to comment on it, but I think it should be fine.
Jonathan Frederic
@jdfreder
Feb 25 2015 22:03
Sorry, got caught up talking to a couple of people
Sylvain Corlay
@SylvainCorlay
Feb 25 2015 23:25
@takluyver #7868 does not break anything IMO
BTW, we don't use IPython's flexbox, because we have other layout classes that work well.
I think that #7868 fixes a much bigger problem: setting a padding is a top widet class propagates everywhere
Thomas Kluyver
@takluyver
Feb 25 2015 23:28
@jdfreder appears to feel that it does break something, and I agree with him.
Sylvain Corlay
@SylvainCorlay
Feb 25 2015 23:28
So if this is not merged, I really consider 3.0 as broken.
Thomas Kluyver
@takluyver
Feb 25 2015 23:28
I also think the thing it breaks is more important than the thing it fixes
@interact is primary user-facing API
HBox, not so much
Sylvain Corlay
@SylvainCorlay
Feb 25 2015 23:28
seriously, DOMWidget is probably the highest thing for you, and it is the bottom api for us
#7868 does not break anything
Min RK
@minrk
Feb 25 2015 23:29
other than interact
Sylvain Corlay
@SylvainCorlay
Feb 25 2015 23:29
in which way extactly does it break interact?
Jonathan Frederic
@jdfreder
Feb 25 2015 23:29
I think #7868 breaks interact. There isn't a trivial workaround to make interact look nice if that gets merged.
The padding
At least in the current state there is a simple workaround- padding=0 in the constructor.
Sylvain Corlay
@SylvainCorlay
Feb 25 2015 23:30
so interact without padding is broken?
Jonathan Frederic
@jdfreder
Feb 25 2015 23:30
Broken looking
Functional yes, ugly yes.
Thomas Kluyver
@takluyver
Feb 25 2015 23:31
yeah, the screenshots Jon showed in that PR, I definitely consider it broken
Sylvain Corlay
@SylvainCorlay
Feb 25 2015 23:31
which part?
Jonathan Frederic
@jdfreder
Feb 25 2015 23:31
Padding
Thomas Kluyver
@takluyver
Feb 25 2015 23:34
Min says #7872 is OK to go in. Someone press the button and cross your fingers.
Sylvain Corlay
@SylvainCorlay
Feb 25 2015 23:36
fantastic
thanks
Jonathan Frederic
@jdfreder
Feb 25 2015 23:36
Well if something explodes it's my fault. I pressed the button, hopefully there isn't a chain reaction ;)
Min RK
@minrk
Feb 25 2015 23:38
Don't worry. CSS bugs don't make things explode, just ugly.
Jonathan Frederic
@jdfreder
Feb 25 2015 23:46
Explosively ugly :P
Jason Grout
@jasongrout
Feb 25 2015 23:57
When you guys have a party celebrating the release, we'll have a party celebrating the repo being open for PRs again!
Min RK
@minrk
Feb 25 2015 23:58
We'll cut the release and start merging straight away
Jason Grout
@jasongrout
Feb 25 2015 23:58
yippee!
Min RK
@minrk
Feb 25 2015 23:59
probably start with the message synchronization, actually
Since that's :horse: and destined for 3.1, I'd like to land it ASAP