# Matplotlib Weekly Meeting:
**A regular sync meeting for the project's maintainers, which is open to the community.** Everyone is welcome to attend and contribute to conversations.
## Sep 11 2025 -
###### tags: `2025 dev call`
Call co-ordinates: Thursdays @ 21:00 (9:00PM) Berlin time (20:00 UTC during winter, **19:00 UTC during summer**)
[<h1 style="text-align: center;">Zoom link</h1>](https://zoom.us/j/384435716?pwd=WFpxVWxoYXArTDFzN1lWaHNoOE8xZz09)
### [Find your time](https://time.is/2100_3_April_2025_in_Berlin/UTC/New_York/MT/Vancouver/Hawaii?matplotlib_weekly_meeting)
**NOTE** Open PR to adjust time next day light savings change, times must be in UTC [scientific python mpl calender entry](https://github.com/scientific-python/scientific-python.org/blob/main/calendars/matplotlib.yaml)
---
Previous notes: [Meeting Agendas](https://hackmd.io/zljR-pZrQ0O5J_j4NZ-9yw)
Archive: [matplotlib/ProjectManagement](https://github.com/matplotlib/ProjectManagement)
#### [projects](https://hackmd.io/@matplotlib/projectslist)
#### [RSE worklog](https://hackmd.io/@matplotlib/HyVoUHlSo)
---
# Feb 05
_attending_: [efiring](@QWhXj01mSwmTjk5kN1H_qQ), @ksunden, @tacaswell, @melissawm, @story645, @greglucas, @timhoffm, @QuLogic, @scottshambaugh, @ayshih,
## Agenda
- [x] RSE updates
- [ ] 3.11 updates
- [ ] context menus vs menu bars
- [x] [name=hannah] GSOC
- [x] move away from pre-commit to prek
## Notes
### RSE updates
- Melissa
- Hannah created the Discourse category https://discourse.matplotlib.org/c/staff/private-discussion-about-nominations-to-the-triage-team/23
- Created PR to fix new contributor bot: https://github.com/matplotlib/matplotlib/pull/31090
- Created PR to fix docs on triage team nomination instructions: https://github.com/matplotlib/matplotlib/pull/31089
- Tom
- mostly paperwork, some review
- Kyle
- PR review, moving 3.11 along
- Elliott
- mostly font things
- cleaned up docs server
- a big and un-useful space was the dev-docs
- tried tuning the reflog / gc on all of the repos
- Greg
- no work
### move away from pre-commit to prek
- https://github.com/matplotlib/matplotlib/pull/31081
- faster to setup, runtime about the same
### GSOC
soft-missed the NF deadline, but try anyway:
- https://github.com/numfocus/gsoc/pull/565
projects to propose:
- pull "relative" transforms out of annotate
- ~pull all style information into a dataclass hanging off the object (aligns well with dataprototype)~ too much design work
- add a first-class "overlay" layer API for interactive backends
- leave "choose your own adventure"
### context menu vs menu bar
- https://github.com/matplotlib/matplotlib/pull/30976
- add the ability have a right-click context menu
- concern is that users have already added their own context menus and we need to be careful about breaking user
- also concern that right-click is not availble on all platforms
- next idea was to move everything to the menu bar
- discovered issue: how does this map to sub-plots
- "magic wand" like pan/zoom
- dropdown menu of subplots (may be confusing with badly named subplots)
- broadcast to all applicable subplots
- rely on current axes
- if we have overlay infrastructure can do "hot corners"
- do "locked and discrete" motion (like x/y lock pan/zoom)
- we have roll now through mouse so might be hard
- hold control to snap to nearest 5 deg on top of current rotation
- add something like the blender gizmo in corner, put into that
- add "turn on context menu button" to menu bar
- works, but awkward user experiance
- put into the Qt plot updater
- propbly would require porting to atleast tk and macos
- could take the position that if we create the figure window we can control the context menu
- maybe go with this option with:
- rcparam and API to turn off all together
- detect if the user registers a right-click and remove ours + warn (with knob to supress the warning)
CONSENSUS
- try menu that turns itself off on detecting conflict
- create issue to snap 3D navigation anyway
### very fast fonts
- re-review 31046 now matches the constasts from LaTeX
- https://github.com/matplotlib/matplotlib/pull/31046#issuecomment-3846257438 is the font people will see the most, but latex in dejavu does not support math text
# Jan 29
_attending_: [efiring](@QWhXj01mSwmTjk5kN1H_qQ) @ksunden @QuLogic @tacaswell
## Agenda
- [x] RSE updates
- [x] font discussions
## Notes
All PR review
# Jan 22
_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!
# Jan 15
_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
# Jan 8
_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
# Dec 18
_attending_: @QuLogic, @greglucas , [@efiring](@QWhXj01mSwmTjk5kN1H_qQ)
## Agenda
- [x] RSE updates
- [x] NASA updates
- [x] 3.11 status
- [x] 3.10.8 / build overhaul status
- [ ] triage
## Notes
### RSE updates
- Elliot
- Rebased intermediate buffer work, looking into results of that
- Worked on the WASM stuff as well
- Question about RFB Buffer work and the status of that.
- May require JupyterRFB as a dependency
- If we do the toolbar, might need ipywidgets as well
- Might be some issues with closure and not saving the final state when done with the cell
- Could do some optional dependency magic similar to qt and other backends but a little more complex because of the Jupyter integrations
- Greg
- Some Cartopy reviews, not spending much time on the project currently
### 3.11 status
- Primarily waiting on font work reviews
- #30161 has been updated and is the final PR to look at full integration
- No glaring bugs that Elliot has seen in the text rendering
- Might be nice to fix/figure out fraction bar differences
- Discussion about Agg resampling PRs
- [name=greglucas] asked a question about whether we are waiting too long for 2 reviews on complex issues where it might be hard to get 2 experts to review something. Should we instill more trust in the first reviewer / author if they are a core contributor?
### Triage
Some review of widget PRs and text / Agg PRs. Discussion about DPI handling and moving that to the canvas, a logical pixel intermediate and implications of doing so.
### Next meeting
Likely not many people on the next two calls with Christmas and New Year holiday.
---
# Dec 11
_attending_: @tacaswell, @ksunden, @QuLogic, @story645, [@efiring](@QWhXj01mSwmTjk5kN1H_qQ)
## Agenda
- [x] RSE updates
- [x] NASA updates
- [x] 3.11 status
- [x] 3.10.8 / build overhaul status
- [x] [name=hannah]GSOC 2026: org apps Jan 19 - Feb 3
- [ ] triage
## Notes
### RSE updates
- Kyle
- cleaning up containers PR
- 3.10.8 on pypi from dedicated release repo
- need to do docs still
- Tom
- small review
- Elliott (as volunteer)
- some review
### NASA updates
- waiting on NASA side for some things
- buying 3 arm boxes and 1 high-dpi monitor on remaining grant funds
### 3.10.8
- on pypi with trusted publisher
- few clean up tasks
- merge up branches on building repo
- remove publishing code workflow from main
- document new release process
### 3.11
- still just the font stuff
- waiting on intermediate buffer PR
- don't have good image diffs to see what the difference are
- :+1: to use snapping to control snapping
- Issues with fraction bar placement still outstanding
### GSOC
- time to start thinking about what projects we want
- ideas
- pull the relative / offset code in annotations into reusable transforms
- [IndirectTransform](https://github.com/matplotlib/matplotlib/issues/22223#issuecomment-1011957191)
- @tacaswell is supportive of this
- pull others from medium scale projects: [projects page](https://hackmd.io/d4jJmDiKR2G4DAM4nVZTtA?stext=862%3A67%3A1%3A1765484613%3Ah94Zi0&edit=)
### triage
- https://github.com/matplotlib/matplotlib/pull/30750
- https://github.com/matplotlib/matplotlib/pull/30835
- https://github.com/matplotlib/matplotlib/pull/30533
- https://github.com/matplotlib/matplotlib/pull/30815
- https://github.com/matplotlib/matplotlib/pull/30808
- https://github.com/matplotlib/matplotlib/pull/30775
- https://github.com/matplotlib/matplotlib/pull/29093
# Dec 4
_attending_: @tacaswell, @greglucas, @ksunden [@efiring](@QWhXj01mSwmTjk5kN1H_qQ), @QuLogic, @story645
## Agenda
- [x] RSE updates
- [x] NASA updates
- [x] 3.11 status
- [x] 3.10.8 / build overhaul status
- [x] containers-on-main status
- [x] triage
- [x] [backend versioning](https://github.com/matplotlib/matplotlib/pull/30777)
- [x] [font collections]( https://github.com/matplotlib/matplotlib/pull/30334)
## Notes
### NASA
- grant 1 expires in dec
- post some kind of public report/summary to link from matplotlib.org
- Melissa and Greg start in Jan, now respectively
-
### RSE updates
- kyle
- dataprototype work
- makeing sure later design work feed into first implementations
- goal of draft PR opened by Dec 15
- Tom
- project / grant management
- Greg
- reviewing cartopy
- starting work on adaptive re-sampler
- Elliott
- keeping font work going
- finally have reproducer for a very old font issue
- working on getting reviews out
### 3.11
- still waiting on fonts
- 2 outstanding PRs
- all fonts from collection: https://github.com/matplotlib/matplotlib/pull/30334
- drop intermediate buffer: https://github.com/matplotlib/matplotlib/pull/30059
- 1 possible isuse with bars
### 3.10.8 / build process refactor
- waiting on reviews
- 2 reviews from steering council on policy
- one technical comment with improved configuration
- is configured so release only uploads/pushes tag after all jobs succeed
- run w/ upload pointed to tag is standalone process
-
- needs documentation about which teams have access (@release-managers, @steering-council)
- questions about how cibuildwheel configurations cascade
- config in toml?
- optional for 3.10.8, do it for 3.11
### dataprototype work
- making progress, sorting out what nice helper methods are needed.
### triage
- [backend versioning](https://github.com/matplotlib/matplotlib/pull/30777)
- version backends so that third-party libraries know when Backend API signature changes
- useful for fonts work, threading hatchcolors through, updating the backend
- use mpl version vs. standalone semantic versioning
- question on what's the best way to implement this
- who has to sign off? defer to @timhoffm
- font in collections:
- current path looks for and opens font
- PR adds in subclass of strings called `FontPath` that:
- keeps stringpath
- adds index for font
- now in fontmanager, now searches for ttc, ask freetype for # faces (fonts)
- loads subfonts + adds to fontmanager
- allows user to request subfonts
- change: if they call findfont, will get back the FontPath object rather than the string path
# Nov 20
_attending_: @tacaswell @story645 @trygve @ksunden
## Agenda
- [x][name=hannah] triage backlog
- use meetings w/ no agenda as triage meetings/use first 15 minutes for triage
## Notes
- triaging multivariate norm
# Nov 13
_attending_: @ksunden @tacaswell @QWhXj01mSwmTjk5kN1H_qQ @story645
short meeting, ended early
## Agenda
- [x] RSE
- [x] 3.10.8
## Notes
### 3.10.8
- cibuildwheel failed due to pillow not having wheels for pypy310, we did not pin to binary only so we failed on missing jpeg libarries
- moving to external cibuildwheel repo sooner rather than later to re-build
- discovered that we have dropped including vendored license files in sdist/wheels
### RSE updates
- Kyle
- 3.10.8
- working on collections
- Tom
- some issue review
- took vacation/holiday
-
### containers / compound artists
- https://github.com/matplotlib/matplotlib/pull/30733#issuecomment-3506119332
- need to make sure is synced with Kyle's work
# Nov 6
_attending_: @ksunden @story645 @tacaswell @QWhXj01mSwmTjk5kN1H_qQ (Eric Firing)
## Agenda
- [x] RSE
- [ ] 3.11
- [x] 3.10.8
## Notes
### RSE
- Kyle
- dealing with DPI things in collection
- paper work
- Tom
- some review
- Contract with Quansight has been signed, work to start soon
- Elliott
### 3.10.8
- intend to tag tomorrow, everything that is going in has gone in
### short meeting
# Oct 30
_attending_: @ksunden @QuLogic @story645 @tacaswell
## Agenda
- [x] RSE
- [x] 3.11 status
- [x] 3.10.8
## Notes
### RSE updates
- Kyle
- Making progress on containers on main work
- most problems understood, but not fixed yet
- Tom
- on travel last week, catching up on other work this week
- Elliott
- mostly working on 3.11
- font stuff is waiting for review
- progress on dropping the intermediate buffer PR
- need to open PR for alt-text
### 3.11 status
- waiting on font review
- 3 or 4 open
- 7 in project
- some latex changes unrelated, can punt to 3.12
- blitting PR from @timhoffm [#30591](https://github.com/matplotlib/matplotlib/pull/30591)
### 3.10.8
- two free-threaded macOS PRs (one merged to main, waiting on backport one waiting to merge to main)
- zoom box PR needs a bit of tweaking
@ksunden will do 3.10.8 next Friday (Nov 7).
### colorizer work
- PR to expose the colorizer is merged
- next PR will expose out to top-level API
- next-next PR will require designing 2D colorbar API
# Oct 23
_attending_: @efiring, @QuLogic, @ksunden, @story645
## Agenda
- [ ] RSE
- [ ] 3.11 status?
- [ ] 3.10.8 plan
## Notes
### bivariate colormap
- discussion over putting function roll out work on its own branch
- question of whether multivar & bivar should have same interface for unpacking (self.N, self.m) vs (part.N for par in self.cmap)
### triage
- criteria for making a decision and appealing it
- what is an issue? wish list or to do list?
- incomplete PRs can be more frustrating b/c paralyze next decision
- don't want to overly eagerly close b/c alienates contributors
- so does ignoring pr
- lack non-tech criteria for evaluating a PR:
- e.g. "does it fit mission/scope/technical direction"
- criteria for reasonable next steps
- e.g. "does this PR accomplish the goals of resolving the issue"
### Watch for daylight savings time in Europe
# Oct 16
_attending_: @tacaswell, @ksunden, [@efiring](@QWhXj01mSwmTjk5kN1H_qQ), @greglucas, @story645
## Agenda
- [ ] RSE
- [ ] 3.11 status?
- [ ] 3.10.8 plan?
## Notes
### RSE update
- Tom
- minimal, busy with other stuff
- Kyle:
- progress on data-prototype-to-main work
- Greg:
- busy with other stuff
### 3.11
- waiting on fonts
- libraqm
- freetype
- alt-text
- discussion of https://github.com/matplotlib/matplotlib/pull/30334: subclassing `str` in `FontPath` avoids an API break; looks OK.
### 3.10.8
- Backported MacOS Freethreading PR
- Will wait a week or two to make a release to see if more things come in
### Meeting attendance
- Is there a better time for the meeting?
- Send an e-mail to dev list so it isn't just people on the call voting
- Look into alternating times every other week to support Asia / Europe sectors?
# Oct 9
_attending_: @ksunden, [@efiring](@QWhXj01mSwmTjk5kN1H_qQ), @story645, @tacaswell
## Agenda
- [x] RSE update
- [x][name=hannah] [release critical: restore violinplot alpha behavior #30636](https://github.com/matplotlib/matplotlib/pull/30636)
## Notes
- merge up for 3.10.7 in progress [#30646](https://github.com/matplotlib/matplotlib/pull/30646)
- AI:
- continue to be kind to contributors, watch for burn out due to workslop
### RSE
- Kyle
- 3.10.7 released!
- docs/merge up ongoing
- will let pyparsing know in our issues
- starting to look at numpy's approach to doing releases, which is to seperate out release process into stand-alone locked down release repo
- Tom
- almost no mpl, BNL operations work
### Notes
- violin plot restore previous artist alpha default, needs 2nd reviewer
- PR backlog - stalebot not working
- triage team
- needs guidance/examples
- maybe maintainers need a test run
- decisions need some level of stickiness
- triage team can summarize & flag for discussion
- maybe triage sprint on specific tasks
- needs:rebase
- status:orphan (sprint task)
- untriaged
- clean up labels to one page
- github rolling out heirarchical labels
- replace some labels with types:
- https://docs.github.com/en/issues/tracking-your-work-with-issues/using-issues/managing-issue-types-in-an-organization
# Oct 2
_attending_: @ksunden, @QuLogic
## Agenda
- [ ] RSE update
## Notes
It was just the two of us, so we just did some PR review for 3.10.7 and 3.11.0
# Sept 25
_attending_: @tacaswell, @QuLogic, [@efiring](@QWhXj01mSwmTjk5kN1H_qQ), @ksunden, @story645, [@anntzer](@pXw4hSgTQF2--OciPYwa1w)
## Agenda
- [x] RSE update
- [x] https://github.com/matplotlib/matplotlib/pull/29998
- [x] https://github.com/matplotlib/matplotlib/pull/30591
- [x] https://github.com/matplotlib/matplotlib/pull/30184
## Notes
### RSE updates
- Tom
- some review
- Kyle
- continuing down collection + data contanier work
- working on the vector of paths for PathCollection
- Elliott
- moving along with fonts
- working on review to get everything else for 3.11 done
- will work on alt-text
-
### PR review
- [30184: image resampling accuracy](https://github.com/matplotlib/matplotlib/pull/30184)
- linear upsampling, array of weights shifted by one
- accept higher tolerances on texts, @qulogic will fix in image regeneration
- [30591: widget blitting compatible with swapped canvas](https://github.com/matplotlib/matplotlib/pull/30591)
- semantics of blitting w/ transparency is not well defined
- potentially make background RGBA
- add/expose? restore_background functionality
- [29998: head resizing for arrow boxstyle](https://github.com/matplotlib/matplotlib/pull/29998)
- padding isn't constant/consistent - should it be?
- changing angle of arrowhead means text could go out of bounds
- instead keep all text in arrow body
- images change in tests
- suggestions:
- no margin
- algorithm: pin middle instead of tail for padding computation
- accept there's a jump
- consensus: @tacaswell will post on PR
- fixed padding always
- algorithm to always make it fit
- DVIPNG PR waiting on intermediate buffer PR
# Sept 18
_attending_: @tacaswell, @efiring, @ksunden, @story645, @QuLogic
## Agenda
- [x] RSE update
- [x] font status
- [x] multi-norm status
## Notes
### RSE updates
- Kyle:
- data prototype work, adjusted apporach to collections
- some review
- aiming for 3.12 release cycle for common parts/approachable usage
- Tom:
- review work
- grant management work
- Elliott
- moving along well on fonts
- [anntzer](@pXw4hSgTQF2--OciPYwa1w) is reviewing / updating to keep work moving
- looking through backlog
- [30581](https://github.com/matplotlib/matplotlib/pull/30581) - ci: Force Agg backend test in environment variable test
- [30579](https://github.com/matplotlib/matplotlib/pull/30579) - merge back into branch to fix macOS
- [29794](https://github.com/matplotlib/matplotlib/pull/29794) - language parameter to Text
### fonts!
- 29794, 30581 need review
- font-feature PR will come after language lands
- font-collections, will cause conflicts redo after everything else lands
- Antony stuff is moving
- intermediate buffer removal: should help with layouts and simple form of emojis
- alt text is also moving, on a branch, need to open a PR
### colorizer / multi-norm
- waiting for review on [30511](https://github.com/matplotlib/matplotlib/pull/30511)
# Sept 11
_attending_: @tacaswell, @ksunden, @QuLogic, @story645, @timhoffm, @trygve
## Agenda
- [x] RSE updates
- [x] font status
- [x] 3.11 progress
## Notes
### RSE updates
- Kyle
- data prototype stuff, making progress on proof-of-concept of containers-on-main
- mostly work on collections, some cleanup of images and and lines
- Elliott
- text is mostly done, need one rebase
- working on alt-text
- 3D algorithm for clipping in 3D (PR pending)
- extending to all the artist types
- Tom
- some review, wrapping up PRs
### Font status
- waiting on review
### 3.11
- stand-alone figure
- needs manual testing on OSX
- font metrics cache
- maybe flaky tests
- fonts (see above)
- multivariate PR: https://github.com/orgs/matplotlib/projects/9
- colormaps
- some were add in https://github.com/matplotlib/matplotlib/pull/28454
- names might need improvement
- add more? green purple, and dark mode (black centered) biPeak, CVD friendly maps, multi-variate
- how many are enough to be useful?
- explicitly mark multivar/bivar as provisional
- consensus: start w/ what already merged & mark provisional, leave open to add more later
- maybe add the darkmode for accessibility
- next steps, which is the public top level API (aim for 3.12):
- expose to imshow/pcolor/other toplevel
- colorbar analogs
- choose public colormaps for shipping
### Replace BoundaryNorm
- https://github.com/matplotlib/matplotlib/issues/21911#issuecomment-3281819503
- problem: BN maps to integers rather than to 0-1 like all the other norms
- concern: size is used to ensure that colormap can be cut up into N bins