Skip to content

robostack-bot: monthly upgrade-pixi PR for the tooling's dependencies - #206

Closed
Tobias-Fischer wants to merge 1 commit into
mainfrom
bot/upgrade-pixi-command
Closed

Tobias-Fischer wants to merge 1 commit into
mainfrom
bot/upgrade-pixi-command

Conversation

@Tobias-Fischer

Copy link
Copy Markdown
Collaborator

The same monthly "Upgrade pixi dependencies" PR as RoboStack/robostack.github.io#221, as a robostack-bot command. The PR is opened with the bot's app token, so CI runs on it.

  • Schedule: monthly (cron 29 5 1 * *). It can also be run on demand with @robostack-bot upgrade-pixi, the issue form, or Run workflow. The PR goes to branch bot/upgrade-pixi.
  • What it does: runs pixi upgrade --json, then rs upgrade-pixi --changes …. That step:
    • builds the PR body with pixi-diff-to-markdown (the same tables as #221);
    • lists the kept caps;
    • runs rs check in the upgraded environment.
  • Kept caps (PIXI_UPGRADE_KEEP in tools/maintenance.py, passed as --exclude):
    • rattler-build >=0.80,<0.81
    • cmake <4.0
    • setuptools <82.0
    • vinca, a git commit that update-vinca moves
  • Why pixi upgrade runs outside pixi run: it reinstalls the environment, here from Python 3.14 to 3.15.
  • Builds on the bot's PRs: they touch shared files, so all distributions are generated. Recipes already on the channel are skipped (skip_existing), so little is built.
  • Docs: README, the bot issue form, and a test in tools/tests/test_bot_commands.py.

Tested locally (osx-arm64):

  • pixi run test: 75 passed.
  • The full bot step ran end to end. Today it would:
    • move Python 3.14 to 3.15.2;
    • bump rattler-index to 0.34, gh to 2.103, pytest to 9.2, and git-lfs, git and m2-patch;
    • turn the * specs into ranges;
    • leave the caps alone.
  • rs check passes in that upgraded environment.

The workflow hasn't been dispatched.

🤖 Generated with Claude Code

Like robostack.github.io's upgrade-dependencies workflow: `pixi upgrade --json`,
summarised with pixi-diff-to-markdown, in a robostack-bot PR (so CI runs on it).
Runs monthly (cron "29 5 1 * *"), or on demand as `@robostack-bot upgrade-pixi`.

The deliberate caps stay (PIXI_UPGRADE_KEEP: rattler-build, cmake, setuptools, and
vinca, which update-vinca moves). pixi upgrade runs outside `pixi run`, since it
reinstalls the environment; `rs check` then runs in the upgraded one.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@Tobias-Fischer Tobias-Fischer added the build:none PR build: build no packages, only run the checks (tooling, CI or docs changes) label Nov 9, 2026
@Tobias-Fischer

Copy link
Copy Markdown
Collaborator Author

Closing in favour of #205 (same feature, update-pixi): it keeps Python at 3.14 (a 3.15 bump currently pulls pyyaml from PyPI on win-64), lets rattler-build upgrade, and labels the PRs build:none (#207). Running pixi upgrade before pixi run, as this PR did, is being carried over to #205.

🤖 Claude (AI assistant), on behalf of @Tobias-Fischer

Tobias-Fischer added a commit that referenced this pull request Nov 9, 2026
pixi upgrade reinstalls the environment, so the bot runs it first (with the
--exclude arguments from `rs update-pixi --excludes`) and hands its JSON to
`rs update-pixi --changes`, which no longer upgrades under itself. Without
--changes, rs update-pixi still runs pixi upgrade (local use). From #206.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

build:none PR build: build no packages, only run the checks (tooling, CI or docs changes)

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant