pyconcord


Namepyconcord JSON
Version 0.4.6 PyPI version JSON
download
home_pageNone
SummaryA minimal example package (with pybind11)
upload_time2024-10-20 14:28:21
maintainerNone
docs_urlNone
authorNone
requires_python>=3.9
licenseNone
keywords
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # pyconcord

[![Gitter][gitter-badge]][gitter-link]

|      CI              | status |
|----------------------|--------|
| conda.recipe         | [![Conda Actions Status][actions-conda-badge]][actions-conda-link] |
| pip builds           | [![Pip Actions Status][actions-pip-badge]][actions-pip-link] |


[gitter-badge]:            https://badges.gitter.im/pybind/Lobby.svg
[gitter-link]:             https://gitter.im/pybind/Lobby
[actions-badge]:           https://github.com/pybind/pyconcord/workflows/Tests/badge.svg
[actions-conda-link]:      https://github.com/pybind/pyconcord/actions?query=workflow%3AConda
[actions-conda-badge]:     https://github.com/pybind/pyconcord/workflows/Conda/badge.svg
[actions-pip-link]:        https://github.com/pybind/pyconcord/actions?query=workflow%3APip
[actions-pip-badge]:       https://github.com/pybind/pyconcord/workflows/Pip/badge.svg
[actions-wheels-link]:     https://github.com/pybind/pyconcord/actions?query=workflow%3AWheels
[actions-wheels-badge]:    https://github.com/pybind/pyconcord/workflows/Wheels/badge.svg

## Installation

- Clone this repository
- `brew install eigen`
- `cd [this_repo]`
- `uv venv .venv --python 3.9 && source .venv/bin/activate`
- `uv pip install .[test]`

## To run tests:
```
pytest -s
```

## To install from pypi:
`uv pip install pyconcord --no-sources`

## Test call

```python
import numpy as np
from scipy.sparse import identity
import pyconcord as pc
x = np.random.randn(13, 9)

n, p = x.shape
x0 = identity(p).tocoo()
omega = pc.concord(x, x0=x0, lambda1=0.3)
cov = np.round(omega.todense(), 2)
assert ~np.isinf(cov[0,0])
assert cov[0, 1] == cov[1, 0]
```

## Files

This example has several files that are a good idea, but aren't strictly
necessary. The necessary files are:

* `pyproject.toml`: The Python project file
* `CMakeLists.txt`: The CMake configuration file
* `src/main.cpp`: The source file for the C++ build
* `src/pyconcord/__init__.py`: The Python portion of the module. The root of the module needs to be `<package_name>`, `src/<package_name>`, or `python/<package_name>` to be auto-discovered.

These files are also expected and highly recommended:

* `.gitignore`: Git's ignore list, also used by `scikit-build-core` to select files for the SDist
* `README.md`: The source for the PyPI description
* `LICENSE`: The license file

There are also several completely optional directories:

* `.github`: configuration for [Dependabot][] and [GitHub Actions][]
* `conda.recipe`: Example recipe. Normally you should submit projects to conda-forge instead of building them yourself, but this is useful for testing the example.
* `docs/`: Documentation
* `tests/`: Tests go here

And some optional files:

* `.pre-commit-config.yaml`: Configuration for the fantastic static-check runner [pre-commit][].

This is a simplified version of the recommendations in the [Scientific-Python
Development Guide][], which is a _highly_ recommended read for anyone
interested in Python package development (Scientific or not). The guide also
has a cookiecutter that includes scikit-build-core and pybind11 as a backend
choice.

### CI Examples

There are examples for CI in `.github/workflows`. A simple way to produces
binary "wheels" for all platforms is illustrated in the "wheels.yml" file,
using [cibuildwheel][].

## License

pybind11 is provided under a BSD-style license that can be found in the LICENSE
file. By using, distributing, or contributing to this project, you agree to the
terms and conditions of this license.

[cibuildwheel]: https://cibuildwheel.readthedocs.io
[scientific-python development guide]: https://learn.scientific-python.org/development
[dependabot]: https://docs.github.com/en/code-security/dependabot
[github actions]: https://docs.github.com/en/actions
[pre-commit]: https://pre-commit.com
[nox]: https://nox.thea.codes
[pybind11]: https://pybind11.readthedocs.io
[scikit-build-core]: https://scikit-build-core.readthedocs.io
[scikit-build (classic)]: https://scikit-build.readthedocs.io

            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "pyconcord",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.9",
    "maintainer_email": null,
    "keywords": null,
    "author": null,
    "author_email": "My Name <me@email.com>",
    "download_url": "https://files.pythonhosted.org/packages/f4/14/1f86fef2e90831c7f1bc17855b06750a2ede09f60731a9eb196fc6ebb06b/pyconcord-0.4.6.tar.gz",
    "platform": null,
    "description": "# pyconcord\n\n[![Gitter][gitter-badge]][gitter-link]\n\n|      CI              | status |\n|----------------------|--------|\n| conda.recipe         | [![Conda Actions Status][actions-conda-badge]][actions-conda-link] |\n| pip builds           | [![Pip Actions Status][actions-pip-badge]][actions-pip-link] |\n\n\n[gitter-badge]:            https://badges.gitter.im/pybind/Lobby.svg\n[gitter-link]:             https://gitter.im/pybind/Lobby\n[actions-badge]:           https://github.com/pybind/pyconcord/workflows/Tests/badge.svg\n[actions-conda-link]:      https://github.com/pybind/pyconcord/actions?query=workflow%3AConda\n[actions-conda-badge]:     https://github.com/pybind/pyconcord/workflows/Conda/badge.svg\n[actions-pip-link]:        https://github.com/pybind/pyconcord/actions?query=workflow%3APip\n[actions-pip-badge]:       https://github.com/pybind/pyconcord/workflows/Pip/badge.svg\n[actions-wheels-link]:     https://github.com/pybind/pyconcord/actions?query=workflow%3AWheels\n[actions-wheels-badge]:    https://github.com/pybind/pyconcord/workflows/Wheels/badge.svg\n\n## Installation\n\n- Clone this repository\n- `brew install eigen`\n- `cd [this_repo]`\n- `uv venv .venv --python 3.9 && source .venv/bin/activate`\n- `uv pip install .[test]`\n\n## To run tests:\n```\npytest -s\n```\n\n## To install from pypi:\n`uv pip install pyconcord --no-sources`\n\n## Test call\n\n```python\nimport numpy as np\nfrom scipy.sparse import identity\nimport pyconcord as pc\nx = np.random.randn(13, 9)\n\nn, p = x.shape\nx0 = identity(p).tocoo()\nomega = pc.concord(x, x0=x0, lambda1=0.3)\ncov = np.round(omega.todense(), 2)\nassert ~np.isinf(cov[0,0])\nassert cov[0, 1] == cov[1, 0]\n```\n\n## Files\n\nThis example has several files that are a good idea, but aren't strictly\nnecessary. The necessary files are:\n\n* `pyproject.toml`: The Python project file\n* `CMakeLists.txt`: The CMake configuration file\n* `src/main.cpp`: The source file for the C++ build\n* `src/pyconcord/__init__.py`: The Python portion of the module. The root of the module needs to be `<package_name>`, `src/<package_name>`, or `python/<package_name>` to be auto-discovered.\n\nThese files are also expected and highly recommended:\n\n* `.gitignore`: Git's ignore list, also used by `scikit-build-core` to select files for the SDist\n* `README.md`: The source for the PyPI description\n* `LICENSE`: The license file\n\nThere are also several completely optional directories:\n\n* `.github`: configuration for [Dependabot][] and [GitHub Actions][]\n* `conda.recipe`: Example recipe. Normally you should submit projects to conda-forge instead of building them yourself, but this is useful for testing the example.\n* `docs/`: Documentation\n* `tests/`: Tests go here\n\nAnd some optional files:\n\n* `.pre-commit-config.yaml`: Configuration for the fantastic static-check runner [pre-commit][].\n\nThis is a simplified version of the recommendations in the [Scientific-Python\nDevelopment Guide][], which is a _highly_ recommended read for anyone\ninterested in Python package development (Scientific or not). The guide also\nhas a cookiecutter that includes scikit-build-core and pybind11 as a backend\nchoice.\n\n### CI Examples\n\nThere are examples for CI in `.github/workflows`. A simple way to produces\nbinary \"wheels\" for all platforms is illustrated in the \"wheels.yml\" file,\nusing [cibuildwheel][].\n\n## License\n\npybind11 is provided under a BSD-style license that can be found in the LICENSE\nfile. By using, distributing, or contributing to this project, you agree to the\nterms and conditions of this license.\n\n[cibuildwheel]: https://cibuildwheel.readthedocs.io\n[scientific-python development guide]: https://learn.scientific-python.org/development\n[dependabot]: https://docs.github.com/en/code-security/dependabot\n[github actions]: https://docs.github.com/en/actions\n[pre-commit]: https://pre-commit.com\n[nox]: https://nox.thea.codes\n[pybind11]: https://pybind11.readthedocs.io\n[scikit-build-core]: https://scikit-build-core.readthedocs.io\n[scikit-build (classic)]: https://scikit-build.readthedocs.io\n",
    "bugtrack_url": null,
    "license": null,
    "summary": "A minimal example package (with pybind11)",
    "version": "0.4.6",
    "project_urls": null,
    "split_keywords": [],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "78cb85801e5f536e498a5f44f02db472cd6ce1468df4a23c4bfa8b9e4a54386c",
                "md5": "ace263d477017a7b693c994e001de59c",
                "sha256": "1addd65e3ed6122dee1c9f38767d13e91d24edad5c3b304927f6881a5d7b5e3a"
            },
            "downloads": -1,
            "filename": "pyconcord-0.4.6-cp310-cp310-macosx_11_0_arm64.whl",
            "has_sig": false,
            "md5_digest": "ace263d477017a7b693c994e001de59c",
            "packagetype": "bdist_wheel",
            "python_version": "cp310",
            "requires_python": ">=3.9",
            "size": 95646,
            "upload_time": "2024-10-20T14:27:59",
            "upload_time_iso_8601": "2024-10-20T14:27:59.282838Z",
            "url": "https://files.pythonhosted.org/packages/78/cb/85801e5f536e498a5f44f02db472cd6ce1468df4a23c4bfa8b9e4a54386c/pyconcord-0.4.6-cp310-cp310-macosx_11_0_arm64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "89decfcd0247de97dd74fc78c38cb91fd0517c167b4395e99b1269d78ad079e7",
                "md5": "d59fdad526716a21fcd21d40980bba65",
                "sha256": "b28612ece4f480376d90a5647279b69e604dea04871174df0b467e5e9b05db05"
            },
            "downloads": -1,
            "filename": "pyconcord-0.4.6-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "has_sig": false,
            "md5_digest": "d59fdad526716a21fcd21d40980bba65",
            "packagetype": "bdist_wheel",
            "python_version": "cp310",
            "requires_python": ">=3.9",
            "size": 124902,
            "upload_time": "2024-10-20T14:28:00",
            "upload_time_iso_8601": "2024-10-20T14:28:00.599462Z",
            "url": "https://files.pythonhosted.org/packages/89/de/cfcd0247de97dd74fc78c38cb91fd0517c167b4395e99b1269d78ad079e7/pyconcord-0.4.6-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "ae77e00d4a2ecd1f27e123cbf4322ea646879b742997e1840d441beefe028d0d",
                "md5": "400fa45cc07bdbc092046e0b39168dd4",
                "sha256": "9fbb66085cd175c62110ff605783cf342ef99a546d3c6a054510b2fcf34ee1a5"
            },
            "downloads": -1,
            "filename": "pyconcord-0.4.6-cp311-cp311-macosx_11_0_arm64.whl",
            "has_sig": false,
            "md5_digest": "400fa45cc07bdbc092046e0b39168dd4",
            "packagetype": "bdist_wheel",
            "python_version": "cp311",
            "requires_python": ">=3.9",
            "size": 96907,
            "upload_time": "2024-10-20T14:28:02",
            "upload_time_iso_8601": "2024-10-20T14:28:02.014848Z",
            "url": "https://files.pythonhosted.org/packages/ae/77/e00d4a2ecd1f27e123cbf4322ea646879b742997e1840d441beefe028d0d/pyconcord-0.4.6-cp311-cp311-macosx_11_0_arm64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "e3ad58f7acb4f81297b269e0cac6aee875f848c8460d360b80861caa88f24873",
                "md5": "bcdf5f2f3787da4c04329d08ff4e1791",
                "sha256": "2724b29bb594ca6854a479fc93872d1608fa618502798839f33b22f1f3b031ae"
            },
            "downloads": -1,
            "filename": "pyconcord-0.4.6-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "has_sig": false,
            "md5_digest": "bcdf5f2f3787da4c04329d08ff4e1791",
            "packagetype": "bdist_wheel",
            "python_version": "cp311",
            "requires_python": ">=3.9",
            "size": 126218,
            "upload_time": "2024-10-20T14:28:03",
            "upload_time_iso_8601": "2024-10-20T14:28:03.709395Z",
            "url": "https://files.pythonhosted.org/packages/e3/ad/58f7acb4f81297b269e0cac6aee875f848c8460d360b80861caa88f24873/pyconcord-0.4.6-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "80f62eff80a8b6ba3374ae66347f42e19a5c35d52c12b6f9fe4a7f368efab037",
                "md5": "9c444a1810c1605d8ccba48cf25187b6",
                "sha256": "659b191dd4806b8f2b1375654bc5bbf9a38426069131be9f77c7fda24ddf7092"
            },
            "downloads": -1,
            "filename": "pyconcord-0.4.6-cp312-cp312-macosx_11_0_arm64.whl",
            "has_sig": false,
            "md5_digest": "9c444a1810c1605d8ccba48cf25187b6",
            "packagetype": "bdist_wheel",
            "python_version": "cp312",
            "requires_python": ">=3.9",
            "size": 96134,
            "upload_time": "2024-10-20T14:28:05",
            "upload_time_iso_8601": "2024-10-20T14:28:05.598376Z",
            "url": "https://files.pythonhosted.org/packages/80/f6/2eff80a8b6ba3374ae66347f42e19a5c35d52c12b6f9fe4a7f368efab037/pyconcord-0.4.6-cp312-cp312-macosx_11_0_arm64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "a62ded114c25597a4b513f950d73b3d8c9eadebcd225948d7de51fa859adf3e9",
                "md5": "c25fe5e18cb35b19d6f25efbf1f578f9",
                "sha256": "31a42840ba2b619e2bc9cd79e6533daeadf9a685953ec70843e66d8867759e16"
            },
            "downloads": -1,
            "filename": "pyconcord-0.4.6-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "has_sig": false,
            "md5_digest": "c25fe5e18cb35b19d6f25efbf1f578f9",
            "packagetype": "bdist_wheel",
            "python_version": "cp312",
            "requires_python": ">=3.9",
            "size": 125461,
            "upload_time": "2024-10-20T14:28:07",
            "upload_time_iso_8601": "2024-10-20T14:28:07.393229Z",
            "url": "https://files.pythonhosted.org/packages/a6/2d/ed114c25597a4b513f950d73b3d8c9eadebcd225948d7de51fa859adf3e9/pyconcord-0.4.6-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "8c17a5e9cafcebf001b1804cffe2d5e51abf9bc8cb026d9373d0528a097f2341",
                "md5": "7369fef6f0c8c6761eeea01f62524ef4",
                "sha256": "993172bbd5d4976f046b172414a99a401d7685600e05c3f0363d21577486f1ab"
            },
            "downloads": -1,
            "filename": "pyconcord-0.4.6-cp313-cp313-macosx_11_0_arm64.whl",
            "has_sig": false,
            "md5_digest": "7369fef6f0c8c6761eeea01f62524ef4",
            "packagetype": "bdist_wheel",
            "python_version": "cp313",
            "requires_python": ">=3.9",
            "size": 96208,
            "upload_time": "2024-10-20T14:28:09",
            "upload_time_iso_8601": "2024-10-20T14:28:09.287404Z",
            "url": "https://files.pythonhosted.org/packages/8c/17/a5e9cafcebf001b1804cffe2d5e51abf9bc8cb026d9373d0528a097f2341/pyconcord-0.4.6-cp313-cp313-macosx_11_0_arm64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "11f260de7db8f911e507512074b57f6ba91c7a627d40b2e5c07a2b18ba27d011",
                "md5": "668954b3ea84ee24512ed1e05c347edf",
                "sha256": "6f99da916114e06d28351eca8e728eae75126bc982312ab6162d4147d47e0256"
            },
            "downloads": -1,
            "filename": "pyconcord-0.4.6-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "has_sig": false,
            "md5_digest": "668954b3ea84ee24512ed1e05c347edf",
            "packagetype": "bdist_wheel",
            "python_version": "cp313",
            "requires_python": ">=3.9",
            "size": 125324,
            "upload_time": "2024-10-20T14:28:11",
            "upload_time_iso_8601": "2024-10-20T14:28:11.047989Z",
            "url": "https://files.pythonhosted.org/packages/11/f2/60de7db8f911e507512074b57f6ba91c7a627d40b2e5c07a2b18ba27d011/pyconcord-0.4.6-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "cff369d76a26ad1ed3cfa1ed274e2464289c84c790a457b528ba48391395dbbc",
                "md5": "cf0baafbc8d8d79706419255435217d0",
                "sha256": "ce996f585599707d212b1cf79aaf6b8dd86520f50af434f6a4abeedd7576b70e"
            },
            "downloads": -1,
            "filename": "pyconcord-0.4.6-cp39-cp39-macosx_11_0_arm64.whl",
            "has_sig": false,
            "md5_digest": "cf0baafbc8d8d79706419255435217d0",
            "packagetype": "bdist_wheel",
            "python_version": "cp39",
            "requires_python": ">=3.9",
            "size": 95699,
            "upload_time": "2024-10-20T14:28:12",
            "upload_time_iso_8601": "2024-10-20T14:28:12.301225Z",
            "url": "https://files.pythonhosted.org/packages/cf/f3/69d76a26ad1ed3cfa1ed274e2464289c84c790a457b528ba48391395dbbc/pyconcord-0.4.6-cp39-cp39-macosx_11_0_arm64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "d88c240bbddfa499668f130b5bb63f3f3aa1d04da05c567031b991d2ec95b722",
                "md5": "b6d81fc1a5261a3bc5434df208df2c2c",
                "sha256": "3c4ffa235e947caf0dbc9617484397146b7c8391b2a8524407b85b1ce7f608b8"
            },
            "downloads": -1,
            "filename": "pyconcord-0.4.6-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "has_sig": false,
            "md5_digest": "b6d81fc1a5261a3bc5434df208df2c2c",
            "packagetype": "bdist_wheel",
            "python_version": "cp39",
            "requires_python": ">=3.9",
            "size": 124954,
            "upload_time": "2024-10-20T14:28:14",
            "upload_time_iso_8601": "2024-10-20T14:28:14.739755Z",
            "url": "https://files.pythonhosted.org/packages/d8/8c/240bbddfa499668f130b5bb63f3f3aa1d04da05c567031b991d2ec95b722/pyconcord-0.4.6-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "842a6c3e880fac0f9667b55751fed449132843a920bb5d845914d64b9216845d",
                "md5": "8b210a2c513f3b2e33c05cb2fe00f21d",
                "sha256": "2d4f0ed5c313ed352908d81dc21085c3f93a43823bc9e3eb0f091e02b9321b7c"
            },
            "downloads": -1,
            "filename": "pyconcord-0.4.6-pp310-pypy310_pp73-macosx_11_0_arm64.whl",
            "has_sig": false,
            "md5_digest": "8b210a2c513f3b2e33c05cb2fe00f21d",
            "packagetype": "bdist_wheel",
            "python_version": "pp310",
            "requires_python": ">=3.9",
            "size": 95759,
            "upload_time": "2024-10-20T14:28:16",
            "upload_time_iso_8601": "2024-10-20T14:28:16.196381Z",
            "url": "https://files.pythonhosted.org/packages/84/2a/6c3e880fac0f9667b55751fed449132843a920bb5d845914d64b9216845d/pyconcord-0.4.6-pp310-pypy310_pp73-macosx_11_0_arm64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "58c791ed0cef1409368ec912f1056e98840dce0a874842d24018eace16e935fa",
                "md5": "e2afb9ac93aa9998cf3078c579ae33b3",
                "sha256": "aa032b8a62651d1b5178cd0a4c6ad24b2e1d341ce011659396c4548e304bc02c"
            },
            "downloads": -1,
            "filename": "pyconcord-0.4.6-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "has_sig": false,
            "md5_digest": "e2afb9ac93aa9998cf3078c579ae33b3",
            "packagetype": "bdist_wheel",
            "python_version": "pp310",
            "requires_python": ">=3.9",
            "size": 124737,
            "upload_time": "2024-10-20T14:28:17",
            "upload_time_iso_8601": "2024-10-20T14:28:17.292426Z",
            "url": "https://files.pythonhosted.org/packages/58/c7/91ed0cef1409368ec912f1056e98840dce0a874842d24018eace16e935fa/pyconcord-0.4.6-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "f80b503bcc9c14d4dc375fa675851e0b0ab613335571b07f9c2c5461a54525c0",
                "md5": "eafa5bd9ab439c8e4add5ed4d2f660f4",
                "sha256": "953106fc87e5e47adea0c1958beab7676a726a861c5e294e60de41c16d20ee4b"
            },
            "downloads": -1,
            "filename": "pyconcord-0.4.6-pp39-pypy39_pp73-macosx_11_0_arm64.whl",
            "has_sig": false,
            "md5_digest": "eafa5bd9ab439c8e4add5ed4d2f660f4",
            "packagetype": "bdist_wheel",
            "python_version": "pp39",
            "requires_python": ">=3.9",
            "size": 95707,
            "upload_time": "2024-10-20T14:28:18",
            "upload_time_iso_8601": "2024-10-20T14:28:18.660863Z",
            "url": "https://files.pythonhosted.org/packages/f8/0b/503bcc9c14d4dc375fa675851e0b0ab613335571b07f9c2c5461a54525c0/pyconcord-0.4.6-pp39-pypy39_pp73-macosx_11_0_arm64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "633ead0f7e1ee28cc5668f92336d73a0946eeca59ee6fa6cacf7ad2c002efe87",
                "md5": "f744ce1146aa43db80c6e934f41bb417",
                "sha256": "cca013e72591f78eaef83e8e4e43e06ca3546336e7a8b68c9ea0b09437faebe5"
            },
            "downloads": -1,
            "filename": "pyconcord-0.4.6-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "has_sig": false,
            "md5_digest": "f744ce1146aa43db80c6e934f41bb417",
            "packagetype": "bdist_wheel",
            "python_version": "pp39",
            "requires_python": ">=3.9",
            "size": 124717,
            "upload_time": "2024-10-20T14:28:19",
            "upload_time_iso_8601": "2024-10-20T14:28:19.772011Z",
            "url": "https://files.pythonhosted.org/packages/63/3e/ad0f7e1ee28cc5668f92336d73a0946eeca59ee6fa6cacf7ad2c002efe87/pyconcord-0.4.6-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "f4141f86fef2e90831c7f1bc17855b06750a2ede09f60731a9eb196fc6ebb06b",
                "md5": "98412407fe8cffe992a45d8a46c7f846",
                "sha256": "cd065b0655bb65f582b837276b4cab7a5d1f09f44c3e04777b7dbe420ab6dda7"
            },
            "downloads": -1,
            "filename": "pyconcord-0.4.6.tar.gz",
            "has_sig": false,
            "md5_digest": "98412407fe8cffe992a45d8a46c7f846",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.9",
            "size": 2152321,
            "upload_time": "2024-10-20T14:28:21",
            "upload_time_iso_8601": "2024-10-20T14:28:21.734102Z",
            "url": "https://files.pythonhosted.org/packages/f4/14/1f86fef2e90831c7f1bc17855b06750a2ede09f60731a9eb196fc6ebb06b/pyconcord-0.4.6.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-10-20 14:28:21",
    "github": false,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "lcname": "pyconcord"
}
        
Elapsed time: 1.00469s