You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
build-tools;36.0.0 may not exist in the stable Android SDK channel #61
The SDK bump from 34 to 36 causes android-setup.sh to request build-tools;36.0.0 from sdkmanager. Android build-tools version numbers follow platform releases but are not always identical to them — historically, build-tools;34.0.0 existed, build-tools;35.0.0 exists, but 36.0.0 may not yet be published to the stable channel (as of mid-2026, the latest stable is 35.0.0). If the package doesn't exist, sdkmanager will fail silently (exit 141 from the yes | pipe is treated as non-fatal on line 261, and other non-zero exits call check_success with || true). The setup will log a collected error but won't block — the machine will be missing build-tools with no loud signal. Recommend verifying build-tools;36.0.0 exists via sdkmanager --list | grep build-tools on a reference machine before deploying, or pinning to build-tools;35.0.0 until 36.0.0 is confirmed stable.
Context
This issue was automatically created from a non-blocking concern identified
during pre-push whole-codebase review. It was flagged for tracking.
Closing — the premise is false. build-tools;36.0.0does exist in the stable channel.
Verified against Google's own SDK repository manifest (https://dl.google.com/android/repository/repository2-3.xml), not against a claim about it:
path="build-tools;35.0.1"
path="build-tools;36.0.0-rc1"
...
path="build-tools;36.0.0" <-- stable, published
path="build-tools;36.1.0"
path="build-tools;37.0.0"
The review's stated basis — "as of mid-2026, the latest stable is 35.0.0" — was already out of date when it was filed. Stable is now well past 36; even 37.0.0 is published. So app-setup/android-setup.sh:222 requesting build-tools;${SDK_VERSION}.0.0 with SDK_VERSION=36 resolves correctly, and no pin to 35.0.0 is needed.
The secondary observation about error handling is accurate as a description of the code (android-setup.sh:257-264): exit 141 is normalised to 0 for the yes | SIGPIPE, and check_success ... || true collects rather than blocks. But that is the deliberate non-fatal design for optional SDK components, and with the package existing there is no silent-failure case to trigger it here. If the fail-soft behaviour is worth revisiting, that is its own issue about check_success, not about build-tools 36.
Activity
twistedmelonman commentedon Aug 30, 2026
Closing — the premise is false.
build-tools;36.0.0does exist in the stable channel.Verified against Google's own SDK repository manifest (
https://dl.google.com/android/repository/repository2-3.xml), not against a claim about it:The review's stated basis — "as of mid-2026, the latest stable is 35.0.0" — was already out of date when it was filed. Stable is now well past 36; even 37.0.0 is published. So
app-setup/android-setup.sh:222requestingbuild-tools;${SDK_VERSION}.0.0withSDK_VERSION=36resolves correctly, and no pin to 35.0.0 is needed.The secondary observation about error handling is accurate as a description of the code (
android-setup.sh:257-264): exit 141 is normalised to 0 for theyes |SIGPIPE, andcheck_success ... || truecollects rather than blocks. But that is the deliberate non-fatal design for optional SDK components, and with the package existing there is no silent-failure case to trigger it here. If the fail-soft behaviour is worth revisiting, that is its own issue aboutcheck_success, not about build-tools 36.