<!-- The README file for the PyPI repository -->
# wrenfold
<!--- logo_start --->
<p align="center">
<img src="https://wrenfold.org/_static/logo.png" alt="wrenfold logo depicting a bird made from folded paper" width="25%"/>
</p>
<!--- logo_end --->
<!--- badges_start --->
<p align="center">
<a href="https://github.com/wrenfold/wrenfold/actions/workflows/ci.yml?query=branch%3Amain"><img alt="GitHub Actions Workflow Status" src="https://github.com/wrenfold/wrenfold/actions/workflows/ci.yml/badge.svg?branch=main"></a>
<a href="https://github.com/wrenfold/wrenfold/actions/workflows/coverage.yml?query=branch%3Amain"><img alt="Code Coverage Status" src="https://img.shields.io/endpoint?url=https://gist.githubusercontent.com/gareth-cross/0d939a81f2048609c1d3758371e94b7d/raw/wrenfold.json"></a>
<a href="https://pypi.org/project/wrenfold/"><img alt="Python versions badge" src="https://img.shields.io/pypi/pyversions/wrenfold"/></a>
<a href="https://crates.io/crates/wrenfold-traits"><img src="https://img.shields.io/crates/v/wrenfold-traits.svg" alt="crates.io"></a>
<img alt="C++17" src="https://img.shields.io/badge/c++-17-blue" />
<a href="https://opensource.org/licenses/MIT"><img src="https://img.shields.io/badge/License-MIT-blue.svg"></a>
</p>
<!--- badges_end --->
<p align="center">
<strong>
<a href="https://wrenfold.org">Documentation</a> | <a href="https://github.com/wrenfold/wrenfold/">Source Code</a>
</strong>
</p>
Raw data
{
"_id": null,
"home_page": null,
"name": "wrenfold",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.9",
"maintainer_email": null,
"keywords": "symbolic, math, code-generation, robotics, vision",
"author": null,
"author_email": "Gareth Cross <gcross.code@icloud.com>",
"download_url": null,
"platform": null,
"description": "<!-- The README file for the PyPI repository -->\n\n# wrenfold\n\n<!--- logo_start --->\n<p align=\"center\">\n<img src=\"https://wrenfold.org/_static/logo.png\" alt=\"wrenfold logo depicting a bird made from folded paper\" width=\"25%\"/>\n</p>\n<!--- logo_end --->\n\n<!--- badges_start --->\n<p align=\"center\">\n<a href=\"https://github.com/wrenfold/wrenfold/actions/workflows/ci.yml?query=branch%3Amain\"><img alt=\"GitHub Actions Workflow Status\" src=\"https://github.com/wrenfold/wrenfold/actions/workflows/ci.yml/badge.svg?branch=main\"></a>\n<a href=\"https://github.com/wrenfold/wrenfold/actions/workflows/coverage.yml?query=branch%3Amain\"><img alt=\"Code Coverage Status\" src=\"https://img.shields.io/endpoint?url=https://gist.githubusercontent.com/gareth-cross/0d939a81f2048609c1d3758371e94b7d/raw/wrenfold.json\"></a>\n<a href=\"https://pypi.org/project/wrenfold/\"><img alt=\"Python versions badge\" src=\"https://img.shields.io/pypi/pyversions/wrenfold\"/></a>\n<a href=\"https://crates.io/crates/wrenfold-traits\"><img src=\"https://img.shields.io/crates/v/wrenfold-traits.svg\" alt=\"crates.io\"></a>\n<img alt=\"C++17\" src=\"https://img.shields.io/badge/c++-17-blue\" />\n<a href=\"https://opensource.org/licenses/MIT\"><img src=\"https://img.shields.io/badge/License-MIT-blue.svg\"></a>\n</p>\n<!--- badges_end --->\n\n<p align=\"center\">\n<strong>\n<a href=\"https://wrenfold.org\">Documentation</a> | <a href=\"https://github.com/wrenfold/wrenfold/\">Source Code</a>\n</strong>\n</p>\n",
"bugtrack_url": null,
"license": "MIT",
"summary": "Tools for code-generating mathematical functions.",
"version": "0.3.1",
"project_urls": {
"Homepage": "https://wrenfold.org",
"Issues": "https://github.com/wrenfold/wrenfold/issues",
"Repository": "https://github.com/wrenfold/wrenfold/"
},
"split_keywords": [
"symbolic",
" math",
" code-generation",
" robotics",
" vision"
],
"urls": [
{
"comment_text": null,
"digests": {
"blake2b_256": "6ae913a63f5292e0364ecb284b829b04643a10496314d1b086ce3a800a25a503",
"md5": "4111144f87319acaa839c1c6609131f2",
"sha256": "d4fda3b35976e52e3f756bbd53b13c2f8fb89ba346d2ded854d0149f5750f8a7"
},
"downloads": -1,
"filename": "wrenfold-0.3.1-cp310-cp310-macosx_11_0_arm64.whl",
"has_sig": false,
"md5_digest": "4111144f87319acaa839c1c6609131f2",
"packagetype": "bdist_wheel",
"python_version": "cp310",
"requires_python": ">=3.9",
"size": 1264967,
"upload_time": "2025-07-20T20:13:02",
"upload_time_iso_8601": "2025-07-20T20:13:02.487388Z",
"url": "https://files.pythonhosted.org/packages/6a/e9/13a63f5292e0364ecb284b829b04643a10496314d1b086ce3a800a25a503/wrenfold-0.3.1-cp310-cp310-macosx_11_0_arm64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "70d61c1ddf6dddbf94e69c1f456d6b36c148f6fed9be557fd2047ea64cb2f364",
"md5": "c1f1a36acc495d6f4080dc629d6168bf",
"sha256": "279bc9500a4fdc90351cc1fe5dbe39bb4d917f99f450b8ee74e4313126792edd"
},
"downloads": -1,
"filename": "wrenfold-0.3.1-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl",
"has_sig": false,
"md5_digest": "c1f1a36acc495d6f4080dc629d6168bf",
"packagetype": "bdist_wheel",
"python_version": "cp310",
"requires_python": ">=3.9",
"size": 1945207,
"upload_time": "2025-07-20T20:13:04",
"upload_time_iso_8601": "2025-07-20T20:13:04.472622Z",
"url": "https://files.pythonhosted.org/packages/70/d6/1c1ddf6dddbf94e69c1f456d6b36c148f6fed9be557fd2047ea64cb2f364/wrenfold-0.3.1-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "f1f6f62648b9b8963ae3e014fe2f455bb19f091341fa905c3a4a936ca2c16d1e",
"md5": "e6c6e72d4dc060da83835ca4f09112d4",
"sha256": "000079732a8ed70f52c71ab919c152020f69f3095f2ee9cb54c8c98e0e395262"
},
"downloads": -1,
"filename": "wrenfold-0.3.1-cp310-cp310-win_amd64.whl",
"has_sig": false,
"md5_digest": "e6c6e72d4dc060da83835ca4f09112d4",
"packagetype": "bdist_wheel",
"python_version": "cp310",
"requires_python": ">=3.9",
"size": 1074844,
"upload_time": "2025-07-20T20:13:05",
"upload_time_iso_8601": "2025-07-20T20:13:05.780783Z",
"url": "https://files.pythonhosted.org/packages/f1/f6/f62648b9b8963ae3e014fe2f455bb19f091341fa905c3a4a936ca2c16d1e/wrenfold-0.3.1-cp310-cp310-win_amd64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "f5bd348cf1f71730dbd4f3868896f50fcd6a9ee6c5a41d35e2fc1bb64cc4aaf4",
"md5": "23002ba5f7c2ca8c96e87d396f778c16",
"sha256": "5a19b6e21a24ed671ed17f461122eab6b2d9ab45ef89cc51f9a00b2e9ce90f99"
},
"downloads": -1,
"filename": "wrenfold-0.3.1-cp311-cp311-macosx_11_0_arm64.whl",
"has_sig": false,
"md5_digest": "23002ba5f7c2ca8c96e87d396f778c16",
"packagetype": "bdist_wheel",
"python_version": "cp311",
"requires_python": ">=3.9",
"size": 1266333,
"upload_time": "2025-07-20T20:13:07",
"upload_time_iso_8601": "2025-07-20T20:13:07.373359Z",
"url": "https://files.pythonhosted.org/packages/f5/bd/348cf1f71730dbd4f3868896f50fcd6a9ee6c5a41d35e2fc1bb64cc4aaf4/wrenfold-0.3.1-cp311-cp311-macosx_11_0_arm64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "0d3768896b8f065a63d1a73fdc78eef495a77fe6b812b66e346c0a5b7957c840",
"md5": "03bc8a5995989f8016e40d27f3b6d303",
"sha256": "ce6c069d8248ff8feefc6ca9064b1bd4bec37e1edfe11befed368725330b5778"
},
"downloads": -1,
"filename": "wrenfold-0.3.1-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl",
"has_sig": false,
"md5_digest": "03bc8a5995989f8016e40d27f3b6d303",
"packagetype": "bdist_wheel",
"python_version": "cp311",
"requires_python": ">=3.9",
"size": 1947330,
"upload_time": "2025-07-20T20:13:09",
"upload_time_iso_8601": "2025-07-20T20:13:09.041395Z",
"url": "https://files.pythonhosted.org/packages/0d/37/68896b8f065a63d1a73fdc78eef495a77fe6b812b66e346c0a5b7957c840/wrenfold-0.3.1-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "2adc5ee77b1a21c34761412e4cae0dda79d1ec104ff264e6247e48da39ba94f8",
"md5": "3bdea9ecce557d18e7d07324050ab492",
"sha256": "ea63b16917b263ef21fd17f082203b24a96705b36d8e3d8fa243fdbdfe6c8e3a"
},
"downloads": -1,
"filename": "wrenfold-0.3.1-cp311-cp311-win_amd64.whl",
"has_sig": false,
"md5_digest": "3bdea9ecce557d18e7d07324050ab492",
"packagetype": "bdist_wheel",
"python_version": "cp311",
"requires_python": ">=3.9",
"size": 1075873,
"upload_time": "2025-07-20T20:13:10",
"upload_time_iso_8601": "2025-07-20T20:13:10.284237Z",
"url": "https://files.pythonhosted.org/packages/2a/dc/5ee77b1a21c34761412e4cae0dda79d1ec104ff264e6247e48da39ba94f8/wrenfold-0.3.1-cp311-cp311-win_amd64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "0674be1f11a16b2fcbf18c43981318f216b56254a3c868cbb13a1cff9c99754e",
"md5": "d5267d390d4d329ea7cf75cb47c9e72c",
"sha256": "0be51398c440fed3cb29903e565460e122910d613a7080e45db0a409d1dc3635"
},
"downloads": -1,
"filename": "wrenfold-0.3.1-cp312-cp312-macosx_11_0_arm64.whl",
"has_sig": false,
"md5_digest": "d5267d390d4d329ea7cf75cb47c9e72c",
"packagetype": "bdist_wheel",
"python_version": "cp312",
"requires_python": ">=3.9",
"size": 1275843,
"upload_time": "2025-07-20T20:13:11",
"upload_time_iso_8601": "2025-07-20T20:13:11.917453Z",
"url": "https://files.pythonhosted.org/packages/06/74/be1f11a16b2fcbf18c43981318f216b56254a3c868cbb13a1cff9c99754e/wrenfold-0.3.1-cp312-cp312-macosx_11_0_arm64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "fe04eb817eb432fbc639a5fa72b41adf9a85ba14d7eba1224a7518c8810811b4",
"md5": "8c880fe994610e82b256b2fe23224f49",
"sha256": "93894956adc9c70a16868aabbae8bcdbf8b8b53e67c5538efcabc73584f5bec2"
},
"downloads": -1,
"filename": "wrenfold-0.3.1-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl",
"has_sig": false,
"md5_digest": "8c880fe994610e82b256b2fe23224f49",
"packagetype": "bdist_wheel",
"python_version": "cp312",
"requires_python": ">=3.9",
"size": 1940321,
"upload_time": "2025-07-20T20:13:13",
"upload_time_iso_8601": "2025-07-20T20:13:13.160450Z",
"url": "https://files.pythonhosted.org/packages/fe/04/eb817eb432fbc639a5fa72b41adf9a85ba14d7eba1224a7518c8810811b4/wrenfold-0.3.1-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "c25693f118da28925336961c9b7149932ae5c4062b32111c9e5700f9c5c687ac",
"md5": "45dc00237b44187365f751d067a52237",
"sha256": "562d316a217449b9e18b33f9bcc9283ce6b3114fc97d7360973a2b62db39abde"
},
"downloads": -1,
"filename": "wrenfold-0.3.1-cp312-cp312-win_amd64.whl",
"has_sig": false,
"md5_digest": "45dc00237b44187365f751d067a52237",
"packagetype": "bdist_wheel",
"python_version": "cp312",
"requires_python": ">=3.9",
"size": 1079864,
"upload_time": "2025-07-20T20:13:14",
"upload_time_iso_8601": "2025-07-20T20:13:14.413152Z",
"url": "https://files.pythonhosted.org/packages/c2/56/93f118da28925336961c9b7149932ae5c4062b32111c9e5700f9c5c687ac/wrenfold-0.3.1-cp312-cp312-win_amd64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "f32bb63c7c5f18537ec480894f709e1eb5b502292703743f718a2e4e15e0810b",
"md5": "cb2940f6332644e5df9a400b37e4d3c0",
"sha256": "4eac08fa65bfbd70eeccc7798c3747fd717c081ace0738ac2740093d14498eb1"
},
"downloads": -1,
"filename": "wrenfold-0.3.1-cp313-cp313-macosx_11_0_arm64.whl",
"has_sig": false,
"md5_digest": "cb2940f6332644e5df9a400b37e4d3c0",
"packagetype": "bdist_wheel",
"python_version": "cp313",
"requires_python": ">=3.9",
"size": 1275883,
"upload_time": "2025-07-20T20:13:15",
"upload_time_iso_8601": "2025-07-20T20:13:15.615352Z",
"url": "https://files.pythonhosted.org/packages/f3/2b/b63c7c5f18537ec480894f709e1eb5b502292703743f718a2e4e15e0810b/wrenfold-0.3.1-cp313-cp313-macosx_11_0_arm64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "4845fff0e536a4fff8438466d8f47a5bb7eafeca25e56d22ca5f845ec360883f",
"md5": "acf1bced2bb4ed6d0f11bfff44d38a89",
"sha256": "6aed828cdf7302b59a88eba2c5213c1e96051aa8d2d48399dcd5e033345445bb"
},
"downloads": -1,
"filename": "wrenfold-0.3.1-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl",
"has_sig": false,
"md5_digest": "acf1bced2bb4ed6d0f11bfff44d38a89",
"packagetype": "bdist_wheel",
"python_version": "cp313",
"requires_python": ">=3.9",
"size": 1940437,
"upload_time": "2025-07-20T20:13:16",
"upload_time_iso_8601": "2025-07-20T20:13:16.945486Z",
"url": "https://files.pythonhosted.org/packages/48/45/fff0e536a4fff8438466d8f47a5bb7eafeca25e56d22ca5f845ec360883f/wrenfold-0.3.1-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "454c89d7ad96cfc228cd2e859c57297379e5cc2fb3ce872a6f04eead4e1cf48b",
"md5": "18df53e70b0fe519fb0820bd7f965f6b",
"sha256": "8a0b32c8ca229a0dfbab485f4f22e72fb7ff49289a8d9a26b82095fb5f442481"
},
"downloads": -1,
"filename": "wrenfold-0.3.1-cp313-cp313-win_amd64.whl",
"has_sig": false,
"md5_digest": "18df53e70b0fe519fb0820bd7f965f6b",
"packagetype": "bdist_wheel",
"python_version": "cp313",
"requires_python": ">=3.9",
"size": 1079623,
"upload_time": "2025-07-20T20:13:18",
"upload_time_iso_8601": "2025-07-20T20:13:18.623445Z",
"url": "https://files.pythonhosted.org/packages/45/4c/89d7ad96cfc228cd2e859c57297379e5cc2fb3ce872a6f04eead4e1cf48b/wrenfold-0.3.1-cp313-cp313-win_amd64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "af89b5b9b50a796ff5433a2b143e4b82f531906843728a586170f8812b8403c9",
"md5": "81cc9302be219154ed28bbd7b87684cb",
"sha256": "fcf0fdff365da1df7d0fa7d20d91caf2421653a977f94095ca032d8117b37be0"
},
"downloads": -1,
"filename": "wrenfold-0.3.1-cp39-cp39-macosx_11_0_arm64.whl",
"has_sig": false,
"md5_digest": "81cc9302be219154ed28bbd7b87684cb",
"packagetype": "bdist_wheel",
"python_version": "cp39",
"requires_python": ">=3.9",
"size": 1264938,
"upload_time": "2025-07-20T20:13:20",
"upload_time_iso_8601": "2025-07-20T20:13:20.165919Z",
"url": "https://files.pythonhosted.org/packages/af/89/b5b9b50a796ff5433a2b143e4b82f531906843728a586170f8812b8403c9/wrenfold-0.3.1-cp39-cp39-macosx_11_0_arm64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "14e91be27efac0ffccb817aa134f3dbd9d97ccf54a1ece890993fa2bdcecefa3",
"md5": "4ab0bc9b5676e7f277ffd154430abc3d",
"sha256": "4b97cab45056d4d4823b2ffe3f8ad00a7a61575197bbd387b5db7f525cd62773"
},
"downloads": -1,
"filename": "wrenfold-0.3.1-cp39-cp39-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl",
"has_sig": false,
"md5_digest": "4ab0bc9b5676e7f277ffd154430abc3d",
"packagetype": "bdist_wheel",
"python_version": "cp39",
"requires_python": ">=3.9",
"size": 1945573,
"upload_time": "2025-07-20T20:13:21",
"upload_time_iso_8601": "2025-07-20T20:13:21.988040Z",
"url": "https://files.pythonhosted.org/packages/14/e9/1be27efac0ffccb817aa134f3dbd9d97ccf54a1ece890993fa2bdcecefa3/wrenfold-0.3.1-cp39-cp39-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "1a08ca3b8d4cfc7215a9e259c608d490036eec14440250f394aa7ac8ed2a2139",
"md5": "e14ec57015888b61a3ccdb1faf397949",
"sha256": "45e550d9ce57df3fbc4e34cb48657cd2b45f06577f3d4502eef80ce127f1096d"
},
"downloads": -1,
"filename": "wrenfold-0.3.1-cp39-cp39-win_amd64.whl",
"has_sig": false,
"md5_digest": "e14ec57015888b61a3ccdb1faf397949",
"packagetype": "bdist_wheel",
"python_version": "cp39",
"requires_python": ">=3.9",
"size": 1137973,
"upload_time": "2025-07-20T20:13:23",
"upload_time_iso_8601": "2025-07-20T20:13:23.792344Z",
"url": "https://files.pythonhosted.org/packages/1a/08/ca3b8d4cfc7215a9e259c608d490036eec14440250f394aa7ac8ed2a2139/wrenfold-0.3.1-cp39-cp39-win_amd64.whl",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-07-20 20:13:02",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "wrenfold",
"github_project": "wrenfold",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"requirements": [
{
"name": "alabaster",
"specs": [
[
"==",
"0.7.16"
]
]
},
{
"name": "babel",
"specs": [
[
"==",
"2.17.0"
]
]
},
{
"name": "beautifulsoup4",
"specs": [
[
"==",
"4.13.4"
]
]
},
{
"name": "breathe",
"specs": [
[
"==",
"4.35.0"
]
]
},
{
"name": "certifi",
"specs": [
[
"==",
"2025.4.26"
]
]
},
{
"name": "cfgv",
"specs": [
[
"==",
"3.4.0"
]
]
},
{
"name": "charset-normalizer",
"specs": [
[
"==",
"3.4.2"
]
]
},
{
"name": "cmake",
"specs": [
[
"==",
"4.0.3"
]
]
},
{
"name": "colorama",
"specs": [
[
"==",
"0.4.6"
]
]
},
{
"name": "distlib",
"specs": [
[
"==",
"0.3.9"
]
]
},
{
"name": "docutils",
"specs": [
[
"==",
"0.19"
]
]
},
{
"name": "filelock",
"specs": [
[
"==",
"3.18.0"
]
]
},
{
"name": "furo",
"specs": [
[
"==",
"2024.8.6"
]
]
},
{
"name": "identify",
"specs": [
[
"==",
"2.6.12"
]
]
},
{
"name": "idna",
"specs": [
[
"==",
"3.10"
]
]
},
{
"name": "imagesize",
"specs": [
[
"==",
"1.4.1"
]
]
},
{
"name": "importlib-metadata",
"specs": [
[
"==",
"8.7.0"
]
]
},
{
"name": "jax",
"specs": [
[
"==",
"0.4.30"
]
]
},
{
"name": "jax",
"specs": [
[
"==",
"0.6.1"
]
]
},
{
"name": "jaxlib",
"specs": [
[
"==",
"0.4.30"
]
]
},
{
"name": "jaxlib",
"specs": [
[
"==",
"0.6.1"
]
]
},
{
"name": "jinja2",
"specs": [
[
"==",
"3.1.6"
]
]
},
{
"name": "markdown-it-py",
"specs": [
[
"==",
"3.0.0"
]
]
},
{
"name": "markupsafe",
"specs": [
[
"==",
"3.0.2"
]
]
},
{
"name": "mdit-py-plugins",
"specs": [
[
"==",
"0.4.2"
]
]
},
{
"name": "mdurl",
"specs": [
[
"==",
"0.1.2"
]
]
},
{
"name": "ml-dtypes",
"specs": [
[
"==",
"0.5.1"
]
]
},
{
"name": "mpmath",
"specs": [
[
"==",
"1.3.0"
]
]
},
{
"name": "mypy",
"specs": [
[
"==",
"1.15.0"
]
]
},
{
"name": "mypy-extensions",
"specs": [
[
"==",
"1.1.0"
]
]
},
{
"name": "myst-parser",
"specs": [
[
"==",
"3.0.1"
]
]
},
{
"name": "ninja",
"specs": [
[
"==",
"1.11.1.4"
]
]
},
{
"name": "nodeenv",
"specs": [
[
"==",
"1.9.1"
]
]
},
{
"name": "numpy",
"specs": [
[
"==",
"2.0.2"
]
]
},
{
"name": "numpy",
"specs": [
[
"==",
"2.2.6"
]
]
},
{
"name": "numpy",
"specs": [
[
"==",
"2.3.0"
]
]
},
{
"name": "opt-einsum",
"specs": [
[
"==",
"3.4.0"
]
]
},
{
"name": "packaging",
"specs": [
[
"==",
"25.0"
]
]
},
{
"name": "platformdirs",
"specs": [
[
"==",
"4.3.8"
]
]
},
{
"name": "pre-commit",
"specs": [
[
"==",
"4.2.0"
]
]
},
{
"name": "pygments",
"specs": [
[
"==",
"2.19.1"
]
]
},
{
"name": "pyyaml",
"specs": [
[
"==",
"6.0.2"
]
]
},
{
"name": "requests",
"specs": [
[
"==",
"2.32.4"
]
]
},
{
"name": "scipy",
"specs": [
[
"==",
"1.13.1"
]
]
},
{
"name": "scipy",
"specs": [
[
"==",
"1.15.3"
]
]
},
{
"name": "snowballstemmer",
"specs": [
[
"==",
"3.0.1"
]
]
},
{
"name": "soupsieve",
"specs": [
[
"==",
"2.7"
]
]
},
{
"name": "sphinx",
"specs": [
[
"==",
"6.2.1"
]
]
},
{
"name": "sphinx-basic-ng",
"specs": [
[
"==",
"1.0.0b2"
]
]
},
{
"name": "sphinxcontrib-applehelp",
"specs": [
[
"==",
"2.0.0"
]
]
},
{
"name": "sphinxcontrib-devhelp",
"specs": [
[
"==",
"2.0.0"
]
]
},
{
"name": "sphinxcontrib-htmlhelp",
"specs": [
[
"==",
"2.1.0"
]
]
},
{
"name": "sphinxcontrib-jsmath",
"specs": [
[
"==",
"1.0.1"
]
]
},
{
"name": "sphinxcontrib-qthelp",
"specs": [
[
"==",
"2.0.0"
]
]
},
{
"name": "sphinxcontrib-serializinghtml",
"specs": [
[
"==",
"2.0.0"
]
]
},
{
"name": "sympy",
"specs": [
[
"==",
"1.14.0"
]
]
},
{
"name": "tomli",
"specs": [
[
"==",
"2.2.1"
]
]
},
{
"name": "typing-extensions",
"specs": [
[
"==",
"4.14.0"
]
]
},
{
"name": "urllib3",
"specs": [
[
"==",
"2.4.0"
]
]
},
{
"name": "virtualenv",
"specs": [
[
"==",
"20.31.2"
]
]
},
{
"name": "zipp",
"specs": [
[
"==",
"3.23.0"
]
]
}
],
"lcname": "wrenfold"
}