Skip to content

Add pre-commit, uv compatibility, and rewrite CI workflows #194

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Draft
wants to merge 52 commits into
base: main
Choose a base branch
from

Conversation

willsimmons1465
Copy link
Contributor

Description

Following a discussion on how to approach unifying the build systems and CI workflows for the extension repos to make maintenance easier; this adds the pre-commit from pytket-aqt (as tidied up a little in CQCL/pytket-aqt#151 ), converts the build system to be compatible with uv, and separates the build and test commands of the workflows into the 'XX-wf.yml' files that can be relocated to somewhere like CQCL/hugrverse-actions and called in, just giving the required parameters for that specific extension repo (e.g. supported python versions) as inputs.

Because the workflows of this repo were already pretty simple and straightforward, it doesn't look like it really simplifies much, but even whilst this PR is under review we can trial using the common workflows in other extensions to see if it helps. The main change is the splitting into static checks (linting, mypy, docs) and unit tests which can help make sure failures of one don't impact checking the others.

Related issues

Checklist

  • I have performed a self-review of my code.
  • I have commented hard-to-understand parts of my code.
  • I have made corresponding changes to the public API documentation.
  • I have added tests that prove my fix is effective or that my feature works.
  • I have updated the changelog with any user-facing changes.

justfile Outdated
Copy link
Contributor Author

Choose a reason for hiding this comment

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

All of the actions in here only apply to the docs. Would this file be better off in the docs folder?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Would be good to separate this out into a reusable workflow like the others. The tasks here are also simplifed by calling operations from the justfile

@cqc-melf
Copy link
Collaborator

Will try to find some time to do the others tomorrow

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.

3 participants