Skip to content

chore(deps): coordinate Python and cocotb updates - #595

Merged
tignear merged 3 commits into
masterfrom
chore/updatecli-python-cocotb
Aug 18, 2026
Merged

tignear merged 3 commits into
masterfrom
chore/updatecli-python-cocotb

Conversation

@tignear

@tignear tignear commented Aug 18, 2026

Copy link
Copy Markdown
Contributor

Summary

  • keep Renovate responsible for existing dependency updates except the CI Python runtime
  • add an Updatecli policy that updates cocotb and selects the newest compatible stable CPython minor in the same pull request
  • run the policy weekly, manually, and in preview mode when its configuration changes
  • cover the compatibility selection logic with focused unit tests

Why

Updating the actions/setup-python runtime independently can select a Python release before cocotb publishes a compatible Linux x86-64 wheel. Grouping independent Renovate updates does not resolve that ordering problem.

The Updatecli policy first resolves the latest stable cocotb release, then intersects its CPython manylinux x86-64 wheel tags with stable Linux x64 releases from actions/python-versions. This permits Python to advance automatically when cocotb support is actually available, without a permanent version cap.

With the current upstream metadata, cocotb 2.0.1 selects Python 3.13.

Validation

  • updatecli --experimental manifest validate --strict
  • Updatecli local pipeline diff using live PyPI and actions/python-versions metadata
  • python3 -m unittest discover -s .updatecli/tests -v
  • actionlint
  • YAML lint
  • Renovate config validator
  • git diff --check
  • repository pre-push checks: submodule check, cargo fmt, Biome, cargo check, clean tree

@tignear
tignear marked this pull request as ready for review August 18, 2026 11:44

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 69a956ecc1

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread .github/workflows/updatecli.yml Outdated
run: updatecli pipeline apply --config .updatecli/updatecli.d
env:
UPDATECLI_GITHUB_ACTOR: ${{ github.actor }}
UPDATECLI_GITHUB_TOKEN: ${{ github.token }}

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1 Badge Use a token that can trigger CI for generated PRs

When a scheduled or manually dispatched apply creates its branch and pull request with ${{ github.token }}, neither the resulting push nor pull_request event starts another workflow: GitHub documents that events caused by GITHUB_TOKEN, except explicit dispatch events, do not create workflow runs (automatic token authentication). Consequently, the generated dependency PR never receives the regular ci.yml compatibility check described as its final validation; use a GitHub App/PAT credential or explicitly dispatch a workflow that supports workflow_dispatch.

Useful? React with 👍 / 👎.

version-file: .updatecli-version

- name: Preview update policy
run: updatecli pipeline diff --config .updatecli/updatecli.d

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Run the new selector tests in CI

When a pull request changes the selector or its test cases, this workflow only runs updatecli pipeline diff, while the regular CI workflow invokes only the Node test suite under scripts/; no workflow runs .updatecli/tests/test_latest_compatible_python.py. The preview exercises the current live-data path but not the filtering and failure cases covered by these tests, so those tests can regress or fail while every required check remains green; add the unittest discovery command as a workflow step.

Useful? React with 👍 / 👎.

Comment thread .github/workflows/updatecli.yml Outdated
- ".github/workflows/updatecli.yml"
- ".updatecli-version"
- ".updatecli/**"
- "renovate.json"

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Preview the policy when its target workflow changes

When a pull request edits .github/workflows/ci.yml, this path filter does not run the Updatecli preview even though both file targets rely on exact regular-expression matches in that workflow. A reformat such as changing the quote style around python-version or restructuring the cocotb install command can therefore merge without validating the policy and leave the next scheduled apply unable to update either pin; include .github/workflows/ci.yml in the trigger paths.

Useful? React with 👍 / 👎.

@codspeed

codspeed Bot commented Aug 18, 2026 •

Copy link
Copy Markdown

Merging this PR will not alter performance

✅ 4 untouched benchmarks


Comparing chore/updatecli-python-cocotb (0879d86) with master (ea13030)

Open in CodSpeed

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 0879d86824

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread .updatecli/scripts/latest_compatible_python.py
@tignear

tignear commented Aug 18, 2026

Copy link
Copy Markdown
Contributor Author

@codex review

@chatgpt-codex-connector

Copy link
Copy Markdown

Codex Review: Didn't find any major issues. Keep them coming!

Reviewed commit: 0879d86824

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

@tignear
tignear enabled auto-merge August 18, 2026 12:22
@tignear
tignear added this pull request to the merge queue Aug 18, 2026
Merged via the queue into master with commit ca07763 Aug 18, 2026
20 checks passed
@tignear
tignear deleted the chore/updatecli-python-cocotb branch August 18, 2026 12:39
@celox-bot celox-bot Bot mentioned this pull request Aug 18, 2026
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