{ "info": { "author": "Will Breaden Madden", "author_email": "wbm@protonmail.ch", "bugtrack_url": null, "classifiers": [], "description": "propyte\n=======\n\nintroduction\n============\n\nThis is a template Python program and utilities associated.\n\nsetup\n=====\n\n.. code:: bash\n\n sudo pip install propyte\n\nSet up `Festival `__,\n`eSpeak `__, Pico TTS and\n`deep\\_throat `__ for speech\ncapabilities.\n\n.. code:: bash\n\n sudo apt install \\\n festival \\\n espeak \\\n libttspico0 \\\n libttspico-utils \\\n libttspico-data\n sudo pip install deep_throat\n\nSet up Telegram and Telegram messenger CLI for Telegram messaging\ncapabilities.\n\n.. code:: bash\n\n sudo su -\n apt install \\\n libreadline-dev \\\n libconfig-dev \\\n libssl-dev \\\n lua5.2 \\\n liblua5.2-dev \\\n libevent-dev \\\n libjansson-dev \\\n libpython-dev \\\n make\n\n cd /usr/share\n git clone --recursive https://github.com/vysheng/tg.git\n cd tg\n ./configure\n make\n cd ..\n chmod -R 755 tg/\n\nSet up Pylint and Graphviz for UML representations\n\n.. code:: bash\n\n sudo apt install graphviz libgraphviz-dev python-dev\n sudo pip install pylint pygraphviz\n\nsetup LXPLUS with Pushbullet messaging\n======================================\n\nSet up a Pushbullet account, create an access token and store a\nPushbullet token in the file ``~/.pushbullet``. Install Pushbullet on a\nmobile device.\n\n- `Pushbullet\n settings `__\n- `Pushbullet\n Android `__\n\nMiniconda2 is used as an environment. By default, Miniconda is installed\nat ``~/miniconda2`` and the Miniconda2 install path is prepended to PATH\nin ``~/.bashrc``.\n\n.. code:: bash\n\n wget https://repo.continuum.io/miniconda/Miniconda2-latest-Linux-x86_64.sh\n chmod 755 Miniconda2-latest-Linux-x86_64.sh\n ./Miniconda2-latest-Linux-x86_64.sh\n\n export PATH=\"\"${HOME}\"/miniconda2/bin:$PATH\"\n\n.. code:: bash\n\n pip install propyte\n\n.. code:: bash\n\n propyte_alert.py --text=\"hello world\"\n\n``propyte_loop_alert_on_new_users.py``\n======================================\n\nThis script loop monitors for new user connections (using\n``psutil.users()``) and sends an alert (using Pushbullet) is any are\ndetected.\n\nsmuggle\n=======\n\nWeb modules can be imported using the function ``smuggle``. Use this\nfunctionality with due regard to security.\n\n.. code:: python\n\n shijian_test = propyte.smuggle(\n URL = \"https://raw.githubusercontent.com/wdbm/shijian/master/shijian.py\"\n )\n sys_test = propyte.smuggle(\n module_name = \"sys\"\n )\n\nimport\\_ganzfeld, silence\n=========================\n\nThe context manager function ``import_ganzfeld`` can be used to import a\nmodule such that the module is isolated from command line options and\narguments. This can be useful for ROOT.\n\n.. code:: python\n\n with propyte.import_ganzfeld():\n from ROOT import *\n\nThe context manager function ``silence`` can be used to silence some\ncode.\n\nuser interactions\n=================\n\nThere are various functions useful for user interactions:\n``get_keystroke``, ``get_y_or_n``, ``get_input``,\n``get_input_time_limited``, ``pause`` and ``interrogate``.\n\ncommands\n========\n\nThe function ``engage_command`` is available for running Bash commands\nin the foreground or in the background using subprocess.\n\nspeech\n======\n\nThe function ``say`` is available for generating speech using a number\nof different speech programs, including Festival, eSpeak, Pico TTS and\ndeep\\_throat.\n\nnotifications\n=============\n\nTelegram\n========\n\nThis module provides Telegram messaging capabilities. It can send and\nreceive Telegram messages. It does this using Telegram, Telegram CLI and\npytg.\n\nIn order to use Telegram functionality, ensure that both Telegram and\nTelegram CLI are running. The function ``start_messaging_Telegram``\nattempts to launch Telegram CLI if it does not detect it running.\n\n.. code:: bash\n\n /usr/share/tg/bin/telegram-cli \\\n -R \\\n -W \\\n -P 4458 \\\n -k /usr/share/tg/tg-server.pub \\\n --json \\\n --permanent-peer-ids \\\n --permanent-peer-ids \\\n --disable-output \\\n --daemonize\n\nMessages can be sent in a way like the following:\n\n.. code:: python\n\n import propyte\n propyte.start_messaging_Telegram()\n\n propyte.send_message_Telegram(recipient = \"@wbreadenmadden\", text = \"hi\")\n\nMessages receiving can be engaged in the following way:\n\n.. code:: bash\n\n import propyte\n propyte.start_messaging_Telegram()\n propyte.start_receiving_messages_Telegram()\n\nMessages received can be accessed in a number of ways using various\nfunction arguments.\n\n.. code:: python\n\n propyte.get_messages_received_Telegram()\n\n.. code:: python\n\n propyte.get_last_message_received_Telegram()\n\n.. code:: python\n\n propyte.get_text_last_message_received_Telegram()\n\nPushbullet\n==========\n\nMessages can be sent in ways like the following:\n\n.. code:: python\n\n import propyte\n propyte.start_messaging_Pushbullet()\n\n propyte.send_message_Pushbullet(\n recipient = \"alice@neutronmail.ch\",\n title = \"alert\",\n text = \"This is an alert.\"\n )\n\n propyte.send_message_Pushbullet(\n recipients = [\"alice@neutronmail.ch\"],\n title = \"alert\",\n text = \"This is an alert.\"\n )\n\n propyte.send_message_Pushbullet(\n recipient = \"alice@neutronmail.ch\",\n title = \"price alert\",\n filepath = \"prices.png\"\n )\n\npropyte\\_loop\\_alert\\_on\\_new\\_users.py\n---------------------------------------\n\nThis script sends Pushbullet alerts on detection of new users or users\nchanges.\n\nUML\n===\n\nUML diagrams of a Python project can be generated using Pylint and\nGraphviz. This can be done by executing the Bash script ``UML.sh`` in\nthe working directory of the project. This executes the following\ncommands:\n\n.. code:: bash\n\n project_name=\"${PWD##*/}\"\n pyreverse -my -A -o png -p ${project_name} **.py\n\nThis should generate two images, ``classes_propyte.png`` and\n``packages_propyte.png``. The classes image is a representation of the\nclasses of the project, their respective data attributes (with types),\ntheir respective methods and their inheritances. The packages image is a\nrepresentation of the module dependencies of the project.\n", "description_content_type": null, "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/wdbm/propyte", "keywords": "", "license": "GPLv3", "maintainer": "", "maintainer_email": "", "name": "propyte", "package_url": "https://pypi.org/project/propyte/", "platform": "", "project_url": "https://pypi.org/project/propyte/", "project_urls": { "Homepage": "https://github.com/wdbm/propyte" }, "release_url": "https://pypi.org/project/propyte/2018.3.14.1447/", "requires_dist": null, "requires_python": "", "summary": "template Python program", "version": "2018.3.14.1447" }, "last_serial": 3669181, "releases": { "2015.11.25.1340": [ { "comment_text": "", "digests": { "md5": "40f8c5347a01b6aee4fd0a1c5e5714c8", "sha256": "1d32a4962185c8ef4b8625371fadb740a7c68d653dfc54c36ac779a60ba1c9af" }, "downloads": -1, "filename": "propyte-2015.11.25.1340.tar.gz", "has_sig": false, "md5_digest": "40f8c5347a01b6aee4fd0a1c5e5714c8", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 15977, "upload_time": "2015-12-02T14:45:29", "url": "https://files.pythonhosted.org/packages/79/1d/b0fa2626f3ec9c15a862582e632ace43506dc7acf47c3addceb1d5e689d2/propyte-2015.11.25.1340.tar.gz" } ], "2015.12.20.2242": [ { "comment_text": "", "digests": { "md5": "50627e81e4b08b87208bbe8c8afec379", "sha256": "841d8451b8e56975153bdff624bcb3637f6b653507e7621a45d810cf28b8c5ac" }, "downloads": -1, "filename": "propyte-2015.12.20.2242.tar.gz", "has_sig": false, "md5_digest": "50627e81e4b08b87208bbe8c8afec379", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 15987, "upload_time": "2015-12-20T22:45:36", "url": "https://files.pythonhosted.org/packages/a0/90/9c2be4c1a83fa6a5fa88f86a874bfbad96d29c8d17350d1fa2e513deede3/propyte-2015.12.20.2242.tar.gz" } ], "2016.1.12.1901": [ { "comment_text": "", "digests": { "md5": "7a3264ee279ea1dbe2378ee7ebd9c8b8", "sha256": "001e7f650b2ae699ab3a1cfae4e58b88ae2c2582d3e9005b01c384d9d90bcc90" }, "downloads": -1, "filename": "propyte-2016.1.12.1901.tar.gz", "has_sig": false, "md5_digest": "7a3264ee279ea1dbe2378ee7ebd9c8b8", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 15889, "upload_time": "2016-01-12T19:35:03", "url": "https://files.pythonhosted.org/packages/6a/ff/4749fd85d01da631c7c85e4c058b8db754805430a2e42607a0f539525564/propyte-2016.1.12.1901.tar.gz" } ], "2016.4.22.1545": [ { "comment_text": "", "digests": { "md5": "0c0415200652a5183141875e7aeeca52", "sha256": "3a56fecf4d0642f0eb325aab124158c0e1408e229e5c9c6237e5742786ee0a1d" }, "downloads": -1, "filename": "propyte-2016.4.22.1545.tar.gz", "has_sig": false, "md5_digest": "0c0415200652a5183141875e7aeeca52", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 15886, "upload_time": "2016-04-22T16:10:03", "url": "https://files.pythonhosted.org/packages/1c/2c/0843cbc5f036df03a0ad8bd78753060c646dbaf51ebf862a75de07cd0877/propyte-2016.4.22.1545.tar.gz" } ], "2016.4.30.1022": [ { "comment_text": "", "digests": { "md5": "8f65b7f16cb05f45860969b137dddc0c", "sha256": "ffbaaca2791332d1db5777a9ff45857ff39e062b0dbff7e9e0507f2e7730b8c4" }, "downloads": -1, "filename": "propyte-2016.4.30.1022.tar.gz", "has_sig": false, "md5_digest": "8f65b7f16cb05f45860969b137dddc0c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 16062, "upload_time": "2016-04-30T10:27:45", "url": "https://files.pythonhosted.org/packages/4a/b8/0d923fbb0a7f5e0d2ae720a3ff2dbede6c747f42f09f1553ca3b3e24411e/propyte-2016.4.30.1022.tar.gz" } ], "2016.5.4.1217": [ { "comment_text": "", "digests": { "md5": "0ddbe417b7b650e283c7ccb76ee39022", "sha256": "a12aa4051550138faf79a1a0c5096ce583b226182904ba5986174c05da3037b9" }, "downloads": -1, "filename": "propyte-2016.5.4.1217.tar.gz", "has_sig": false, "md5_digest": "0ddbe417b7b650e283c7ccb76ee39022", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 16089, "upload_time": "2016-05-04T12:21:38", "url": "https://files.pythonhosted.org/packages/3b/69/fa5dea8ed690a85cbecbf545b72d64cee421fdddbb9e5d0b1dc98fc51b95/propyte-2016.5.4.1217.tar.gz" } ], "2016.6.10.1539": [ { "comment_text": "", "digests": { "md5": "1ab533d9a667bb77711b25cc54b6fca8", "sha256": "1ef9b446e2b72ef1190febe267c635417a69f0ef22be36c706eef5d584fddd60" }, "downloads": -1, "filename": "propyte-2016.6.10.1539.tar.gz", "has_sig": false, "md5_digest": "1ab533d9a667bb77711b25cc54b6fca8", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 16354, "upload_time": "2016-06-10T15:42:58", "url": "https://files.pythonhosted.org/packages/cc/d1/2e1d4e299a823a8491282f6e19329841636a3e0be9641e92377b7fe825d6/propyte-2016.6.10.1539.tar.gz" } ], "2016.7.11.1839": [ { "comment_text": "", "digests": { "md5": "0e76ca99f30870a882dbe03d87f89958", "sha256": "04d30bc22a10c6b40d55532483e67cbe55af2e8958654e6ead53bf751c336faf" }, "downloads": -1, "filename": "propyte-2016.7.11.1839.tar.gz", "has_sig": false, "md5_digest": "0e76ca99f30870a882dbe03d87f89958", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 16431, "upload_time": "2016-07-11T18:56:42", "url": "https://files.pythonhosted.org/packages/18/53/60f626e6c360b66148ee160df5c65fa9b9f30cf45a8c28ecbde8069bc861/propyte-2016.7.11.1839.tar.gz" } ], "2017.1.12.1505": [ { "comment_text": "", "digests": { "md5": "d2af11f0742f99925ca013f4ce1c25f2", "sha256": "c5964098fde5865d32b8be642d539013ab2e1a74da6a7d250ecf169dd3c36edb" }, "downloads": -1, "filename": "propyte-2017.1.12.1505.tar.gz", "has_sig": false, "md5_digest": "d2af11f0742f99925ca013f4ce1c25f2", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 16976, "upload_time": "2017-01-12T15:07:10", "url": "https://files.pythonhosted.org/packages/19/7c/51f9c7564433febe3e81e8a03da04f70a746d6570089312170bb7b16742a/propyte-2017.1.12.1505.tar.gz" } ], "2017.1.12.1514": [ { "comment_text": "", "digests": { "md5": "d36f00939f560a67030d95aa28949634", "sha256": "503ea28c914a334fa0228d3401f7d49a21460ed6da1651a039e888318406c6d0" }, "downloads": -1, "filename": "propyte-2017.1.12.1514.tar.gz", "has_sig": false, "md5_digest": "d36f00939f560a67030d95aa28949634", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 17018, "upload_time": "2017-01-12T15:30:32", "url": "https://files.pythonhosted.org/packages/10/d5/88739f4299d82b16e3a575624adf0baa77e29fb84cfce941ab191a8e9178/propyte-2017.1.12.1514.tar.gz" } ], "2017.1.16.1645": [ { "comment_text": "", "digests": { "md5": "2d9e7dbe9845edcd4c9f1e085ddc80ed", "sha256": "20471e43341e407b19ccddf47553c13d1a938fa74b98cca6b4d666cf4dc8c4b2" }, "downloads": -1, "filename": "propyte-2017.1.16.1645.tar.gz", "has_sig": false, "md5_digest": "2d9e7dbe9845edcd4c9f1e085ddc80ed", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 16989, "upload_time": "2017-01-16T16:47:03", "url": "https://files.pythonhosted.org/packages/b7/fb/89093ceae3ce8e4afb0d595c7464b1c4dd56d6195a3b0235292dd9d70b4b/propyte-2017.1.16.1645.tar.gz" } ], "2017.1.30.1627": [ { "comment_text": "", "digests": { "md5": "0c849a5bbd4c13daeed9ec502d4c465f", "sha256": "e9a88bb0d408015f9de486acbc2600764a408e5bd1ecc8d513de6d8518683f31" }, "downloads": -1, "filename": "propyte-2017.1.30.1627.tar.gz", "has_sig": false, "md5_digest": "0c849a5bbd4c13daeed9ec502d4c465f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 16980, "upload_time": "2017-01-30T16:28:53", "url": "https://files.pythonhosted.org/packages/96/be/9a85444c41a62bd6d45948d0e6b0c46a4414f50c81898bb612782e9e3429/propyte-2017.1.30.1627.tar.gz" } ], "2017.2.24.245": [ { "comment_text": "", "digests": { "md5": "1dbd321ebde7d270d94b04ec39177390", "sha256": "84f5affab90dcee6e161f841c7f3a147f39e0ceec757c397de6ed4f41a014959" }, "downloads": -1, "filename": "propyte-2017.2.24.245.tar.gz", "has_sig": false, "md5_digest": "1dbd321ebde7d270d94b04ec39177390", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 19368, "upload_time": "2017-02-24T02:47:31", "url": "https://files.pythonhosted.org/packages/ef/ed/ec54c1277bc847d633142baba113ed49af21172bf048245fe675965300c0/propyte-2017.2.24.245.tar.gz" } ], "2017.2.9.2332": [ { "comment_text": "", "digests": { "md5": "a7101b3f1acc265df49e10bf36c11834", "sha256": "b28e975db1d3a7ca06982bf74e5dba45241bad61e195fa9c180a11f0493dd167" }, "downloads": -1, "filename": "propyte-2017.2.9.2332.tar.gz", "has_sig": false, "md5_digest": "a7101b3f1acc265df49e10bf36c11834", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 17102, "upload_time": "2017-02-22T14:40:52", "url": "https://files.pythonhosted.org/packages/04/ca/f4e5f329bc176849eb44e3ce7fdd60bd13a06a608d7f5733603b60f14c74/propyte-2017.2.9.2332.tar.gz" } ], "2017.3.10.1658": [ { "comment_text": "", "digests": { "md5": "383c0ee76bf821da35a0d02d93e6e3f9", "sha256": "03f624a7029c5690664e40500ad7eab02c0bb00acc435a236dc8f7ce9ecbf9cf" }, "downloads": -1, "filename": "propyte-2017.3.10.1658.tar.gz", "has_sig": false, "md5_digest": "383c0ee76bf821da35a0d02d93e6e3f9", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 19484, "upload_time": "2017-03-10T17:11:54", "url": "https://files.pythonhosted.org/packages/ce/10/30dea678aabc1f3c1a0361f3e97fb9815f307536731f8f5c43e1a650e049/propyte-2017.3.10.1658.tar.gz" } ], "2017.3.20.2051": [ { "comment_text": "", "digests": { "md5": "f4a06c9ec493d3d6920b245c67654b30", "sha256": "c9327ee31b4c95941c0465732224bc24dadca471d49b2fc0fc6c61d64eb647fd" }, "downloads": -1, "filename": "propyte-2017.3.20.2051.tar.gz", "has_sig": false, "md5_digest": "f4a06c9ec493d3d6920b245c67654b30", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 19575, "upload_time": "2017-03-20T20:54:23", "url": "https://files.pythonhosted.org/packages/be/17/4a5ea845345bdb090d6bf56715efc62c062058b551a858d73a7b17378a78/propyte-2017.3.20.2051.tar.gz" } ], "2017.4.18.1521": [ { "comment_text": "", "digests": { "md5": "8ecccfd5fe3885f6daa5d6aef9631618", "sha256": "f76f6a847978101ec2ff2e21ee24bd7ccc4c7b1800a26f60fbd0b6d9faa1ae2d" }, "downloads": -1, "filename": "propyte-2017.4.18.1521.tar.gz", "has_sig": false, "md5_digest": "8ecccfd5fe3885f6daa5d6aef9631618", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 19726, "upload_time": "2017-04-18T15:23:14", "url": "https://files.pythonhosted.org/packages/9b/40/8efc3c5383ccd9ba9ddd7c8567b64e90a6b4e55f03979a350c8628436fc6/propyte-2017.4.18.1521.tar.gz" } ], "2017.4.20.1654": [ { "comment_text": "", "digests": { "md5": "d04b73e063ab4c1a85712a63b4f61225", "sha256": "7ccda08cc436c692d5e074ac9eceda766971e01afa91727bc0e9954e0820ef24" }, "downloads": -1, "filename": "propyte-2017.4.20.1654.tar.gz", "has_sig": false, "md5_digest": "d04b73e063ab4c1a85712a63b4f61225", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 20678, "upload_time": "2017-04-20T16:55:51", "url": "https://files.pythonhosted.org/packages/f4/a6/9a34475e11b3197d5baec2f3f5d30a55bfbbc172513aae2e03b6d1d10fd7/propyte-2017.4.20.1654.tar.gz" } ], "2017.4.20.1658": [ { "comment_text": "", "digests": { "md5": "2b9b5c67f9be6bd691377b9edd3d8f4c", "sha256": "4ad73c53d468b50ef76ffeda4a1b1f437fc33dfeb6c0f279e1b4c284160abb8c" }, "downloads": -1, "filename": "propyte-2017.4.20.1658.tar.gz", "has_sig": false, "md5_digest": "2b9b5c67f9be6bd691377b9edd3d8f4c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 20533, "upload_time": "2017-04-20T16:59:52", "url": "https://files.pythonhosted.org/packages/24/24/7631f86bb55bfc3173611018949750e36d5d22fac0981809c5d38c54ff47/propyte-2017.4.20.1658.tar.gz" } ], "2017.4.20.846": [ { "comment_text": "", "digests": { "md5": "e5213ad22a31097d2ee19325c2d43118", "sha256": "79c067386a41847ec47f7389f3b2e33f2f91a373817db6f1bd00b143232ebb62" }, "downloads": -1, "filename": "propyte-2017.4.20.846.tar.gz", "has_sig": false, "md5_digest": "e5213ad22a31097d2ee19325c2d43118", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 20249, "upload_time": "2017-04-20T08:53:31", "url": "https://files.pythonhosted.org/packages/f3/bb/ce2754ebce0519b8ad0fc607fb294733ed24254bc3ac6857d2be1f9c7eed/propyte-2017.4.20.846.tar.gz" } ], "2017.5.9.2002": [ { "comment_text": "", "digests": { "md5": "cbe6c6ab76258023e9e8393719c8848a", "sha256": "3e9fc4270fe0aa077f5022ea6e735a72197444ab65f211d521748ef557a45e5c" }, "downloads": -1, "filename": "propyte-2017.5.9.2002.tar.gz", "has_sig": false, "md5_digest": "cbe6c6ab76258023e9e8393719c8848a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 20891, "upload_time": "2017-05-09T20:05:22", "url": "https://files.pythonhosted.org/packages/75/8e/291d5b063d4077e7fea55f268e6efb302c9deaffaa0ab7f6b13caedbf07b/propyte-2017.5.9.2002.tar.gz" } ], "2018.1.18.1628": [ { "comment_text": "", "digests": { "md5": "c652d432e139f48c1d36817a5fd3279a", "sha256": "70b994201d48bbaab6913a3ef64d9ab9826f9cf6df390c43a52503b99ccc439f" }, "downloads": -1, "filename": "propyte-2018.1.18.1628.tar.gz", "has_sig": false, "md5_digest": "c652d432e139f48c1d36817a5fd3279a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 21379, "upload_time": "2018-01-18T16:56:54", "url": "https://files.pythonhosted.org/packages/da/2f/99e7581dc87b2f98b7fb134651cf4187f2c50de34c453e149e204f88cdad/propyte-2018.1.18.1628.tar.gz" } ], "2018.1.9.1816": [ { "comment_text": "", "digests": { "md5": "1d67c94884aa8504b83e485b238a6741", "sha256": "919a460a31c85e368c51989d89bb9f265346f94f1613502c268a750233f67b2b" }, "downloads": -1, "filename": "propyte-2018.1.9.1816.tar.gz", "has_sig": false, "md5_digest": "1d67c94884aa8504b83e485b238a6741", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 20916, "upload_time": "2018-01-09T18:22:10", "url": "https://files.pythonhosted.org/packages/ca/28/b0a5f21e33b81bf3d15c4d3a38626ababbff8213b79804f607a87cf180f1/propyte-2018.1.9.1816.tar.gz" } ], "2018.2.27.1650": [ { "comment_text": "", "digests": { "md5": "7911cc01ca8e36aeabbca4e33ab2a8c1", "sha256": "7d5befcb87707abf32d758b93807d0e05089b83b66ca2f44a3e1d4f6fdf2f7b3" }, "downloads": -1, "filename": "propyte-2018.2.27.1650.tar.gz", "has_sig": false, "md5_digest": "7911cc01ca8e36aeabbca4e33ab2a8c1", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 21645, "upload_time": "2018-02-27T16:53:16", "url": "https://files.pythonhosted.org/packages/7a/c5/29aae3f6774453ffc75f0c99ea2dc8904913bd854d6a8da2f61788fb99d7/propyte-2018.2.27.1650.tar.gz" } ], "2018.2.28.136": [ { "comment_text": "", "digests": { "md5": "3243c0ea57def6d8a0fbc6e788c159df", "sha256": "10fd55c6b41a6ba881562c67d64bebed87612ae38d5ccfeb04af379e96edbc5a" }, "downloads": -1, "filename": "propyte-2018.2.28.136.tar.gz", "has_sig": false, "md5_digest": "3243c0ea57def6d8a0fbc6e788c159df", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 21756, "upload_time": "2018-02-28T01:38:49", "url": "https://files.pythonhosted.org/packages/f5/7b/e8d8edb9708cc8eeddcb0c3c8ecc9bf9011044e58efa32a3d8180f291e84/propyte-2018.2.28.136.tar.gz" } ], "2018.3.1.2321": [ { "comment_text": "", "digests": { "md5": "f03c018eb147d51776ab5e2dc4da22ed", "sha256": "88f8e2c6536d99fd3801f6ea84a6cd200532a167fe9dc0ab76db81ef70400581" }, "downloads": -1, "filename": "propyte-2018.3.1.2321.tar.gz", "has_sig": false, "md5_digest": "f03c018eb147d51776ab5e2dc4da22ed", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 21780, "upload_time": "2018-03-01T23:23:13", "url": "https://files.pythonhosted.org/packages/ba/68/dcbcb7d6905d5221409d0002eb76ccd749ebe122104bb2af104928fb3613/propyte-2018.3.1.2321.tar.gz" } ], "2018.3.14.1447": [ { "comment_text": "", "digests": { "md5": "fcfd61bfbb14a03c64fcb9867ceb1852", "sha256": "4b138377dc1779ec9eadde897803438fd7bc924188463fab49d0cc5e230acd74" }, "downloads": -1, "filename": "propyte-2018.3.14.1447.tar.gz", "has_sig": false, "md5_digest": "fcfd61bfbb14a03c64fcb9867ceb1852", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 22027, "upload_time": "2018-03-14T14:52:05", "url": "https://files.pythonhosted.org/packages/b5/cf/195ef250afb7898960f15872412733c5e04831767139781a7a2510469a3f/propyte-2018.3.14.1447.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "fcfd61bfbb14a03c64fcb9867ceb1852", "sha256": "4b138377dc1779ec9eadde897803438fd7bc924188463fab49d0cc5e230acd74" }, "downloads": -1, "filename": "propyte-2018.3.14.1447.tar.gz", "has_sig": false, "md5_digest": "fcfd61bfbb14a03c64fcb9867ceb1852", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 22027, "upload_time": "2018-03-14T14:52:05", "url": "https://files.pythonhosted.org/packages/b5/cf/195ef250afb7898960f15872412733c5e04831767139781a7a2510469a3f/propyte-2018.3.14.1447.tar.gz" } ] }