# Q4 2020 / Weekly Sync ###### tags: `minutes` ## Minutes HackMD: https://hackmd.io/@bokeh/HksuIro8v GitHub Archive: [minutes/weekly-sync/2020-Q4.md](https://github.com/bokeh/pm/blob/master/minutes/weekly-sync/2020-Q4.md) ## Links * [October](#October) * [November](#November) * [December](#Devember) --- # December * [30-Dec](#30-Dec) * [23-Dec](#23-Dec) * [16-Dec](#16-Dec) * [09-Dec](#09-Dec) * [02-Dec](#02-Dec) ## 30-Dec *Attending: Bryan, Carolyn, Mateusz, Pavithra* ### Agenda - CZI works starts next week ### Updates #### Mateusz - finished redesign of `ColorBar` using the layout - finalizing work on axis labeling #### Bryan - no real updates, looking into build warnings ### Actions - [ ] (bryan, mateusz) find issues for makepath - [ ] (pavitrhra) ping makepath about future meetings ## 23-Dec *Attending: Mateusz, Pavithra* ### Agenda ### Updates #### Mateusz - finalizing redesign of `ColorBar` using the layout - need to finish alignments and central layout - introduced layout debug mode (wireframe mode) - experimental redesign of `Legend` annotation on top of this (not a part of the PR) - submitted a PR introducing a unified data model for renderers - as a side effect arrow heads, line dash etc. are now vectorizable - unified async hatch pattern loading with image URL glyph's approach - still working on axis labeling - fixed/finished partial rendering (with glyphs on different layers) - full support for configurable rendering layers will come in 2.4 - finalizing work context menus - enabled a "trial" run of GitHub discussions #### Pavithra - no updates ### Actions - [ ] (Pavithra) Document Github discussions ## 16-Dec *Attending: Bryan, Carolyn, James, Mateusz, Marco, Pavithra* ### Agenda - GitHub Discussions - creating an issue to discuss further - Release schedule - Early January ### Updates #### Mateusz - redesigned `ColorBar` to use layout and other basic components - allows to use proper axes instead of the limited custom implementation - added support for categorical color bars - finishing work on performance regression fixes - finishing work on axis labeling improvements - fixed selective repaint on different layers #### Marco/Brendan - Brendan presented on the CZI Conference on Thursday. Link: https://zenodo.org/record/4317718#.X9otcthKiUk - Created a template for slide decks based on the CZI presentation. We need to discuss how to share with the community: https://docs.google.com/presentation/d/1d_HkuNUfXbCGJ3L3NbYRGN2FUntRYpC74qk1XIw-3Fk/edit?usp=sharing #### Bryan - Attended CZI kickoff - Issue/Discourse triage #### Pavithra - Attended CZI meeting - Looked into JOSS publicaitons #### Carolyn - Embedding in Angular (etc.)-- learned what DOESN'T work - SO/Discourse #### James - Blackstone funded Mateusz's work ### Actions - [ ] (Pavithra) Share details about JOSS w Bryan and James - [ ] (Marco, Byran) discuss sharing slide template / brand page - [ ] (Mateusz) Create issue for GH Discussion for dev ## 09-Dec *Attending: Brendan, Marco, Mateusz, Philipp* ### Agenda - GitHub Discussions - Release: - Once various regression fixes are in we can proceed with code freeze ### Updates #### Mateusz - finalized color support improvements PR - CSS4 color syntax support - support for various types of ndarrays - support for lists of RGB(A) tuples and integers - working on fixing performance regressions - introduced "uniform" objects (terminology borrowed from WebGL) - can be used for all specs, not just visuals - replacing `ColorBar`'s custom "axes" with `Axis` - needed take advantage of labeling improvements - attempted to fix `Rect` point hit testing (`angle != 0` ) - found log case is broken as well - fixed various `DataTable` issues - fixed multiple recent regressions #### Brendan - Attending CZI conference (presenting Thursday) - Will start by making a video tutorial for setting up a bokeh dev environment #### Philipp - Working on Tabulator based DataTable (see https://anaconda.org/pyviz/tabulator/notebook) ### Actions ## 02-Dec *Attending: Brendan, Bryan, Carolyn, Marco, Mateusz, Pavithra, Philipp, Timo* ### Agenda - Python 3.6 schedule? - https://github.com/bokeh/bokeh/wiki/BEP-9:-Downstream-Version-Support - https://github.com/bokeh/bokeh/issues/10558 - Release status - 3 showstoppers, looking at ### Updates #### Bryan - PR and milestone triage - Helped finish Python 3.9 CI issues - Discussed CZI presentation LaTex #### Brendan - working CZI presentation - met with Mattpap to discuss LaTeX integration and CZI priorities #### Carolyn - PR in for legend-by-size, but needs more work for mixed use cases #### Mateusz - added support for Less/CSS to extensions - added support for user supplied licenses to extensions - publishing npm packages in deploy workflow - published 2.3.0dev8 - redesigned (simplified) inclusion of CSS modules - fixed arrows' clipping issues - cleaned up the issue tracker a bit (stale issues, etc.) - working on a PR fixing performance and precision-loss regressions #### Philipp - Fix for SRI hashing for extensions - Testing 2.3 Holoviews & Panel #### Pavithra - Microscopium demo - Submitted a Bokeh workshop for Outlier conf #### Marco - Working on CZI / examples, talked with Jim Bednar ### Actions --- # November * [25-Nov](#25-Nov) * [18-Nov](#18-Nov) * [11-Nov](#11-Nov) * [04-Nov](#04-Nov) ## 25-Nov *Attending: Bryan, Carolyn, Marco, Mateusz, Pavithra, Timo* ### Agenda - Code freeze - freeze at next meeting 11/3 ### Updates #### Mateusz - finalized migration from marker models to scatter glyph - added support for user proveded licenses to extensions - resolved most problems with Python 3.9 - isort still needs sorting out - awkward failures of `test_filters` (`bokeh/test___init__.py`) - fixed a bug in SVG canvas' `drawImage()` - fixed SVG export of layouts containing `ToolbarBox` - fixed starting of headless chrome in examples' tests - reuses bokehjs' test framework - added support for `Tool.description` - replaces `action_tooltip`, `help_toolip`, `custom_tooltip` - perhaps apply the same to custom icon properties - added support for generating ESM bokehjs bundles - switched bokehjs' examples to use ESM - lays the ground work for robust multiple bundle support - added module cycle detection and fixed most problematic cases - addes support gesture preference to `TapTool` - fixed `MultiChoice` widget's dropdown menu `z-index` - continued work on axis labeling, colors and performance regressions #### Carolyn - Working on legend by glyph size; interesting edge cases requiring decisions came up in testing. Will submit PR - NF updates #### Bryan - PR reviews - Fixed conda-build issue breaking CI - Got demo of extensive Bokeh app from colleague #### Marco - Working on the CZI presentation #### Actions ## 18-Nov *Attending: Bryan, Jim, Mateusz, Pavithra, Philipp, Brendan* ### Agenda - Grant announcement is tomorrow! - Bokeh 2.3 release planning - Code freeze end of November (30th) ### Updates #### Mateusz - experimented with webgl rendering of `Scatter` glyph with variadic marker types - refactored webgl shader code for ease of development - auto-wrap in JS modules in the build - dropped marker glyphs in favour of `Scatter` glyph - avoid confusion between `X()`, `Scatter(marker="x")` and `fig.x()` - adds support for webgl rendering to `Scatter` glyph (only for uniform marker type) - improvements to color management - support passing colors as ndarrays (e.g. `uint8[N, 4]` for RGBA) - improved memory layout of color buffers in webgl (normalized `uint8` vs `float32`) - support for parsing CSS4 colors (e.g. `#RRGGBBAA`) - continued work on compiler improvements (for extensions) - attempted to resolve Python 3.9 compatibility issues #### Pavithra - Grant announcement blog - Pydata global sprint #### Bryan - PyData Global Sprint - PR Reviews - Dev Release #### Jim - Presentation at Texas GIS Day and Python Austin meetup #### Brendan - Working on Bokeh presentation - Set up Google Drive to manage collaboration on CZI work - Getting set up again #### Philipp - Started evaluating bokeh 2.3 dev releases against Panel/HoloViews #### Carolyn - Working on LinkedIn posts - Adding size legend ### Actions - (Bryan) Talk to a Ajay about cuXFilter downstream tests - (Mateusz/Brendan) Schedule meeting to discuss progress on SVG and kick things off ## 11-Nov *Attending: Bryan, Carolyn, Mateusz, Pavithra, Philipp, Timo* ### Agenda - CZI Announce - 19th Nov - 2.3 Release schedule - code freeze: end of month (30th Nov/1st Dec) ### Updates #### Bryan - Support questions - PR reviews - Surfacing examples from the repo to the docs #### Pavithra - Funding blog - Pydata global this weekend #### Mateusz - another approach to redesign of `set_data()` and visuals - upgraded to TS 4.1 RC to use new fancy type system features - fixed a regression in the new bokehjs' serializer - add support for `grad` and `turn` CSS angle units - simplified angle handling code paths - Build / bundling improvements - will support ES6 packages, etc #### Carolyn - 2.3 blog post ### Actions - (Bryan) new Dev build out today - (Mateusz) publish jupyter bokeh ## 04-Nov *Attending: Mateusz* ### Agenda - 2.3 release schedule / status ### Updates #### Bryan - Infra work - resized Discourse droplet after difficult software upgrade - re-launched demo site after reliability notifs - converted NPMJS "bokeh" account to be organization - 2.3.dev5 pushed #### Mateusz - finalized `PlotView` refactoring (needed for other work) - finalized work on `BinnedTicker` - fixed innacurate font measurements - improved font preload in tests - continued work on labeling of axes - fixed invalidation of ``HoverTool``'s computed renderers - fixed a memory leak in promisified signals - improvements to signaling module - implemented proper views for `ArrowHead` models - updated bokehjs' dependencies (dropped mocha) - auto-generate `index.ts` files in bokehjs' tests - early work in progress improvements to module linker - support for LESS/CSS in the "new compiler" - multiple bundle support --- # October * [28-Oct](#28-Oct) * [21-Oct](#21-Oct) * [14-Oct](#14-Oct) * [07-Oct](#07-Oct) ## 28-Oct *Attending: Bryan, Carolyn, James, Jay, Mateusz, Pavithra, Philipp, Timo* ### Agenda * Grant status ### Updates #### Bryan - grant work (meetings, emails, questionaires) - fixed BokehJS version issue failing all tests - release automation tweaks #### Mateusz - continued work on axis labeling - implemeting various labeling policies - redesigned serialization API/scheme in bokehjs (and partially in bokeh) - decoupled serialization from `HasProps` and partially from `Document` - prepares ground for future protocol improvements (e.g. unify `NaN` handling) - improved coverage and robustness defaults' tests as a side effect - made `api.plotting.show()` to wait for `DOMContentLoaded` event - fixed double escape regression (issue #10604) - re-typing resolved/materialized arrays in glyph views (issue #10594) - investigating implementing views (model state) for viewless models (issue #10582) - allow to make bokehjs' models resuable (node.js, workers) (e.g. `WebDataSource.setup`) - don't expose bokehjs' state and internal implementation details (e.g. syntentic coordinates) - keep public model properties in sync between bokehjs and bokeh (see e.g. `Range.bounds`) #### Pavithra - Working on the contributing guide - Reached out to Data Umbrella to include Bokeh in their OSS resources #### Philipp - Fix to Jupyter Bokeh - Writing about Panel-Bokeh extensions #### Carolyn - Working on glyph-size legend (blocker, sort of, on FDV) - New showcase: scatter of demographics in Belgian election ### Actions - [ ] *(Carolyn, Pavithra) Statement of Interest for Nasa* - [ ] *(Pavithra) GH issue about pydata-sphinx-theme* - [ ] (Pavithra) Grant related blog post ## 21-Oct *Attending: Bryan, Carolyn, Mateusz, Pavithra, Philipp, Timo* ### Agenda - BEP 9 (versioning) - https://github.com/bokeh/bokeh/wiki/BEP-9:-Downstream-Version-Support - 2.3 release plans/schedule - mid to late Nov ### Updates #### Bryan - Release 2.2.3 - Bug triage - Release automation (mostly done now) - Remove Bokeh from nbviewer front page #### Mateusz - continued work on data models and related concepts - experimental new serializer (e.g. with unified handling of objects) - started working on testing serialization code and protocol - use dataclasses for structs instead of plain dicts - finalizing work on more robust axis labeling - allow labels to be generic graphics objects (e.g. text label with an image) - multiple policies for reducing label intersections - experiments with generating code from bokehjs' models - related to serialization/protocol work - experimenting with Julia bindings (revive Bokeh.jl) - minor improvements to bokehjs' code quality - fixed regression #10589 (multiline glyph with filters) #### Pavithra - Found potential NASA grant for support for OSS #### Philipp - working on Panel release (today) #### Carolyn - Working on FDV plots for blog post - ran in to legend fo glyph size issue ### Actions - [x] (Carolyn) Talk to NF about NASA grant - [ ] (Carolyn, Pavithra) Statement of Interest for Nasa - [ ] (Pavithra) GH issue about pydata-sphix-theme ## 14-Oct *Attending: Bryan, Pavithra, Philipp, Mateusz, Timo* ### Agenda ### Updates #### Mateusz - preliminary support for data models and variables - preliminary support for CustomJS and symbolic expressions - added support for categorical ranges to annotations (e.g. Whisker) - continuing work on a more robust tick labeler and axis modularization #### Bryan - Release 2.2.2 - Bug triage - Release automation - Small issues like hatching, etc #### Timo - Style guidelines showcase #### Pavithra - Contributing guide #### Philipp - Panel release - Talk at JupyterCon ### Actions ## 07-Oct *Attending: Bryan, Carolyn, James, Mateusz, Pavithra, Philipp, Timo* ### Agenda - [PyCascades 2021 Remote](https://pretalx.com/pycascades-2021/cfp) - CFP closes Nov 10 - Mentored sprints? - Milestone BEP - https://github.com/bokeh/bokeh/wiki/BEP-6:-Branching-Strategy - Vote thumbs up/down https://github.com/bokeh/bokeh/issues/10177 ### Updates #### Bryan - no upates - will cut 2.2.2 release today #### Philipp - 2.2.2 Milestone #### Carolyn - working on some FDV notebooks #### Pavithra - looking at PyCascade #### Mateusz - continuing working on ongoing work ### Actions