 Hello everyone. This is the Circuit Python weekly meeting for March the 6th 2023. This is the time of the week where we get together to talk about all things Circuit Python. My name is Tim, and I am sponsored by Adafruit to work on Circuit Python. Circuit Python is a version of Python that is designed to run on tiny computers called microcontrollers. The development of Circuit Python is primarily sponsored by Adafruit. So if you want to support Adafruit and Circuit Python, consider purchasing hardware from Adafruit.com. This meeting is hosted on the Adafruit Discord server. You can join anytime by going to adafruit.it. We hold a meeting in the Circuit Python Dev text channel as well as the Circuit Python voice channel. This meeting typically occurs on Mondays at 2 p.m. Eastern, 11 a.m. Pacific time, except when that would coincide with a U.S. holiday. In the Note Stock, there is a link to a calendar that you can view online or add to your favorite calendar app. We'll also send out notifications about the upcoming meetings via Discord. If you'd like to receive those notifications, just ask to be added to the Circuit Python Easter's roll over on Discord. There is a Note Stock that accompanies the meeting and the recording. The Note Stock document contains time stamps to go along with the video, so you can use the doc to view only the parts that interest you most. The meeting tends to run 45 to 60 minutes, so this gives you the option to skip around. After each meeting, we'll post a link to the next week's Meetings Note Stock on the Circuit Python Dev channel on the Adafruit Discord. Check the pinned messages to always find the next upcoming Note Stock for the meeting. If you wish to participate but cannot attend, you can leave your hard reports and status updates in that document, and we will read them for you during the meeting. The meeting structure, it's going to be held in five parts. The first part of the meeting is community news. This is a look at all things Circuit Python and Python on Hardware in the community. It's a preview of the Python on Microcontrollers newsletter. The second part is the state of Circuit Python, the libraries in Blinka. That one's going to be a statistical overview of the entire project. It's a chance to look at the project by the numbers, separate from what we're all up to. The third part of the meeting and the first of our two round robins is the hard report section. Hard reports is an opportunity to highlight the good things that folks are doing, take some time to recognize awesome folks in our community and beyond. The fourth part is status updates. That's the second of our two round robins. Status updates is an opportunity to sync up on what we've been up to. Take a couple of minutes to talk about what you've been working on in the last week since the last meeting, and what you'll be working on over the next week until the next meeting. The fifth and final part of the meeting is called in the weeds. In the weeds is an opportunity for more long form discussions. Those discussions can come out of status updates, or they can be identified ahead of time as too long for status updates. Again, those topics are just listed down at the bottom of that note stock. That covers how the meeting will go. With that, we will get into some community news for the week. We'll take a time stamp there. Their first item in community news this week is Circuit Python 8.1.0 beta zero was released. There's a new unstable release of Circuit Python version 8.1.0 beta zero. There are links here to the Adafruit blog as well as release notes. I went ahead and threw in the quick bulleted list of new changes since 8.00. Those are added support for animated GIFs using on-disk GIF. Added SafeMode.py for programmatic handling of SafeMode. Added support for seven-color e-ink displays. Allow setting the pystack size in settings.toml. Adding dither support to pallets and then supporting array.extend with an iterable. Great stuff. As always, if anybody wants to give a try out to the newest version, 8.1.0 beta zero. It's always great to have folks trying it out with your projects and things like that and just let us know on the Discord or on GitHub how it's going for you. Next up is some new documentation for the Raspberry Pi Pico, Pico W and RP2040. The Raspberry Pi have released a new set of documentation for the RP2040 Pico and Pico W. There are links here directly to the documentation itself as well as some data sheets and a link to a post on the Adafruit blog discussing that. A couple other items from the newsletter this week, sort of projects from around the web. First one here is making of animated GIF floppies, our very own NB editor of the newsletter where all of these items will appear has created this project with an animated GIF playing floppies or I should say of a floppy playing animated GIFs rather. The editor has been kicking the tires on the new animated GIF support for circuit python 8.1.0 beta zero. Taking the floppy with a display hardware, I loaded the beta and test GIF player worked out of the gate. First was max headroom demo, initially posted that one to Twitter. About 10 different iterations were made with memes and computer software startup screens and more. Likely when 8.1 is released as stable, there will be a native root guide on using animated GIFs as we're still working out the subtle bugs and performance. Huge shout out to circuit python community member mark commas for adding the GIF capability was the top of and circuit python 2023 request list. So there are links here to Twitter for the initial post as well as Adafruit blog and link into the show and tell if you want to see a video of that in action. And rounding out the community news projects this week was a project of the week, a VT2040, a micropython based portable terminal. VT2040 is a portable serial terminal based on an RP2040 dev board with a gherkin keyboard and an ili 9488 480 by 320 LCD screen. The prototype gets about 18 hours out of three AA batteries and runs micropython. There is a link here to github if you want to learn more or see some more images or anything of that project, which definitely looks very neat. So these have all been entries from the newsletter. The circuit python weekly newsletter is a circuit python community run newsletter that's emailed every Tuesday. The complete archives are available on adafruitdaily.com. It highlights the latest python on hardware related news from around the web, including circuit python, python and micropython developments. To contribute your own news or projects, edit next week's draft on github and submit a pull request with your changes. You could also tag a tweet with hashtag circuit python on twitter or email over to cpnews at adafruit.com to submit ideas for the newsletter. So next up is going to be the state of circuit python, the libraries and blinka. Let me jump here. So yeah, just as a reminder, this one is a quantitative overview of the entire project gives us a chance to look at the health of the project separate from what we're all up to. We'll talk about the project overall and then separately discuss the core, the libraries and blinka. So the overall report for this week, we have had across all circuit python repos 34 pull requests merged by 19 authors, a couple of the names that looked a little bit newer to me. So these folks might be newer contributors or less frequent. Certainly possible that I missed some folks and apologize for that if so. But the names that did look like newer folks to me were foxy 82, at a land, let's see, at, let's see, at Alan Torre startup Potec. And let's see, was there one more yet Jetta Han as well, those were the user names on github of folks that again are perhaps newer or less frequent contributors. So thank you to them as well as all of our more frequent names that pop up from week to week. So that was our 19 authors. There were nine reviewers overall this week. So thank you to all of our reviewers. Of course, we would not be able to get new code in without our reviewers. So definitely really appreciate all of you. There were 19 issues closed by 10 people, as well as 29 issues opened by 25 people. And with that, I will pass it over to Scott if you're available to tell us about the core tour. Thanks for hosting Tim. Okay, for the core, the numbers are we had 14 pull requests merged from 11 or 10 authors. I don't know why I said Monday morning. Hello. So thank you to all of our authors. Nice to see a number of folks there. Titi Moby, Atlantor, startup Potec, Hexta and McGowan are all relatively new names. We had five reviewers. So thank you our reviewers. Gambler 21 and the kitty are infrequent reviewers. So thank you for reviewing the core. We had 29 open pull requests. A lot of those are drafts and generally looking good besides draft PRs. Again, we're still on two pages of PR. So I'd love to see us down to one. We have seven closed issues by four people and 15 opened by 12 people. So we're net up eight, which is quite a lot. But again, I think this is a pretty normal time for us to be higher issues wise because we just had a new stable release, major stable release. So we have 634 open issues. You can check those out on the github at github.com.com. We have eight active milestones. We have one issue for 0.8.0.x, which is like the highest, most urgent ones, things that we would actually do a new stable release to fix. And then we have 12 open issues for 8.1, which is the next feature release. And we now have a pre-release version of that as well, thanks to Dan. And then we have 24 open issues for 9.0. So a number of issues in that category and then 500 in the long-term category, which is the category for things that we'd like to do at some point, but not sure when. Lastly, we have, as of these numbers, five issues not assigned to milestone, which is issues that just need to be triaged into one of those other milestone buckets. And that's the state of the core. All righty. Thank you, Scott. Next up will be the libraries. Catney is not with us today, so I'll read out the libraries for us. Take a timestamp. Across all of the Circle Python library repos, we had 20 pull requests merged this week from 11 authors with six reviewers. So thank you to everyone who submitted code or reviewed on the library sides in the past week. Of those pull requests, the oldest one merged this week was 71 days old. There were a couple others that were about a month or so, and then the rest were kind of that two weeks or less in the list there. So that is library stuff. The rest of the stats down here, we had, or I should say remaining, there are 40 open pull requests, with the oldest one being 888 days, the newest one being only two days. Across the past week, we did have 12 issues closed by seven people with 10 issues open by 10 people. That leaves us with 597 open issues across those library repos as well, or I should say of those 597. There are 76 that are marked as good first issues for folks that are interested in getting involved helping to contribute. Those good first issues are a great place to start. You can find those listed on circuitpython.org slash contributing. On that page, there is a list of all the open pull open PRs. There's another tab on the page for issues. And if you click over to issues, you can then filter by good first issues, which are the ones that have been identified as good for folks that maybe don't have any prior experience or extensive, you know, programming or coding knowledge. There is a guide for contributing with Git and GitHub. So if you want to help get involved, but you've never done that before, don't let that be the barrier. Take a look at the guide as well as join us over on the Discord. There's always going to be folks around who are willing to help you out if you're wanting to get involved contributing. The libraries is a great place to do that. In terms of the library PyPy, weekly download stats, we had, let's see here, make sure I get the commas rights here. We had 151,776 PyPI downloads for 308 total libraries. The top 10 list is listed here. It is kind of interesting to see those ones change from week to week. I think it's usually mentioned the top few are pretty static. Some of the ones that poked up into the list this week that caught my eye were LED animation as well as display text. So take a look through the list there if you want to see some of those. There were no new libraries in the last seven days and there is a list of updated libraries here in the notes document if you want to check those out. And that covers the library portion of the update. So I will pass it over to Melissa, maybe? No, actually, I don't see Melissa. I will read off the Blinka section here as well. So Blinka is our circuit Python compatibility layer for Raspberry Pi and other single board computers as well as MicroPython. In the Blinka repos this week, we had zero pull request merge, zero authors and zero reviewers. There are five open pull requests across those Blinka repos. There are, let's see, 96 open issues across those repos. And over the past week, Blinka has seen 14,600 Pi PI downloads as well as 8,488 Pi wheels downloads. And Blinka is currently supporting 101 different boards. All right, so that wraps up our updates. Next up is the first of our two round robins, the hug reports section. Hug reports is a chance to highlight folks in the community and beyond for doing awesome things. I'll start and then we'll go down the list of names as they appear in the notes stock to give everyone a chance to participate. If you're text only or missing the meeting, but you have hug reports in the notes document, then I'll read them off as we get to your turn in the list. So I will kick us off this week. I have hug reports for Dan H for pointing me towards some examples in the core for handling background tasks, as well as logic for checking whether you are interrupted by the like control C and the REPL and things like that. Another hug report for maker Melissa for the installer wizard functionality that's been added to circuit python.org. And a hug report for Mark Gambler for discussing, I should say for discussions around colors and display IO that he had with me. So thanks for that. And next up, I will pass it over to Dan. Okay, thank you. Thanks to micro dev for continuing with various GitHub CI improvements. Some of these are refactoring just to make the code clear. Some of them are kind of small speed ups, but as people say when you're putting a backpack in, it's the ounces not the pounds sometimes. And each improvement on the build time helps. And when there are a lot of those, it helps a lot. Okay, thanks to Gambler 21 and retired wizard for testing a socket fix that I tried recently. And thanks to Scott for pointing out the code problem which caused that socket fix problem. And that will probably go into 804. Thanks to Jeff for figuring out what was wrong with the truncation that was happening to long delays for animated gifts. And I put into fix for that. And thanks to Gambler again for fixing long SPI rights on Atmel-Sandy when they were more than 64k long, it would truncate them. So that's in the fix, in the works also. Okay, that's it. Alright, thanks, Dan. Next up is DJ Devon 3. Thank you. I have a hug for Naradok for helping me troubleshoot why an unexpected maker Feather S3 firmware wasn't working during last week's meeting. I posted a picture of the wiring and as keen eyes observed that it was not a UN Feather S3, it was an Adafruit Feather S3. And I didn't even notice even though I was holding it in my hand. So thank you, Naradok, for your keen eyes. A hug to C Grover for excellent audio related advice this week. Thankfully, I didn't have to go with the transformer route and ended up figuring out a different method, but your advice put me on the right track. Thank you to Kyoshi for the excellent feedback and ideas on the TR Cowboy version 1.2. He kept me updated throughout his entire build process and he had ideas that we were bouncing back and forth that I never even considered which will be implemented in the next revision. Your feedback was excellent and very much appreciated. A hug to Skir for getting his icy blue FPGA Feather to do a thing in the real world. It's been a wonderful, it's been wonderful watching his progress with FPGA stuff. To Lady Aida for the new launch of the IMX Metro M7, very excited to get my hands on one and a hug to Jepler for the tiny UF2 Learn Guide, which will get everyone hopefully up and running with their new Metro M7s. Thank you. Oh, and thank you to FOMI Guy for hosting the meeting. All right. Thank you, DJ Devin. Next up is David Glauda, who's not present. So I'll read. David has just a group hug this week, and following that, I will send it over to Jeff. Hello. Got to find my mute button. So I have a number of hugs this week. A group hug, this community inspires me with their projects as well as how kind we are to each other. Hug to Liz for running Show and Tell last week. It was fun to be on. To Gambler, Mark, Komus, and Ann for GIFIO and the very engaging project you've done with that already. It's fun when the community loves what you do, and yeah, it's great seeing that. A hug to PT and Lamore for enabling me to do fun projects and always giving me more fun projects than I have time for. And to Phil Bee, known as Paint Your Dragon and Ann for very full guide reviews. And that's what I got. All right. Thank you, Jeff. Next up is Jerry N. Well, there's that button. Yeah, just a hug to Scott, Tnuk, for the Mangletood.js port and for patiently helping me get it up and running with the Glider and Blue Fruit Connect apps. It's been a lot of fun. All right. Thank you, Jerry. It's excellent to hear from you as well. Next up is Jose David, who's text only. So I'll read. Jose has a hard report for Foxy 82 for correcting a reference in the documentation for the HTTP server library. Next up is Keith to EE, who's also text only. Keith has a hard report for Catney for a lovely conversation and advice ahead of a presentation that I'll be giving this coming Saturday. Next up is Mark Gambler, who is missing or late, and I don't see him in here yet, so I'll read. Mark has a hard report for Dan as well as Jeff for documentation and answering questions from others about gift support and rounding out the hard report section. I will send it over to Scott. All right. First up, a hug to Isaac Ben for the AES documentation fixes and also a hard report to you from the guy for the many library reviews and improvements that you do, including for my seven color display IC libraries that I just did. It's great to see you take the time to do a lot of testing and interpreting of library reviews through. So thank you so much for that. Thank you, Scott. And that is going to do it for hard reports. So moving on to the next section, status updates. Status updates is our time to sync up on what we're doing. I will start and then we'll go through the list alphabetically or whatever order they appear in the note stock. We'll give everyone a chance to participate. When I call on you, go ahead and take a couple of minutes talk about what you've been doing since the last meeting and what you will be doing until the next meeting. This is also an opportunity to provide tips and tricks relevant to what people are working on. If a discussion becomes too much for status updates, we can move it down to in the weeds. So I will get us started for the status updates. Last week, I reviewed the frame buff library PR that added support for bicolor led matrices. I didn't have that specific hardware with the bicolor leds, but I did test it on all the hardware I do have to check for regressions. And I do actually have one of those bicolor matrices coming. So I'll get a chance to test that one out in the future. I started assessing the scope of example code changes for the new display API. I have a note down in the weeds to talk about this as well. As expected, I think there are lots of changes out there, but by looking through the learn guides and the bundle examples, it looks like the vast majority of them use kind of the same code and the same syntax and everything. So it should be fairly easy to knock out some pretty big chunks with some find replace type actions. So I do think there are a couple of options for different ways we can do that. So that's why I've made a note down in the weeds to discuss that a bit more. I also was working on trying to resolve an issue in bitmap tools dot boundary fill, which was a function that I implemented. It was it takes a while to work, especially if you use it on a relatively large section of a bitmap. And it was kind of causing the USB to get locked out essentially or become unresponsive. It would not react to control Cs and it kind of seemed like it was frozen or hung while it was doing its work, which could take it several seconds sometimes. So it felt pretty broken. So I've got a PR in now for trying to wrap that up, but it does still need some work. The other thing I've got this week is for the latter part of this week, I will be out on vacation. So there won't be any deep dive stream or Saturday morning stream for me this week. And you probably won't see too much from me in the GitHub, excuse me, in the discord after the next couple of days. Next up, I will send it over to Dan for status updates. Okay, thanks. So last Tuesday, I released a sort of Python 810 beta zero. That has animated GIF and other stuff in it. Then we noticed this bug about long frame delays on animated GIFs. So there'll be a fix in beta one, which could be relatively soon. I try not to go too long between betas because it's just there's an enormous accumulation of stuff sometimes. It's hard to keep track of. I mentioned I fixed some socket code that will go into the 8.0 X release chain because it breaks where workflow and it'll be nice to get that fixed in to the stable release. So I'll probably do an 804 release soon. It will have that and maybe if there are a couple other things to go in there, we'll put those in too. And otherwise, I'm just catching up on there are still a whole bunch of open issues and PRs, which we can work on. And I also, in the internal meeting that we had before this, there are some other interesting projects that I might start working on as well. But we have a lot of things to fix for 8XX in the future anyway. Okay. All right. Thank you, Dan. Next up is DJ Devon 3. Thank you. I've been pretty busy this week. Spent a couple hours iterating through different configurations to figure out how to almost completely remove the pop and click from the Adafruit I2S sound modules. And there's multiple that have the same kind of issue. The modules have either no capacitor or an insufficient one that introduces a very loud pop when a sound begins or ends, as most of you are well aware that I've ever used one. This is easily remedied with a large 1000 microfarad coupling capacitor across the positive and negative speaker outputs. It's very similar to the way Adafruit recommends adding a capacitor at the beginning of any long neopixel strip. Tried adding up to three capacitors with no effect. At some point, there's a flawed, dimming return. The 1000UF works best with the 3W Class D amplifiers. It's just a matter of, you know, the capacity. Adding a 100K resistor is recommended in the learn guide as well for bridging gain and VIN, which also helps it lower. It lowers the initial gain. It's a gain selectable, but there's like different pins. So it's like a weird jumper method. It's better to amplify a three decibel signal than a 12 decibel signal that's at or near max peak signal. The pop from the initial current inrush is now practically imperceptible and will make all audio projects much more enjoyable to experiment with. My mail boombox audio clarity is now much improved because of this at high amplification levels. Adafruit warns not to use the 3W I2S amplifier as a preamp, but I did find a way to do it and solve two design flaws in the process. No more popping and clicking. Sunday, I pushed a minor PR for the TR-Calbel simple test code, so it's just a very basic, still no MIDI stuff or anything. I needed to get that done. There are separate examples for those who are using it with or without a display. The default code now assumes you've done the bodge fix as the starting point. If you haven't done the bodge fix yet, please do. Everyone will now be on the same page with their hardware. And I might have just gotten my first electronics freelance job thanks to my work on the 7-segment social media tracker project that has like the seven different API's all built into the one 7-segment display. The order is for 50 14-segment displays showing the number of online media API that I have to code and hook into, as well as the 3D printed enclosures. So all of that is like right up my alley. And all 50 devices will require Wi-Fi connectivity and about the only point thing that I'm really worried about is just getting all the parts. That's an expensive project. But I did 3D print a basic enclosure and as I already fired that off to the client and looking good so far. So I'm really excited about that. And that's all I've got. Nice. Congratulations on that. It's always a great step to achieve. Thanks, DJ Devin. Next up is David Glauda. He's not present, so I will read theirs. David says, fixing a cable to go from StemAQT to Lolan similar but not equal connector. There's a link here to that. Testing one more time that the driver for that tiny screen works with Circuit Python. David will be off for two weeks, one week of skiing as well as two days in Disneyland Paris. And David also writes wondering if Scott wants to take over the deep dive spot for this Friday, since I will be out. Tim will be out this week. David won't be able to catch it live but would watch the VOD later if so. Next up is Genevrov. Hello everyone. So the last couple of weeks I've been working on adding async support to the audio stack and to sort of generally make it a bit more flexible. And so I've sort of reached a milestone with that now where I have a proof of concept app that will stream mp3s over the network and play them. And I'm just cleaning up the code for that and I should publish a draft PR for that soon and I think we'll need to have like a discussion and a design review on what we think this new API for audio would look like. Moving on from that this week, so the audio code ended up not being fully async because the network code is not async. So this week I'm going to be looking into making async APIs of the socket API. And as part of that I'm going to try to enable dynamic memory allocation in LWIP so that we don't have any static limits about the number of sockets that can be used. And that's it for me. Awesome. Thank you for the update Genevrov. Next up is Jeff. Hello. Well first of all I'm really excited to hear about that work on the streaming mp3s. Thanks for doing that. Anyway as to my work I published a couple of guides last week and SNES mouse to USB HID guide as well as the floppy feathering product guide. I've been playing with the open AI API running on circuit python as well as on host computers. I've got two ideas I've been kicking around one I'm calling endless Zork and the other that I was thinking about this morning is to make a story based on choices of emoji and both of those are pretty fun but if I do a guide it will probably be showing the endless Zork as the idea. I made some changes to the Adafruit mcp2515 library which is for a CAN bus interface chip. I need to retest that on hardware so that we can merge it. There is a utility class there are a pair of utility classes in the core canio.message and canio.remote transmission request but that library that module isn't necessarily on all devices so Adafruit mcp2515 has its own copy of those classes. If you accidentally mix the core class with the Adafruit mcp2515 library it doesn't behave correctly and by this refactoring the library will use the core classes if they are there otherwise use its own implementation but by the time that PR was was done it was making a bunch of changes also changing how the documentation builds and so I just need to retest it. Anyway next up I've started on implementing implementing Rotary IO for the IMXRT which would work on that new Feather M7. It will use pin change interrupts and the same quadrature state machine as the RP2040, NRF and SAMD when we broke or when I had to stop working on that to come to meetings this morning it was almost compiling next after that will be to set up my debugger situation. The next thing on the IMX series will be adding i2s audio out on the 1011 which is what's on the Metro M7 there is no SDIO support so skipping that for now later on I may do that on the 1060 EVK it's also supported on the 10C4 so we do eventually want it but it doesn't it isn't needed for the Metro and then besides the open AI endless Zork project the other next project remains the help keyboard and also that will finally test the RISC-5 ultra low power co-processor on the ESP32S3 and that is enough to keep me busy and out of trouble. All right, thank you Jeff. Next up is Jose David whose text only so I'll read Jose writes they worked on the worked on a PR for a MPL31115A2 issue worked on some PR reviews and non-circupython related refactored an old knitting pattern software from PyQt4 it was fun so thank you to Jose for leaving those notes and the next up I will send it over to Scott. I love that Jose David has the fun and quotes at the end of there too for those of you who are not looking at the notes talk. So for me I'm deep in the IMX RT weeds around interrupts and what we can run when we're doing flash operations and not and things like that so I'm looking at memory layout and performance and hopefully hopefully I'll come up with some changes that will make it more reliable Dan saw some of this with his prototype Metro M7 like USB unreliability we're not doing any interrupt servicing during flash erases which can be a multi tens of milliseconds sort of operation which could is probably the culprit honestly so I'm looking at making it so that we can run interrupts during flash operations which will be good I was also looking into doing full fun function tracing and was having some reliability issues there that I kind of got me to this place so I'm deep in the IMX RT weeds hopefully that'll make it more reliable in the end and I'll certainly have a better understanding of it like I didn't know what a veneer function was but basically the ARM 32 bit thumb instruction set can't jump kind of through the whole memory space so that matters if there's code that's in flash that needs to call code that's in RAM like those those places are too far away from each other and so they use these veneer functions which are interesting in order to go from one place to another they're also known as trampoline functions but this is the first I've experienced that so yeah learning a lot and hopefully at the end of it we'll get more reliable circuit Python on the IMX RT so if you did order some of those new Metro M7s please let us know how it's working all right thank you Scott oh and I am tempted to take your slot on Friday all right I'll say at least for an hour stay tuned uh stay tuned to discord then probably for more uh yeah and I'll put a thing on the blog but I've been thinking about starting this dream again so uh you taking a break and me filling in for you is it's a good opportunity for that perfect all right so that wraps up the status updates which is going to get us to the next and final section of the meeting which is in the weeds uh in the weeds is an opportunity for more long form discussions that either come out of status updates or that folks have identified ahead of time if you do have any in the weeds topics please go ahead and add those as soon as you can down to the bottom of the note stock there is one in there but that is it for now so if you have something else you wanted to discuss please throw that in the one that is in there is one that I put in and I will say a late hug report I don't know who it was but somebody added some additional information to this thank you for that this is about updating examples for the new display IO API in particular changing over the like display dot show to being display dot root group and then setting it equal to something as a property the main questions I have that I wanted to get insight from the larger team on was do we want to keep the old version in the code commented out or vice versa do we want to keep it as the old version and maybe leave the new version commented out for now and if we do want to keep both versions old and new is there any preference on sort of the comments that go along with it I have a link to PR here where I took a kind of first stab at this in the learn guide repo specifically the display IO learn guide which I think makes sense as kind of the first place to change but I didn't want to go any farther before I got feedback on on that sort of stuff so I would say something about how I think about this for release staging that we're still the 80 release is really new and so I wouldn't like we're still building the seven X bundles for instance and we do refer people back to seven X when they find regressions in eight and I would like I don't I don't feel like even though seven is not up on circuit python.org directly it's still a reliable release that people might want to use in some circumstances so I wouldn't change it in the examples yet I mean it certainly changed it by the time we got to nine okay and in general this kind of change we've made months after our release was stable and in that case I would say just change it don't include the old code okay because at that point we would expect if it breaks people would just tell people they should upgrade okay otherwise you end up having to make the change twice because we don't want to leave correct sort of deprecated code in in in the in the learn guides I mean you could check you could do a try or something but it seems kind of silly because this is a really common thing to do so I would say just leave it alone for now and you know in the springtime or something like that you know we would change all these once and that would be that would be good enough and that at that point like we might stop building the seven X bundles for instance I would think it would be more in line with that I don't know space Scott you have a different you have a different of your point I agree I agree with you okay yeah like let's just wait till we actually think 80 is stable and then and we're when we're clearly turn the corner and are working on nine that's when we can turn the bundle off and then then move all everything over all right sounds good to me and I have not seen any other topics pop up so I'm going to assume nobody else has got anything else for in the weeds so I will bring us to the wrap up time stamp for that this has been the circuit python weekly meeting for March 6th 2023 thank you to everyone who participated as a reminder if you want to support Adafruit and circuit python and those of us that work on circuit python consider purchasing hardware from the Adafruit shop at adafruit.com the video of this meeting will be released on youtube at youtube.com slash Adafruit and the podcast will be made available on major podcast services it will also be featured in the python for microcontrollers newsletter you can visit adafruitdaily.com to subscribe to that the next meeting I did not actually look at the calendar but I believe the next meeting is Monday at the usual time 2 p.m eastern 11 a.m pacific somebody correct me if I'm wrong there in the chat pretty please and thank you the meeting is held on the Adafruit discord which you can join by going to adafruit.it slash discord you do need to be you need to have the circuit python easter's role if you want to talk and the other upside of that role is you'll get notified of any upcoming changes to the meeting will ping that role with any changes so thank you to everyone who was here and we hope to see you all next week thanks everybody