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.1.0.tar.gz (90.1 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.1.0-py3-none-any.whl (23.9 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for quantinuum_schemas-7.1.0.tar.gz
Algorithm Hash digest
SHA256 48fc2354114d9ccebdabb94687b5209d594f14131d0003ffe8e9f5b91a7485b9
MD5 07fa955c27b1e1713984db1d6b1ac126
BLAKE2b-256 84aa2b62b896565eb24debb5ad016bed7df0d5fa382d26faa41818d20e975243

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for quantinuum_schemas-7.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 6c2370ae4f01c4d35fe0848879075497463014a3ae8764b66010ea30c854fc44
MD5 7c250d1a352203cf4fe7e6c037de2391
BLAKE2b-256 63c6963128a2c0d91c605d2df2ab1b4d9c83c9809b192be873e6ab4a877c9b00

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