Skip to content

Latest commit

 

History

History
2383 lines (1688 loc) · 96.9 KB

dev-meetings.md

File metadata and controls

2383 lines (1688 loc) · 96.9 KB

Jupyter Widgets weekly meeting

6 June 2023

Name Affiliation GitHub
Matt Craig MSU Moorhead @mwcraig
Itay Dafna Netflix @ibdafna
Paddy Mullen independent @paddymul
Martin Renou QuantStack @martinRenou
Trung Le QuantStack @trungleduc
David Brochart QuantStack @davibrochart
  • Propose a SciPy widgets BoF? Matt will propose one
  • [Paddy]:
    • Feedback about the cookiecutter
  • [Itay]:
    • Triage
    • Update team compass to show new meeting time/cadence
    • SSC updates
  • [David]:
    • Move ypywidgets to ipywidgets? We'll try to have feature-parity with basic ipywidgets and come back to resume discussions.
  • Propose a SciPy widgets BoF? Matt will propose one
  • Decision on cookiecutter -- put a deprecation of the JS flavor to a vote by the council, and focus on the TS flavor as the supported way.
  • Suggestion by Martin is to wait until ypywidgets support more of the front-ends the current ipywidgets supports.
  • Next meeting: Tue, June 20

23 May 2023

Name Affiliation GitHub
Itay Dafna Netflix @ibdafna
Matt Craig MSU Moorhead @mwcraig
Martin Renou QuantStack @martinRenou
  • [Itay]: we should update the meeting time on the team-compass repo to reflect 8:15am start instead of 8:30am PT.

  • Discussions from JupyterCon:

    • Typescript cookiecutter not working?
    • Should we settle on one cookitcutter repo instead of two?
    • Good opportunity to try the alternative to cookiecutter suggested by Steve -- copier?
  • [Martin] JupyterLab 4 / Lumino 2 update jupyter-widgets/ipywidgets#3752

  • Next meeting: Tue, June 6

02 May 2023

Name Affiliation GitHub
Itay Dafna Netflix @ibdafna
Jason Grout Databricks @jasongrout
David Brochart QuantStack @davidbrochart
Paul Ivanov Project Jupyter @ivanov
  • New meeting time:
    • 8:15am-9:00am, PT, every two weeks, starting on the 23rd of May
  • SSC+EC update at JupyterCon
    • Create one or two slides per subproject

    • Highlight one or two recent or near future developments/releases you are excited about (anytime from 2022 to present time)

    • Highlight one or two things you’d like other Jupyter subprojects to know for coordination/discussion/collaboration

    • ipywidgets 8 released last summer

24 Apr 2023

Name Affiliation GitHub
Itay Dafna Netflix @ibdafna
Maarten Breddels Widgetti @maartenbreddels
  • Future meeting time still being decided - will update later today after we get more responses.

17 Apr 2023

Name Affiliation GitHub
Itay Dafna Netflix @ibdafna
Paul Ivanov Project Jupyter @ivanov
Jason Grout Databricks @jasongrout
Suhyun Kim Dspractice.com @gitskim

10 Apr 2023

Name Affiliation GitHub
Jason Grout Databricks @jasongrout
Nick Bollweg Georgia Tech @bollwyvl
Itay Dafna Netflix @ibdafna
  • Weekly Meeting
    • Sparse attendance recently
    • [Itay] Send out a new survey for a 30 minute meeting
  • Triage

03 Apr 2023

  • Meeting was canceled due to low attendance

27 Mar 2023

Name Affiliation GitHub
Kellie Tay Bloomberg @kellietay
Jason Grout Databricks @jasongrout
  • Triage

13 Mar 2023

Name Affiliation GitHub
Kellie Tay Bloomberg @kellietay
Jason Grout Databricks @jasongrout
Supriya Khandekar Bloomberg @supriyakhandekar
Steve Purves Curvenote @stevejpurves
Nick Bollweg Georgia Tech @bollwyvl
  • Triage
  • Nick: ipykernel, widgetsnbextension, jupyterlab_widgets dependencies
    • on @jupyterlite/pyodide-kernel, looking to optimize on-the-wire deps
    • adding more hacks to avoid downloading things over ~100kb

6 Mar 2023

Name Affiliation GitHub
Kellie Tay Bloomberg @kellietay
Jason Grout Databricks @jasongrout
Supriya Khandekar Bloomberg @supriyakhandekar
Itay Dafna Netflix @ibdafna

20 Feb 2023

13 Feb 2023

Name Affiliation GitHub
Maarten Breddels @maartenbreddels
Kellie Tay Bloomberg @kellietay
Jason Grout Databricks @jasongrout

6 Feb 2023

Name Affiliation GitHub
Itay Dafna Netflix @ibdafna
Maarten Breddels @maartenbreddels
Sylvain Corlay QuantStack @QuantStack
Kellie Tay Bloomberg @kellietay
  1. SSC meeting report by Itay:
    • Nothing specific regarding widgets.
  2. Sylvain: xwidgets protocol 2.1
  3. Sylvain: widgets schemas should be JSON schemas
  4. RTC Widgets
    • Schedule a demo of jupytercad and ywidgets
  5. Maarten Breddels
  6. Kellie to follow up on documentation discussion from the London workshop

30 Jan 2023

Name Affiliation GitHub
Jason Grout Databricks @jasongrout
Itay Dafna Netflix @ibdafna

23 Jan 2023

Name Affiliation GitHub
Jason Grout Databricks @jasongrout
Maarten Breddels @maartenbreddels
Itay Dafna Netflix @ibdafna
Nick Bollweg

13 Dec 2022

Name Affiliation GitHub
Vidar T Fauske JP Morgan Chase @vidartf
Jason Grout Databricks @jasongrout
Kellie Tay Bloomberg @kellietay
Itay Dafna Netflix @ibdafna
  • Triage: https://github.com/jupyter-widgets/ipywidgets/pulse

  • Maarten Breddels made a release. Hooray!

  • Meetings through the end of the year

    • Canceling ipywidgets dev meeting until January 10, 2023. Happy new year!
    • Itay will send an email to council and post on the team compass a poll for a new meeting time that may work better.
  • Upcoming conferences:

    • PyData Seattle (April)
    • PyCon US (April)
    • JupyterCon (May)

6 Dec 2022

Name Affiliation GitHub
Jason Grout Databricks @jasongrout
Supriya Khandekar Bloomberg LP @supriyakhandekar
Kellie Tay Bloomberg @kellietay
Maarten Breddels @maartenbreddels

29 Nov 2022

Name Affiliation GitHub
Vidar T Fauske JP Morgan Chase @vidartf
Jason Grout Databricks @jasongrout
Steve Purves Curvenote @stevejpurves
Supriya Khandekar Bloomberg LP @supriyakhandekar
Maarten Breddels @maartenbreddels
Itay Dafna Netflix @ibdafna

22 Nov 2022

Name Affiliation GitHub
Vidar T Fauske JP Morgan Chase @vidartf
Jason Grout Databricks @jasongrout
Itay Dafna Netflix @ibdafna
  • SSC: Vidar is tallying the results
  • EC election
    • Useful if Brian, Darian, and Fernando post their interest answers

15 Nov 2022

Name Affiliation GitHub
Vidar T Fauske JP Morgan Chase @vidartf
Jason Grout Databricks @jasongrout
Maarten Breddels - @maartenbreddels
Itay Dafna Netflix @ibdafna
Pete Blois Google @blois
Martin Renou QuantStack @martinRenou
Supriya Khandekar Bloomberg @supriyakhandekar
Kellie Tay Bloomberg @kellietay

08 Nov 2022

Name Affiliation GitHub
Jason Grout Databricks @jasongrout
Vidar T Fauske JP Morgan Chase @vidartf

22 Nov 2022

Name Affiliation GitHub
Vidar T Fauske JP Morgan Chase @vidartf
Jason Grout Databricks @jasongrout
Itay Dafna Netflix @ibdafna
  • SSC: Vidar is tallying the results
  • EC election
    • Useful if Brian, Darian, and Fernando post their interest answers

15 Nov 2022

Name Affiliation GitHub
Vidar T Fauske JP Morgan Chase @vidartf
Jason Grout Databricks @jasongrout
Maarten Breddels - @maartenbreddels
Itay Dafna Netflix @ibdafna
Pete Blois Google @blois
Martin Renou QuantStack @martinRenou
Supriya Khandekar Bloomberg @supriyakhandekar
Kellie Tay Bloomberg @kellietay

08 Nov 2022

Name Affiliation GitHub
Jason Grout Databricks @jasongrout
Vidar T Fauske JP Morgan Chase @vidartf

01 Nov 2022

Name Affiliation GitHub
Jason Grout Databricks @jasongrout
Itay Dafna Bloomberg LP @ibdafna
Supriya Khandekar Bloomberg LP @supriyakhandekar
Kellie Tay Bloomberg LP @kellietay
  • Itay: ipydatagrid - Looking into moving from bloomberg org to the jupyter-widgets org, with the same maintainers
  • Minimal es6 api: Jason to create repo in JupyterLab org
    • Pete and Jason can collaborate, will arrange a time
  • reviewers: https://github.com/jupyter-widgets/ipywidgets/pulls

Other discussion

  • Vidar: SSC nomination process
  • EC nomination process
  • JupyterCon 2022: May 10-12

25 Oct 2022

Name Affiliation GitHub
Jason Grout Databricks @jasongrout
Itay Dafna Bloomberg LP @ibdafna
Pete Blois Google @blois
Maarten Breddels @maartenbreddels
  • Widgets workshop followup items and takeaways: #16

    • Minimal es6 module
      • Jason has a separate repo that he hasn't pushed yet
      • Pete and Jason will work on a sample extension for JupyterLab
    • precommit PR
      • Almost there. Working on getting the doc build to not time out (doc build might be flaky?)
    • Documentation work
    • Comm replacement ipython/comm#1
      • Maarten experimented with implementing this in Solara
    • Typing in traitlets ipython/traitlets#788
    • Fixing comm target does not exist: proceed on the JEP
    • Tech stack discussion takeaways
      • Do not move away from traitlets - give it another go with the performance improvements
      • Clear documentation on minimal api for widgets and widget managers
      • Encourage people to not use jquery, but we should still include it
      • A way to gracefully removing jquery is to lazily load jquery on view creation if you know it is going to be needed
      • Rich es6 outputs may allow us experiment with radically different tech stacks
      • AMD modules should still be produced, even after notebook 6 is deprecated. It may be really difficult to move from AMD to es6 because it would be hard to split out the widget base class to be loaded dynamically from the environment.
      • Investigate feasibility of deploying es6 modules in the future
    • Traitlets performance
    • Contrib repository
      • Discussion around using jupyter-contrib, or the Jovyan repo
  • SSC and EC election

    • Vidar to run the Jupyter Widgets SSC nomination process

11 Oct 2022

Name Affiliation GitHub
Itay Dafna Bloomberg LP @ibdafna
Jason Grout Databricks @jasongrout
Kellie Tay Bloomberg LP @kellietay
Supriya Khandekar Bloomberg LP @supriyakhandekar
Don Jayamanne Microsoft @donjayamanne

4 Oct 2022

Name Affiliation GitHub
Eric Gentry Anaconda @ericsnekbytes
Martin Renou QuantStack @martinRenou
Itay Dafna Bloomberg LP @ibdafna
  • PRs

  • Widgets workshop planning meeting:

  • Jupyter Notebook 7 (JupyterLab-based) is coming

    • What is the plan for nbextension support in ipywidgets and custom widgets libraries?
    • Should we switch from building an Notebook extension to building a more general extension that could be used by VSCode/Colab etc?

27 Sep 2022

Name Affiliation GitHub
Jason Grout Databricks @jasongrout
William Stein SageMath, Inc. @williamstein
Eric Gentry Anaconda @ericsnekbytes
Itay Dafna Bloomberg LP @ibdafna
Maarten Breddels Maarten Breddels @maartenbreddels

20 Sep 2022

Name Affiliation GitHub
Jason Grout Databricks @jasongrout
Itay Dafna Bloomberg LP @ibdafna
Don Jayamanne VS Code @donjayamanne
Martin Renou QuantStack @martinRenou
Sylvain Corlay QuantStack @SylvainCorlay
  • Widget workshop
    • 18 Oct - 21 Oct
    • Funding is available: deadline for funding requests is 10 days from now
    • Registration
    • We'll try to do some things virtual
    • Publish blog post -
    • Tweet / retweet from Jupyter
    • Discourse
    • Widgets chat channel
    • Widgets council list
    • People [elided]
  • 8.0.x PRs

Blog post draft: https://blog.jupyter.org/ipywidgets-8-0-df1f22ef8278

13 Sep 2022

Name Affiliation GitHub
Vidar T Fauske JP Morgan Chase @vidartf
Jason Grout Databricks @jasongrout
  • Adding a trove classifier for Jupyter widgets

    • Similar to adding the PR adding JupyterLab classifiers here
    • List of current classifiers
    • Perhaps these classifiers?
      • Framework :: Jupyter :: Jupyter Widgets :: 7
      • Framework :: Jupyter :: Jupyter Widgets :: 8
      • Or should it be singular Jupyter Widget? (Jason thinks plural). Examples of each:
        • Plural
          • JupyterLab :: Extensions :: Themes
          • JupyterLab :: Extensions :: Mimerenderers
          • Topic :: Text Processing :: Filters
          • Topic :: Text Editors :: Word Processors
          • Topic :: Terminals
          • Topic :: Software Development :: Libraries
          • Topic :: Software Development :: Assemblers
          • Topic :: Multimedia :: Sound/Audio :: Mixers
          • Topic :: Desktop Environment :: Window Managers
        • Singular
          • Programming Language :: Python :: Implementation :: CPython
          • Programming Language :: APL
          • Operating System :: BeOS
  • ipywidgets 8.0.x: https://github.com/jupyter-widgets/ipywidgets/milestone/37

  • blog post

    • Jason to put up a draft of the blog post about 8.0
  • 2-factor auth turned on for jupyter-widgets github org

  • workshop

  • Jupyter Widgets Council

    • October 3 target date
  • VS Code supporting ipywidgets 8

06 Sep 2022

Name Affiliation GitHub
Jason Grout Databricks @jasongrout
Vidar T Fauske JP Morgan Chase @vidartf
Pete Blois Google @blois

Here's the public/stable API that Colab exposes to outputs: https://github.com/googlecolab/colabtools/blob/main/packages/outputframe/lib/index.d.ts

  • It hangs off of window which I know doesn't work well for JupyterLab.
  • The API is intended to be bare-bones. A single typings file, no dependencies on any libraries or frameworks.
  • The API is intended to be as strongly typed as possible, to attempt to avoid vagaries that can lead to breaking changes.
  • Our implementation uses JS scopes to hide private members from the objects exposed, to prevent use of unintentionally exposed members. This is for compatibility, it's not considered a security boundary.

Discussion of an improved %%javascript magic and I mention how an API like Colab's could be exposed in a portable manner that would work in JupyterLab as well. ipython/ipython#13376 (comment)

Bokeh is a good example of what we see elsewhere: https://github.com/bokeh/bokeh/blob/0d0f40b7b0be373c2a58a2b99241de98ea49dba2/src/bokeh/core/_templates/autoload_nb_js.js#L121

They look for window.Jupyter and if present attempt to load classic notebook implementation modules via requirejs.

Where is this discussion most appropriate? Pete did an implementation of this JS api in a Jlab extension: https://github.com/blois/js-module-renderer

30 August 2022

Name Affiliation GitHub
Jason Grout Databricks @jasongrout
Vidar T Fauske JP Morgan Chase @vidartf
Pete Blois Google @blois
Itay Dafna Bloomberg LP @ibdafna

23 August 2022

Name Affiliation GitHub
Jason Grout Databricks @jasongrout
Vidar T Fauske JP Morgan Chase @vidartf
Martin Renou QuantStack @martinRenou
Pete Blois Google @blois
Maarten Breddels @maartenbreddels
Jeremy Tuloup QuantStack @jtpio
  • ipywidgets 8.0
    • Quick recap of release
      • [Done] Check to make sure there is a cap on the dependencies for ipywidgets 8

TODO issues:

16 August 2022

Name Affiliation GitHub
Vidar T Fauske JP Morgan Chase @vidartf
Jason Grout Databricks @jasongrout
A. T. Darian QuantStack @afshin
Sylvain Corlay QuantStack @sylvaincorlay
  • ipywidgets 8
    • jupyter-widgets/ipywidgets#3540
    • jupyter-widgets/ipywidgets#3541
    • New doc PR:
      • Removes the building custom widget guide from the index until it can be updated to use the js cookiecutter (or ts cookie cutter updated)
      • Updating the widget author migration guide:
        • point to js cookiecutter
        • update language around 8.0
        • add a note about the public path update in the js cookiecutter
    • Blog post
      • Jason can work on it late this week or early next week. Any help will speed this up, of course :).
  • Native iterators in Lumino 2

9 August 2022

Name Affiliation GitHub
Vidar T Fauske JP Morgan Chase @vidartf
Jason Grout Databricks @jasongrout
A. T. Darian QuantStack @afshin
Matt Craig Minnesota State University Moorhead @mwcraig
Itay Dafna Bloomberg LP @ibdafna
  • ipywidgets 8
    • ipywidgets 8 testing
      • Want positive confirmation about ipywidgets 8 working in various environments
        • Jason tested JupyterLab and basic html manager embedding
        • Things to test:
          • Test HTML manager in 3rd party widget docs and nbconvert (jupyter-widgets/ipywidgets#3536) - OutputWidget, styling
          • Test ipywidgets with JupyterLab (including old version, 1, 2, 3.0.0)
    • PRs needing review:
    • Blog post: Vidar will draft a paragraph for extension authors about you no longer going to need to update 3rd party libs every time lab has a major release. After the next release :)
  • Lumino 2
    • Request for help (jupyterlab/team-compass)
    • Lumino 2 project board
    • JupyterLab widget manager may need a major upgrade? It will certainly need code changes to deal with the JLab 4 API changes
    • We'll have to decide between tradeoffs:
      • bump base by a minor version, with the caveat that .luminoWidget is either Lumino 1 or 2, with the idea that most people will be compatible
      • bump base by a major version, and libraries that are okay with either lumino 1 or 2 just make the dependency an or (||).
  • Widget workshop
    • ideally 3-5 days?

2 August 2022

Name Affiliation GitHub
Vidar T Fauske JP Morgan Chase @vidartf
Itay Dafna Bloomberg LP @ibdafna
William Stein SageMath/CoCalc @williamstein
Jason Grout Databricks @jasongrout
Martin Renou QuantStack martinRenou

26 July 2022

Name Affiliation GitHub
Jason Grout Databricks @jasongrout
William Stein SageMath/CoCalc @williamstein
Vidar T Fauske JP Morgan Chase @vidartf
Matt Craig Minnesota State University Moorhead @mwcraig
  • ipywidgets 8
    • 3524: experiment is concluded, close the pr and watch for issues in the community after release
    • 3528 - minor tweak, then merge
    • 3455 - is this issue good enough for frontend authors? Answer: yes, but add a link to the changelog

19 July 2022

Name Affiliation GitHub
Jason Grout Databricks @jasongrout
William Stein SageMath/CoCalc @williamstein
Matt Craig Minnesota State University Moorhead @mwcraig
Vidar T Fauske JP Morgan Chase @vidartf
Itay Dafna Bloomberg @ibdafna
  • Report on Scipy and the tutorial there

    • Went really well
      • Twice we had some serious technical issues with connecting computers, etc., but attendees probably didn't even notice.
      • Not much changed from last year:
        • JupyterLite
        • Widgets 8
        • Building an application
    • Probably about 20 people there, so way down from most years
    • Jupyter is still the big thing
    • Papyri talk by Matthias was excellent
    • VegaFusion by Jon Mease is an ipywidget!
    • JDAViz (scsci-provided platform for web images) is widget-based. Based on glue, etc.
    • No widget sprint, Matt worked on bqplot and other things, though. There was a little Jupyter sprinting as well.
  • 8.0 milestone

  • Automatically set public path

12 July 2022

Name Affiliation GitHub
Vidar T Fauske JP Morgan Chase @vidartf
William Stein SageMath/CoCalc @williamstein

Remaining tasks 8.0:

(william) Community question:

  • thoughts about jupyter-widgets/ipywidgets#3516 "I am not sure how this could be solved unless we drastically change ipywidgets' architecture."

    • discussed in the jupyter server meeting
    • ipywidgets uses comms, but comms exist outside ipywidgets, and have unknown usage that can't be completely replaced by rtc.
  • JupyterLite discussion: cool new features for docs.

5 July 2022

Name Affiliation GitHub
Vidar T Fauske JP Morgan Chase @vidartf
Matt Craig Minnesota State University Moorhead @mwcraig

Meeting canceled

28 June 2022

Name Affiliation GitHub
Vidar T Fauske JP Morgan Chase @vidartf
William Stein SageMath/CoCalc @williamstein
Itay Dafna Bloomberg @ibdafna

21 June 2022

Name Affiliation GitHub
Jason Grout Databricks @jasongrout
Matt Craig Minnesota State University Moorhead @mwcraig
Vidar T Fauske JP Morgan Chase @vidartf
William Stein SageMath/CoCalc @williamstein

14 June 2022

Name Affiliation GitHub
Jason Grout Databricks @jasongrout
Vidar T Fauske JP Morgan Chase @vidartf
Matt Craig Minnesota State University Moorhead @mwcraig
Martin Renou QuantStack @martinRenou
William Stein SageMath/CoCalc @williamstein
Itay Dafna Bloomberg @ibdafna
  • update wiki page: https://github.com/jupyter/jupyter/wiki/Jupyter-Widgets
    • Add "Documentation" column to the widget table
    • Add ipywidgets to the text above, then let the table be sorted
  • Release 7.7.1
  • Question about titles on Tab and Accordion -- is this a list or a tuple?
  • Status of several packages with respect to version 8 support:
    • ipyleaflet -- open PR that allows ipywidgets 8 only (see js dependencies).
      • Will this support ipywidgets 7 and 8, or just 8? Both
    • bqplot -- Open PR but it is out-of-date:
      • Will this support ipywidgets 7 and 8, or just 8? Both 7 and 8.
      • Should use version 6 instead of 5 for @jupyter-widgets/base, see this line.
      • Should use 5 instead of 4 for @jupyter-widgets/controls
      • Currently uses a custom scales package -- this PR needs to merger first, I'm guessing: bqplot/bqscales#49
    • bqscales -- a dependency of bqplot. Some fixes needed:
      • Will this support ipywidgets 7 and 8, or just 8? Both 7 and 8
      • Should use version 6 instead of 5 for @jupyter-widgets/base, see this line.
    • ipympl -- Open PR but may be incomplete:
      • It looks like this still imports phosphor instead of lumino.
    • ipytree -- No PR yet.
      • Follow the migration guide to open a PR.
    • ipycanvas -- needs a pull request.
      • Follow the migration guide to open a PR.
    • sidecar -- PR is open.
      • Per this comment one commit needs to be reverted before merging.
    • pythreejs -- PR is open, but
      • Will this support ipywidgets 7 and 8, or just 8? Just 8
      • Need to remove rc1 from package.json before merging.
    • ipycytoscape -- 🎉 works! 🎉
    • ipyevents -- 🎉 works! 🎉
  • border vs overflow attribute changes result from last time
  • The new comm echo was causing an issue in newer versions of Lab (execution state would go wonky). Will be fixed in next release of Lab: jupyterlab/jupyterlab#12616

Additional discussion:

7 June 2022

Name Affiliation GitHub
Jason Grout Databricks @jasongrout
Itay Dafna Bloomberg @ibdafna
  • PRs/issues for 8.0: https://github.com/jupyter-widgets/ipywidgets/milestone/30
  • Community Workshop:
  • Tutorial: 07/12/2022, 8:00am-12:00pm CDT, The Jupyter Interactive Widget Ecosystem, Matthew Craig, Itay Dafna, Mariana Meireles, Youness Bennani, Ian Hunt-Isaak
  • Can we have a widgets 8 release by June 17, which is when the tutorial instructions are due?
    • I think so!
  • Databricks supports ipywidgets! https://docs.databricks.com/notebooks/ipywidgets.html
  • Borders vs overflow attributes: in order to have the possibility to adjust borders independently, we went with border_left/right/top/bottom, with convenience properties to set the border. For the overflow attribute, we went with our normal convention of preferring the single shorthand CSS notation over individual properties.

31 May 2022

Name Affiliation GitHub
Jason Grout Databricks @jasongrout
William Stein (until 10am PDT due to https://sites.google.com/view/vantageseminar, slides: https://math.mit.edu/~drew/vantage/BhargavaSlides.pdf) CoCalc @williamstein
Itay Dafna Bloomberg @ibdafna
  • PRs/issues for 8.0: https://github.com/jupyter-widgets/ipywidgets/milestone/30

  • I would be interested in a very quick discussion of jupyter-widgets/ipywidgets#3114 since something similar is at the top of my personal todo list for cocalc. (I want this more for https://cocalc.com/share, but it's the same problem.)

    • on roadmap?: definitely not, due to this being jupyter classic, and we are moving to jupyterlab, which already solves this issue, for the most part.
    • what about nbconvert / publishing
      • nbconvert is aware of widgets; save widget state.
      • e.g., this is used by our docs. displayed using html manager
    • what if the widget state is BIG (say 50MB), e.g., 3d graphics and buffers? 2d plots + bqplot -- see this all the time. blows up size of notebook.
      • we originally had all notebooks saved every widgets, and this was not optimal due to extensive interactive use and no garbage collection, so notebooks would rapidly increase in size
      • then we made it off by default.
      • make it very explicit when you want to save this way.
      • related discussion: sidecar files. jupytext does this.
    • and generally what scares you about this PR? If anything?
    • Maarten has "Solara"...
    • Subtle definition of "live widget". View counter.
    • But in cocalc since it garbage collects if not displayed anywhere.
    • Browser memory and file size are both big concerns.
    • What about screenshot? Widget's responsibility. Or serialize dom...
    • [william] Thanks!
  • ipydatagrid ipywidgets 8.0 upgrade: jupyter-widgets/ipydatagrid#282

24 May 2022

Name Affiliation GitHub
Jason Grout Databricks @jasongrout
Vidar T Fauske JP Morgan Chase @vidartf
William Stein CoCalc @williamstein
Itay Dafna Bloomberg @ibdafna

Continuing discussion from last time about post 8.0:

  • font-awesome - William wrote a jquery plugin that simulates a font-awesome and manually adds the font-awesome look-alikes icons in cocalc
    • We could explicitly support, say 100 icons that cover most icons third party widgets are currently using, and the manager is responsible for providing those icons in a way that is consistent with the platform. This makes it easier for widget implementors to support the icons without having to explicitly use fontawesome. (william: I really like this proposal.)
  • typeset - depends on mathjax? - should be a method on the manager
    • Add it as a minor release in the base manager interface

  • William: another quick question -- what about a list of jupyter clients that support widgets? E.g., I was recently testing and learned that datalore does now.

  • Add a table to the docs with links to frontends that implement ipywidgets?

    • do in such a way that is in no way an endorsement
    • put it on a wiki.
    • another table of third-party ipywidgets
  • Vidar: porting pythreejs to ipywidgets 7 and 8

  • Jason: looking at updating docs with diff, look at todo items

  • William: porting k3d to cocalc

Community workshop proposal for ipywidgets:

  • October 2022 or Jan 2023
  • Paris, London, San Francisco, Berlin

17 May 2022

Name Affiliation GitHub
Jason Grout Databricks @jasongrout
Vidar T Fauske JP Morgan Chase @vidartf
Pete Blois Google @blois
William Stein CoCalc @williamstein
Blaec Bejarano CoCalc
  • es6 vs backbone extend

    • Currently ipywidgets 7.x and 8.x are generating es6 classes (not backbone.extend)
    • https://github.com/googlecolab/colab-cdn-widget-manager/blob/main/src/swizzle.ts - bridges between backbone extend and es6 classes. Just wrap the class being exposed with swizzle() and it can be constructed via ES6 new or backbone's constructor.
    • k3d uses backbone.extend
    • Pythreejs also uses backbone.extend
    • Vidar made a note in the migration guide about migrating from backbone.extend
  • Remaining work for 8.0

  • Long-term API

    • Lumino is a dependency
      • Lifecycle methods - can we prefer native methods that external lifecycle events can call
    • jupyter-services is a dependency
    • font-awesome - William wrote a jquery plugin that simulates a font-awesome and manually adds the font-awesome look-alikes icons in cocalc
    • typeset - depends on mathjax? - should be a method on the manager
    • assumptions about DOM and CSS
    • Theming - should widgets be using jupyterlab variables directly?
      • Could define only jupyter widgets variables, then have the jlab manager define those

Third-party widgets

  • ipycytoscape
  • pythreejs
  • ipyleaflet
  • cadquery
  • ipyvuetify
  • ipymaterialui
  • ipycanvas
  • bqplot
  • plotly
  • nglviewer
  • ipydatagrid
  • k3d
  • ipyslickgrid
  • qgrid
  • ipyvolume
  • ipysheet

See https://www.npmjs.com/browse/depended/@jupyter-widgets/base for hundreds more.

Python to JS translater: https://github.com/sagemathinc/jsage (JPython, inside of JSage, is BSD 2-clause)


10 May 2022

Name Affiliation GitHub
Vidar T Fauske JP Morgan Chase @vidartf
Jason Grout Databricks @jasongrout
Itay Dafna Bloomberg @ibdafna
  • William Stein presenting on ipywidgets in Cocalc on 17 May.

    • Jason will advertise on Gitter, Discourse, JLab meeting
  • @DonJayamanne's talk about how Jupyter Widgets are implemented in VS Code is posted at https://www.youtube.com/watch?v=C821QIYcxd0. Thanks again Don!

  • PyCon

    • PyScript and Pyodide
    • Cap for memory usage of pyodide is 2g
    • Pythreejs maintainership
  • npm does not pull in 6.0.0-rc:

    • ^1 || ^2 || ^3 || ^4 || ^5 || ^6.0.0-rc.0 will install 4.1.0, while ^1 || ^2 || ^3 || ^5 || ^6.0.0-rc.0 will install 6.0.0-rc.0
    • next vs latest tag?
    • date of publish of different versions?
  • Remaining work for 8.0

  • [Itay] Scipy tutorial

03 May 2022

Name Affiliation GitHub
Vidar T Fauske JP Morgan Chase @vidartf
Itay Dafna Bloomberg @ibdafna
  • William Stein presenting on ipywidgets in Cocalc on 17 May.
  • Remaining tasks for 8.0 release. Timeline.
  • Itay to add notes to the migration guide about backbone.js version update between ipywidgets 7.x and 8.x, which affects some IClassicComm mock implementations.

26 April 2022

Name Affiliation GitHub
Jason Grout Databricks @jasongrout
Martin Renou QuantStack @martinRenou
Itay Dafna Bloomberg @ibdafna
Layne Sadler AIQC @aiqc
William Stein CoCalc/SageMath @williamstein
Florian Wetschoreck Databricks @FlorianWetschoreck
Tobias Krabel Databricks @tkrabel
Frederic Collonval QuantStack @fcollonval

Issues

  • Frontends migrating from widgets 7 to widgets 8
    • VS Code - waiting until release and customer requests
    • Colab - actually on 8 prerelease already - user code is built against 7, but run against 8
      • patched the lumino change
    • CoCalc - may be difficult, due to having one single frontend codebase, but definitely having old versions of ipywidgets installed in kernels "forever", since we support old images. "Maybe I can just somehow change the comm messages to be compatible?"; Pete actually does basically this in Colab. Jason says this will mostly work, but there are some subtle differences, and they will publish an official spec change doc.
  • jupyter.widget.control error causing confusion: jupyter-widgets/ipywidgets#2257
    • This is caused when ipywidgets hasn't been imported yet
    • We should move forward on the comm JEP
  • migration guide, ready for another review jupyter-widgets/ipywidgets#3405
    • did the phosphor shim
    • added note about backbone extend
  • jupyter-widgets/ipywidgets#3442
  • jupyter-widgets/ipywidgets#3443
  • Cookiecutter updated so that it works with ipywidgets 7 and 8 jupyter-widgets/widget-ts-cookiecutter#115

ipywidgets in vscode-jupyter:

https://github.com/microsoft/vscode-jupyter/wiki/Component:-IPyWidgets

Virtualization:

  • Colab: uses intersection observer to defer creation of the iframes until they have been scrolled into view but never un-renders them when they go out of view. We write an 'output_height' attribute in the cell's metadata to specify the placeholder height on notebook load. Overall this sounded easier than it was in practice- thought it would take a few days, ended up taking maybe 2 months to stabilize (welcome to production)
  • VS Code: We do the same in VS Code as well, render only when scrolled into view and never un-render them.
  • Cocalc: is now fully virtual (except iframe html) sagemathinc/cocalc#5844 using https://virtuoso.dev/ and seems to work. Motivation for me is very complicated notebooks where having content rendered in the dom at all can be expensive when working with the notebook. (Other approach is to make this less expensive -- maybe things are significantly extra expensive in cocalc.)

19 April 2022

Name Affiliation GitHub
Jason Grout Databricks @jasongrout
Frederic Collonval QuantStack @fcollonval
Vidar T Fauske JP Morgan Chase @vidartf
Martin Renou QuantStack @martinRenou

Issues over the last week:

Items:

  • Frontends migrating from widgets 7 to widgets 8, supporting both: jupyter-widgets/ipywidgets#3429

    • How common will it be that a frontend has to support core widgets from ipywidgets 7 and 8 simultaneously?
    • Two extensions:
      • plugin for Jupyterlab ipywidgets 8 widget manager, and plugin that registers the ipywidgets 8 core controls
      • plugin that registers the ipywidgets 7 core controls
  • Migration guide jupyter-widgets/ipywidgets#3405

  • ipyleaflet and jupyterlab-sidecar migrated: jupyterlab-sidecar and ipyleaflet

  • More migrations:

  • ipywidgets 8 final release delayed a bit

  • JSON spec

  • Don's presentation postponed one week, will be next Tuesday

12 April 2022

Name Affiliation GitHub
Jason Grout Databricks @jasongrout
Itay Dafna Bloomberg LP @ibdafna

Issues over last week:

Items:

Next week Don Jayamanne is presenting on widgets in VS Code. Please advertise.

  • Gitter
  • Discourse
  • JLab dev meeting

5 April 2022

Name Affiliation GitHub
Jason Grout Databricks @jasongrout
Itay Dafna Bloomberg @ibdafna
Vidar T Fauske JP Morgan Chase @vidartf

What other libraries should we try to convert?

  • ipyleaflet
  • pythreejs

8.0 release concerns

  • 8.0rc is not working in vs code. Hypothesis: if the user has 8.0 installed in the kernel, why doesn't the 7.0 javascript work. It used to work with the 8.0 beta.
  • microsoft/vscode-jupyter#8552

April 19 - Don presenting on widgets in vs code

29 March 2022

No meeting.

15 March 2022

Name Affiliation GitHub
Jason Grout Databricks @jasongrout
Vidar T Fauske JP Morgan Chase @vidartf
William Stein CoCalc @williamstein
~/cocalc/src/packages/frontend$ grep widget package.json 
    "@jupyter-widgets/base": "^1.2.5",
    "@jupyter-widgets/controls": "^1.5.3",
    "@jupyter-widgets/output": "^1.1.5",
    "@phosphor/widgets": "^1.9.3",
  • William: I can quickly demo ipywidgets in a whiteboard, since I have it working now...

8 March 2022

Name Affiliation GitHub
Jason Grout Databricks @jasongrout
Vidar T Fauske JP Morgan Chase @vidartf
Steve Purves Curvenote @stevejpurves
Xiao Chen Databricks @xiaochen-db
tonyfast Quansight @tonyfast
William Stein CoCalc @williamstein
Jared Thompson CCC @afonit
Pete Blois Google @blois
Florian Wetschoreck Databricks @FlorianWetschoreck
Tobias Krabel Databricks @tkrabel
Martin Renou QuantStack @martinRenou
Hossein Falaki Databricks @falaki
Michael Piatek Databricks @michaelp-db
Itay Dafna Bloomberg @ibdafna
Trung Le QuantStack @trungleduc
  • Introductions

Merged PRs:

PRs to review:

7.7 and 8.0 RC/release plans

  • RC this week?

Other items

  • Recording meetings

Pete Blois: ipwyidgets on Colab

1 March 2022

Name Affiliation GitHub
Jason Grout Databricks @jasongrout
Gayle Ollington NumFOCUS @gollington
Vidar T Fauske JP Morgan Chase @vidartf
Steve Purves Curvenote @stevejpurves

Merged PRs:

22 Feb 2022

Attendees: @vidartf, @jasongrout, @sylvaincorlay

Merged PRs:

Discussion points for 8.0:

15 Feb 2022

Attendees: @williamstein, @vidartf, @ibdafna, @ivanov

Merged PRs:

Quick demo:

  • @williamstein can show you ipywidgets in his work-in-progress (very buggy!) collaborative whiteboard. (Must be before 10am.)

Releasing 8.0

  • @ibdafna to cut the release

8 Feb 2022

Attendees: @williamstein, @vidartf, @martinRenou, @jtpio, @jasongrout, @ibdafna, @ianhi

Other things that we would need/want for 8.0?

PRs for review:

Merged PRs:

7.x release

  • Martin backporting the control channel
  • 7.x minor release later this week

8.0 RC release

  • This week after two PRs above merged.

Discussion

  • Is there a project that involves building a UI with drag and drop and widgets?

  • Scipy talks

    • Tutorial going in
    • Maarten talking about building larger ipywidgets applications
    • Jason may submit a talk on core ipywidgets 8 (or maybe a lightning talk, depending on how much stuff there is)
    • Itay may submit a talk about ipydatagrid
  • ipywidgets controlling scientific instruments

    • ESRF
  • Moving state to the server side

Naive Community Questions (answers above):

Question (@williamstein): is there any existing software that let you do things like insert sliders, buttons, etc., graphically on a canvas, then generate code and uses ipywidgets to implement things under the hood? (Instead of laying everything out via code.) I'm stumbling into implementing something like this, and want to compare notes.

@martinRenou: ~~~Do you mean rendering widgets on a canvas? I remember discussing this with Wolf Vollprecht (having multiple renderers for ipywidgets: DOM, Canvas, Qt etc) this sounds hard to implement to me, but it could be possible?~~~ (misunderstood the question)

1 Feb 2022

Attendees: @jasongrout, @vidartf, @afonit, @martinRenou, @ibdafna

Grids on ipywidgets

  • qgrid seems dead, uses slickgrid
  • ipyaggrid uses aggrid, also not maintained
  • recommend ipydatagrid
  • See also glue-viz/glue-jupyter#129

Scipy

  • Deadline 11 Feb. Tutorial spearheaded by Matt
  • Maarten is writing a react-like layer on top of ipywidgets, may submit a talk

25 Jan 2022

Attendees: @vidartf, @martinRenou, @ivanov, @jasongrout, @SylvainCorlay, @ibdafna

  • Decision-making body
  • Should we merge? jupyter-widgets/ipywidgets#3335
    • Comm message protocol discussion: how do we determine if a comm target is registered?
      • A target can be registered, comms created, then the target unregistered
      • {target_name: [list of comms]}, and also return active comm targets, filtered by the target_name.
      • Jason will file a JEP proposing two changes: (Update: filed at jupyter/enhancement-proposals#86)
  • Porting 7.x widgets to 8.x
  • Consider changing the meeting time for this group?
    • Perhaps after the decision-making body is formed?

18 Jan 2022

Attendees: @vidartf, @martinRenou, @SylvainCorlay, @jasongrout, @ibdafna

11 Jan 2022

Attendees: @vidartf, @martinRenou, @SylvainCorlay, @jasongrout, @ibdafna

  • Maarten: jupyter-widgets/ipywidgets#3343

    • Bump protocol to 3.0, since there are communication channels set up in both directions. Having a browser that understand 2.0 talking to a kernel speaking 3.0 should lead to sliders jumping around (since the echo field is ignored). Having a browser that understands 3 talking to a kernel that understands 2 means that channels that are opened by the browser will be rejected since the major version number does not match in the comm_open of the kernel.
  • Martin: Updated jupyter-widgets/ipywidgets#3335

    • Needs review
    • Martin will check if there is some heuristic in comm info message to determine if comm target exists or not
    • We should make an update to the docs/ipykernel to have the comm info request have an error status if the comm target does not exist.
  • Bug fix with nbconvert jupyter-widgets/ipywidgets#3342

    • Looks good, basically adds the lab variables as a default for html manager if they are not alreadyd defined on the page
    • Could check the generated code to see if there is a difference with how the css is put on the page in the conditional

4 Jan 2022

Attendees: @vidartf, @martinRenou, @ibdafna

  • jupyter-widgets/ipywidgets#3326

  • Should we consider this for 8.0.0? jupyter-widgets/ipywidgets#3335

    • @jasongrout: I would love to see this in 8.0
  • This week:

    • Add Maarten's PR to the change log
    • Release RC0
    • Try to migrate some of our widget libraries
    • Document any changes pertaining to migrating widget packages from 7.x to 8.x
    • Document Maarten's changes to the protocol spec
    • Release RC1
    • Announce RC

21 Dec 2021

Attendees: @maartenbreddels, @ibdafna, @SylvainCorlay, @jasongrout

  • Jason: upgrading to TypeScript 4.5 has incompatibilities with older JupyterLab versions, so we hold off upgrading it in the RC.
  • Discussed Maarten's front-end sync PR. Sylvain and Itay will meet on Dec 22nd to run a a few final tests and, if not issues are found, merge and release RC0 🎉

14 Dec 2021

Attendees: @vidartf, @ibdafna, @martinRenou, @jasongrout, @real-slim-chadi

7 Dec 2021

Attendees: @maartenbreddels, @ibdafna, @jtpio, @SylvainCorlay, @vidartf, @jasongrout

Front-end sync PR:

  • jupyter-widgets/ipywidgets#3195
  • Long discussion about what this PR does, and decision to put in a default-off global switch and get it in for 8.0RC after review.

Issues:

Porting widgets to 8.0: will need to work on a migration guide. Current changelog: https://ipywidgets.readthedocs.io/en/latest/changelog.html#not-released-yet

30 Nov 2021

Attendees: @vidartf, @ibdafna, @jtpio, @SylvainCorlay

8.0 release plans

  • Currently on track. We will all try to update a 3rd-party library to support 8.0 before next week, when we plan to do an RC unless there are any blockers.
  • New convenience trait/serializers for serializing full IEEE float values (i.e., NaN and infinity)
  • Introductions
    • chadiabifadel

PRs

23 Nov 2021

Attendees: @vidartf, @martinRenou, @ibdafna,

New issues/PRs since last meeting:

Review needed:

16 Nov 2021

Attendees: @vidartf, @martinRenou, @SylvainCorlay, @jtpio, @ibdafna, @jasongrout

New issues/PRs since last meeting:

8.0 beta release party

09 Nov 2021

Attendees: @vidartf, @jasongrout, @ibdafna, @martinRenou, @jtpio

02 Nov 2021

Attendees: @jtpio, @jasongrout, @vidartf, @ibdafna

26 Oct 2021

Attendees: @ibdafna, @martinRenou, @vidartf, @jasongrout, @trungleduc

19 Oct 2021

Attendees: @jtpio, @martinRenou, @jasongrout, @sylvaincorlay

  • 8.0.0a6 on conda:

  • Bug fix jupyter-widgets/ipywidgets#3296

  • Fech all widgets in one go on the control channel: jupyter-widgets/ipywidgets#3021

  • Hold sync during set_state jupyter-widgets/ipywidgets#3271

  • Jupyter Releaser:

    • Started by David in jupyter-widgets/ipywidgets#3298
    • How do we want to version the packages?
    • Do we want to be able to release packages indepedently? ipywidgets, jupyterlab_widgets, widgetsnbextension -> Yes
    • Currently bumping versions is like a complex decision tree
      • We could start by documenting how versions are bumped. For example how to decide whether this is a minor version and what updating a given package means for the other packages that depend on it.
      • The releaser takes a spec as input. So we would have to encode the bump we would like to do, and let the bump script update the right packages.
      • There is also the protocol version as another version to consider. This one could be versioned manually.

12 Oct 2021

Attendees: @vidartf, @jasongrout, @martinRenou, @piiq, @jtpio, @ibdafna

5 Oct 2021

Attendees: @vidartf, @jasongrout, @ibdafna

28 Sep 2021

Attendees: @martinRenou, @vidartf, @jasongrout, @SylvainCorlay

  • #3280

    • Can we confidently make a minor release of widgetnbextension? Probably best to branch from last
  • #3021

    • This PR does not change the current logic for ipywidgets. It is adding a new Comm entry point for Voila to fetch all widgets models at once.

21 Sep 2021

Attendees: @jtpio, @martinRenou, @vidartf, @jasongrout, @ibdafna

  • Martin:

    • Select widget: prevent arbitrary selection if there is currently no selection and the option list changes jupyter-widgets/ipywidgets#3284
    • Doc fixing, fix "process.env is undefined" issue which prevented the HTMLManager to render widgets jupyter-widgets/ipywidgets#3283
    • widgetsnbextension: Throw an exception if the widget fails to render, this allows the Notebook to fallback on other mimetypes repr jupyter-widgets/ipywidgets#3280 (should be tested with current Notebook version/should do a Notebook version check in widgetsnbextension?)
  • Jeremy:

  • Triage for 8.0:

    • Are there any issues that will need a PR?
    • Are there any unassigned PRs?
    • Any assistance needed on assigned PRs?

14 Sep 2021

Attendees: @vidartf, @jtpio, @ianhi, @ibdafna

Triage for 8.0

  • Add dragging behaviour properties to sliders: #2834

    • Rebase + rename to american spelling
    • Merge and do a final review after having it in alpha
  • If we include #2762, we should also consider #2605

    • Current proposal: Add three new promises: attached, layedOut, shown. Then deprecate displayed, and have that resolve at the same time as attached for now (retaining its current behavior). This will allow for third-party libraries to update on their own time, but still resolve the ambiguity.

7 Sep 2021

Attendees: @jasongrout @ibdafna

31 August 2021

Attendees: @vidartf, @jasongrout, @ibdafna

Triage for 8.0:

Itay:

  • 8.0.0a6 prerelease due out this week
  • 7.1.x patch release with ipython_genutils dependency

Vidar: #2259, #2800 Itay: #3230, #3247 Jason: #2762

24 August 2021

Attendees: @vidartf, @jasongrout

Triage for 8.0:

  • Discussion around extending widgets support to JupyterLab code consoles.

17 August 2021

Attendees: @vidartf, @jasongrout, @ibdafna, @blois

Pete:

Itay:

  • TS cookiecutter maintenance - Itay volunteering, and Vidar will help him come up to speed.

Triage for 8.0:

10 August 2021

Attendees: @jasongrout, @vidartf, @ibdafna

Itay:

Vidar:

Triage:

3 August 2021

Attendees: @jasongrout, @vidartf, @ibdafna

13 July 2021

Attendees: @jasongrout, @vidartf, @ibdafna

  • @ibdafna: ipywidgets tutorial report (Monday morning at Scipy)

    • We cleaned up the tutorial repo, updated the binder, etc.
      • Didn't show some of Maarten's widgets because they weren't working
    • Went well. Generated buzz on Twitter. It was a new audience, with many people exposed to ipywidgets for the first time. About 100 attendees.
    • Need short introduction to decorators
    • The styling/layout section was a bit long. Instead, just give a few examples, then jump in with examples and day-to-day issues people will face.
    • We'll continue refreshing and rotating the list of ipywidgets libraries we are showing each year.
    • The online platform worked well, the platform worked pretty well. The platform "Q&A" section was a bit awkward to use.
    • Lots of questions, especially compared to last year.
  • ipywidgets 8.0 triage

    • Went through recent PRs, reviewed and merged some, and assigned out others.
  • https://codepath.org/ - interesting mentoring opportunity

6 July 2021

Attendees: @jasongrout, @vidartf, @jtpio,

  • ipywidgets tutorial update (next week)
  • ipywidgets community update
  • ipywidgets 8.0 triage
  • 8.0 Beta release!

29 June 2021

Attendees: @jasongrout, @davidbrochart, @ilyabo, @ibdafna

  • Welcome Itay (@ibdafna) as an ipywidgets maintainer!
  • Scipy 2021 tutorial is in two weeks, based on ipywidgets 7.6.3, JupyterLab 3.0 (Matt Craig, Itay Dafna, Mariana, Martin, Youness)
    • This year emphasizing additional widget libraries, like ipycanvas, ipycytoscape, ipydatagrid, etc.
  • 8.0a5 is out: lots of package upgrades, so please test third-party widgets
  • @ilyabo, @davidbrochart: Async widgets: we have a modified kernel now that enables async processing of widgets.
    • Each cell is launched as an async function and is launched as a task. You can run several cells concurrently. If there is purely synchronous code, it runs as normal. Essentially the top-level await is converted to an await inside an async function, so await returns control to the event loop.
    • https://github.com/davidbrochart/akernel
    • ipython/ipykernel#696
    • There is a pattern to force "synchronous" running of successive cells with await __task__()

22 June 2021

Attendees: @jtpio, @vidartf, @ibdafna, @jasongrout

15 June 2021

Attendees: @jtpio, @vidartf, @ibdafna

8 June 2021

Attendees: @vidartf, @jtpio

  • Quick update on outstanding work on 8.0

1 June 2021

Attendees: @vidartf, @jasongrout

18 May 2021

Attendees: @jtpio, @ianhi, @jasongrout,

04 May 2021

Attendees: @ibdafna, @ianhi, @vidartf

27 Apr 2021

Attendees: @jtpio, @ibdafna, @ianhi, @vidartf

13 Apr 2021

Attendees: @ianhi, @jasongrout

  • Discussions
    • Deep dive on potential of using stdin as a mechanism for blocking until a user interacts with a widget.
    • Ian will create an issue summarizing everything that can be used as a starting place for further investigations.

08 Apr 2021

Attendees: @ianhi, @jtpio

01 Apr 2021

Attendees: @jtpio, @ianhi, @jasongrout, @sylvaincorlay, @blois

25 Mar 2021

Attendees: @jtpio, @jasongrout, @vidartf

18 Mar 2021

Attendees: @jasongrout, @SylvainCorlay, @ianhi, @jtpio

What is the status of pythreejs? It is now a prebuilt extension compatible with JupyterLab 3.

Meeting times: We decided to move to a weekly meeting schedule to help development momentum, and re-evaluate the time to better accommodate those that are actually coming to the meetings. Since we're in the middle of a confusing time where some of us are on Daylight Saving time and others aren't, we'll keep the 7am Pacific Daylight Time meeting for Thursday, 25 Mar. Jason will then send out a poll for a new meeting time for a weekly meeting for the following week.

4 Mar 2021

Attendees: @jasongrout, @vidartf, @maartenbreddels, @ianhi, @ibdafna, @jtpio, @marimeireles

  • ian

    • What is advice for people who want blocking widgets
      • See https://ipywidgets.readthedocs.io/en/stable/examples/Widget%20Asynchronous.html
      • Perhaps we change the kernel protocol to allow the kernel to process comm messages even if it is not idle (for example, if a cell has an await)?
      • We could ship the utility functions in the widget async docs, and make some more examples using them. Especially with dependencies on modern Python + ipykernel, this is more feasiable than before.
      • Make async waiting easier to use - make docs more approachable, ship utility function (ian make issue)
    • Automated releasing secrets? who can add them? jupyter-widgets/jupyterlab-sidecar#62
      • We could release based on setting a tag. That makes it very easy, maybe too easy?
      • We could release based on drafting a GitHub release.
      • Ian and Jason getting together to explore this.
    • [not discussed] unify cookiecutter? #4
  • Maarten

  • Discussion

    • ipywidgets contrib
      • Perhaps open a repo or new github org. Things are merged basically automatically, with very minimal vetting.

18 Feb 2021

Attendees: Jason, Maarten, Jeremy, Ian, Sylvain, Martin, Itay

Discussion

  • widgets.register what is it for?
    • should it be default in the cookiecutter? - no
    • should be better documented - Ian open an issue.
  • Triage 8.0 issues

June 8th 2020

Attendees: Vidar, Afshin, Sylvain, Jason, Madhur, Odile, Mario

Voilà

Themes discussion:

  • Currently in JLab we only have mimerender shortcut extensions
  • Can we restrict themes to just css files and some metadata file?
  • If we needed, we could build support for css-only themes in jlab 2.
  • We'll take up the discussion in the JupyterLab dev meeting

ipywidgets

Review PRs that have had progress

  • HTML sanitization PR: jupyter-widgets/ipywidgets#2785

    • API questions:
      • user api: description_html / description_allow_html / allow_html_description
        • description_html is nice and compact, but doesn't clearly indicate that it is a boolean affecting the description attribute
        • 'allow'
      • widget manager functions: plaintext_sanitize/inline_sanitize
  • Vendoring notebooks PR: jupyter-widgets/ipywidgets#2831

    • Check if we could make a symlink in conf.py for the notebooks instead of copying.
  • Cookiecutters tend to go out of shape over time, creating stale cookies 😄 How do we ensure they stay up to date?

    • Use GH actions upon PR merge and add an item in the release check-list