{ "info": { "author": "Hugo Hadfield", "author_email": "hadfield.hugo@gmail.com", "bugtrack_url": null, "classifiers": [], "description": "# pyganja\n[![PyPI](https://badgen.net/pypi/v/pyganja)](https://pypi.org/project/pyganja/)\n\nVisualisation library for geometric algebra with cefpython and ganja.js\n\nThis is a module for visualing Geometric Algebra from scripts and also from jupyter notebooks, \nit relies on [ganja.js](https://github.com/enkimute/ganja.js) to render Geometric Algebra objects. \nIf you are calling its api from a script it will render them in a cefpython window or if you are in a notebook it can simply render in the notebook itself.\n\n# Use\nThis library is not specifically tied to the [clifford](https://github.com/pygae/clifford) library \nbut is designed to work well with it. An example of the syntax that you would use combining these two libraries:\n\n```\nfrom clifford.tools.g3c import random_line\nfrom pyganja import *\n\ndraw([random_line() for i in range(10)])\n```\nProduces:\n![Random lines](./random_lines.png?raw=true)\n\n\nMulitple grades of object can be drawn in the same scene with different colors and transparencies\n```\nfrom clifford.g3c import *\nfrom clifford.tools.g3c import *\nfrom pyganja import *\n\nP1 = up(random_euc_mv()*0.1)\nP2 = up(random_euc_mv()*0.1)\nP3 = up(random_euc_mv()*0.1)\nP4 = up(random_euc_mv()*0.1)\n\n# The sphere is the outer product of all 4\nS = (P1^P2^P3^P4).normal()\n\n# A line is the outer product of 2 with ninf\nL = P1^P2^einf\n\n# The inversion of a line in a sphere is a circle\nC = S*L*S\n\n# The tangent to the circle at the intersection point is the reflected line\nLdash = (P1|C)^einf\n\n# The tangent plane to the sphere at the intersection point can be easily found\nPpi = (P1|S)^einf\n\nsc = GanjaScene()\nsc.add_objects([P1,P2,P3,P4], color=Color.BLACK)\nsc.add_objects([L], color=Color.BLUE)\nsc.add_objects([Ldash], color=Color.RED)\nsc.add_objects([C], color=Color.RED)\nsc.add_objects([S*einf*S], color=Color.BLACK)\nsc.add_objects([S])\nsc.add_objects([Ppi], color=rgb2hex((0,100,0))+int('70000000',16))\ndraw(sc,scale=0.5)\n```\nProduces:\n![Sphere reflection](./line_sphere_reflect.png?raw=true)\n\n# Installation\n```\ngit clone git@github.com:hugohadfield/pyganja.git\ncd pyganja\npython3 setup.py install\n```\n\n# TODO\nThis is still very much a work in progress, currently it only handles PGA and CGA\n\n\n", "description_content_type": "text/markdown", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/hugohadfield/pyganja", "keywords": "", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "pyganja", "package_url": "https://pypi.org/project/pyganja/", "platform": "", "project_url": "https://pypi.org/project/pyganja/", "project_urls": { "Homepage": "https://github.com/hugohadfield/pyganja" }, "release_url": "https://pypi.org/project/pyganja/0.0.15/", "requires_dist": [ "IPython" ], "requires_python": "", "summary": "Python interface to ganja.js", "version": "0.0.15", "yanked": false, "yanked_reason": null }, "last_serial": 10601516, "releases": { "0.0.1": [ { "comment_text": "", "digests": { "md5": "81a22eb9ec0c0c3e4aadd79ed59c48b9", "sha256": "4985c6fb7dc0ceb071c654a56795d37e72ab7170d91a487c5fd06607e11c40ef" }, "downloads": -1, "filename": "pyganja-0.0.1-py3.5.egg", "has_sig": false, "md5_digest": "81a22eb9ec0c0c3e4aadd79ed59c48b9", "packagetype": "bdist_egg", "python_version": "3.5", "requires_python": null, "size": 36397, "upload_time": "2019-06-11T17:32:48", "upload_time_iso_8601": "2019-06-11T17:32:48.281020Z", "url": "https://files.pythonhosted.org/packages/d3/40/67a1e3fe4079a86e60d08c4fe4b32ef5c5fa61e8c8590f851404e1f48b87/pyganja-0.0.1-py3.5.egg", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "4179ecfeb328cf5130145d5f509dc35c", "sha256": "d3095fb9b42299ed59ba159ca9930a4268d44ab49cd27b5808a1341e7e5f0b8c" }, "downloads": -1, "filename": "pyganja-0.0.1.tar.gz", "has_sig": false, "md5_digest": "4179ecfeb328cf5130145d5f509dc35c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 31901, "upload_time": "2019-06-11T17:32:50", "upload_time_iso_8601": "2019-06-11T17:32:50.587696Z", "url": "https://files.pythonhosted.org/packages/88/65/563e067e6bc1ce762e9088e68a187819722eefedc1fbae1f35d10fac99b7/pyganja-0.0.1.tar.gz", "yanked": false, "yanked_reason": null } ], "0.0.10": [ { "comment_text": "", "digests": { "md5": "d10515e395bc8016b51a70a48a0eec77", "sha256": "24473c153223189f78cd90b4a1f51dc2408b0c5e87e964692f04a855c64b4526" }, "downloads": -1, "filename": "pyganja-0.0.10-py3-none-any.whl", "has_sig": false, "md5_digest": "d10515e395bc8016b51a70a48a0eec77", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 35872, "upload_time": "2019-12-09T12:25:36", "upload_time_iso_8601": "2019-12-09T12:25:36.560890Z", "url": "https://files.pythonhosted.org/packages/c9/76/e68ea80b69a899ba5da4677bcdb172fe2eef91febbc2d01485b83586fba1/pyganja-0.0.10-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "0a5fcbe078dba66edfe93678af604e97", "sha256": "37e0e2e38a89527aaa7de2cbdea50c2915661372261102952ca7c95f41cddb9e" }, "downloads": -1, "filename": "pyganja-0.0.10.tar.gz", "has_sig": false, "md5_digest": "0a5fcbe078dba66edfe93678af604e97", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 34840, "upload_time": "2019-12-09T12:25:37", "upload_time_iso_8601": "2019-12-09T12:25:37.547215Z", "url": "https://files.pythonhosted.org/packages/95/83/4f6df2ba75bc7094ca5895c044c381dd271d8bbc1b90a30d794cda7a7601/pyganja-0.0.10.tar.gz", "yanked": false, "yanked_reason": null } ], "0.0.11": [ { "comment_text": "", "digests": { "md5": "7351f3a5ff4bb9b9fb60bc84a944e7ad", "sha256": "564e2d2bf94bc3c1a980f6d030a7a69bad79e545de54ea9be2c455ce7dabd89b" }, "downloads": -1, "filename": "pyganja-0.0.11-py3-none-any.whl", "has_sig": false, "md5_digest": "7351f3a5ff4bb9b9fb60bc84a944e7ad", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 35872, "upload_time": "2019-12-11T13:32:21", "upload_time_iso_8601": "2019-12-11T13:32:21.238236Z", "url": "https://files.pythonhosted.org/packages/5d/77/ea8d0327bf697397c0ef6396cdde84f569291bd3e19b3df0d0d56c59aebe/pyganja-0.0.11-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "8335bd8443430712b4313722766c5a33", "sha256": "06ab960e12eee2678b017dc6775b21a270478b803b25c9ae1c85ef5ed5480b50" }, "downloads": -1, "filename": "pyganja-0.0.11.tar.gz", "has_sig": false, "md5_digest": "8335bd8443430712b4313722766c5a33", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 34811, "upload_time": "2019-12-11T13:32:22", "upload_time_iso_8601": "2019-12-11T13:32:22.605204Z", "url": "https://files.pythonhosted.org/packages/89/09/cd574912c47664600c9e01144f8e6fba2446f812f5eacaa76124fdc4cd63/pyganja-0.0.11.tar.gz", "yanked": false, "yanked_reason": null } ], "0.0.12": [ { "comment_text": "", "digests": { "md5": "c8d98fd9c6219e5c615cb92ae56dd0ee", "sha256": "aa997c9aaf09e9346c7ece5d999afb75fa80e20d8fa2edfa3cf1e5993ab04ac5" }, "downloads": -1, "filename": "pyganja-0.0.12-py3-none-any.whl", "has_sig": false, "md5_digest": "c8d98fd9c6219e5c615cb92ae56dd0ee", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 36829, "upload_time": "2020-03-06T14:46:17", "upload_time_iso_8601": "2020-03-06T14:46:17.942356Z", "url": "https://files.pythonhosted.org/packages/28/3f/ae29fbfdf630eeab0fe90227c13aabbf700fa9e28fcd74e397717a7abd12/pyganja-0.0.12-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "1a5638ee0637f784e4740ce561b3eab9", "sha256": "40f01e528f74ced063380af4e3ec27b3ad022ec05254a8d0bb108ac5d626bf2d" }, "downloads": -1, "filename": "pyganja-0.0.12.tar.gz", "has_sig": false, "md5_digest": "1a5638ee0637f784e4740ce561b3eab9", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 36072, "upload_time": "2020-03-06T14:46:19", "upload_time_iso_8601": "2020-03-06T14:46:19.060174Z", "url": "https://files.pythonhosted.org/packages/5c/08/6e71491319740a4a6641c71c2a2c0437bfc3852e98d1b3f416530ac15229/pyganja-0.0.12.tar.gz", "yanked": false, "yanked_reason": null } ], "0.0.13": [ { "comment_text": "", "digests": { "md5": "773722f0df054b513195dc12f5ab4972", "sha256": "743ededf15265286c8bf70892609918062a10eb31020f2557b70ab6e8099bcfe" }, "downloads": -1, "filename": "pyganja-0.0.13-py3-none-any.whl", "has_sig": false, "md5_digest": "773722f0df054b513195dc12f5ab4972", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 40900, "upload_time": "2020-10-27T14:03:45", "upload_time_iso_8601": "2020-10-27T14:03:45.901328Z", "url": "https://files.pythonhosted.org/packages/ce/57/fe0b8eecfe3e8bb6b0706706131431e291e4b16eecce3e50ad8e33ee6fa3/pyganja-0.0.13-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "713a206961e357456b0e343a4a994b18", "sha256": "7f1ead6559a375739568321a596dd784d274918c8c1ffe66ee70d82e38c8d782" }, "downloads": -1, "filename": "pyganja-0.0.13.tar.gz", "has_sig": false, "md5_digest": "713a206961e357456b0e343a4a994b18", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 40121, "upload_time": "2020-10-27T14:03:46", "upload_time_iso_8601": "2020-10-27T14:03:46.882947Z", "url": "https://files.pythonhosted.org/packages/f6/5d/2be356b66e1fc42c50d29f101bd247049871230647b5a31a39918563f08a/pyganja-0.0.13.tar.gz", "yanked": false, "yanked_reason": null } ], "0.0.14": [ { "comment_text": "", "digests": { "md5": "f9637dd674159a930556d9003a12fbad", "sha256": "6a97bd53f9cb05d44d81720582b6b91e2cd504e6e1377434edd2e0877971e940" }, "downloads": -1, "filename": "pyganja-0.0.14-py3-none-any.whl", "has_sig": false, "md5_digest": "f9637dd674159a930556d9003a12fbad", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 43759, "upload_time": "2021-03-11T10:46:36", "upload_time_iso_8601": "2021-03-11T10:46:36.397185Z", "url": "https://files.pythonhosted.org/packages/34/92/d67b6a578762d88376e30a57d80cb4a427e680b8496f245f10acb575d0b1/pyganja-0.0.14-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "b48f2f6fd1c9735bb07e9117822a4fc1", "sha256": "1d724a1f61eda2216499ebcdc3e65e6f80d9a0bf2339c5b3ed3ee0afb2066f66" }, "downloads": -1, "filename": "pyganja-0.0.14.tar.gz", "has_sig": false, "md5_digest": "b48f2f6fd1c9735bb07e9117822a4fc1", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 42981, "upload_time": "2021-03-11T10:46:37", "upload_time_iso_8601": "2021-03-11T10:46:37.466520Z", "url": "https://files.pythonhosted.org/packages/d4/5f/7df9e93b302cc2c4918bd8d05737259f877ed9b9568157e4d850a767f1da/pyganja-0.0.14.tar.gz", "yanked": false, "yanked_reason": null } ], "0.0.15": [ { "comment_text": "", "digests": { "md5": "babd8418e901254e297100729e509b86", "sha256": "6d18b19372a3fc7f6f19fbc6d52a545fa039f1220f12405c81dac6b3ed076cb3" }, "downloads": -1, "filename": "pyganja-0.0.15-py3-none-any.whl", "has_sig": false, "md5_digest": "babd8418e901254e297100729e509b86", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 45009, "upload_time": "2021-06-09T13:45:14", "upload_time_iso_8601": "2021-06-09T13:45:14.970254Z", "url": "https://files.pythonhosted.org/packages/03/e9/f522fbfcc8f813c084868c848909ad7bd51276105862c5378db35d505613/pyganja-0.0.15-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "5c0d9a7850a89558d2fe3eeb160285f4", "sha256": "884143a1954e385d5e2c5d8621aae59cbf4f4fc049408e9c902f5470729e6ab2" }, "downloads": -1, "filename": "pyganja-0.0.15.tar.gz", "has_sig": false, "md5_digest": "5c0d9a7850a89558d2fe3eeb160285f4", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 45001, "upload_time": "2021-06-09T13:45:16", "upload_time_iso_8601": "2021-06-09T13:45:16.313662Z", "url": "https://files.pythonhosted.org/packages/78/b4/8afdc1ecf16735f9f381620a7e4944fa5bcf63c6eecca317c9e95dcc4b5e/pyganja-0.0.15.tar.gz", "yanked": false, "yanked_reason": null } ], "0.0.2": [ { "comment_text": "", "digests": { "md5": "729bb83f6977318598d553cc7d259bf9", "sha256": "f8a6fd22b9df69475bcd7a30bbb1589fca5bdf70fe94121d089cb1404037f410" }, "downloads": -1, "filename": "pyganja-0.0.2.tar.gz", "has_sig": false, "md5_digest": "729bb83f6977318598d553cc7d259bf9", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 31903, "upload_time": "2019-06-11T17:45:59", "upload_time_iso_8601": "2019-06-11T17:45:59.399864Z", "url": "https://files.pythonhosted.org/packages/08/74/cc4014db5ce9b10ca0d9db66ddc10325c0fd6cf1ba1edd74aed7edfe6d20/pyganja-0.0.2.tar.gz", "yanked": false, "yanked_reason": null } ], "0.0.4": [ { "comment_text": "", "digests": { "md5": "1093244105ba1610e247ab73ebd3a88e", "sha256": "acbca7c020a7213ba4fba35aa9aef96fc2edd4884cdb3427f795862f27a570d8" }, "downloads": -1, "filename": "pyganja-0.0.4-py3-none-any.whl", "has_sig": false, "md5_digest": "1093244105ba1610e247ab73ebd3a88e", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 6529, "upload_time": "2019-10-25T14:13:49", "upload_time_iso_8601": "2019-10-25T14:13:49.361690Z", "url": "https://files.pythonhosted.org/packages/e2/60/2adfeabeb29d201e1bf622fd481bed41d1d2ed8d56d196f68b6786559f62/pyganja-0.0.4-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "d5661e59015c7e80fa63584213965642", "sha256": "94c1e47c82d96bf37eb54cd1836475b549315e9ade0d97f0262c0fdec4c6fa19" }, "downloads": -1, "filename": "pyganja-0.0.4.tar.gz", "has_sig": false, "md5_digest": "d5661e59015c7e80fa63584213965642", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5802, "upload_time": "2019-10-25T14:13:50", "upload_time_iso_8601": "2019-10-25T14:13:50.452799Z", "url": "https://files.pythonhosted.org/packages/36/0b/75291dd946df30d8c4f3b4604808bcc05fb41ea5111d4d607e97692ce079/pyganja-0.0.4.tar.gz", "yanked": false, "yanked_reason": null } ], "0.0.5": [ { "comment_text": "", "digests": { "md5": "a0a8d1ea39843e17940b964b1f119a7a", "sha256": "d2880ca3998a10f451c848b2d97e581b91101b1c7c464aa47755a70818c91fb1" }, "downloads": -1, "filename": "pyganja-0.0.5-py3-none-any.whl", "has_sig": false, "md5_digest": "a0a8d1ea39843e17940b964b1f119a7a", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 33482, "upload_time": "2019-10-25T15:40:12", "upload_time_iso_8601": "2019-10-25T15:40:12.496004Z", "url": "https://files.pythonhosted.org/packages/1a/49/dabbc0cc015496ccce2603155a24847d3329c47a0b386311f3b7f498524a/pyganja-0.0.5-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "e8576fa7ed75887b6e060a3c8555a64f", "sha256": "c50f2f521123d436d4acea968cf51c839c2ee5ad4659feeb2a32f09f23495e49" }, "downloads": -1, "filename": "pyganja-0.0.5.tar.gz", "has_sig": false, "md5_digest": "e8576fa7ed75887b6e060a3c8555a64f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 31956, "upload_time": "2019-10-25T15:40:13", "upload_time_iso_8601": "2019-10-25T15:40:13.890783Z", "url": "https://files.pythonhosted.org/packages/2e/6c/dfea5aad4f68719995a06d17f852042dc32b5270cafeac121d149b9dc735/pyganja-0.0.5.tar.gz", "yanked": false, "yanked_reason": null } ], "0.0.6": [ { "comment_text": "", "digests": { "md5": "d113d90252045636786080f438ecc011", "sha256": "01b363d32fc99e2587e9a6bcac321b483b14f62f18b7917636511d5c339a2e1d" }, "downloads": -1, "filename": "pyganja-0.0.6-py3-none-any.whl", "has_sig": false, "md5_digest": "d113d90252045636786080f438ecc011", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 34254, "upload_time": "2019-10-31T14:03:38", "upload_time_iso_8601": "2019-10-31T14:03:38.225682Z", "url": "https://files.pythonhosted.org/packages/ee/23/418c646c693202a88503e0185b07615d8147fec6cf0d9306e5db64a1a198/pyganja-0.0.6-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "60eb3cf13225f54e97ddffec098e2277", "sha256": "e69f8873ae0d76de0a3e684053f9c23d5a6007786c7bdb0d207b5da23664d994" }, "downloads": -1, "filename": "pyganja-0.0.6.tar.gz", "has_sig": false, "md5_digest": "60eb3cf13225f54e97ddffec098e2277", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 33422, "upload_time": "2019-10-31T14:03:39", "upload_time_iso_8601": "2019-10-31T14:03:39.258782Z", "url": "https://files.pythonhosted.org/packages/64/ea/f56f643eff7bfac7c4b0a15aa561699d37d66830527c319e690ada9742cf/pyganja-0.0.6.tar.gz", "yanked": false, "yanked_reason": null } ], "0.0.7": [ { "comment_text": "", "digests": { "md5": "45281da91a9278584d6d64d781021c52", "sha256": "c416f5d29d0febae172638f344a8f2c62025af3e09d1516fb1edaa4a8f3e3da4" }, "downloads": -1, "filename": "pyganja-0.0.7-py3-none-any.whl", "has_sig": false, "md5_digest": "45281da91a9278584d6d64d781021c52", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 34312, "upload_time": "2019-10-31T15:17:49", "upload_time_iso_8601": "2019-10-31T15:17:49.533091Z", "url": "https://files.pythonhosted.org/packages/e6/bc/756d8bdee29d565a378a4f3e648100bf2efcfb1a2676c34ece3290e40fb2/pyganja-0.0.7-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "511b4b2478e92a02c4bcf5eab9f30e61", "sha256": "6c6ba1c4fe4bf5921a4d1640a43eccbda9b960c7738a0ed605458791d1d743f1" }, "downloads": -1, "filename": "pyganja-0.0.7.tar.gz", "has_sig": false, "md5_digest": "511b4b2478e92a02c4bcf5eab9f30e61", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 33462, "upload_time": "2019-10-31T15:17:50", "upload_time_iso_8601": "2019-10-31T15:17:50.588236Z", "url": "https://files.pythonhosted.org/packages/c4/69/df970eba38f689dd1a361edd69ba777b04533d55dec41784ceb5feb55022/pyganja-0.0.7.tar.gz", "yanked": false, "yanked_reason": null } ], "0.0.8": [ { "comment_text": "", "digests": { "md5": "1d4ad18264544cd49dc53754b3f6c5e5", "sha256": "bcf6402344c6b285937876dcd1eccf5e524ce22ae7bda9d9bac82b97c9bc224c" }, "downloads": -1, "filename": "pyganja-0.0.8-py3-none-any.whl", "has_sig": false, "md5_digest": "1d4ad18264544cd49dc53754b3f6c5e5", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 34652, "upload_time": "2019-11-06T13:18:48", "upload_time_iso_8601": "2019-11-06T13:18:48.038852Z", "url": "https://files.pythonhosted.org/packages/6e/6d/bdf5f6322dae0ffb5e889318adc878ff1025fc734d9dccec32e52c97b7ac/pyganja-0.0.8-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "e12d9cfcc2082f79e3678a6ae869fa9d", "sha256": "50c0d7feb85f62e68d501c4767747b3c17657a750f7e81f7e50ab4f2afc662e5" }, "downloads": -1, "filename": "pyganja-0.0.8.tar.gz", "has_sig": false, "md5_digest": "e12d9cfcc2082f79e3678a6ae869fa9d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 33770, "upload_time": "2019-11-06T13:18:49", "upload_time_iso_8601": "2019-11-06T13:18:49.531516Z", "url": "https://files.pythonhosted.org/packages/3a/59/100bd106b38200a375839cecac92136897c39a34132635bf2691615aa3fd/pyganja-0.0.8.tar.gz", "yanked": false, "yanked_reason": null } ], "0.0.9": [ { "comment_text": "", "digests": { "md5": "d36eccd60af1b22ec3d0220e2690d4b1", "sha256": "33cad6beb068062194f6a2d0b06260b84d2b770bfa79765cb642cf9d6d028c98" }, "downloads": -1, "filename": "pyganja-0.0.9-py3-none-any.whl", "has_sig": false, "md5_digest": "d36eccd60af1b22ec3d0220e2690d4b1", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 35661, "upload_time": "2019-12-08T14:00:03", "upload_time_iso_8601": "2019-12-08T14:00:03.750851Z", "url": "https://files.pythonhosted.org/packages/bf/b6/ff5c2e82261198fbae88246a0d5f61bd748b7a7728835c8ceacbc73ff500/pyganja-0.0.9-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "001bcdbe284c29826bb99addd1e61f85", "sha256": "c7fff7f8acbe31666503ce529deb3376419545cdcbe39ad776b937ecc0c73010" }, "downloads": -1, "filename": "pyganja-0.0.9.tar.gz", "has_sig": false, "md5_digest": "001bcdbe284c29826bb99addd1e61f85", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 34652, "upload_time": "2019-12-08T14:00:04", "upload_time_iso_8601": "2019-12-08T14:00:04.773459Z", "url": "https://files.pythonhosted.org/packages/c7/63/f14c3999af0ea48802e2c195ea6975a6f7a70721f4201671520c7ae996b8/pyganja-0.0.9.tar.gz", "yanked": false, "yanked_reason": null } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "babd8418e901254e297100729e509b86", "sha256": "6d18b19372a3fc7f6f19fbc6d52a545fa039f1220f12405c81dac6b3ed076cb3" }, "downloads": -1, "filename": "pyganja-0.0.15-py3-none-any.whl", "has_sig": false, "md5_digest": "babd8418e901254e297100729e509b86", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 45009, "upload_time": "2021-06-09T13:45:14", "upload_time_iso_8601": "2021-06-09T13:45:14.970254Z", "url": "https://files.pythonhosted.org/packages/03/e9/f522fbfcc8f813c084868c848909ad7bd51276105862c5378db35d505613/pyganja-0.0.15-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "5c0d9a7850a89558d2fe3eeb160285f4", "sha256": "884143a1954e385d5e2c5d8621aae59cbf4f4fc049408e9c902f5470729e6ab2" }, "downloads": -1, "filename": "pyganja-0.0.15.tar.gz", "has_sig": false, "md5_digest": "5c0d9a7850a89558d2fe3eeb160285f4", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 45001, "upload_time": "2021-06-09T13:45:16", "upload_time_iso_8601": "2021-06-09T13:45:16.313662Z", "url": "https://files.pythonhosted.org/packages/78/b4/8afdc1ecf16735f9f381620a7e4944fa5bcf63c6eecca317c9e95dcc4b5e/pyganja-0.0.15.tar.gz", "yanked": false, "yanked_reason": null } ], "vulnerabilities": [] }