Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1,726 changes: 0 additions & 1,726 deletions meeting_notes/2025/q2.md

Large diffs are not rendered by default.

297 changes: 297 additions & 0 deletions meeting_notes/2026/2026_01_jan.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,297 @@
# Matplotlib Weekly Meeting: January 2026

###### tags: `2026 dev call`

---

# January 8, 2026

_attending_: [@efiring](@QWhXj01mSwmTjk5kN1H_qQ), @tacaswell, @QuLogic, @ksunden, @timhoffm, @story645

## Agenda
- [ ] RSE updates
- [x] NASA updates
- [x] 3.11 status
- [x] 3.10.8 / build overhaul status - RELEASED
- [x] [name=@rcomer] Trial [Discourse Chat](https://meta.discourse.org/t/discourse-chat/230881) as replacement for Gitter?
- [x] [name=@hannah] GSOC: backend API improvements
- builds on [versioning](https://github.com/matplotlib/matplotlib/pull/30777)
- [GraphicsContext data classes](https://github.com/matplotlib/matplotlib/pull/30811)
- [fonts](https://github.com/matplotlib/matplotlib/issues/30890#issuecomment-3690830981)
- [x] Docs are getting big on digital ocean

## Notes
### RSE updates
* Melissa
- starting this week!
* Tom
- very busy, some grant management
* Kyle
- Purchased some ARM machines with money from pevious grant
- linux on ARM is harder than we expected
* Elliott
- not much over break
- review a few things, update freetype and harfbuzz
- few minor changes that are improvements

### NASA updates
- Starting to spend money on ROSES 2024
- Y2 funds are in-process
- need to write grant report on ROSES 2020

### 3.11 status
- still need to review Antony's PR
- image resampling PR affects some text images
- one in, one pending
- widget canvas handeling PR was not enough
- aim for RC end of next week
- Elliott is release manager
- https://github.com/matplotlib/matplotlib/pull/30777 (reviewed and merged)
- https://github.com/matplotlib/matplotlib/pull/30871/changes (reviewed)
- https://github.com/matplotlib/matplotlib/pull/30886 (reviewed and merged)

### chat in discourse?
- no love of element/gitter expressed
- proposal:
- turn discourse chat on
- redirect conversation from gitter -> discourse for a month
- posts made and pinned on matplotlib/community/incubator
- at end of month either turn it off or document and shutter element channels
- Turned it on and created 3 channels
- @rcomer should weigh in on how to further organize

### 3.10.8

- out and merged up
- publish removed from the main repo
- need to double check that the trusted publisher from the main repo removed on pypi side
- publishing from external repo worked

### docs too big
- checked out docs are now 32G+
- running out of disk space on venus (our file server)
- git seems to be doing a very good job at compression (the `.git` folder is 6-7G)
- to get out of the jam we will prune old micro docs for non-current releases and replace with permenant redirects in caddy.
- can get back if we _really_ need it
- will buy us some more time before we run out of disk again
```
163M 1.2.1
196M 1.3.0
173M 1.3.1
249M 1.4.0
249M 1.4.1
249M 1.4.2
189M 1.4.3
230M 1.5.0
236M 1.5.1
233M 1.5.3
205M 2.0.0
203M 2.0.1
204M 2.0.2
134M 2.1.0
126M 2.1.1
143M 2.1.2
146M 2.2.0
174M 2.2.2
169M 2.2.3
168M 2.2.4
173M 2.2.5
183M 3.0.0
152M 3.0.2
172M 3.0.3
169M 3.1.0
200M 3.1.1
191M 3.1.3
194M 3.2.0
201M 3.2.1
199M 3.2.2
285M 3.3.0
288M 3.3.1
285M 3.3.2
290M 3.3.3
298M 3.3.4
300M 3.4.0
301M 3.4.1
301M 3.4.2
301M 3.4.3
579M 3.5.0
628M 3.5.1
627M 3.5.2
628M 3.5.3
606M 3.6.0
606M 3.6.1
588M 3.6.2
589M 3.6.3
626M 3.7.0
631M 3.7.1
629M 3.7.2
629M 3.7.3
573M 3.7.4
629M 3.7.5
658M 3.8.0
659M 3.8.1
659M 3.8.2
662M 3.8.3
662M 3.8.4
594M 3.9.0
595M 3.9.1
602M 3.9.2
555M 3.9.3
571M 3.10.0
572M 3.10.1
572M 3.10.3
572M 3.10.5
573M 3.10.6
573M 3.10.7
573M 3.10.8
```
- Dropping 1.x and 2.x will save 2.7G
- Dropping 3.0.x is 334M
- Dropping 3.1.x is 368M
- Dropping 3.2.x is 395M
- Dropping 3.3.x is 1.2G
- Dropping 3.4.x is 901M
- Dropping 3.5.x is 1.8G
- Dropping 3.6.x is 1.8G
- Dropping 3.7.x is 3.1G
- Dropping 3.8.x is 2.6G
- Dropping 3.9.x is 1.8G
- Dropping 3.10.x is 3.4G

### GSOC backend project
- hard part is the design phase - how
- moving backend function signatures from parameter list to data class of backend parameters
- in fonts, all the new feautures only available indirectly
- drawing text as last parameter takes text object
- measurement doesn't take text object so can't compute directly
- is likely a medium sized GSOC project, w/ a lot of testing work
- @tacaswell has some concerns about this not having enough concrete upside for the cost of the code churn
- alternative idea
- PR 30516 / issue [30515](https://github.com/matplotlib/matplotlib/issues/30515)
- how to push more "native" overlays into the backends to allow cross hairs and similar
- try out new scheme for passing things into the backend using dataclasses as entry point to using the pattern in the backend

---

# January 15, 2026

_attending_: [efiring](@QWhXj01mSwmTjk5kN1H_qQ), @ksunden, @QuLogic, @melissawm, @story645, @ayshih, @timhoffm

## Agenda
- [x] RSE updates
- [x] NASA updates
- [x] 3.11 status
- [x] review Albert's PRs
- [x] [Accuracy bugs with image resampling ](https://github.com/matplotlib/matplotlib/pull/30184) - sig changes post review
- [ ] [name=timhoffm]review [blitting errors in {check, radio} button widgets](https://github.com/matplotlib/matplotlib/pull/30945)

## Notes
### RSE updates
- Melissa
- getting re-onboarded
- discovering build issues
- thinking about triage team and how to get recruitment going
- Elliott
- writing statement of work
- waiting on responses from @tacaswell to start contract process
- alt-text is almost done, but needs some finishing touches
- Kyle
- still waiting on contract
- little bit of issue review
- setting up hi-dpi monitor
- Tom
- little mpl work, swamped with other things

### NASA
- contracts are moving

### 3.11
- still holding on Antony's PR
> https://github.com/matplotlib/matplotlib/pull/30059?
- need to check one last thing and merge
- need to check do a scan thourgh one final time to make sure that nothing changes by too much
- https://github.com/matplotlib/matplotlib/pull/30945
-
### image resampling
- grid lines and pixel lines not lining up w/ non-affine transforms
- this PR loosens tolerances to avoid updating baseline images, gets resolved by font prs
- text changes b/c of change in computation of kernal used in text rotation
- 20 images had to be changed, about 40-45 loosened for text & noted with TODO
- [30824](https://github.com/matplotlib/matplotlib/pull/30824) b/c bivariate was using agg interpolator for non-viz purposes, agg takes shortcuts

### radio/check buttons
- merged
- work left in whats new & todos: not all widgets work properly after swapping canvas
- blitting should be better encapsulated, hindered by how state is stored in widgets
- store if user wants blitting and if canvas supports blitting
- use case is standalone figure that might get attached to canvas

---

# January 22, 2026

_attending_: [efiring](@QWhXj01mSwmTjk5kN1H_qQ), @melissawm, [@anntzer](@pXw4hSgTQF2--OciPYwa1w), @story645, @ksunden, @tacaswell, @scottshambaugh, @timhoffm , @QuLogic

## Agenda
- [x] RSE updates
- [x] NASA updates
- [ ] 3.11 status

## Notes

### RSE updates
- Tom:
- minimal work, in operation/project
- Melissa: Created a doc for discussion around triage team: https://hackmd.io/@matplotlib/r1g8K31Ubx
- [ ] Melissa to create a subcategory on discourse for maintainers to add/nominate people to the triage team
- [ ] Melissa to figure out a way to add AI use disclosure/information on docs
- [ ] Caswell will investigate GH group permissions / external contributor for triage
- Kyle:
- still waiting on contract
- mostly review/issue

### NASA
- slow progress
- final report for previous roses is due in April

### 3.11
- [#30059 drop intermediate buffer](https://github.com/matplotlib/matplotlib/pull/30059)
- blockers:
- design decision is wrong, properly would be to have intermediate buffer in different position
- slight issue around positioning fraction bars when drawing math
- want to draw fraction bars exactly on pixel, requires controlling snapping better
- accept snapping b/c improvement over fuzzyness
- bars are slightly too low/high/wrong position - fix is figure out if floor or ciel rounding
- bar positioning issue is independent of buffer
- is here to avoid regenerating all the fraction images
- maybe kick fraction image regenerating down the road
- ok w/ edge case of overlapping glyphys?
- yes
- consensus: should go in, put buffer positioning and fraction bar on "nice to have" stack

- [#30974 widget blitting](https://github.com/matplotlib/matplotlib/pull/30974)
- not sure if problen is in MNE tests, widget blitting code, or base canvas API (vs Gui canvas API)
- fire events where handler forces a draw that asks for a renderer that the base canvas doesn't have
- MNE is holding a canvas reference that calls for a non-existent canvas

## other PRs
- [#30974 right click context menu](https://github.com/matplotlib/matplotlib/pull/30976)
- turn off able b/c other tools provide context menu
- general API figure.add_context_menu + callback
- squeeze into toolbar?
- add hamburger to toolbar w/ additional tools likes context menu
-[#30980 log axes on 3d plot](https://github.com/matplotlib/matplotlib/pull/30980)
- needs reviews, would fix oldest open bug!

---

# January 29, 2026

_attending_: [efiring](@QWhXj01mSwmTjk5kN1H_qQ) @ksunden @QuLogic @tacaswell

## Agenda
- [x] RSE updates
- [x] font discussions

## Notes
All PR review
Loading