PLAY PODCASTS
Deep Dive w/Scott: CircuitPython 7.0.0 & GitHub Actions

Deep Dive w/Scott: CircuitPython 7.0.0 & GitHub Actions

Adafruit Industries

September 3, 20212h 11m

Audio is streamed directly from the publisher (adafruit-podcasts.s3.amazonaws.com) as published in their RSS feed. Play Podcasts does not host this file. Rights-holders can request removal through the copyright & takedown page.

Show Notes

Join Scott as he answers questions and talks about the 7.0.0 release. Visit the Adafruit shop online - http://www.adafruit.com 0:00 Hellos and getting started 0:02:38 hello everyone 0:06:32 CP 7.0.0 release candidate 1 - https://github.com/adafruit/circuitpython/releases/tag/7.0.0-rc.1 0:07:00 (est) deepsleep is still faked on the ESP32-S2 when USB is connected 0:08:04 additions since since 6.3.0 and fixes and enhancements 0:09:50 speaking of RC, there's 4 boards added in the last couple of days that don't have board.board_id I propose to PR that after (or before ?) the Lolin S2 Mini fix is merged maybe (and add __name__ while I'm there) 0:10:28 Can you control board frequency within CP? 0:11:50 __ double underscore 0:12:10 update documents live to match release notes :-) for EPaperDisplay 0:16:18 is there documentation on how to add a board that could be updated on github or is it only in the learn guides ? https://learn.adafruit.com/how-to-add-a-new-board-to-circuitpython/customizing-the-board-files 0:17:12 So looking at this eInk display https://www.adafruit.com/product/4197 I don't see anything about partial updates -- is that a limitation of the display/controller, or CP? 0:19:35 add collaborators to forks on an organization github repository (UM) 0:21:03 if you are worried about power saving, get a power analyzer https://www.adafruit.com/product/5048 0:23:55 Filling up flash - hunting for bytes - viewing hex- Q-strings linker tricks https://github.com/adafruit/circuitpython/pull/5284/files 0:28:35 - linker optimization: join common suffixed strings 0:29:30 - consider merging pointers in region by storing offsets - hard :-) 0:30:50 - could save qstr ram 0:31:15 linker - SORT_BY_ALIGNMENT (eliminate *fill* ) 185 fills times 2 bytes 0:33:13 linker SORT_BY_NAME 0:37:25 CIRCUITPY_PRECOMPUTE_QSTR_ATTR ( when there is more RAM than Flash ) 0:41:00 What is a Q String https://docs.micropython.org/en/latest/develop/qstr.html 0:43:45 Micropython 1.17 https://github.com/micropython/micropython/releases/v1.17 0:46:25 Wii Balance board (late night project :-) ) 0:46:52 github actions ( micropython updated ) 0:48:00 earlier Deep dive xmissions had visual a lot more detailed info. Do you use a j-link device or so? 0:49:10 Is there any support for parallel connected display controllers? I don't see it but only just started looking 0:50:00 Github actions 0:51:40 MP builds all boards in a single job 0:51:58 CP builds boards in parallel 0:53:05 CP runs all tests first ( build.yml graph structure ) 0:54:15 changes could save a lot of compute power 0:57:10 Introduction to GitHub Actions https://docs.github.com/en/actions/learn-github-actions/introduction-to-github-actions 0:58:30 API reference YAML syntax for workflows https://docs.github.com/en/actions/reference/workflow-syntax-for-github-actions 0:58:50 Events that trigger workflows https://docs.github.com/en/actions/reference/events-that-trigger-workflows 1:01:00 repository_dispatch 1:04:40 workflow_run 1:05:36 repository dispatch event 1:07:00 jobs .if / Context an expression syntax 1:08:30 matrix 1:09:00 needs 1:12:08 Question to be answered: how to enumerate all the files in git that changed 1:12:45 needs.job id.output 1:15:50 actions output values (set-output) 1:23:15 jobs.job_id.strategy.matrix 1:26:10 using environment variables 1:28:45 start some experiments 1:32:15 “JSON was in the matrix :-) “ passing JSON from outputs to tests 1:36:25 connect step output to job output 1:38:50 fish console ( for windows? ) mcfly 1:41:00 fish, starship, and exa diversions… :-) 1:45:30 Paths Changes Filter 1:47:00 “act” run github actions locally https://code.dblock.org/2021/06/15/running-github-actions-locally-using-act.html 1:49:38 get a list of all the changed files 1:52:55 given our context - what changed 1:59:30 we don’t need to be perfect, just have a robust fallback 2:04:50 Any recommendations for new CP users? 2:07:07 prepare to “call it” a day 2:08:04 have a great weekend, taking Monday off, CP Monday meetings move to Tuesday 2:08:50 what about commits that add a board? 2:09:21 chats continue on discord 2:10:36 pet the cat, and sign off 2:11:28 - freeze ----------------------------------------- LIVE CHAT IS HERE! http://adafru.it/discord Adafruit on Instagram: https://www.instagram.com/adafruit Subscribe to Adafruit on YouTube: http://adafru.it/subscribe New tutorials on the Adafruit Learning System: http://learn.adafruit.com/ -----------------------------------------