Skip to content

build_artifacts.sh: use the tool versions the M-1 platform pins - #10

Merged
Bunton33 merged 1 commit into
mainfrom
fix/build-artifacts-pinned-tools
Oct 25, 2026
Merged

Bunton33 merged 1 commit into
mainfrom
fix/build-artifacts-pinned-tools

Conversation

@Bunton33

Copy link
Copy Markdown

Release tooling fix found while packaging the b9 test candidate.

Problem: another project on the same Mac installed esptool 4.11.0 into the plain ~/.platformio/packages/tool-esptoolpy folder and moved the version our platform pins (4.7.4, tasmota) to tool-esptoolpy@src-.... apollo/build_artifacts.sh hard-coded the plain folder, so it silently used 4.11.0. The same can happen to framework-arduinoespressif32 (boot_app0.bin) and tool-mklittlefs; this Mac has 14 different espressif32 platforms installed.

Fix: the script asks PlatformIO for the apollo_m1 env's platform (pio project config), reads that platform's pinned package versions from its platform.json, and uses the installed folders whose .piopm matches. Falls back to the plain folders with a warning. BUILD_INFO.txt now records which folders were used.

Verified: on main with b8's web-UI files, the script picks tool-esptoolpy@src-c7ffb851... (4.7.4) and its M-1_full_install.bin matches the shipped m1-b8 image except the 65 ELF-fingerprint/checksum bytes in the app. esptool 4.7.4 and 4.11.0 also produce identical merged images for the same parts, so nothing shipped or tested so far is affected. No firmware change.

🤖 Generated with Claude Code

… the env's platform

Another project on the same machine replaced the plain packages/tool-esptoolpy folder with esptool 4.11.0 and moved the pinned 4.7.4 to a tool-esptoolpy@src-... folder, so the script silently used a different esptool (the merged image happened to be identical). The script now asks PlatformIO for the apollo_m1 platform, reads its pinned package versions from platform.json and uses the matching installed folders, falling back to the plain folders with a warning. BUILD_INFO.txt records which folders were used.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@coderabbitai

coderabbitai Bot commented Oct 25, 2026

Copy link
Copy Markdown

Important

  • 🔍 Trigger review

This repository does not receive automatic reviews because it has fewer than 10 stars.

Run configuration
  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@Bunton33

Copy link
Copy Markdown
Author

Verified before merge: on main with b8's web-UI files, the script resolves esptool 4.7.4 from tool-esptoolpy@src-c7ffb851 and its M-1_full_install.bin matches the shipped m1-b8 image except the 65 ELF-fingerprint/checksum bytes. Apollo M-1 build CI: success. The remaining usermods job builds an env this script does not touch.

@Bunton33
Bunton33 merged commit c117713 into main Oct 25, 2026
27 checks passed
@Bunton33
Bunton33 deleted the fix/build-artifacts-pinned-tools branch October 25, 2026 17:57
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