Skip to main content

Shared data models for Quantinuum.

Project description

Quantinuum schemas

Public models that define API boundaries used by Quantinuum. Intended to be used across teams and projects ie. shared. Backwards compatibility and semantic versioning are particularly important in this repo! The "Check Conventional Commits format" workflow will make sure your PRs follow a standard format. For backwards-incompatible changes, please use the conventional ! or BREAKING CHANGE:.

Dependencies

We try to keep the dependencies minimal. However we do need pydantic for validation.

Making a release

See notes above about conventional commits and versioning.

Once all your code changes are merged onto the main branch using conventional commits, follow these steps to publish.

Update the CHANGELOG

  • Update CHANGELOG.md: this is automated.

    Use devenv and the commitizen tool:

    git fetch --tags origin  # make sure your local tags are same as in github
    cz bump --files-only  # --files-only prevents the tool making a git tag
    

    This will use the commit history and modify CHANGELOG.md to include a heading with the new version number and the date. The tool automatically decides whether to increment the patch version, minor version or major version.

    If none of the commits since the last version tag would generate a CHANGELOG entry, then you will see NO_COMMITS_TO_BUMP. In this situation,

    >$ # only if you see NO_COMMITS_TO_BUMP... add one to the patch number
    >$ cz bump --files-only x.y.z+1  # !! substitute correct version
    >$ vi CHANGELOG.md  # edit to explain that there are no changes
    
  • If you like, you can manually edit CHANGELOG.md at this point. Consider moving important entries under these headings, or writing under them (see Keep A Changelog):

    • Deprecated
    • Removed
    • Security
  • Create a release branch git checkout -b release/vx.y.z

  • git add the modifications, then git commit and git push them.

  • Create a PR (title: docs: Update CHANGELOG for vx.y.z)

  • Ask a colleague to review the changes (should be just CHANGELOG.md and pyproject.toml)

  • Squash merge the PR into main

Trigger the release workflow

  • Go to github.com and on this repo's home page, click "Create a new release"
  • Using the version in the format v1.2.34, click "Choose a tag" and create a new tag
  • Click "Generate release notes"
  • Release title = v1.2.34. In the "Describe this release" box, copy and paste the new text that was added to CHANGELOG.md in the commit you are releasing.
  • Click "Publish release".
  • The "Create release" workflow should run automatically.
  • Check that the new release is on https://pypi.org/project/quantinuum-schemas/#history

License

This project is licensed under Apache License, Version 2.0 (LICENSE or http://www.apache.org/licenses/LICENSE-2.0).

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

quantinuum_schemas-7.2.0.tar.gz (92.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

quantinuum_schemas-7.2.0-py3-none-any.whl (26.7 kB view details)

Uploaded Python 3

File details

Details for the file quantinuum_schemas-7.2.0.tar.gz.

File metadata

  • Download URL: quantinuum_schemas-7.2.0.tar.gz
  • Upload date:
  • Size: 92.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.6.6

File hashes

Hashes for quantinuum_schemas-7.2.0.tar.gz
Algorithm Hash digest
SHA256 d805edf8e75856ba0b0c0d1d7d8c377706647e6c2683251f3fdecba156627129
MD5 e3affc7f6f3357390850a06b8e4501e6
BLAKE2b-256 0c428228cf27729ff79886b45ac89444c5631e961e0b1e5c0fefede04913edeb

See more details on using hashes here.

File details

Details for the file quantinuum_schemas-7.2.0-py3-none-any.whl.

File metadata

File hashes

Hashes for quantinuum_schemas-7.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 951ce80e9aeed08ad596e2398299b2d827666049a8c57f41fba672d9b5039a8a
MD5 1b31a8250feb348a96b0ff3c6da2e715
BLAKE2b-256 69e8a3f22c8a67e05d02298dbd5075ef15fd52c781f770044d253c048b659d60

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page