release: midi2cpp v0.3.0 - rename from midi2_cpp + midi2 v0.3.4 dependency#2
Merged
Conversation
In deference to starfishmod/MIDI2_CPP (maintained since 2021 by Andrew Mee, MIDI Association TSB Rep), which operates in the same domain (MIDI 2.0 wrappers for embedded). Keeping the namespaces disjoint avoids confusion in package managers and search. Touches across 119 files: - library.properties: name= + includes= - library.json: "name", "headers", repository URL - CMakeLists.txt: project / add_library / alias / install / export - src/midi2_cpp.h -> src/midi2cpp.h - logo_midi2_cpp.png -> logo_midi2cpp.png - Preprocessor macros: MIDI2_CPP_* -> MIDI2CPP_* (MIDI2_CPP_BUILD_TESTS, MIDI2_CPP_ROOT, MIDI2_CPP_MAX_PROFILES, MIDI2_CPP_MAX_PROPERTIES, MIDI2_CPP_MAX_SUBSCRIBERS, MIDI2_CPP_HOST_MAX_DEVICES, MIDI2_CPP_BRIDGE_MAX_SLOTS, ...) - 20 example recipes: CMakeLists.txt / idf/main/CMakeLists.txt / pio/platformio.ini - README, CHANGELOG, every example README - .github/workflows/ci.yml: paths and CMake options Verified locally: cmake configure + build + ctest all green (7/7 host suites, including the m2bridge ASan + UBSan smoke). Follow-up commits will bump the version to v0.3.0, refresh the CHANGELOG with this rationale, and (after the merge) rename the GitHub repo via gh repo rename.
ESP-IDF Component Manager interprets `version:` for git deps as a literal git ref (branch / tag / SHA), not a semver constraint. The previous `version: ">=0.3.3"` failed configure with "Git reference >=0.3.3 doesn't exist in the repository". Pin all seven ESP-IDF recipes to `version: "v0.3.3"`. Verified locally: esp32-s3-devkitc-usb-midi2 now reconfigures and the full build links a flashable .bin against midi2 v0.3.3.
midi2 v0.3.4 ships the ESP-IDF Component Manager fix; consumers no longer need the manual `cp -r dist/` workaround when the dependency is fetched via git URL. Bumps 26 references across: - library.properties: depends=midi2 (>=0.3.4) - library.json: dependencies."sauloverissimo/midi2": "^0.3.4" - README.md badge + install snippets - CHANGELOG.md cross-references - 8 Pico SDK + 2 TinyUSB CMake recipes: FetchContent GIT_TAG v0.3.4 - 7 ESP-IDF recipes: idf_component.yml git version v0.3.4 - 3 PlatformIO recipes: lib_deps midi2 @ ^0.3.4 - .github/workflows/ci.yml: arduino-cli git URL fallback v0.3.4 - root CMakeLists.txt: find_package + FetchContent v0.3.4 Verified locally end to end: - Host suite (cmake + ctest 7/7 pass) - esp32-s3-devkitc-usb-midi2 reconfigure + build with v0.3.4 from GitHub Component Manager (no local path workaround)
- Drop the corrupt logo_midi2_cpp.png left over from the bulk sed pass (the rename moved logo_midi2_cpp.png to logo_midi2cpp.png; the file with the old name should not have come back). - logo_midi2cpp.png touched up. - Fix one stale token in README.md Contents (`midi2\_cpp` link text pointing at #midi2cpp -> `midi2cpp`).
Renamed from midi2_cpp to midi2cpp in deference to starfishmod/MIDI2_CPP (maintained since 2021 by Andrew Mee, MIDI Association TSB Rep), which operates in the same domain. Keeping the namespaces disjoint avoids confusion in package managers and search. This is a breaking release. Repository, header, CMake target / alias, preprocessor macros and manifest names all moved. The C++ API surface (`namespace midi2`, `m2device`, `m2host`, `m2bridge`, `m2ci`, ...) is unchanged. Bumps the midi2 dependency to v0.3.4 across every install path (Arduino LM, PlatformIO, ESP-IDF Component Manager, CMake find_package + FetchContent). midi2 v0.3.4 fixes the ESP-IDF Component Manager gate that v0.3.3 routed at dist/midi2.c (filtered out of the dependency tarball). See CHANGELOG.md for the full migration diff.
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.
Summary
Renames
midi2_cpptomidi2cppin deference tostarfishmod/MIDI2_CPP(maintained since 2021 by Andrew Mee, MIDI Association TSB Rep), which operates in the same domain. Keeping the namespaces disjoint avoids confusion in package managers and search.This is a breaking rename. Every consumer-facing identifier moved.
What changed
gh repo rename):midi2_cpp→midi2cpp. GitHub redirect on the old URL.<midi2_cpp.h>→<midi2cpp.h>. Namespacemidi2and them2*aliases are unchanged.midi2_cpp→midi2cpp,midi2_cpp::midi2_cpp→midi2cpp::midi2cpp.MIDI2_CPP_*→MIDI2CPP_*.library.propertiesname=midi2cpp,library.json"name": "midi2cpp".dist/midi2.c, which the Component Manager filters out).Verification
cmake -B build -DMIDI2CPP_BUILD_TESTS=ON && cmake --build build && ctest— 7/7 pass.arduino-cli compile examples/HelloMIDI2 --fqbn rp2040:rp2040:rpipico— 67 KB program (3% of flash).examples/esp32-s3-devkitc-usb-midi2reconfigure + build against midi2 v0.3.4 from the GitHub Component Manager — clean .bin, no manual workaround.midi2_cpp/MIDI2_CPP/midi2_cpp.hin tracked files.Commits
Follow-up tasks (separate)
gh repo rename midi2_cpp midi2cppv0.3.0+ GitHub releasearduino/library-registry: removemidi2_cppentry, addmidi2cpp