Skip to content

CI: use hashes for GH workflows - #482

Merged
ev-br merged 1 commit into
data-apis:mainfrom
ev-br:ci_hashes_not_tags
Oct 25, 2026
Merged

ev-br merged 1 commit into
data-apis:mainfrom
ev-br:ci_hashes_not_tags

Conversation

@ev-br

@ev-br ev-br commented Oct 25, 2026

Copy link
Copy Markdown
Member

Follow the supply chain practices and pin exact hashes for GH actions.

cross-ref similar PRs: data-apis/array-api-strict#251, data-apis/array-api-tests#472

@lucascolley

Copy link
Copy Markdown
Member

did you do it by hand or use a tool like pixi exec gha-update?

@ev-br
ev-br force-pushed the ci_hashes_not_tags branch from f9824be to 57f661b Compare October 25, 2026 12:14
@ev-br

ev-br commented Oct 25, 2026

Copy link
Copy Markdown
Member Author

did you do it by hand or use a tool like pixi exec gha-update?

old-school manual I'm afraid

@lucascolley lucascolley left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

would be good to also add linting and an auto-update tool for this, but it's an improvement :)

@ev-br

ev-br commented Oct 25, 2026

Copy link
Copy Markdown
Member Author

would be good to also add linting and an auto-update tool for this, but it's an improvement :)

dependabot is set up in this repo, is this what you meant?

One other potential improvement is to fix what zizmor flags, also for a follow-up I think.

@lucascolley

lucascolley commented Oct 25, 2026 •

Copy link
Copy Markdown
Member

dependabot is one option among many, I use https://github.com/data-apis/array-api-extra/blob/main/.github/renovate.json over in array-api-extra, you could also roll-your-own bot to make updates like https://github.com/prefix-dev/pixi/blob/main/.github/workflows/upgrade-pixi.yml.

For the linting, I think https://github.com/data-apis/array-api-extra/blob/d4473a7dec2b197ea9973ac547cbc0ae996ebcfd/.lefthook.yml#L54-L55 should catch problems like not pinning to hashes, yeah

@ev-br

ev-br commented Oct 25, 2026

Copy link
Copy Markdown
Member Author

FWIW my default position is "ain't broken don't fix". Dependabot is sure not the only option, and I'm not particularly fixated on it. It is set up already, it seems to work, it is sufficiently quiet, it does not require maintenance or even attention.
And I've been recently informed that changing the tags to hashes once makes it use hashes going forward. If that's the case indeed (will need to keep an eye on it for a while I suppose), that's good enough for me at least.

That said, I'm happy to review PRs with improvements for established best practices.

@lucascolley

Copy link
Copy Markdown
Member

yeah, making dependabot handle it is probably the path of least resistance from the current state

@ev-br

ev-br commented Oct 25, 2026

Copy link
Copy Markdown
Member Author

For this PR specifically, I'm going to merge this as approved (thanks Lucas!) and proceed with gh-478 and then gh-476 which is quite overdue already. Follow-up improvements are most welcome.

@ev-br
ev-br merged commit b8ac264 into data-apis:main Oct 25, 2026
28 checks passed
@ev-br ev-br added this to the 1.16 milestone Oct 25, 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.

2 participants