# Python bindings for [Reticula][reticula] [![Documentations][docs-badge]][docs-website] [![Paper][paper-badge]][paper-link]
[reticula]: https://github.com/reticula-network/reticula
[paper-badge]: https://img.shields.io/badge/Paper-SoftwareX-informational
[paper-link]: https://www.sciencedirect.com/science/article/pii/S2352711022002199
[docs-badge]: https://img.shields.io/badge/Docs-docs.reticula.network-success
[docs-website]: https://docs.reticula.network
## Installation
The library offers pre-compiled Wheels for x64 Windows, MacOS and Linux. The library
currently supports Python version 3.10 or newer.
```console
$ pip install reticula
```
### Installing from source
Alternatively you can install the library from source:
Clone the library:
```console
$ git clone https://github.com/arashbm/reticula-python.git
```
Build the Wheel:
```console
$ cd reticula-python
$ pip install .
```
Note that compiling from source requires an unbelievable amount (> 40GB) of RAM.
## Basic examples
Generate a random static network and investigate:
```pycon
>>> import reticula as ret
>>> state = ret.mersenne_twister(42) # create a pseudorandom number generator
>>> g = ret.random_gnp_graph[ret.int64](n=100, p=0.02, random_state=state)
>>> g
<undirected_network[int64] with 100 verts and 110 edges>
>>> g.vertices()
[0, 1, 2, 3, .... 99]
>>> g.edges()
[undirected_edge[int64](0, 16), undirected_edge[int64](0, 20),
undirected_edge[int64](0, 31), undirected_edge[int64](0, 51), ...]
>>> ret.connected_components(g)
[<component[int64] of 1 nodes: {9}>, <component[int64] of 1 node {33}>, ...]
>>> lcc = max(ret.connected_components(g), key=len)
>>> lcc
<component[int64] of 93 nodes: {99, 96, 95, 94, ...}>
>>> g2 = ret.vertex_induced_subgraph(g, lcc)
>>> g2
<undirected_network[int64] with 93 verts and 109 edges>
```
A more complete example of static network percolation analysis, running on
multiple threads, can be found in
[`examples/static_network_percolation/`](examples/static_network_percolation/)
Create a random fully-mixed temporal network and calculate simple
(unconstrained) reachability from node 0 at time 0 to all nodes and times.
```pycon
>>> import reticula as ret
>>> state = ret.mersenne_twister(42)
>>> g = ret.random_fully_mixed_temporal_network[ret.int64](\
... size=100, rate=0.01, max_t=1024, random_state=state)
>>> adj = ret.temporal_adjacency.simple[\
... ret.undirected_temporal_edge[ret.int64, ret.double]]()
>>> cluster = ret.out_cluster(\
... temporal_network=g, temporal_adjacency=adj, vertex=0, time=0.0)
>>> cluster
<temporal_cluster[undirected_temporal_edge[int64, double],
simple[undirected_temporal_edge[int64, double]]] with volume 100
and lifetime (0 1.7976931348623157e+308]>
>>> cluster.covers(vertex=12, time=100.0)
True
>>> # Let's see all intervals where vert 15 is reachable from vert 0 at t=0.0:
>>> list(cluster.interval_sets()[15])
[(3.099055278145548, 1.7976931348623157e+308)]
```
Let's now try limited waiting-time (with $dt = 5.0$) reachability:
```pycon
>>> import reticula as ret
>>> state = ret.mersenne_twister(42)
>>> g = ret.random_fully_mixed_temporal_network[int64](\
... size=100, rate=0.01, max_t=1024, random_state=state)
>>> adj = ret.temporal_adjacency.limited_waiting_time[\
... ret.undirected_temporal_edge[ret.int64, ret.double]](dt=5.0)
>>> cluster = ret.out_cluster(\
... temporal_network=g, temporal_adjacency=adj, vertex=0, time=0.0)
>>> cluster
<temporal_cluster[undirected_temporal_edge[int64, double],
limited_waiting_time[undirected_temporal_edge[int64, double]]] with
volume 100 and lifetime (0 1028.9972186553928]>
>>> cluster.covers(vertex=15, time=16.0)
True
>>> list(cluster.interval_sets()[15])
[(3.099055278145548, 200.17866501023616),
(200.39858803326402, 337.96139372380003),
...
(1017.5258263596586, 1028.9149586273347)]
>>> # Total "human-hours" of reachability cluster
>>> cluster.mass()
101747.97444555275
>>> # Survival time of the reachability cluster
>>> cluster.lifetime()
(0.0, 1028.9972186553928)
```
Raw data
{
"_id": null,
"home_page": "https://reticula.network/",
"name": "reticula",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.10",
"maintainer_email": null,
"keywords": "Complex Networks, Networks, network, Graphs, Graph Theory, graph, Temporal Networks, temporal network, Hypergraphs, hypergraph, hyper-graph",
"author": null,
"author_email": "Arash Badie-Modiri <arashbm@gmail.com>",
"download_url": null,
"platform": null,
"description": "# Python bindings for [Reticula][reticula] [![Documentations][docs-badge]][docs-website] [![Paper][paper-badge]][paper-link]\n\n[reticula]: https://github.com/reticula-network/reticula\n[paper-badge]: https://img.shields.io/badge/Paper-SoftwareX-informational\n[paper-link]: https://www.sciencedirect.com/science/article/pii/S2352711022002199\n[docs-badge]: https://img.shields.io/badge/Docs-docs.reticula.network-success\n[docs-website]: https://docs.reticula.network\n\n## Installation\n\nThe library offers pre-compiled Wheels for x64 Windows, MacOS and Linux. The library\ncurrently supports Python version 3.10 or newer.\n\n```console\n$ pip install reticula\n```\n\n### Installing from source\nAlternatively you can install the library from source:\n\nClone the library:\n```console\n$ git clone https://github.com/arashbm/reticula-python.git\n```\n\nBuild the Wheel:\n```console\n$ cd reticula-python\n$ pip install .\n```\n\nNote that compiling from source requires an unbelievable amount (> 40GB) of RAM.\n\n## Basic examples\n\nGenerate a random static network and investigate:\n```pycon\n>>> import reticula as ret\n>>> state = ret.mersenne_twister(42) # create a pseudorandom number generator\n>>> g = ret.random_gnp_graph[ret.int64](n=100, p=0.02, random_state=state)\n>>> g\n<undirected_network[int64] with 100 verts and 110 edges>\n>>> g.vertices()\n[0, 1, 2, 3, .... 99]\n>>> g.edges()\n[undirected_edge[int64](0, 16), undirected_edge[int64](0, 20),\n undirected_edge[int64](0, 31), undirected_edge[int64](0, 51), ...]\n>>> ret.connected_components(g)\n[<component[int64] of 1 nodes: {9}>, <component[int64] of 1 node {33}>, ...]\n>>> lcc = max(ret.connected_components(g), key=len)\n>>> lcc\n<component[int64] of 93 nodes: {99, 96, 95, 94, ...}>\n>>> g2 = ret.vertex_induced_subgraph(g, lcc)\n>>> g2\n<undirected_network[int64] with 93 verts and 109 edges>\n```\nA more complete example of static network percolation analysis, running on\nmultiple threads, can be found in\n[`examples/static_network_percolation/`](examples/static_network_percolation/)\n\nCreate a random fully-mixed temporal network and calculate simple\n(unconstrained) reachability from node 0 at time 0 to all nodes and times.\n```pycon\n>>> import reticula as ret\n>>> state = ret.mersenne_twister(42)\n>>> g = ret.random_fully_mixed_temporal_network[ret.int64](\\\n... size=100, rate=0.01, max_t=1024, random_state=state)\n>>> adj = ret.temporal_adjacency.simple[\\\n... ret.undirected_temporal_edge[ret.int64, ret.double]]()\n>>> cluster = ret.out_cluster(\\\n... temporal_network=g, temporal_adjacency=adj, vertex=0, time=0.0)\n>>> cluster\n<temporal_cluster[undirected_temporal_edge[int64, double],\n simple[undirected_temporal_edge[int64, double]]] with volume 100\n and lifetime (0 1.7976931348623157e+308]>\n>>> cluster.covers(vertex=12, time=100.0)\nTrue\n\n>>> # Let's see all intervals where vert 15 is reachable from vert 0 at t=0.0:\n>>> list(cluster.interval_sets()[15])\n[(3.099055278145548, 1.7976931348623157e+308)]\n```\n\nLet's now try limited waiting-time (with $dt = 5.0$) reachability:\n```pycon\n>>> import reticula as ret\n>>> state = ret.mersenne_twister(42)\n>>> g = ret.random_fully_mixed_temporal_network[int64](\\\n... size=100, rate=0.01, max_t=1024, random_state=state)\n>>> adj = ret.temporal_adjacency.limited_waiting_time[\\\n... ret.undirected_temporal_edge[ret.int64, ret.double]](dt=5.0)\n>>> cluster = ret.out_cluster(\\\n... temporal_network=g, temporal_adjacency=adj, vertex=0, time=0.0)\n>>> cluster\n<temporal_cluster[undirected_temporal_edge[int64, double],\n limited_waiting_time[undirected_temporal_edge[int64, double]]] with\n volume 100 and lifetime (0 1028.9972186553928]>\n>>> cluster.covers(vertex=15, time=16.0)\nTrue\n>>> list(cluster.interval_sets()[15])\n[(3.099055278145548, 200.17866501023616),\n (200.39858803326402, 337.96139372380003),\n ...\n (1017.5258263596586, 1028.9149586273347)]\n\n>>> # Total \"human-hours\" of reachability cluster\n>>> cluster.mass()\n101747.97444555275\n\n>>> # Survival time of the reachability cluster\n>>> cluster.lifetime()\n(0.0, 1028.9972186553928)\n```\n",
"bugtrack_url": null,
"license": "MIT",
"summary": "Analyse temporal network and hypergraphs efficiently.",
"version": "0.13.0",
"project_urls": {
"Bug-tracker": "https://github.com/reticula-network/reticula-python/issues",
"Documentation": "https://docs.reticula.network/",
"Homepage": "https://reticula.network/",
"Repository": "https://github.com/reticula-network/reticula-python"
},
"split_keywords": [
"complex networks",
" networks",
" network",
" graphs",
" graph theory",
" graph",
" temporal networks",
" temporal network",
" hypergraphs",
" hypergraph",
" hyper-graph"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "e7b353253009dcc96fa75b16467342fd75ea4b1bb6fcaf13e398d34d69363cf3",
"md5": "d9faa55eba4eb5d4d981a8874c65cec9",
"sha256": "12bdc5301b524f7125f57592029a94110012de2d6198c47cb9003d812e184725"
},
"downloads": -1,
"filename": "reticula-0.13.0-cp310-cp310-macosx_10_15_x86_64.whl",
"has_sig": false,
"md5_digest": "d9faa55eba4eb5d4d981a8874c65cec9",
"packagetype": "bdist_wheel",
"python_version": "cp310",
"requires_python": ">=3.10",
"size": 50017113,
"upload_time": "2024-11-14T15:05:31",
"upload_time_iso_8601": "2024-11-14T15:05:31.090512Z",
"url": "https://files.pythonhosted.org/packages/e7/b3/53253009dcc96fa75b16467342fd75ea4b1bb6fcaf13e398d34d69363cf3/reticula-0.13.0-cp310-cp310-macosx_10_15_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "9beadce05dfb3e10af632c9aa869bd67328c4823fb038c38b73eb6e29183426d",
"md5": "80df2f6863016edd905ee1e467e95378",
"sha256": "31c022b3f4d79c74f4276afe019062441b58f801c58ed8fc1e3081026ca3d234"
},
"downloads": -1,
"filename": "reticula-0.13.0-cp310-cp310-macosx_11_0_arm64.whl",
"has_sig": false,
"md5_digest": "80df2f6863016edd905ee1e467e95378",
"packagetype": "bdist_wheel",
"python_version": "cp310",
"requires_python": ">=3.10",
"size": 42397459,
"upload_time": "2024-11-14T15:06:21",
"upload_time_iso_8601": "2024-11-14T15:06:21.606728Z",
"url": "https://files.pythonhosted.org/packages/9b/ea/dce05dfb3e10af632c9aa869bd67328c4823fb038c38b73eb6e29183426d/reticula-0.13.0-cp310-cp310-macosx_11_0_arm64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "1647bc369264d86c8765212dcc9e007a76b688de3a434065144b43e51ba2563d",
"md5": "e416c59b7be78365ed2bc1e19f3460ef",
"sha256": "490486bb5f3554ae3b13969e2daf59fa0a82b9c1f38bb8b358670ecfd0a1a476"
},
"downloads": -1,
"filename": "reticula-0.13.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"has_sig": false,
"md5_digest": "e416c59b7be78365ed2bc1e19f3460ef",
"packagetype": "bdist_wheel",
"python_version": "cp310",
"requires_python": ">=3.10",
"size": 23003122,
"upload_time": "2024-11-14T15:05:21",
"upload_time_iso_8601": "2024-11-14T15:05:21.779111Z",
"url": "https://files.pythonhosted.org/packages/16/47/bc369264d86c8765212dcc9e007a76b688de3a434065144b43e51ba2563d/reticula-0.13.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "9f8f270eff8b7f1d973232bef3bb91a9096d71ae0a41a01ae0a0970b6964fecf",
"md5": "7ba50f96dcf3ea238e74b41afcb6cd80",
"sha256": "ea889087dfe5d40a48b6e9eb518e8a081760915e6f95013765f90384768e17ed"
},
"downloads": -1,
"filename": "reticula-0.13.0-cp310-cp310-musllinux_1_2_x86_64.whl",
"has_sig": false,
"md5_digest": "7ba50f96dcf3ea238e74b41afcb6cd80",
"packagetype": "bdist_wheel",
"python_version": "cp310",
"requires_python": ">=3.10",
"size": 23063013,
"upload_time": "2024-11-14T15:05:35",
"upload_time_iso_8601": "2024-11-14T15:05:35.143738Z",
"url": "https://files.pythonhosted.org/packages/9f/8f/270eff8b7f1d973232bef3bb91a9096d71ae0a41a01ae0a0970b6964fecf/reticula-0.13.0-cp310-cp310-musllinux_1_2_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "35665ba110c477e4a74a171738d0b70e536da317f11c92d20e21e1c220b3e527",
"md5": "2b48d371a48f89ae5f259a554fc18fb4",
"sha256": "2c1e3621a61bef3eeb2d1e5a5e4e37c0ee279a6c77e5036818589a8d391eb41e"
},
"downloads": -1,
"filename": "reticula-0.13.0-cp311-cp311-macosx_10_15_x86_64.whl",
"has_sig": false,
"md5_digest": "2b48d371a48f89ae5f259a554fc18fb4",
"packagetype": "bdist_wheel",
"python_version": "cp311",
"requires_python": ">=3.10",
"size": 50009101,
"upload_time": "2024-11-14T15:07:05",
"upload_time_iso_8601": "2024-11-14T15:07:05.957230Z",
"url": "https://files.pythonhosted.org/packages/35/66/5ba110c477e4a74a171738d0b70e536da317f11c92d20e21e1c220b3e527/reticula-0.13.0-cp311-cp311-macosx_10_15_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "bcfa7c3b70edd22f8750727e8fe44d4956d78575aabcf85c5ba073b5da035fe6",
"md5": "ffc551d04e472d19030a75876fcb72b8",
"sha256": "eadf6128e43050c60f22bebba761996113738cd08ab1ef620da95e0efb422f0c"
},
"downloads": -1,
"filename": "reticula-0.13.0-cp311-cp311-macosx_11_0_arm64.whl",
"has_sig": false,
"md5_digest": "ffc551d04e472d19030a75876fcb72b8",
"packagetype": "bdist_wheel",
"python_version": "cp311",
"requires_python": ">=3.10",
"size": 42392916,
"upload_time": "2024-11-14T15:07:38",
"upload_time_iso_8601": "2024-11-14T15:07:38.443209Z",
"url": "https://files.pythonhosted.org/packages/bc/fa/7c3b70edd22f8750727e8fe44d4956d78575aabcf85c5ba073b5da035fe6/reticula-0.13.0-cp311-cp311-macosx_11_0_arm64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "c95e11956333ce435387d6eaf66b1b55608714e8a59c4b89fde417e8145e6942",
"md5": "3d218fc0550ee259e8f0b7327f53c358",
"sha256": "af56198bbd2324ffea28afb8a48996babecf6c7b4f4f1f218f2e36e4fb06d448"
},
"downloads": -1,
"filename": "reticula-0.13.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"has_sig": false,
"md5_digest": "3d218fc0550ee259e8f0b7327f53c358",
"packagetype": "bdist_wheel",
"python_version": "cp311",
"requires_python": ">=3.10",
"size": 22998518,
"upload_time": "2024-11-14T15:05:46",
"upload_time_iso_8601": "2024-11-14T15:05:46.207161Z",
"url": "https://files.pythonhosted.org/packages/c9/5e/11956333ce435387d6eaf66b1b55608714e8a59c4b89fde417e8145e6942/reticula-0.13.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "3dcf623ea8706f7fe4e0078a369b2f3aa8b37cff16c313ec6c9b036356e690a7",
"md5": "12dd7cad53ab61456cb0f5889e88b5d0",
"sha256": "2e4b427bba1a3d1df5796d4285c8284b5231ecac2c32c9bed3f84a0579d158d2"
},
"downloads": -1,
"filename": "reticula-0.13.0-cp311-cp311-musllinux_1_2_x86_64.whl",
"has_sig": false,
"md5_digest": "12dd7cad53ab61456cb0f5889e88b5d0",
"packagetype": "bdist_wheel",
"python_version": "cp311",
"requires_python": ">=3.10",
"size": 23043351,
"upload_time": "2024-11-14T15:05:58",
"upload_time_iso_8601": "2024-11-14T15:05:58.121249Z",
"url": "https://files.pythonhosted.org/packages/3d/cf/623ea8706f7fe4e0078a369b2f3aa8b37cff16c313ec6c9b036356e690a7/reticula-0.13.0-cp311-cp311-musllinux_1_2_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "a23dfdb546e669cc9177e4bcbd612ce79748501f0878931bbc5de887678008e3",
"md5": "8a5d23092a33de0f2026c136b32b3a18",
"sha256": "3d66eb3ba61491663b3df58df22122fc1f6987fd6523b89fff98af7e91e78285"
},
"downloads": -1,
"filename": "reticula-0.13.0-cp312-abi3-macosx_10_15_x86_64.whl",
"has_sig": false,
"md5_digest": "8a5d23092a33de0f2026c136b32b3a18",
"packagetype": "bdist_wheel",
"python_version": "cp312",
"requires_python": ">=3.10",
"size": 49900833,
"upload_time": "2024-11-14T15:08:24",
"upload_time_iso_8601": "2024-11-14T15:08:24.852438Z",
"url": "https://files.pythonhosted.org/packages/a2/3d/fdb546e669cc9177e4bcbd612ce79748501f0878931bbc5de887678008e3/reticula-0.13.0-cp312-abi3-macosx_10_15_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "0ed1537ae005f3133e688f66332e3281e0f252228d125d2ac0efa21e0acb043e",
"md5": "7498ac016d6da602a58cb55303c630ba",
"sha256": "6add3b399dc602590a7b7a7c54a3fbb7276eaf7e476e779d2e2866bda6060899"
},
"downloads": -1,
"filename": "reticula-0.13.0-cp312-abi3-macosx_11_0_arm64.whl",
"has_sig": false,
"md5_digest": "7498ac016d6da602a58cb55303c630ba",
"packagetype": "bdist_wheel",
"python_version": "cp312",
"requires_python": ">=3.10",
"size": 42235186,
"upload_time": "2024-11-14T15:09:08",
"upload_time_iso_8601": "2024-11-14T15:09:08.583543Z",
"url": "https://files.pythonhosted.org/packages/0e/d1/537ae005f3133e688f66332e3281e0f252228d125d2ac0efa21e0acb043e/reticula-0.13.0-cp312-abi3-macosx_11_0_arm64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "f114577fb133acde6ac28443f584f7de6b408af639a72dfb7738a60bddde179a",
"md5": "888b5a84729c8bf6fd6a51dde321176a",
"sha256": "e5485e79efc8b142b62941e8c550950352a7f12d62e0d54ceb308ba1673bb80c"
},
"downloads": -1,
"filename": "reticula-0.13.0-cp312-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"has_sig": false,
"md5_digest": "888b5a84729c8bf6fd6a51dde321176a",
"packagetype": "bdist_wheel",
"python_version": "cp312",
"requires_python": ">=3.10",
"size": 23078597,
"upload_time": "2024-11-14T15:06:13",
"upload_time_iso_8601": "2024-11-14T15:06:13.026684Z",
"url": "https://files.pythonhosted.org/packages/f1/14/577fb133acde6ac28443f584f7de6b408af639a72dfb7738a60bddde179a/reticula-0.13.0-cp312-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "b5a6cbb2c72075159dc3a4ea210cafa6a90e440672bbc3e498bc6dfdc0b5ca9c",
"md5": "32f4aee25c4528fd58bdb8650fc43fe7",
"sha256": "7d1b5dcf8c05782be91dccdcb44aac9e752909bdd2188836c5f2396e2b6a910a"
},
"downloads": -1,
"filename": "reticula-0.13.0-cp312-abi3-musllinux_1_2_x86_64.whl",
"has_sig": false,
"md5_digest": "32f4aee25c4528fd58bdb8650fc43fe7",
"packagetype": "bdist_wheel",
"python_version": "cp312",
"requires_python": ">=3.10",
"size": 23105979,
"upload_time": "2024-11-14T15:06:28",
"upload_time_iso_8601": "2024-11-14T15:06:28.729388Z",
"url": "https://files.pythonhosted.org/packages/b5/a6/cbb2c72075159dc3a4ea210cafa6a90e440672bbc3e498bc6dfdc0b5ca9c/reticula-0.13.0-cp312-abi3-musllinux_1_2_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "0adccc07f98ef9ba7b2f35d45c21abbfff79b514ce09dcc7e1e7644a423d57f1",
"md5": "fb5e4e184edfc31cce674a7c517d47da",
"sha256": "7e90162e4d4a131f48776ca7cf4090f854e66ffac3ca1fb72723a765f86a3ebc"
},
"downloads": -1,
"filename": "reticula-0.13.0-pp310-pypy310_pp73-macosx_10_15_x86_64.whl",
"has_sig": false,
"md5_digest": "fb5e4e184edfc31cce674a7c517d47da",
"packagetype": "bdist_wheel",
"python_version": "pp310",
"requires_python": ">=3.10",
"size": 49849341,
"upload_time": "2024-11-14T15:09:55",
"upload_time_iso_8601": "2024-11-14T15:09:55.666764Z",
"url": "https://files.pythonhosted.org/packages/0a/dc/cc07f98ef9ba7b2f35d45c21abbfff79b514ce09dcc7e1e7644a423d57f1/reticula-0.13.0-pp310-pypy310_pp73-macosx_10_15_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "081004970e1b5c623ba87e6183ba7ad67163d18b516411125ee0c71962c2b052",
"md5": "4bffab19991ff66c681e815505fec22c",
"sha256": "2ce69a76a4d37202623fd8eb354143d232ed4e430652ac980921004b670506a3"
},
"downloads": -1,
"filename": "reticula-0.13.0-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"has_sig": false,
"md5_digest": "4bffab19991ff66c681e815505fec22c",
"packagetype": "bdist_wheel",
"python_version": "pp310",
"requires_python": ">=3.10",
"size": 23016180,
"upload_time": "2024-11-14T15:06:39",
"upload_time_iso_8601": "2024-11-14T15:06:39.908251Z",
"url": "https://files.pythonhosted.org/packages/08/10/04970e1b5c623ba87e6183ba7ad67163d18b516411125ee0c71962c2b052/reticula-0.13.0-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-11-14 15:05:31",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "reticula-network",
"github_project": "reticula-python",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"lcname": "reticula"
}