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

Update build_board_info.py to check for frozen libraries #4672

Closed
kattni opened this issue Apr 27, 2021 · 1 comment · Fixed by #5304
Closed

Update build_board_info.py to check for frozen libraries #4672

kattni opened this issue Apr 27, 2021 · 1 comment · Fixed by #5304

Comments

@kattni
Copy link

kattni commented Apr 27, 2021

tl;dr: We need to add functionality to the build_board_info.py tool file to check for and generate a list of frozen libraries for any board builds that have them.

Note: Frozen libraries are CircuitPython libraries that are included in a CircuitPython build for a specific board due to RAM/flash constraints. They are NOT the same as modules which are part of the core CircuitPython.

We added the Project Bundle to the Adafruit Learn System which allows users to download a zip file that includes the project code and all necessary project libraries. The Bundler is, however, only as smart as we designed it to be, and is unaware of frozen libraries. So, if you download a Project Bundle for a board, such as Neo Trinkey, you will find that the files included in the Bundle do not fit on the board. They are not needed for Neo Trinkey because they are built in, but the Bundler does not know this. I added a warning to the guide that says "don't use the Project Bundle". This will be sufficient for now, but it is not a long term solution.

We have reached a point where we need to teach folks the concept of frozen libraries, and that starts with making that information more accessible. We already include a list of built in modules on the download page on circuitpython.org. We will now include a list of frozen libraries as well, where applicable.

The build_board_info.py tool should be modified to generate that list. The frozen libraries for each board that has any are listed within the mpconfigboard.mk file within the CircuitPython core at /ports/port_name/boards/board_name/mpconfigboard.mk.

The list, once generated, needs to be included in the circuitpython-org/_data/files.json file to make it available to circuitpython.org for rendering on each applicable board download page.

If any clarification is needed, please reply here and/or tag @kattni.

@kattni
Copy link
Author

kattni commented Apr 27, 2021

Once this is completed, we can deal with rendering it properly on circuitpython.org/downloads/board_name/. This issue has been created to track the next steps.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants