# CircuitPython Weekly Meeting for June 23, 2025

Video is available on [YouTube](https://youtu.be/cTRc-tGFkCc).

Join here for the chat all week: [http://adafru.it/discord](http://adafru.it/discord).

The CircuitPython Weekly Meeting normally is held at 2pm US ET/11am PT on Mondays. Check the \#circuitpython channel on Discord for notices of change in time and links to past meetings. Meeting times are also available in [iCal format](https://raw.githubusercontent.com/adafruit/adafruit-circuitpython-weekly-meeting/master/meeting.ical) for use with standard calendar applications and can also be viewed [in your browser](https://open-web-calendar.hosted.quelltext.eu/calendar.html?url=https%3A%2F%2Fraw.githubusercontent.com%2Fadafruit%2Fadafruit-circuitpython-weekly-meeting%2Fmain%2Fmeeting.ical&title=CircuitPython%20Meeting%20Schedule&tab=agenda&tabs=month&tabs=agenda).

If you want to be able to participate in the meeting by speaking, you will need to be added to the @circuitpythonistas role on Discord. Please ask any of the moderators or admins to add you if you’d like to join.

CircuitPython development is sponsored by Adafruit. Please support them by purchasing hardware from https://adafruit.com.

Reminders: Podcast available on most services. Let us know if we’re missing some. The canonical URL for the podcast version is [https://adafruit-podcasts.s3.amazonaws.com/circuitpython\_weekly\_meeting/audio-podcast.xml](https://adafruit-podcasts.s3.amazonaws.com/circuitpython_weekly_meeting/audio-podcast.xml) which you may be able to enter directly into compatible podcast apps.

## 2:26 Community News

The weekly Python on Microcontrollers newsletter was skipped this week. Here are some more items from last week’s newsletter.

### 3:12 Get Started With the New Python Installation Manager

The soon to be official tool for managing Python installations on Windows, the new Python Installation Manager picks up where the ‘py’ launcher left off to help you manage the tangle of Python installations on your machine – [InfoWorld](https://www.infoworld.com/article/4001983/get-started-with-the-new-python-installation-manager.html).

### 3:42 Python: The Documentary is Coming (See the Trailer)

From a side project in Amsterdam to powering AI at the world’s biggest companies – this is the story of Python. Featuring Guido van Rossum, Travis Oliphant, Barry Warsaw, and many more, our upcoming full-length documentary traces Python’s slow-but-steady rise, its community-driven evolution, and the language’s impact on… well… everything. See the trailer now – [YouTube](https://www.youtube.com/watch?v=pqBqdNIPrbo).

### 4:20 Newsletter Details

The Python on Microcontrollers Weekly Newsletter is a CircuitPython-community-run newsletter emailed every Monday. The complete archives are \[here\](https://www.adafruitdaily.com/category/circuitpython/). It highlights the latest Python on hardware related news from around the web including CircuitPython, Python and MicroPython developments. 

To contribute your own news or project, edit next week's draft [on GitHub](https://github.com/adafruit/circuitpython-weekly-newsletter/tree/gh-pages/_drafts) and [submit a pull request](https://help.github.com/articles/editing-files-in-your-repository/) with the changes. You may also or email [cpnews@adafruit.com](mailto:cpnews@adafruit.com), or tag a post with \#CircuitPython on Mastodon, Bluesky, or X (formerly known as Twitter),.

## 5:19 State of CircuitPython, Libraries and Blinka

**This report contains information from the previous seven days. Any changes (PRs merged, etc.) made today are not included in this report.**

### Overall

* 21 pull requests merged  
  * 10 authors \- jlunz, BlitzCityDIY, dhalbert, makermelissa, **EGJ-Moorington**, weblate, bablokb, FoamyGuy, **FK-sauve**, Neradoc  
  * 8 reviewers \- BlitzCityDIY, dhalbert, tekktrik, brentru, makermelissa, eightycc, ladyada, FoamyGuy  
* 11 closed issues by 9 people, 9 opened by 9 people

### 6:20 Core

* 8 pull requests merged  
  * 4 authors \- FK-sauve, weblate, dhalbert, FoamyGuy  
  * 4 reviewers \- BlitzCityDIY, eightycc, dhalbert, FoamyGuy  
* 22 open pull requests  
  * [https://github.com/adafruit/circuitpython/pull/9094](https://github.com/adafruit/circuitpython/pull/9094) (Open 453 days) (draft)  
  * [https://github.com/adafruit/circuitpython/pull/9349](https://github.com/adafruit/circuitpython/pull/9349) (Open 369 days)  
  * [https://github.com/adafruit/circuitpython/pull/9559](https://github.com/adafruit/circuitpython/pull/9559) (Open 303 days)  
  * [https://github.com/adafruit/circuitpython/pull/9844](https://github.com/adafruit/circuitpython/pull/9844) (Open 206 days) (draft)  
  * [https://github.com/adafruit/circuitpython/pull/9883](https://github.com/adafruit/circuitpython/pull/9883) (Open 195 days)  
  * [https://github.com/adafruit/circuitpython/pull/9909](https://github.com/adafruit/circuitpython/pull/9909) (Open 181 days) (draft)  
  * [https://github.com/adafruit/circuitpython/pull/10023](https://github.com/adafruit/circuitpython/pull/10023) (Open 140 days)  
  * [https://github.com/adafruit/circuitpython/pull/10056](https://github.com/adafruit/circuitpython/pull/10056) (Open 129 days)  
  * [https://github.com/adafruit/circuitpython/pull/10080](https://github.com/adafruit/circuitpython/pull/10080) (Open 123 days)  
  * [https://github.com/adafruit/circuitpython/pull/10265](https://github.com/adafruit/circuitpython/pull/10265) (Open 67 days) (draft)  
  * [https://github.com/adafruit/circuitpython/pull/10283](https://github.com/adafruit/circuitpython/pull/10283) (Open 61 days)  
  * [https://github.com/adafruit/circuitpython/pull/10287](https://github.com/adafruit/circuitpython/pull/10287) (Open 60 days) (draft)  
  * [https://github.com/adafruit/circuitpython/pull/10297](https://github.com/adafruit/circuitpython/pull/10297) (Open 57 days)  
  * [https://github.com/adafruit/circuitpython/pull/10303](https://github.com/adafruit/circuitpython/pull/10303) (Open 52 days) (draft)  
  * [https://github.com/adafruit/circuitpython/pull/10320](https://github.com/adafruit/circuitpython/pull/10320) (Open 45 days)  
  * [https://github.com/adafruit/circuitpython/pull/10354](https://github.com/adafruit/circuitpython/pull/10354) (Open 37 days) (draft)  
  * [https://github.com/adafruit/circuitpython/pull/10369](https://github.com/adafruit/circuitpython/pull/10369) (Open 30 days)  
  * [https://github.com/adafruit/circuitpython/pull/10379](https://github.com/adafruit/circuitpython/pull/10379) (Open 26 days)  
  * [https://github.com/adafruit/circuitpython/pull/10402](https://github.com/adafruit/circuitpython/pull/10402) (Open 18 days)  
  * [https://github.com/adafruit/circuitpython/pull/10413](https://github.com/adafruit/circuitpython/pull/10413) (Open 12 days)  
  * [https://github.com/adafruit/circuitpython/pull/10422](https://github.com/adafruit/circuitpython/pull/10422) (Open 8 days) (draft)  
  * [https://github.com/adafruit/circuitpython/pull/10439](https://github.com/adafruit/circuitpython/pull/10439) (Open 1 days)  
* 6 closed issues by 5 people, 2 opened by 2 people  
* 774 open issues  
  * [https://github.com/adafruit/circuitpython/issues](https://github.com/adafruit/circuitpython/issues)  
* 9 active milestones  
* 10.0.0: 25 open issues  
* 10.0.x: 1 open issues  
* 10.x.x: 42 open issues  
* 11.0.0: 7 open issues  
* 9.2.x: 0 open issues  
* Libraries: 16 open issues  
* Long term: 638 open issues  
* Support: 29 open issues  
* Third-party: 16 open issues  
* 0 issues not assigned a milestone

### 7:30 Libraries

* Adafruit Libraries: 365 Community Libraries: 165 (Total: 530\)  
* 6 pull requests merged  
  * 5 authors \- bablokb, **jlunz**, BlitzCityDIY, **EGJ-Moorington**, FoamyGuy  
  * 4 reviewers \- brentru, ladyada, BlitzCityDIY, FoamyGuy  
  * Merged pull requests:  
    * [https://github.com/adafruit/Adafruit\_CircuitPython\_AdafruitIO/pull/131](https://github.com/adafruit/Adafruit_CircuitPython_AdafruitIO/pull/131) (Days open: 2\)  
    * [https://github.com/adafruit/Adafruit\_CircuitPython\_STSPIN/pull/1](https://github.com/adafruit/Adafruit_CircuitPython_STSPIN/pull/1) (Days open: 1\)  
    * [https://github.com/adafruit/Adafruit\_CircuitPython\_INA228/pull/5](https://github.com/adafruit/Adafruit_CircuitPython_INA228/pull/5) (Days open: 1\)  
    * [https://github.com/adafruit/Adafruit\_CircuitPython\_Bundle/pull/510](https://github.com/adafruit/Adafruit_CircuitPython_Bundle/pull/510) (Days open: 1\)  
    * [https://github.com/adafruit/Adafruit\_CircuitPython\_SEN6x/pull/3](https://github.com/adafruit/Adafruit_CircuitPython_SEN6x/pull/3) (Days open: 1\)  
    * [https://github.com/adafruit/cookiecutter-adafruit-circuitpython/pull/250](https://github.com/adafruit/cookiecutter-adafruit-circuitpython/pull/250) (Days open: 1\)  
  * 44 open pull requests (Oldest: 1040, Newest: 11\)  
* 3 closed issues by 3 people, 3 opened by 3 people  
  * 721 open issues  
  * 3 good first issues  
* [https://circuitpython.org/contributing](https://circuitpython.org/contributing)

#### Library updates in the last seven days:

* **New Libraries**  
  * [adafruit/Adafruit\_CircuitPython\_STSPIN](https://github.com/adafruit/Adafruit_CircuitPython_STSPIN)  
* **Updated Libraries**  
  * [adafruit/Adafruit\_CircuitPython\_AdafruitIO](https://github.com/adafruit/Adafruit_CircuitPython_AdafruitIO)  
  * [adafruit/Adafruit\_CircuitPython\_WSGI](https://github.com/adafruit/Adafruit_CircuitPython_WSGI)  
  * [EGJ-Moorington/CircuitPython\_Button\_Handler](https://github.com/EGJ-Moorington/CircuitPython_Button_Handler)  
  * [relic-se/CircuitPython\_KeyManager](https://github.com/relic-se/CircuitPython_KeyManager)

### 12:40 Blinka

* 7 pull requests merged  
  * 4 authors \- makermelissa, Neradoc, bablokb, FoamyGuy  
  * 4 reviewers \- makermelissa, tekktrik, dhalbert, FoamyGuy  
* 11 open pull requests  
  * [https://github.com/adafruit/Adafruit\_Blinka\_bleio/pull/40](https://github.com/adafruit/Adafruit_Blinka_bleio/pull/40) (Open 1354 days)  
  * [https://github.com/adafruit/Adafruit\_Python\_PlatformDetect/pull/335](https://github.com/adafruit/Adafruit_Python_PlatformDetect/pull/335) (Open 542 days) (draft)  
  * [https://github.com/adafruit/Adafruit\_Blinka/pull/884](https://github.com/adafruit/Adafruit_Blinka/pull/884) (Open 313 days) (draft)  
  * [https://github.com/adafruit/Adafruit\_Blinka\_Displayio/pull/140](https://github.com/adafruit/Adafruit_Blinka_Displayio/pull/140) (Open 309 days)  
  * [https://github.com/adafruit/Adafruit\_Blinka/pull/888](https://github.com/adafruit/Adafruit_Blinka/pull/888) (Open 296 days)  
  * [https://github.com/adafruit/Adafruit\_Blinka/pull/908](https://github.com/adafruit/Adafruit_Blinka/pull/908) (Open 226 days) (draft)  
  * [https://github.com/adafruit/Adafruit\_Python\_PlatformDetect/pull/372](https://github.com/adafruit/Adafruit_Python_PlatformDetect/pull/372) (Open 193 days)  
  * [https://github.com/adafruit/Adafruit\_Blinka\_Raspberry\_Pi5\_Neopixel/pull/9](https://github.com/adafruit/Adafruit_Blinka_Raspberry_Pi5_Neopixel/pull/9) (Open 55 days)  
  * [https://github.com/adafruit/Adafruit\_Blinka\_Raspberry\_Pi5\_rp1pio/pull/22](https://github.com/adafruit/Adafruit_Blinka_Raspberry_Pi5_rp1pio/pull/22) (Open 55 days)  
  * [https://github.com/adafruit/Adafruit\_Blinka\_PyPortal/pull/24](https://github.com/adafruit/Adafruit_Blinka_PyPortal/pull/24) (Open 22 days)  
  * [https://github.com/adafruit/Adafruit\_Blinka\_Raspberry\_Pi5\_Piomatter/pull/44](https://github.com/adafruit/Adafruit_Blinka_Raspberry_Pi5_Piomatter/pull/44) (Open 10 days)  
* 2 closed issues by 2 people, 4 opened by 4 people  
* 156 open issues  
  * [https://github.com/adafruit/Adafruit\_Blinka/issues](https://github.com/adafruit/Adafruit_Blinka/issues)  
* Number of supported boards: 162

## 13:42 Hug reports

14:05 @danh (hosting)

* @eightycc for a prompt review of the MicroPython v1.25 merge.

14:17 @foamyguy

* RetiredWizard for submitting a PyDOS app for Fruit Jam OS  
* @danh and @Neradoc for discussion and help with stubs release issue

14:40 @tekktrik (not present)

* Group hug\!

## 14:50 Status Updates

15:20 @danh (hosting)

* I finished the MicroPython v1.25 merge, and @eightycc reviewed and approved it.  
* 25 open issues for 10.0.0. @eightycc and I will triage them.  
* Next:  
  * Fix more 10.0.0 issues.  
  * Change more 4MB ESP32-S3 boards to larger partitions: TFT, reverse TFT, QT Py.

16:50 @foamyguy

* Look into issue with stubs release issue from the last few pre-releases  
* Triage some issues reported with new versions of Blinka and submit some fixes  
* Fruit Jam OS  
  * Actions for daily release check and making a new release automatically  
  * Launcher enhancements: fixed mouse click on page arrow buttons, add hotkeys for going to different pages, allow user to disable mouse with a config file

19:40 @tekktrik (not present)

* Trying to help out with PR reviews as I have time  
* Planning a [CoAP](https://en.wikipedia.org/wiki/Constrained_Application_Protocol) library that will add some standard IoT communication options, particularly helpful for communication over UDP or LoRa.

## 20:45 In The Weeds

21:17 @tekktrik (not present)

* There was some discussion around moving away from “dynamic” requirements (requirements.txt) and moving towards more static ones (within pyproject.toml).  This would allow folks using tools like “uv” to have dependency management work right out of the box.  
  * I believe this is possible using some of the tools within Adabot, and I’m happy to do this.  
  * I don’t think any libraries actually require dynamic requirements, so the technical risk is very low.  
* 28:00 If “gpiod” is not installed with Blinka while using generic Linux, it throws an ImportError that this was not done.  However, due to the try/except we use for type annotations, we catch and then silently pass this error if we ever have using digitalio.DigitalInOut within type annotations for a library.  This causes issues on SBCs that require type annotations to truly exist at runtime. \[See https://github.com/adafruit/Adafruit\_CircuitPython\_BusDevice/pull/102\]  
  * We could change the warning exception in Blinka away from ImportError, but it really IS an import error.  An alternative candidate could be OSError, since it relates to the pins.  
  * We could go and patch the other libraries as well to make definitions/values exist at runtime.  This was the proposed solution for the instance where this issue was identified.

## 38:05 Wrap-Up

Next meeting is Monday, June 30, 2025, at the regular time of 2pm US ET / 11 am US PT. After that we’re planning to go to a bi-weekly schedule for July and August.
