hyhound


Namehyhound JSON
Version 1.0.2a2 PyPI version JSON
download
home_pageNone
SummaryHyperbolic Householder transformations for Up- and Downdating Cholesky factorizations.
upload_time2025-10-23 16:30:44
maintainerNone
docs_urlNone
authorNone
requires_python>=3.9
licenseNone
keywords linear-algebra cholesky update downdate matrix
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            .. image:: https://img.shields.io/badge/arXiv-Preprint-b31b1b
   :target: https://arxiv.org/abs/2503.15372v1
   :alt: arXiv Preprint

.. image:: https://github.com/kul-optec/hyhound/actions/workflows/linux.yml/badge.svg
   :target: https://github.com/kul-optec/hyhound/actions/workflows/linux.yml
   :alt: CI: Linux

.. image:: https://img.shields.io/pypi/dm/hyhound?label=PyPI&logo=python
   :target: https://pypi.org/project/hyhound
   :alt: PyPI Downloads


hyhound
=======

**Hy**\perbolic **Ho**\useholder transformations for **U**\p- ‘**n**’ **D**\owndating Cholesky factorizations.


Purpose
-------

Given a Cholesky factor :math:`L` of a dense matrix :math:`H`, the
``hyhound::update_cholesky`` function computes the Cholesky factor
:math:`\tilde L` of the matrix

.. math::

   \tilde H = \tilde L \tilde L^\top = H + A \Sigma A^\top,

where :math:`H,\tilde H\in\mathbb{R}^{n\times n}` with :math:`H \succ 0`
and :math:`\tilde H \succ 0`, :math:`A \in \mathbb{R}^{n\times m}`,
:math:`\Sigma \in \mathbb{R}^{m\times m}` diagonal,
and :math:`L, \tilde L\in\mathbb{R}^{n\times n}` lower triangular.

Computing :math:`\tilde L` in this way is done in
:math:`mn^2 + \mathcal{O}(n^2 + mn)` operations rather than the
:math:`\tfrac16 n^3 + \tfrac12 mn^2 + \mathcal{O}(n^2 + mn)` operations
required for the explicit evaluation and factorization of :math:`\tilde H`.
When :math:`m \ll n`, this results in a considerable speedup over full
factorization, enabling efficient low-rank updates of Cholesky
factorizations, for use in e.g. iterative algorithms for numerical
optimization.

Additionally, hyhound includes efficient routines for updating
factorizations of the Riccati recursion for optimal control problems.


Preprint
--------

The paper describing the algorithms in this repository can be found on arXiv:  
`https://arxiv.org/abs/2503.15372v1 <https://arxiv.org/abs/2503.15372v1>`_

.. code-block:: bibtex

   @misc{pas_blocked_2025,
      title = {Blocked {Cholesky} factorization updates of the {Riccati} recursion using hyperbolic {Householder} transformations},
      url = {http://arxiv.org/abs/2503.15372},
      doi = {10.48550/arXiv.2503.15372},
      publisher = {arXiv},
      author = {Pas, Pieter and Patrinos, Panagiotis},
      month = mar,
      year = {2025},
      note = {Accepted for publication in the Proceedings of CDC 2025}
   }

            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "hyhound",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.9",
    "maintainer_email": null,
    "keywords": "linear-algebra, cholesky, update, downdate, matrix",
    "author": null,
    "author_email": "Pieter P <pieter.p.dev@outlook.com>",
    "download_url": "https://files.pythonhosted.org/packages/97/d8/89a01c54bd1bc9b328e82b9e86f96be80e43595e3a7ed1141a813ac91808/hyhound-1.0.2a2.tar.gz",
    "platform": null,
    "description": ".. image:: https://img.shields.io/badge/arXiv-Preprint-b31b1b\n   :target: https://arxiv.org/abs/2503.15372v1\n   :alt: arXiv Preprint\n\n.. image:: https://github.com/kul-optec/hyhound/actions/workflows/linux.yml/badge.svg\n   :target: https://github.com/kul-optec/hyhound/actions/workflows/linux.yml\n   :alt: CI: Linux\n\n.. image:: https://img.shields.io/pypi/dm/hyhound?label=PyPI&logo=python\n   :target: https://pypi.org/project/hyhound\n   :alt: PyPI Downloads\n\n\nhyhound\n=======\n\n**Hy**\\perbolic **Ho**\\useholder transformations for **U**\\p- \u2018**n**\u2019 **D**\\owndating Cholesky factorizations.\n\n\nPurpose\n-------\n\nGiven a Cholesky factor :math:`L` of a dense matrix :math:`H`, the\n``hyhound::update_cholesky`` function computes the Cholesky factor\n:math:`\\tilde L` of the matrix\n\n.. math::\n\n   \\tilde H = \\tilde L \\tilde L^\\top = H + A \\Sigma A^\\top,\n\nwhere :math:`H,\\tilde H\\in\\mathbb{R}^{n\\times n}` with :math:`H \\succ 0`\nand :math:`\\tilde H \\succ 0`, :math:`A \\in \\mathbb{R}^{n\\times m}`,\n:math:`\\Sigma \\in \\mathbb{R}^{m\\times m}` diagonal,\nand :math:`L, \\tilde L\\in\\mathbb{R}^{n\\times n}` lower triangular.\n\nComputing :math:`\\tilde L` in this way is done in\n:math:`mn^2 + \\mathcal{O}(n^2 + mn)` operations rather than the\n:math:`\\tfrac16 n^3 + \\tfrac12 mn^2 + \\mathcal{O}(n^2 + mn)` operations\nrequired for the explicit evaluation and factorization of :math:`\\tilde H`.\nWhen :math:`m \\ll n`, this results in a considerable speedup over full\nfactorization, enabling efficient low-rank updates of Cholesky\nfactorizations, for use in e.g. iterative algorithms for numerical\noptimization.\n\nAdditionally, hyhound includes efficient routines for updating\nfactorizations of the Riccati recursion for optimal control problems.\n\n\nPreprint\n--------\n\nThe paper describing the algorithms in this repository can be found on arXiv:  \n`https://arxiv.org/abs/2503.15372v1 <https://arxiv.org/abs/2503.15372v1>`_\n\n.. code-block:: bibtex\n\n   @misc{pas_blocked_2025,\n      title = {Blocked {Cholesky} factorization updates of the {Riccati} recursion using hyperbolic {Householder} transformations},\n      url = {http://arxiv.org/abs/2503.15372},\n      doi = {10.48550/arXiv.2503.15372},\n      publisher = {arXiv},\n      author = {Pas, Pieter and Patrinos, Panagiotis},\n      month = mar,\n      year = {2025},\n      note = {Accepted for publication in the Proceedings of CDC 2025}\n   }\n",
    "bugtrack_url": null,
    "license": null,
    "summary": "Hyperbolic Householder transformations for Up- and Downdating Cholesky factorizations.",
    "version": "1.0.2a2",
    "project_urls": {
        "Bug Tracker": "https://github.com/kul-optec/hyhound/issues",
        "Documentation": "https://kul-optec.github.io/hyhound",
        "Source": "https://github.com/kul-optec/hyhound"
    },
    "split_keywords": [
        "linear-algebra",
        " cholesky",
        " update",
        " downdate",
        " matrix"
    ],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "0ad5c0dce0b97b755ea2f1891f943070068d034711cac45d9d78b0283704a228",
                "md5": "4ec9d3c98730d2fe2d05edf7dc6b751d",
                "sha256": "9627f32d73fe04ddf5430d3244098db6c1790757bba8034980974d0e8e4ba204"
            },
            "downloads": -1,
            "filename": "hyhound-1.0.2a2-cp310-cp310-linux_armv6l.whl",
            "has_sig": false,
            "md5_digest": "4ec9d3c98730d2fe2d05edf7dc6b751d",
            "packagetype": "bdist_wheel",
            "python_version": "cp310",
            "requires_python": ">=3.9",
            "size": 457042,
            "upload_time": "2025-10-23T16:30:19",
            "upload_time_iso_8601": "2025-10-23T16:30:19.536695Z",
            "url": "https://files.pythonhosted.org/packages/0a/d5/c0dce0b97b755ea2f1891f943070068d034711cac45d9d78b0283704a228/hyhound-1.0.2a2-cp310-cp310-linux_armv6l.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "c201a2b44bed557facb382d6037f67fd34b48763a2f5425afb8ed7fe73d4f15f",
                "md5": "38c75d5f47dde27872632119929823b1",
                "sha256": "6e813fe956758acf38436fdc90aafdbffbaa870976f8aa403be19639824ea049"
            },
            "downloads": -1,
            "filename": "hyhound-1.0.2a2-cp310-cp310-manylinux_2_27_aarch64.whl",
            "has_sig": false,
            "md5_digest": "38c75d5f47dde27872632119929823b1",
            "packagetype": "bdist_wheel",
            "python_version": "cp310",
            "requires_python": ">=3.9",
            "size": 336306,
            "upload_time": "2025-10-23T16:30:21",
            "upload_time_iso_8601": "2025-10-23T16:30:21.026150Z",
            "url": "https://files.pythonhosted.org/packages/c2/01/a2b44bed557facb382d6037f67fd34b48763a2f5425afb8ed7fe73d4f15f/hyhound-1.0.2a2-cp310-cp310-manylinux_2_27_aarch64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "cddc1e4c2d21e324d2c375609a201c61ea31b1c1e7c5b748e073e15459afda98",
                "md5": "a9a95fed43065d07eb03d4d3fee64820",
                "sha256": "6256100f2d51f6436a0c692ca2f6509597b517141999404718cb8395b43db18a"
            },
            "downloads": -1,
            "filename": "hyhound-1.0.2a2-cp310-cp310-manylinux_2_27_armv7l.whl",
            "has_sig": false,
            "md5_digest": "a9a95fed43065d07eb03d4d3fee64820",
            "packagetype": "bdist_wheel",
            "python_version": "cp310",
            "requires_python": ">=3.9",
            "size": 466092,
            "upload_time": "2025-10-23T16:30:22",
            "upload_time_iso_8601": "2025-10-23T16:30:22.202033Z",
            "url": "https://files.pythonhosted.org/packages/cd/dc/1e4c2d21e324d2c375609a201c61ea31b1c1e7c5b748e073e15459afda98/hyhound-1.0.2a2-cp310-cp310-manylinux_2_27_armv7l.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "3c76548888ebe4d72b2a4f4f7b7f83a05bce4652411a384912434c4d0b1a05d4",
                "md5": "ac4724e65af7aa85ba251cad0567657a",
                "sha256": "2c8232b66c1c37996992dba77f90cb8c69608821bdf7c904da2c47596f279858"
            },
            "downloads": -1,
            "filename": "hyhound-1.0.2a2-cp310-cp310-manylinux_2_27_x86_64.whl",
            "has_sig": false,
            "md5_digest": "ac4724e65af7aa85ba251cad0567657a",
            "packagetype": "bdist_wheel",
            "python_version": "cp310",
            "requires_python": ">=3.9",
            "size": 853073,
            "upload_time": "2025-10-23T16:30:23",
            "upload_time_iso_8601": "2025-10-23T16:30:23.547067Z",
            "url": "https://files.pythonhosted.org/packages/3c/76/548888ebe4d72b2a4f4f7b7f83a05bce4652411a384912434c4d0b1a05d4/hyhound-1.0.2a2-cp310-cp310-manylinux_2_27_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "06741ac63770610ab09b0e763a0316ea313bace36c6e541f00c25891fe017810",
                "md5": "bb231df0e31f70fc351bf64a0ac70010",
                "sha256": "e927e7e3a62a903d2223f9356e781448b204e8773a74844f86538263a48f1d72"
            },
            "downloads": -1,
            "filename": "hyhound-1.0.2a2-cp311-cp311-linux_armv6l.whl",
            "has_sig": false,
            "md5_digest": "bb231df0e31f70fc351bf64a0ac70010",
            "packagetype": "bdist_wheel",
            "python_version": "cp311",
            "requires_python": ">=3.9",
            "size": 457481,
            "upload_time": "2025-10-23T16:30:25",
            "upload_time_iso_8601": "2025-10-23T16:30:25.204918Z",
            "url": "https://files.pythonhosted.org/packages/06/74/1ac63770610ab09b0e763a0316ea313bace36c6e541f00c25891fe017810/hyhound-1.0.2a2-cp311-cp311-linux_armv6l.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "6e121851790bc23a776e96bdfe2b0ab97e610b8fe8fd45c92871e1089ab05677",
                "md5": "2e035cdd3d49e37570e149d868c72fc6",
                "sha256": "64c864e6bf56fb3fbbad3897f60171d61ad07b5ffd3d37da4e01cf73d158c0c3"
            },
            "downloads": -1,
            "filename": "hyhound-1.0.2a2-cp311-cp311-manylinux_2_27_aarch64.whl",
            "has_sig": false,
            "md5_digest": "2e035cdd3d49e37570e149d868c72fc6",
            "packagetype": "bdist_wheel",
            "python_version": "cp311",
            "requires_python": ">=3.9",
            "size": 336613,
            "upload_time": "2025-10-23T16:30:26",
            "upload_time_iso_8601": "2025-10-23T16:30:26.582519Z",
            "url": "https://files.pythonhosted.org/packages/6e/12/1851790bc23a776e96bdfe2b0ab97e610b8fe8fd45c92871e1089ab05677/hyhound-1.0.2a2-cp311-cp311-manylinux_2_27_aarch64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "8271144a478f66e0b099d63cd251ebb8b9ad77f61226a8d6827fe0003c13fb4b",
                "md5": "386b16fd2548d630cfe7c6346625cb7c",
                "sha256": "b58e73f58d5a56393b79cde1197f961471a5fbdc88c92bc8cc2170ca0fad093e"
            },
            "downloads": -1,
            "filename": "hyhound-1.0.2a2-cp311-cp311-manylinux_2_27_armv7l.whl",
            "has_sig": false,
            "md5_digest": "386b16fd2548d630cfe7c6346625cb7c",
            "packagetype": "bdist_wheel",
            "python_version": "cp311",
            "requires_python": ">=3.9",
            "size": 466361,
            "upload_time": "2025-10-23T16:30:28",
            "upload_time_iso_8601": "2025-10-23T16:30:28.254959Z",
            "url": "https://files.pythonhosted.org/packages/82/71/144a478f66e0b099d63cd251ebb8b9ad77f61226a8d6827fe0003c13fb4b/hyhound-1.0.2a2-cp311-cp311-manylinux_2_27_armv7l.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "b5c3f33f64ade9dc6af55aa08c5b8c5a03259dff3545a90f26aa8f87664d8005",
                "md5": "39b914e66157d515106086f3421995a8",
                "sha256": "ddfc51cdf85d121150c808871466264bdc1e8c099b7f866bb88cba343f9da16a"
            },
            "downloads": -1,
            "filename": "hyhound-1.0.2a2-cp311-cp311-manylinux_2_27_x86_64.whl",
            "has_sig": false,
            "md5_digest": "39b914e66157d515106086f3421995a8",
            "packagetype": "bdist_wheel",
            "python_version": "cp311",
            "requires_python": ">=3.9",
            "size": 853329,
            "upload_time": "2025-10-23T16:30:30",
            "upload_time_iso_8601": "2025-10-23T16:30:30.048074Z",
            "url": "https://files.pythonhosted.org/packages/b5/c3/f33f64ade9dc6af55aa08c5b8c5a03259dff3545a90f26aa8f87664d8005/hyhound-1.0.2a2-cp311-cp311-manylinux_2_27_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "2847c75c07233d4ec04be04b916718a8eab47ab750d6aaa466054a50853e68ee",
                "md5": "bf815a30cf62ecb3d8ac29ee67d6bd2e",
                "sha256": "20a84e850bc9f9f33ca0b0f20cdf71f6c28a216eec23b4da93e9ee143d956ff2"
            },
            "downloads": -1,
            "filename": "hyhound-1.0.2a2-cp312-abi3-linux_armv6l.whl",
            "has_sig": false,
            "md5_digest": "bf815a30cf62ecb3d8ac29ee67d6bd2e",
            "packagetype": "bdist_wheel",
            "python_version": "cp312",
            "requires_python": ">=3.9",
            "size": 453114,
            "upload_time": "2025-10-23T16:30:31",
            "upload_time_iso_8601": "2025-10-23T16:30:31.749972Z",
            "url": "https://files.pythonhosted.org/packages/28/47/c75c07233d4ec04be04b916718a8eab47ab750d6aaa466054a50853e68ee/hyhound-1.0.2a2-cp312-abi3-linux_armv6l.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "b497a2ce50f89e38fa6672547c88e15b9745260e6fd903b1c8ee720f011ce5e9",
                "md5": "0b54f39dbbd9ff99403990b70c3bc829",
                "sha256": "a3e2080d0ab21690fb05c2f665cae394904f370cfbcaa3fb9a81760aa1aa9a6e"
            },
            "downloads": -1,
            "filename": "hyhound-1.0.2a2-cp312-abi3-manylinux_2_27_aarch64.whl",
            "has_sig": false,
            "md5_digest": "0b54f39dbbd9ff99403990b70c3bc829",
            "packagetype": "bdist_wheel",
            "python_version": "cp312",
            "requires_python": ">=3.9",
            "size": 331417,
            "upload_time": "2025-10-23T16:30:33",
            "upload_time_iso_8601": "2025-10-23T16:30:33.051716Z",
            "url": "https://files.pythonhosted.org/packages/b4/97/a2ce50f89e38fa6672547c88e15b9745260e6fd903b1c8ee720f011ce5e9/hyhound-1.0.2a2-cp312-abi3-manylinux_2_27_aarch64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "94e407612b8de0311992a76c6825e35d22b20c570d791e4a5197482f662d5130",
                "md5": "c4e3f72ad67d1af47c7349c602db4428",
                "sha256": "1403a0a5f14ffc6a1e2b8a9a7f53181365135bee510964185e59da3ec9265a3d"
            },
            "downloads": -1,
            "filename": "hyhound-1.0.2a2-cp312-abi3-manylinux_2_27_armv7l.whl",
            "has_sig": false,
            "md5_digest": "c4e3f72ad67d1af47c7349c602db4428",
            "packagetype": "bdist_wheel",
            "python_version": "cp312",
            "requires_python": ">=3.9",
            "size": 461791,
            "upload_time": "2025-10-23T16:30:34",
            "upload_time_iso_8601": "2025-10-23T16:30:34.585764Z",
            "url": "https://files.pythonhosted.org/packages/94/e4/07612b8de0311992a76c6825e35d22b20c570d791e4a5197482f662d5130/hyhound-1.0.2a2-cp312-abi3-manylinux_2_27_armv7l.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "9e7265f0cf3e30559250f02ff6793f5ad9f137d43c725fd6cba9c7ce1ebbaf30",
                "md5": "2dcc6525f2e713a13d364ae848c1ee63",
                "sha256": "d28e9c14e713920d5a7f51a05745ee843d747b088964f7fdbcf74e3baca8205a"
            },
            "downloads": -1,
            "filename": "hyhound-1.0.2a2-cp312-abi3-manylinux_2_27_x86_64.whl",
            "has_sig": false,
            "md5_digest": "2dcc6525f2e713a13d364ae848c1ee63",
            "packagetype": "bdist_wheel",
            "python_version": "cp312",
            "requires_python": ">=3.9",
            "size": 848665,
            "upload_time": "2025-10-23T16:30:36",
            "upload_time_iso_8601": "2025-10-23T16:30:36.236779Z",
            "url": "https://files.pythonhosted.org/packages/9e/72/65f0cf3e30559250f02ff6793f5ad9f137d43c725fd6cba9c7ce1ebbaf30/hyhound-1.0.2a2-cp312-abi3-manylinux_2_27_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "1367d26ab8470ebc2ee4ff7f033283b2291ef9c86e45fca485ebf04bf4ea5c67",
                "md5": "0c577b771e1bf2490c4ab920529199ff",
                "sha256": "c86543e101c4b416147f3e54aaf5440ee52848e9d3fdd856f5c5b6d4745b1241"
            },
            "downloads": -1,
            "filename": "hyhound-1.0.2a2-cp39-cp39-linux_armv6l.whl",
            "has_sig": false,
            "md5_digest": "0c577b771e1bf2490c4ab920529199ff",
            "packagetype": "bdist_wheel",
            "python_version": "cp39",
            "requires_python": ">=3.9",
            "size": 457361,
            "upload_time": "2025-10-23T16:30:37",
            "upload_time_iso_8601": "2025-10-23T16:30:37.927203Z",
            "url": "https://files.pythonhosted.org/packages/13/67/d26ab8470ebc2ee4ff7f033283b2291ef9c86e45fca485ebf04bf4ea5c67/hyhound-1.0.2a2-cp39-cp39-linux_armv6l.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "025b51fa448043f74751bffce130ae0850f55a6c37a214d50c515ad90cd8eea8",
                "md5": "5f5595ba9fb51c2f8a659a5a19f298f7",
                "sha256": "948befac3231ba8f00170f42e706882c40da032ca33b5d3bebd40e1564f8e0b1"
            },
            "downloads": -1,
            "filename": "hyhound-1.0.2a2-cp39-cp39-manylinux_2_27_aarch64.whl",
            "has_sig": false,
            "md5_digest": "5f5595ba9fb51c2f8a659a5a19f298f7",
            "packagetype": "bdist_wheel",
            "python_version": "cp39",
            "requires_python": ">=3.9",
            "size": 336638,
            "upload_time": "2025-10-23T16:30:39",
            "upload_time_iso_8601": "2025-10-23T16:30:39.694377Z",
            "url": "https://files.pythonhosted.org/packages/02/5b/51fa448043f74751bffce130ae0850f55a6c37a214d50c515ad90cd8eea8/hyhound-1.0.2a2-cp39-cp39-manylinux_2_27_aarch64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "b7dee39218ad242aeb4d75232f5636940caeb4683f2dea391526e5ec29505ebb",
                "md5": "f5df073c6c68cba0965904325020aeac",
                "sha256": "d0a2ba5bcaa93101603263f2a4ae9d3d18d3287b8586a21e09aa85a3188a500c"
            },
            "downloads": -1,
            "filename": "hyhound-1.0.2a2-cp39-cp39-manylinux_2_27_armv7l.whl",
            "has_sig": false,
            "md5_digest": "f5df073c6c68cba0965904325020aeac",
            "packagetype": "bdist_wheel",
            "python_version": "cp39",
            "requires_python": ">=3.9",
            "size": 466341,
            "upload_time": "2025-10-23T16:30:40",
            "upload_time_iso_8601": "2025-10-23T16:30:40.892825Z",
            "url": "https://files.pythonhosted.org/packages/b7/de/e39218ad242aeb4d75232f5636940caeb4683f2dea391526e5ec29505ebb/hyhound-1.0.2a2-cp39-cp39-manylinux_2_27_armv7l.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "b7db100f479b93c7d75571e91285b001060ad14a9f8320d942637e15bcc5d4b1",
                "md5": "c575c83077ad1eb4f0e4d9fe119bdcd7",
                "sha256": "d36da7987b6cc53eedd7b0cb24b1ce9349b6f35fb95b27caedc07a4caaf80aab"
            },
            "downloads": -1,
            "filename": "hyhound-1.0.2a2-cp39-cp39-manylinux_2_27_x86_64.whl",
            "has_sig": false,
            "md5_digest": "c575c83077ad1eb4f0e4d9fe119bdcd7",
            "packagetype": "bdist_wheel",
            "python_version": "cp39",
            "requires_python": ">=3.9",
            "size": 853388,
            "upload_time": "2025-10-23T16:30:42",
            "upload_time_iso_8601": "2025-10-23T16:30:42.475120Z",
            "url": "https://files.pythonhosted.org/packages/b7/db/100f479b93c7d75571e91285b001060ad14a9f8320d942637e15bcc5d4b1/hyhound-1.0.2a2-cp39-cp39-manylinux_2_27_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "97d889a01c54bd1bc9b328e82b9e86f96be80e43595e3a7ed1141a813ac91808",
                "md5": "31bfc0f4a9b4486bbe6de2e5312e69c0",
                "sha256": "a9d1124428882a604ec031f06407b0eb4c017da2c295c400af21b6ec407363f5"
            },
            "downloads": -1,
            "filename": "hyhound-1.0.2a2.tar.gz",
            "has_sig": false,
            "md5_digest": "31bfc0f4a9b4486bbe6de2e5312e69c0",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.9",
            "size": 40088,
            "upload_time": "2025-10-23T16:30:44",
            "upload_time_iso_8601": "2025-10-23T16:30:44.028773Z",
            "url": "https://files.pythonhosted.org/packages/97/d8/89a01c54bd1bc9b328e82b9e86f96be80e43595e3a7ed1141a813ac91808/hyhound-1.0.2a2.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-10-23 16:30:44",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "kul-optec",
    "github_project": "hyhound",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "lcname": "hyhound"
}
        
Elapsed time: 1.03440s