Skip to content

ci: re-add robot_descriptions caching, keyed by python-version this time - #612

Merged
petercorke merged 1 commit into
mainfrom
ci/cache-robot-descriptions
Aug 21, 2026
Merged

ci: re-add robot_descriptions caching, keyed by python-version this time#612
petercorke merged 1 commit into
mainfrom
ci/cache-robot-descriptions

Conversation

@petercorke

Copy link
Copy Markdown
Owner

Thanks for contributing to RTB!

Summary

PR #530 added actions/cache steps for ~/.cache/robot_descriptions, but they were removed in PR #536: robot_descriptions wasn't even a declared dependency at the time, so every run hit ModuleNotFoundError before any clone was attempted — the caching solved a problem that didn't exist yet, and had its own bug (cache key was OS-only, so it couldn't help across the os x python-version matrix's parallel jobs anyway).

That dependency gap is long fixed, and robot_descriptions is now genuinely exercised (YuMi, Valkyrie, UR3/5/10, Jaco, PR2, ...). Hit a concrete instance of the predicted failure mode directly: a real git-clone timeout in the macos-latest/3.12 job of PR #611's first CI run (unrelated to that PR's own change — just an ordinary transient network flake against robot_descriptions' upstream asset repos).

Re-adding caching with the corrected key (now includes python-version) to test-core, test, and coverage — and also docs-build, which wasn't covered by the original PR but genuinely needs it too: intro.rst's YuMi example runs as a live .. runblock:: during the Sphinx build.

Related issue

Checklist

Only the first item below is checked automatically — the rest are a self-check for you before requesting review, nothing currently verifies them for you.

  • PR title follows Conventional Commits (type: description) — checked automatically, see the "Check PR title" status
  • Tests pass locally (pytest)
  • Added/updated tests for this change, if applicable
  • New/changed code is type-hinted with modern syntax (X | Y, list[X], not Union/Optional/List)
  • Docstrings updated (reST style: :param:, :returns:; type hints in the signature cover types now, :type:/:rtype: are rarely needed)
  • PR is as small/focused as practical — if it tackles several unrelated things, consider splitting it so each can be reviewed and accepted independently
  • No test files, data files, or notebooks specific to your own project — PyPI has strict package size limits, and RTB is already split into a toolbox and a data package. Notebooks, if of general interest, should have output cleared before committing.

@codecov

codecov Bot commented Aug 17, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 0.00%. Comparing base (5977ac4) to head (fe7ca56).
⚠️ Report is 1 commits behind head on main.

Additional details and impacted files
@@          Coverage Diff          @@
##            main    #612   +/-   ##
=====================================
  Coverage   0.00%   0.00%           
=====================================
  Files        142     142           
  Lines      13898   13898           
=====================================
  Misses     13898   13898           

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

PR #530 added actions/cache steps for ~/.cache/robot_descriptions, but
they were removed in PR #536: robot_descriptions wasn't even a declared
dependency at the time, so every run hit ModuleNotFoundError before any
clone was attempted -- the caching solved a problem that didn't exist
yet, and had its own bug (cache key was OS-only, so it couldn't help
across the os x python-version matrix's parallel jobs anyway).

That dependency gap is long fixed, and robot_descriptions is now
genuinely exercised (YuMi, Valkyrie, UR3/5/10, Jaco, PR2, ...). Hit a
concrete instance of the predicted failure mode directly: a real
git-clone timeout in the macos-latest/3.12 job of PR #611's first CI
run. Re-adding caching with the corrected key (includes python-version)
to test-core, test, and coverage -- and also docs-build, which wasn't
covered by the original PR but genuinely needs it too: intro.rst's YuMi
example runs as a live `.. runblock::` during the Sphinx build.
@petercorke
petercorke force-pushed the ci/cache-robot-descriptions branch from 63cefd0 to fe7ca56 Compare August 17, 2026 21:17
@petercorke
petercorke merged commit 6e3508b into main Aug 21, 2026
58 of 63 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant