Add git-based version stamping and publish workflow (closes #329) - #335
Open
michael-christen wants to merge 3 commits into
Open
Add git-based version stamping and publish workflow (closes #329)#335michael-christen wants to merge 3 commits into
michael-christen wants to merge 3 commits into
Conversation
Naming is up for debate. Arguably this is my second version. I could also abbreviate it to sbr Mechanical WIP here: https://cad.onshape.com/documents?nodeId=2f14397cff1201652b29e7ee&resourceType=folder Next step: - [x] Re-implement schematic with the updated BOM - [x] Define BOM Current BOM: https://www.pololu.com/salesorder/1J540243?s=ac1e0b12 - M2T550 I2C Motor Controller - Encoders ... - The sensors are powered through the Vcc (pin 4, blue wire) and GND (pin 1, green wire) pins; Vcc can be 2.7 V to 18 V. The quadrature outputs A and B (yellow and white wires) are digital signals that are either driven low (0 V) or pulled to Vcc through 10 kΩ pull-up resistors, depending on the orientation of the motor. The sensors’ comparators have built-in hysteresis, which prevents spurious signals in cases where the motor is near a transition point. The A and B signals are square waves with roughly 50% duty cycles that are approximately 90° out of phase. The order of the A-B transitions indicates motor direction, and the frequency indicates motor speed. - https://www.pololu.com/product/5187 - MinIMU-9: LSM6DSO, LIS3MDL - Chip: Raspberry Pi Pico W - Comms: (chip) wifi for telemetry and programmatic commanding, bluetooth for controller interface --------- Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
This reverts commit af9f192.
Owner
Author
|
session: pr_335_git_stamp_publish |
michael-christen
force-pushed
the
bazel_version_329
branch
from
August 4, 2026 23:30
db9d294 to
f2dc870
Compare
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
Implements Bazel version stamping for the Python wheel, closing out the experiment from #329.
tools/workspace_status.sh— outputsSTABLE_GIT_VERSION; uses the exact git tag (strip leadingv) when on a release commit, otherwise falls back to0.0.<commit-count>for dev builds.bazelrc— registersworkspace_status_commandglobally so--stampalone activates versioningpackaging/BUILD— changesversion = "0.0.0"toversion = "{STABLE_GIT_VERSION}"withstamp = -1; uses thepy_wheel_all.disttarget (provided by thepy_wheelmacro) to resolve the stamped filename at execution time.github/workflows/publish-wheel.yml— triggers onv*tags, builds the stamped dist with--stamp, and uploads the wheel as a GitHub Release artifact viagh release createKey behavior:
bazel build //packaging:py_wheel_all— filename has literal{STABLE_GIT_VERSION}placeholder (fine for dev; not for distribution)bazel build --stamp //packaging:py_wheel_all.dist— produces correctly named wheel (e.g.mchristen_toolbox-0.0.200-py3-none-any.whllocally)git tag v1.0.0 && git push origin v1.0.0— triggers the publish workflow, which producesmchristen_toolbox-1.0.0-py3-none-any.whland attaches it to a GitHub ReleaseTest plan
bazel build //packaging:py_wheel_allsucceeds with placeholder in filenamebazel build --stamp //packaging:py_wheel_all.distproduces correctly stamped wheel (mchristen_toolbox-0.0.200-py3-none-any.whl)METADATAconfirmsVersion: 0.0.200