Added
- Workout updates -
gccli workouts update <id> <file>replaces an existing workout throughPUT /workout-service/workout/{id}. The workout keeps its ID and its calendar schedule, so editing a workout no longer means delete plus upload plus re-schedule. (#60)
Fixed
workouts updatewrites the ID argument into the payload before sending it. A file written forworkouts uploadcarries noworkoutIdand used to reach the server unchanged; a file copied from another workout named that other workout in the body. The ID on the command line now wins, and gccli warns when the file disagrees. A non-numeric ID fails up front instead of returning a 404 from Garmin, and a payload that is not a JSON object is rejected with the file name. (#61)- Prevent horizontal overflow on the docs site on mobile.
Changed
- Bump dependencies in the minor-and-patch group:
github.com/alecthomas/kong(1.16.0 -> 1.16.1) andgolang.org/x/net(0.57.0 -> 0.58.0). (#59)
Docs
- The README, the
gccliskill and the docs site say that an update is a full replace, not a patch, and point atgccli workouts detail <id>for a complete payload. (#61)
Tests
- E2E coverage for
workouts updateagainst the live API: the changed payload lands under the original ID, and a scheduled workout keeps its calendar entry across an update. (#61) - The mock servers for
PUT /workout-service/workout/{id}answer 204 with no body, which is what Garmin does. They used to echo the payload back. (#62)
New Contributors
- @matteoscurati made their first contribution in #60
Full Changelog: v1.9.2...v1.10.0