Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Reduce size & workload of MicroPython build cache #764

Merged
merged 6 commits into from
May 4, 2023
Merged

Conversation

Gadgetoid
Copy link
Member

By cloning only the modules we actually intend to use, it should be slightly quicker and result in a smaller cache file for each individual board build.

@Gadgetoid Gadgetoid force-pushed the ci/smolmodules branch 4 times, most recently from b1f1b19 to 97d2fa5 Compare May 2, 2023 14:26
@Gadgetoid
Copy link
Member Author

Fetching submodules using "make submodules" seems to behave differently locally vs GitHub, resulting in missing modules in the MicroPython cache.

This whole cache malarkey is almost more trouble than it's worth, but cloning MicroPython and its submodules ten times per workflow run would be quite miserable.

Have manually added the lines to clone each required submodule.

Takes the MicroPython cache from ~879 MB down to ~187 MB for a total reduction of around 6,920 MB across all builds 😬

Reduces the MicroPython cache from ~879MB down to ~187MB for a reduction of around 6,920MB across builds.
Simplify the build to use *only* local (to pimoroni-pico) copies of MicroPython board config dirs.

This allows us to specify MICROPY_C_HEAP_SIZE (and potentially other options) in board config rather than at build-time.
A long overdue fix. Uses board-specific manifest.py files to freeze Python modules, instead of polluting ports/rp2/modules.
@Gadgetoid Gadgetoid force-pushed the ci/smolmodules branch 11 times, most recently from 904044c to c62dc69 Compare May 4, 2023 13:02
Force "-specs=nano.specs" on MicroPython builds and disable various stack unwinding and exception handling features for C++ modules.
@Gadgetoid Gadgetoid merged commit b6499e7 into main May 4, 2023
@Gadgetoid Gadgetoid deleted the ci/smolmodules branch October 31, 2024 10:48
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant