[BLE] Fix esp32dev-ble-idf: bump esp-nimble-cpp 2.1.1 -> 2.5.0 - #2361
Merged
Conversation
esp-nimble-cpp 2.1.1 no longer exists: the PlatformIO registry pruned it (2.3.2 is now the oldest available) and the upstream 2.1.1 git tag was deleted as well. Dependency resolution therefore fails before any compilation, breaking every build of esp32dev-ble-idf: UnknownPackageError: Could not find the package with 'h2zero/esp-nimble-cpp @ 2.1.1' requirements Pin 2.5.0, matching the NimBLE-Arduino 2.5.0 already used by the Arduino ESP32 environments, and reference the GitHub archive rather than the registry so future registry pruning cannot break the build again. No source changes are needed: esp32dev-ble-idf builds clean with the newer API, blufi.cpp included. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Problem
Every build of
esp32dev-ble-idffails at dependency resolution, before any compilation:esp-nimble-cpp2.1.1 no longer exists in either source:2.3.2,2.3.4,2.4.0,2.5.0;2.1.1git tag was deleted too (tags now start at2.2.1), so pinning that tag by URL would not help either.This is unrelated to any particular PR — it breaks
developmentand every open PR that builds this environment.Fix
Pin
2.5.0, which is the same NimBLE version the Arduino ESP32 environments already use (libraries.ble = NimBLE-Arduino/archive/2.5.0.zip), so both frameworks stay on one NimBLE codebase.The dependency is referenced by GitHub archive URL rather than by registry version, matching the style used for the other BLE dependency and making it immune to future registry pruning.
NimBLEOta@0.2.0is unaffected: still present in the registry, with no declared dependencies.Verification
Built locally — no source changes required.
blufi.cpp, the only ESP-IDF-exclusive file and the one place the newer API had not previously been exercised, compiles without warnings:🤖 Generated with Claude Code