-
Notifications
You must be signed in to change notification settings - Fork 47
Cleanup Qrisp packaging pipeline #243
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
base: main
Are you sure you want to change the base?
Cleanup Qrisp packaging pipeline #243
Conversation
…d contribution guide, add pip-compile, remove gitlab-ci.yaml
|
=> The changes to the README file should not only contain an explanation about the IQM module but also about the other available backends => The changes to the testing and CI/CD pipeline should be agreed among all contributing partners => We should wait with changes to the key processes and code/package management until we have agreed on a governance structure and roadmap... otherwise we will end up in chaos Governance structure is WiP Thank you! |
|
Hi @ntchol , thanks for reviewing.
Agreed, there are other backends like
Understandable. I'll keep the PR in draft for now and wait for further input. Happy to pick this up when governance structure is set in stone. I would still recommend pinning the test dependencies as those are currently only documented in the CI pipeline. Happy to open another PR for that. |
|
Hi, thanks for the contribution! |
| timeout-minutes: 60 | ||
| strategy: | ||
| matrix: | ||
| python-version: ["3.10.*"] |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
minor suggestion: you should add more python versions given that the readme states that Qrisp is compatible with 3.10, 3.11 & 3.12.
|
|
||
| build: | ||
| runs-on: ubuntu-latest | ||
| timeout-minutes: 60 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I have never used this. What's the motivation behind using timeout in a testing workflow? The unit tests could take longer than 60 minutes, right?
| @@ -0,0 +1,119 @@ | |||
| # This file was autogenerated by uv via the following command: | |||
| # uv pip compile requirements/base.in -o requirements/base.txt | |||
| blinker==1.9.0 | |||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
it is better to use inequality dependency specifiers for version syntax rather than ==.
https://packaging.python.org/en/latest/specifications/dependency-specifiers/
If a dependabot workflow is added in the future, == can create excessive dependabot PRs.
Overview
Qrisp currently relies on a mix of
pyproject.tomland the oldersetup.cfgfor packaging. This PR aims at moving the logic topyproject.tomlwhich is recommended. Furthermore, the linting configuration is added, we switch to ruff, and enforce the rules via pre-commit.List of changes
pyproject.toml.CONTRIBUTE.md.qrisp_test.yml, by renaming it tomain.ymland adding pre-commit job..gitlab-ci.yamlas GitLab is no longer used.Tasks for future PRs
Some necessary tasks were postponed to future PRs to reduce the number of files changed
versioninpyproject.tomlby using setuptools-scm and push automatically to PyPI.