# 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