Jupyter Dev Meeting, 2017, Week 6 summary

61 views
Skip to first unread message

Matthias Bussonnier

unread,
Feb 7, 2017, 4:41:20 PM2/7/17
to Project Jupyter

Hi Everyone,

This is my attempt at writing a weekly summary of our video meeting we have each
Tuesday. I’m using the notes that have been taken during the meeting by the
collective effort so the quality of the section depends highly on the quality of
the notes taken.

Any help welcome. I also try to keep writing this summary under 30 min.

General Announcements

We’re trying out Dropbox Paper this month for our weekly meeting notes. Please
add your feedback at the end of each week’s notes. We’re still keeping a link to
the notes (on various platforms) in the Hackpad until we commit to a tool for
the long-run.

Try to make full sentences with all the informations you want to give, otherwise
it is a daunting task to try to make a written summary on the mailing list. I’ll
keep the time to format the summary to 30 minutes top.

Project management (Jamie)

  • Dropbox Paper
    • Should be open for editing by everyone who logs in. Access settings documentation: https://www.dropbox.com/help/167
    • Please comment on your experience at the end of these notes
  • Project Management Tools team tutorial scheduled for February 24

Notebook

The notebook team is aiming for 5.0 any day now. There are just a few issues left on the milestone:

  • issues remaining on the 5.0 milestone
    remaining issues.
  • “Woohoo!” (That was Brian expressing his excitement).
  • Jason moved across everything that was on the 4.4 milestone (except one
    backport PR which Jason opened). If there is anything else left on 4.x let
    us know. There will [TK: probably not ;-)] be any 4.x release except for
    critical bugfixes.

The Notebook team would like help with doing a last UI/UX design review for new
UI elements in Notebook 5.0:

Before releasing Notebook 5.0 we should fully resolve the issues/inconsistencies
we have with nbextension/serverextension. Minimally the lab/notebook team should
get together to go over this stuff before 5.0 is released. See the following
issues and threads:

Brian and Jason would like to start having regular notebook+lab meetings to
coordinate these two efforts, especially with JupyterLab beta/1.0 coming soon,
which will initiate the transition for users. See this mailing list post:

Matthias worked a bit on a couple of PRs on Jupyter/Notebook to better support
RightToLeft languages and layout. He thinks that a couple of <bdi>
(bidirectional isolation tags) should be put in specific location in the DOM to
allow proper layout with mixed text. But he lack experience so far. It would be
nice to coordinate these location between Lab/Notebook/Nteract/Nbconvert. In
particular isolate Cells/Input/Output. Think of requests.get('RTL url') in an
input, and result in the other direction.

The Notebook now have a dir=LTR attribute on <body> by default, (instead of
empty if LTR and RTL if RTL so CSS rules for the application can be written
that only target LTR or RTL, before it was not possible to target only RTL which
was annoying.

There is a PR open with a prototype of the proposed internationalisation, using
Deutsch (German) as an example. https://github.com/jupyter/notebook/pull/2140

JupyterLab (Steve, Darian)

Our designer at Cal Poly, Cameron Oelsen, has been doing a ton of design work on
JupyterLab. This will continue in the coming weeks as we approach the beta.

It is likely that we will have a JupyterLab beta out a little later than
expected. We originally thought it would be mid/late February, but dealing with
dependencies in lab extensions has been more complicated than we expected.

We are working on addressing any remaining performance problems with large
notebooks. If anyone has a large notebook that tends to be slow in the classic
notebook UI, please ping us on a JupyterLab issue:
https://github.com/jupyterlab/jupyterlab/issues/1639.

The inspector and tooltip plugins are completely independent, standalone plugins
that add behaviors to notebooks and consoles. This week, the completer is being
extracted in the same way in an open PR:
https://github.com/jupyterlab/jupyterlab/pull/1631 (It is more integrated so it
is something of a proof of concept at this point, until it’s done.)

There is an open discussion about partial rendering rendering / virtual
scrolling if anybody wants to contribute:
https://github.com/jupyterlab/jupyterlab/issues/1587

Cell metadata editing is almost done, hopefully by the end of today.
Implemented a raw metadata editor that takes into account programmatic changes
made while editing. This same widget can be used for the notebook level
metadata. https://github.com/jupyterlab/jupyterlab/pull/1586

We had another go at configuration handling, it turns out we had the same
problem as server extensions in Notebook 4.x: the config was not merged across
user/site-packages/system. We moved to a /labconfig folder that we can use as
the basis of our configuration settings moving forward.
https://github.com/jupyterlab/jupyterlab/pull/1607

ipywidgets (Jason, Sylvain)

(Jason in another meeting at the moment.)

The IPywidget team closed the last “bug” marked on the 6.0 milestone. The only
remaining TODO item is to migrate to Phosphor 1.0 before making a release.

There is a Work in Prorgess IP for custom styling of
widgets
; A new LaTeX
typesetting widget, which is multiline ! And more CSS fixes.

A new Placeholder widget is inserted when custom model module or model class
cannot be loaded. This is useful for debugging, as this placeholder displays as
a table that will display any relevant information or error sent to it.

More fixes have been made w.r.t. phosphorjs resize events in ipywidgets
hierarchies.

JupyterHub (Min, Carol)

We’re working on switching to OAuth as the default mechanism for authenticating
services and single-user servers with the Hub. This should solve various
cookie-related issues.

Christian Barra is working on adding multiple servers per user capabilities.

We are exploring options and design choices for sharing notebooks in JupyterHub
(HubShare): https://github.com/jupyterhub/hubshare/issues.

A summary of JupyterHub activity from January 2017:
https://github.com/willingc/pulse_news/blob/master/2017_01_monthly_jhub.md

IPython (Matthias)

Matthias is working on improving Jedi integration. Type inference for all
completions can be a bit slow sometime (matplotlib.patches.<tab> takes 20s on
first time), it’s meant to be lazy, though I need to be greedy to serialize on
the wire for IPykernel.

Thus Matthias is working on improving caching behavior in jedi to get that
timing down to reasonable realm (so far down to ~2.5 sec on cold start, close to
instant once warm), and make sure nothing else breaks, which still looks like a
whack a mole game when you don’t know the codebase well.

A mitigation PR has been merged in IPython to give the completer a “budget” of
0.4 sec per to <tab> press to do as much as it can on every completion request
before having to return something. Completion where type has not yet been
inferred marked with <unknown> type.

Steve says there is probably some code that we can share with Spyder that run
jedi/rope in the background. Try to see if we can share some code. Note that
Spyder is pinned to 0.9 at the moment due to the API changes:

There is a plugin client/server model used as well:

Conferences/Outreach

  • Min will be at SIAM CSE talking about Jupyter in Atlanta at the end of
    February (and Berkeley the week after).
  • Carol will be talking about JupyterHub and JupyterLab in Ann Arbor for the
    first PyData Ann Arbor meetup on March 2nd. She will be visiting U of
    Minnesota, UIUC, and Chicago PyLadies as well.
  • Ian is giving a webinar to the Computational Infrastructure for Geodynamics
    (CIG) on Thursday about usage of Jupyter in the geosciences.
    (https://geodynamics.org/cig/events/webinars/)
  • Fernando working with Andrew Odewahn on JupyterCon (htttp://jupytercon.com),
    please everyone remember to spread the word in your networks, the CFP is open!
    Carol will be working with the program committee on doing outreach for
    underrepresented speakers.
  • Reminder here: https://github.com/orgs/jupyter/projects/2
    https://github.com/jupyter/project-mgt/issues

Services - kernel gateway, docker-stacks (Pete)

One PR left for review (https://github.com/jupyter/kernel_gateway/pull/217)
before cutting a 1.2 release of kernel gateway.

It looks like something changed in the Ubuntu package requirements for
openjdk-8-headless preventing rebuilds of docker-stacks images that include the
JVM (i.e., the Spark images).

Action Items for this week, How can you help ?

Beyond above linked issues that need feedback, you can also give feedback on
Steve’s Cell Metadata Editor (screencast coming soon):
https://github.com/jupyterlab/jupyterlab/pull/1586

Releases this week


Thanks you for reading, and thanks a lot for those of you who wrote sections
with full sentences and all the details. Any help to put this document in form
before sending it to the mailing list is welcome. It’s a collaborative document
after all so anyone can pitch in.

As usual if you have any questions/feedback/corrections like sections too long,
to short missing informations, your input is welcomed. We’ll keep these summary
for a couple of weeks to see if you find them useful.

Thanks.

-- 
Matthias

Reply all
Reply to author
Forward
0 new messages