We may want to try building the WipperSnapper Arduino firmware during protoc-wrapper-generation.yml. The firmware would need to be built with the new protocol buffers produced by this step.
Currently, we only test that we can build the new protocol buffer files with nanopb, and checkout a PR on WipperSnapper Arduino. We've recently run into cases where the generated files do not compile in the WipperSnapper Arduino repo. This could be solved by requiring this repo's workflow to build the WS arduino firmware for one test hardware case.
tldr; PR adds new workflow, test-wrapper-arduino.yml to generate new proto wrapper files for all pull requests. Tests if WipperSnapper still builds.
This pull request resolves and addresses the second bullet point in https://github.com/adafruit/Wippersnapper_Protobuf/issues/105:
tldr; PR adds new workflow,
test-wrapper-arduino.yml
to generate new proto wrapper files for all pull requests. Tests if WipperSnapper still builds.Working example:
I remove a field from an existing proto file: https://github.com/brentru/Wippersnapper_Protobuf/commit/048ce94dcdf440702e170467c29e5cda036600ce
This PR's new workflow runs, generates the arduino wrapper files, loads them into WS Arduino, builds wippersnapper firmware, and fails on the pin that was changed: https://github.com/brentru/Wippersnapper_Protobuf/actions/runs/3535053918/jobs/5932638758#step:12:108