.. OZI
Classifier: License-Expression :: Apache-2.0 WITH LLVM-exception
Classifier: License-File :: LICENSE.txt
.. README
Part of the OZI Project, under the Apache License v2.0 with LLVM Exceptions.
See LICENSE.txt for license information.
===
OZI
===
.. image:: https://www.oziproject.dev/assets/brand/images/ozi_logo_v2.svg
:align: left
:height: 62
:target: https://www.oziproject.dev/
OZI is a set of tools for creating, publishing, and maintaining Python packages
using `semantic versioning <https://semver.org/>`_
with `semantic-release <https://semantic-release.gitbook.io/semantic-release>`_
and `conventional commits <https://www.conventionalcommits.org/en/v1.0.0/>`_.
See the `documentation <https://docs.oziproject.dev/>`_ for the project roadmap,
API specification, Meson version support, and other project information.
Project Information
-------------------
|py-version-badge| |License| |slsa-level3-badge|
|openssf-badge| |OSSF-Scorecard| |SourceRank|
Purpose
^^^^^^^
OZI is meant for Python developers as a standardized and opinionated
Python packaging style guide. It consists of command line utilities, a continuous integration checkpointing API using the Meson build system, and continuous deployment scripts.
The OZI continuous integration strategy consists of:
1. The following isolated checkpoint environments:
* code testing and coverage
* distributing Python packages with Meson_
* code linting and formatting
2. Release drafting
3. Building and signing of releases
4. Provenance generation (`SLSA v1.0 - Level 3 <https://slsa.dev/spec/v1.0/levels#build-l3>`_)
5. Publishing
What OZI is **not**
###################
* A replacement for test environment managers like tox_, as a matter of fact OZI uses ``tox``.
* A replacement for git hook package management tools like pre-commit_
What OZI is
###########
* Checkpointed Python packaging for Meson projects focused on pure Python sources.
Contributing
------------
See the project `CONTRIBUTING.md <https://github.com/rjdbcm/OZI/blob/main/.github/CONTRIBUTING.md>`_
Contact
-------
Eden Ross Duff MSc - help@oziproject.dev
.. image:: https://raw.githubusercontent.com/sigstore/community/main/artwork/badge/sigstore_codesigned_purple.png
:align: center
:height: 140
:target: https://www.sigstore.dev/
.. |py-version-badge| image:: https://img.shields.io/pypi/pyversions/ozi?logo=python&label=Python%20Version
:target: https://pypi.org/search/?q=&o=-created&c=Programming+Language+%3A%3A+Python+%3A%3A+3&c=Programming+Language+%3A%3A+Python+%3A%3A+3+%3A%3A+Only&c=Programming+Language+%3A%3A+Python+%3A%3A+3.10&c=Programming+Language+%3A%3A+Python+%3A%3A+3.11&c=Programming+Language+%3A%3A+Python+%3A%3A+3.12&c=Programming+Language+%3A%3A+Python+%3A%3A+Implementation&c=Programming+Language+%3A%3A+Python+%3A%3A+Implementation+%3A%3A+CPython&c=Typing+%3A%3A+Typed
:alt: PyPI - Python Version
.. |slsa-level3-badge| image:: https://slsa.dev/images/gh-badge-level3.svg
:target: https://slsa.dev/spec/v1.0/levels#build-l3
:alt: Supply-chain Levels for Software Artifacts v1.0 Build L3
.. |openssf-badge| image:: https://img.shields.io/cii/level/7515?label=OpenSSF%20Best%20Practices&labelColor=0c3455&link=https%3A%2F%2Fwww.bestpractices.dev%2Fen%2Fprojects%2F7515
:target: https://bestpractices.coreinfrastructure.org/projects/7515
:alt: Open Source Security Foundation self-certification status
.. |SourceRank| image:: https://img.shields.io/librariesio/sourcerank/pypi/ozi?logo=libraries.io&label=SourceRank&link=https%3A%2F%2Flibraries.io%2Fpypi%2FOZI%2Fsourcerank
:target: https://libraries.io/pypi/OZI/sourcerank
:alt: Libraries.io SourceRank
.. |OSSF-Scorecard| image:: https://img.shields.io/ossf-scorecard/github.com/OZI-Project/OZI?label=OpenSSF%20Scorecard&labelColor=0c3455
:target: https://securityscorecards.dev/viewer/?uri=github.com/OZI-Project/OZI&sort_by=risk-level&sort_direction=desc
:alt: Open Source Security Foundation Scorecard
.. |License| image:: https://img.shields.io/badge/License-Apache--2.0_with_LLVM_exceptions-282661?style=flat&logo=data%3Aimage%2Fsvg%2Bxml%3Bbase64%2CPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz48c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IiB2aWV3Qm94PSIwIDAgMTIyLjg4IDEwMi43MiIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAgMTIyLjg4IDEwMi43MiIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI%2BPHN0eWxlIHR5cGU9InRleHQvY3NzIj4uc3Qwe2ZpbGwtcnVsZTpldmVub2RkO2NsaXAtcnVsZTpldmVub2RkO308L3N0eWxlPjxnPjxwYXRoIGNsYXNzPSJzdDAiIGQ9Ik02NS42MSwyMC45MXY3Mi43NGgzNS42M2MwLjM4LDAsMC42OCwwLjMxLDAuNjgsMC42OXY3LjdjMCwwLjM4LTAuMzEsMC42OS0wLjY4LDAuNjlIMjIuODQgYy0wLjM4LDAtMC42OS0wLjMxLTAuNjktMC42OXYtNy43YzAtMC4zOCwwLjMxLTAuNjksMC42OS0wLjY5aDM1LjYzbDAtNzIuNzFjLTMuMS0xLjA4LTUuNTYtMy41My02LjY0LTYuNjNIMjkuM3YzLjQzIGMwLDAuMzgtMC4zMSwwLjY4LTAuNjgsMC42OGgtNS43OGMtMC4zOCwwLTAuNjktMC4zMS0wLjY5LTAuNjh2LTMuNDNoLTUuNzNjLTAuNDQsMC0wLjgtMC4zMS0wLjgtMC42OFY3Ljg0IGMwLTAuMzgsMC4zNi0wLjY5LDAuOC0wLjY5aDM1LjQzQzUzLjMzLDIuOTksNTcuMzEsMCw2MS45OSwwYzQuNjgsMCw4LjY2LDIuOTksMTAuMTQsNy4xNmgzNS41M2MwLjQ0LDAsMC44LDAuMzEsMC44LDAuNjl2NS43OCBjMCwwLjM4LTAuMzYsMC42OC0wLjgsMC42OGgtNi40NnYzLjQzYzAsMC4zOC0wLjMxLDAuNjgtMC42OCwwLjY4aC01Ljc4Yy0wLjM4LDAtMC42OS0wLjMxLTAuNjktMC42OHYtMy40M0g3Mi4xNiBDNzEuMDksMTcuMzgsNjguNjcsMTkuODEsNjUuNjEsMjAuOTFMNjUuNjEsMjAuOTF6IE05OS42NiwyMi4zbDIyLjkxLDQwLjQ4YzAuMiwwLjM1LDAuMjksMC43MywwLjI4LDEuMWgwLjAyYzAsMC4wNSwwLDAuMSwwLDAuMTUgYzAsOS42NC0xMS4zNSwxNy40Ni0yNS4zNSwxNy40NmMtMTMuODUsMC0yNS4xLTcuNjUtMjUuMzQtMTcuMTVjLTAuMDQtMC4xNi0wLjA2LTAuMzQtMC4wNi0wLjUxYzAtMC40NCwwLjE0LTAuODYsMC4zNy0xLjIgbDIzLjQzLTQwLjQzYzAuNTktMS4wMiwxLjg5LTEuMzcsMi45MS0wLjc4Qzk5LjIsMjEuNjUsOTkuNDgsMjEuOTUsOTkuNjYsMjIuM0w5OS42NiwyMi4zeiBNOTkuNzUsMzEuMTF2MzAuNmgxNy4zMkw5OS43NSwzMS4xMSBMOTkuNzUsMzEuMTF6IE05NS42Nyw2MS43VjMxLjE2TDc3Ljk2LDYxLjdIOTUuNjdMOTUuNjcsNjEuN3ogTTI3LjU0LDIyLjNsMjIuOTEsNDAuNDhjMC4yLDAuMzUsMC4yOSwwLjczLDAuMjgsMS4xaDAuMDIgYzAsMC4wNSwwLDAuMSwwLDAuMTVjMCw5LjY0LTExLjM1LDE3LjQ2LTI1LjM1LDE3LjQ2Yy0xMy44NSwwLTI1LjEtNy42NS0yNS4zNC0xNy4xNUMwLjAyLDY0LjE5LDAsNjQuMDIsMCw2My44NCBjMC0wLjQ0LDAuMTQtMC44NiwwLjM3LTEuMkwyMy44LDIyLjIxYzAuNTktMS4wMiwxLjg5LTEuMzcsMi45MS0wLjc4QzI3LjA4LDIxLjY1LDI3LjM2LDIxLjk1LDI3LjU0LDIyLjNMMjcuNTQsMjIuM3ogTTI3LjYzLDMxLjExdjMwLjZoMTcuMzJMMjcuNjMsMzEuMTFMMjcuNjMsMzEuMTF6IE0yMy41NCw2MS43VjMxLjE2TDUuODQsNjEuN0gyMy41NEwyMy41NCw2MS43eiBNNjEuOTksNi4wNyBjMi41OSwwLDQuNjksMi4xLDQuNjksNC42OWMwLDIuNTktMi4xLDQuNjktNC42OSw0LjY5Yy0yLjU5LDAtNC42OS0yLjEtNC42OS00LjY5QzU3LjMsOC4xNyw1OS40LDYuMDcsNjEuOTksNi4wN0w2MS45OSw2LjA3eiIvPjwvZz48L3N2Zz4%3D
:alt: Static Badge
:target: https://github.com/OZI-Project/OZI/blob/main/LICENSE.txt
.. _TOML: https://toml.io/en/
.. _PEP517: https://peps.python.org/pep-0517/
.. _build: https://pypi.org/project/build/
.. _mesonpep517: https://pypi.org/project/mesonpep517
.. _Ninja: https://pypi.org/project/ninja/
.. _setuptools: https://pypi.org/project/setuptools/
.. _setuptools_scm: https://pypi.org/project/setuptools_scm/
.. _Tomli: https://pypi.org/project/tomli/
.. _wheel: https://pypi.org/project/wheel/
.. _pre-commit: https://pre-commit.com/
.. _tox: https://tox.wiki/en/latest/
.. _Meson: https://mesonbuild.com/
Raw data
{
"_id": null,
"home_page": null,
"name": "OZI",
"maintainer": null,
"docs_url": null,
"requires_python": "<3.14,>=3.9",
"maintainer_email": null,
"keywords": null,
"author": "Eden Ross Duff MSc",
"author_email": "help@oziproject.dev",
"download_url": "https://files.pythonhosted.org/packages/91/d2/3a5443cd848d929e4f0d0acb8b053176bc07262bd66fb2b26a39db996ee6/ozi-2.1.16.tar.gz",
"platform": null,
"description": "\n.. OZI\n Classifier: License-Expression :: Apache-2.0 WITH LLVM-exception\n Classifier: License-File :: LICENSE.txt\n\n.. README\n Part of the OZI Project, under the Apache License v2.0 with LLVM Exceptions.\n See LICENSE.txt for license information.\n\n===\nOZI\n===\n\n.. image:: https://www.oziproject.dev/assets/brand/images/ozi_logo_v2.svg\n :align: left\n :height: 62\n :target: https://www.oziproject.dev/\n\nOZI is a set of tools for creating, publishing, and maintaining Python packages\nusing `semantic versioning <https://semver.org/>`_\nwith `semantic-release <https://semantic-release.gitbook.io/semantic-release>`_\nand `conventional commits <https://www.conventionalcommits.org/en/v1.0.0/>`_.\nSee the `documentation <https://docs.oziproject.dev/>`_ for the project roadmap,\nAPI specification, Meson version support, and other project information.\n\nProject Information\n-------------------\n\n|py-version-badge| |License| |slsa-level3-badge|\n\n|openssf-badge| |OSSF-Scorecard| |SourceRank|\n\nPurpose\n^^^^^^^\n\nOZI is meant for Python developers as a standardized and opinionated\nPython packaging style guide. It consists of command line utilities, a continuous integration checkpointing API using the Meson build system, and continuous deployment scripts.\n\nThe OZI continuous integration strategy consists of:\n\n1. The following isolated checkpoint environments:\n\n* code testing and coverage\n* distributing Python packages with Meson_\n* code linting and formatting\n\n2. Release drafting\n3. Building and signing of releases\n4. Provenance generation (`SLSA v1.0 - Level 3 <https://slsa.dev/spec/v1.0/levels#build-l3>`_)\n5. Publishing\n\nWhat OZI is **not**\n###################\n\n* A replacement for test environment managers like tox_, as a matter of fact OZI uses ``tox``.\n* A replacement for git hook package management tools like pre-commit_\n\nWhat OZI is\n###########\n\n* Checkpointed Python packaging for Meson projects focused on pure Python sources.\n\nContributing\n------------\n\nSee the project `CONTRIBUTING.md <https://github.com/rjdbcm/OZI/blob/main/.github/CONTRIBUTING.md>`_\n\nContact\n-------\n\nEden Ross Duff MSc - help@oziproject.dev\n\n.. image:: https://raw.githubusercontent.com/sigstore/community/main/artwork/badge/sigstore_codesigned_purple.png\n :align: center\n :height: 140\n :target: https://www.sigstore.dev/\n\n.. |py-version-badge| image:: https://img.shields.io/pypi/pyversions/ozi?logo=python&label=Python%20Version\n :target: https://pypi.org/search/?q=&o=-created&c=Programming+Language+%3A%3A+Python+%3A%3A+3&c=Programming+Language+%3A%3A+Python+%3A%3A+3+%3A%3A+Only&c=Programming+Language+%3A%3A+Python+%3A%3A+3.10&c=Programming+Language+%3A%3A+Python+%3A%3A+3.11&c=Programming+Language+%3A%3A+Python+%3A%3A+3.12&c=Programming+Language+%3A%3A+Python+%3A%3A+Implementation&c=Programming+Language+%3A%3A+Python+%3A%3A+Implementation+%3A%3A+CPython&c=Typing+%3A%3A+Typed\n :alt: PyPI - Python Version\n.. |slsa-level3-badge| image:: https://slsa.dev/images/gh-badge-level3.svg\n :target: https://slsa.dev/spec/v1.0/levels#build-l3\n :alt: Supply-chain Levels for Software Artifacts v1.0 Build L3\n.. |openssf-badge| image:: https://img.shields.io/cii/level/7515?label=OpenSSF%20Best%20Practices&labelColor=0c3455&link=https%3A%2F%2Fwww.bestpractices.dev%2Fen%2Fprojects%2F7515\n :target: https://bestpractices.coreinfrastructure.org/projects/7515\n :alt: Open Source Security Foundation self-certification status\n.. |SourceRank| image:: https://img.shields.io/librariesio/sourcerank/pypi/ozi?logo=libraries.io&label=SourceRank&link=https%3A%2F%2Flibraries.io%2Fpypi%2FOZI%2Fsourcerank\n :target: https://libraries.io/pypi/OZI/sourcerank\n :alt: Libraries.io SourceRank\n.. |OSSF-Scorecard| image:: https://img.shields.io/ossf-scorecard/github.com/OZI-Project/OZI?label=OpenSSF%20Scorecard&labelColor=0c3455\n :target: https://securityscorecards.dev/viewer/?uri=github.com/OZI-Project/OZI&sort_by=risk-level&sort_direction=desc\n :alt: Open Source Security Foundation Scorecard\n.. |License| image:: https://img.shields.io/badge/License-Apache--2.0_with_LLVM_exceptions-282661?style=flat&logo=data%3Aimage%2Fsvg%2Bxml%3Bbase64%2CPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz48c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IiB2aWV3Qm94PSIwIDAgMTIyLjg4IDEwMi43MiIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAgMTIyLjg4IDEwMi43MiIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI%2BPHN0eWxlIHR5cGU9InRleHQvY3NzIj4uc3Qwe2ZpbGwtcnVsZTpldmVub2RkO2NsaXAtcnVsZTpldmVub2RkO308L3N0eWxlPjxnPjxwYXRoIGNsYXNzPSJzdDAiIGQ9Ik02NS42MSwyMC45MXY3Mi43NGgzNS42M2MwLjM4LDAsMC42OCwwLjMxLDAuNjgsMC42OXY3LjdjMCwwLjM4LTAuMzEsMC42OS0wLjY4LDAuNjlIMjIuODQgYy0wLjM4LDAtMC42OS0wLjMxLTAuNjktMC42OXYtNy43YzAtMC4zOCwwLjMxLTAuNjksMC42OS0wLjY5aDM1LjYzbDAtNzIuNzFjLTMuMS0xLjA4LTUuNTYtMy41My02LjY0LTYuNjNIMjkuM3YzLjQzIGMwLDAuMzgtMC4zMSwwLjY4LTAuNjgsMC42OGgtNS43OGMtMC4zOCwwLTAuNjktMC4zMS0wLjY5LTAuNjh2LTMuNDNoLTUuNzNjLTAuNDQsMC0wLjgtMC4zMS0wLjgtMC42OFY3Ljg0IGMwLTAuMzgsMC4zNi0wLjY5LDAuOC0wLjY5aDM1LjQzQzUzLjMzLDIuOTksNTcuMzEsMCw2MS45OSwwYzQuNjgsMCw4LjY2LDIuOTksMTAuMTQsNy4xNmgzNS41M2MwLjQ0LDAsMC44LDAuMzEsMC44LDAuNjl2NS43OCBjMCwwLjM4LTAuMzYsMC42OC0wLjgsMC42OGgtNi40NnYzLjQzYzAsMC4zOC0wLjMxLDAuNjgtMC42OCwwLjY4aC01Ljc4Yy0wLjM4LDAtMC42OS0wLjMxLTAuNjktMC42OHYtMy40M0g3Mi4xNiBDNzEuMDksMTcuMzgsNjguNjcsMTkuODEsNjUuNjEsMjAuOTFMNjUuNjEsMjAuOTF6IE05OS42NiwyMi4zbDIyLjkxLDQwLjQ4YzAuMiwwLjM1LDAuMjksMC43MywwLjI4LDEuMWgwLjAyYzAsMC4wNSwwLDAuMSwwLDAuMTUgYzAsOS42NC0xMS4zNSwxNy40Ni0yNS4zNSwxNy40NmMtMTMuODUsMC0yNS4xLTcuNjUtMjUuMzQtMTcuMTVjLTAuMDQtMC4xNi0wLjA2LTAuMzQtMC4wNi0wLjUxYzAtMC40NCwwLjE0LTAuODYsMC4zNy0xLjIgbDIzLjQzLTQwLjQzYzAuNTktMS4wMiwxLjg5LTEuMzcsMi45MS0wLjc4Qzk5LjIsMjEuNjUsOTkuNDgsMjEuOTUsOTkuNjYsMjIuM0w5OS42NiwyMi4zeiBNOTkuNzUsMzEuMTF2MzAuNmgxNy4zMkw5OS43NSwzMS4xMSBMOTkuNzUsMzEuMTF6IE05NS42Nyw2MS43VjMxLjE2TDc3Ljk2LDYxLjdIOTUuNjdMOTUuNjcsNjEuN3ogTTI3LjU0LDIyLjNsMjIuOTEsNDAuNDhjMC4yLDAuMzUsMC4yOSwwLjczLDAuMjgsMS4xaDAuMDIgYzAsMC4wNSwwLDAuMSwwLDAuMTVjMCw5LjY0LTExLjM1LDE3LjQ2LTI1LjM1LDE3LjQ2Yy0xMy44NSwwLTI1LjEtNy42NS0yNS4zNC0xNy4xNUMwLjAyLDY0LjE5LDAsNjQuMDIsMCw2My44NCBjMC0wLjQ0LDAuMTQtMC44NiwwLjM3LTEuMkwyMy44LDIyLjIxYzAuNTktMS4wMiwxLjg5LTEuMzcsMi45MS0wLjc4QzI3LjA4LDIxLjY1LDI3LjM2LDIxLjk1LDI3LjU0LDIyLjNMMjcuNTQsMjIuM3ogTTI3LjYzLDMxLjExdjMwLjZoMTcuMzJMMjcuNjMsMzEuMTFMMjcuNjMsMzEuMTF6IE0yMy41NCw2MS43VjMxLjE2TDUuODQsNjEuN0gyMy41NEwyMy41NCw2MS43eiBNNjEuOTksNi4wNyBjMi41OSwwLDQuNjksMi4xLDQuNjksNC42OWMwLDIuNTktMi4xLDQuNjktNC42OSw0LjY5Yy0yLjU5LDAtNC42OS0yLjEtNC42OS00LjY5QzU3LjMsOC4xNyw1OS40LDYuMDcsNjEuOTksNi4wN0w2MS45OSw2LjA3eiIvPjwvZz48L3N2Zz4%3D\n :alt: Static Badge\n :target: https://github.com/OZI-Project/OZI/blob/main/LICENSE.txt\n\n.. _TOML: https://toml.io/en/\n.. _PEP517: https://peps.python.org/pep-0517/\n.. _build: https://pypi.org/project/build/\n.. _mesonpep517: https://pypi.org/project/mesonpep517\n.. _Ninja: https://pypi.org/project/ninja/\n.. _setuptools: https://pypi.org/project/setuptools/\n.. _setuptools_scm: https://pypi.org/project/setuptools_scm/\n.. _Tomli: https://pypi.org/project/tomli/\n.. _wheel: https://pypi.org/project/wheel/\n.. _pre-commit: https://pre-commit.com/\n.. _tox: https://tox.wiki/en/latest/\n.. _Meson: https://mesonbuild.com/\n",
"bugtrack_url": null,
"license": "Apache-2.0 WITH LLVM-exception",
"summary": "Package Python projects with Meson.",
"version": "2.1.16",
"project_urls": {
"Bug Tracker": "https://github.com/OZI-Project/OZI/issues",
"Community": "https://github.com/orgs/OZI-Project/discussions",
"Homepage": "https://oziproject.dev/"
},
"split_keywords": [],
"urls": [
{
"comment_text": null,
"digests": {
"blake2b_256": "e4a36eb3756d5f2beed3bc36407f3ba181b97faf027e27a69cf52168c49dd79f",
"md5": "0f1470179ef4e4a56271cbbdd3a7ebec",
"sha256": "0179ee7e71b7bfe5c53b36ef040b14af8028d1e282f30c656d81a60398e03c07"
},
"downloads": -1,
"filename": "ozi-2.1.16-cp311-none-any.whl",
"has_sig": false,
"md5_digest": "0f1470179ef4e4a56271cbbdd3a7ebec",
"packagetype": "bdist_wheel",
"python_version": "cp311",
"requires_python": "<3.14,>=3.9",
"size": 31294,
"upload_time": "2025-08-31T00:49:07",
"upload_time_iso_8601": "2025-08-31T00:49:07.324394Z",
"url": "https://files.pythonhosted.org/packages/e4/a3/6eb3756d5f2beed3bc36407f3ba181b97faf027e27a69cf52168c49dd79f/ozi-2.1.16-cp311-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "1bcae55af35fd36021ef30942361f87f527477a5e4c65901ed7ac438d1c31ae6",
"md5": "1be5545c6e4b0075d945f95da580405d",
"sha256": "347a3b150f05b8e4530aec7212c9341178bd71541c63dc90efb44e259023d651"
},
"downloads": -1,
"filename": "ozi-2.1.16-cp312-none-any.whl",
"has_sig": false,
"md5_digest": "1be5545c6e4b0075d945f95da580405d",
"packagetype": "bdist_wheel",
"python_version": "cp312",
"requires_python": "<3.14,>=3.9",
"size": 30166,
"upload_time": "2025-08-31T00:49:10",
"upload_time_iso_8601": "2025-08-31T00:49:10.180111Z",
"url": "https://files.pythonhosted.org/packages/1b/ca/e55af35fd36021ef30942361f87f527477a5e4c65901ed7ac438d1c31ae6/ozi-2.1.16-cp312-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "d2e661656541d1b3812636766a00c3df617e61d9a7b7c4c65092e43cd9860c08",
"md5": "f48d352f476ffb69e7d70d6688e10fe7",
"sha256": "25ab181aecd040a8209c78de34a766772bf119050590673bf33b64d59581d317"
},
"downloads": -1,
"filename": "ozi-2.1.16-cp313-none-any.whl",
"has_sig": false,
"md5_digest": "f48d352f476ffb69e7d70d6688e10fe7",
"packagetype": "bdist_wheel",
"python_version": "cp313",
"requires_python": "<3.14,>=3.9",
"size": 30247,
"upload_time": "2025-08-31T00:49:11",
"upload_time_iso_8601": "2025-08-31T00:49:11.752265Z",
"url": "https://files.pythonhosted.org/packages/d2/e6/61656541d1b3812636766a00c3df617e61d9a7b7c4c65092e43cd9860c08/ozi-2.1.16-cp313-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "91d23a5443cd848d929e4f0d0acb8b053176bc07262bd66fb2b26a39db996ee6",
"md5": "c785d9facf4f41133dcc56252ec28c2e",
"sha256": "006c064795c1ede59e45384d065c5ccc0d11c79cda6f23e3f08bf4e172a6a1d5"
},
"downloads": -1,
"filename": "ozi-2.1.16.tar.gz",
"has_sig": false,
"md5_digest": "c785d9facf4f41133dcc56252ec28c2e",
"packagetype": "sdist",
"python_version": "source",
"requires_python": "<3.14,>=3.9",
"size": 228884,
"upload_time": "2025-08-31T00:49:13",
"upload_time_iso_8601": "2025-08-31T00:49:13.262940Z",
"url": "https://files.pythonhosted.org/packages/91/d2/3a5443cd848d929e4f0d0acb8b053176bc07262bd66fb2b26a39db996ee6/ozi-2.1.16.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-08-31 00:49:13",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "OZI-Project",
"github_project": "OZI",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"lcname": "ozi"
}