{ "info": { "author": "Josua Krause", "author_email": "josua.krause@gmail.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 4 - Beta", "Intended Audience :: Information Technology", "Intended Audience :: Science/Research", "License :: OSI Approved :: MIT License", "Programming Language :: Python :: 2" ], "description": "parcell\n=======\n\n``parcell`` helps you to keep your work on your machine even when it\nneeds to be executed remotely. This is done by sending your project's\ncode to one of your beefy worker servers, running the code, and sending\nthe results back. Multiple tasks can be run in parallel and on different\nservers to balance the load. You can keep improving your code on your\nmachine without lag and get notified when submitted tasks have been\ncompleted. No setup on the server side is required.\n\nGetting started\n---------------\n\nInstall the project via:\n\n.. code:: bash\n\n pip install parcell\n\nChoose a working directory for your projects and ``cd`` into it.\n\nNow run\n\n.. code:: bash\n\n parcell add PROJECTNAME\n\nwhere ``PROJECTNAME`` is the name of the project you want to create.\nFollow all instructions until the script creates your project.\nIf the command cannot be found try restarting the terminal or use\n`python -m parcell ...` instead.\n\nThen run\n\n.. code:: bash\n\n parcell start\n\nto start the web interface. Note that you can avoid retyping your passwords\nfor different servers using the ``--reuse-pw`` command line argument in\neither command (given all the servers accept the same password).\nOnce the web interface is started you can interact with your project.\nWhen finished you can stop ``parcell`` by typing ``quit`` in the\nterminal or pressing ``CTRL-C``. Typing ``restart`` restarts the web interface.\n\nUse\n\n.. code:: bash\n\n parcell -h\n\nor\n\n.. code:: bash\n\n parcell COMMAND -h\n\nto get further information about the command line capabilities.\n\nUninstalling\n------------\n\nSince ``parcell`` adds local and remote files please run\n\n.. code:: bash\n\n parcell delete\n\nbefore uninstalling via ``pip``. This makes sure that all local\nand remote files are removed and all running tasks are stopped.\nThe command can also be used to remove specific\nservers. Note that in order to be able to clean files on the server side\nit must be possible to connect to the server at the time of removal.\n\nContributing\n------------\n\nPull requests are highly appreciated :) Also, feel free to open\n`issues `__ for any\nquestions or bugs you may encounter.\n\nIf you want to work on the code of ``parcell``. Set the project up as follows:\n\n.. code:: bash\n\n git clone https://github.com/JosuaKrause/parcell.git\n cd parcell\n git submodule update --init --recursive\n pip install -e .\n\nThis way you need to call ``parcell`` via:\n\n.. code:: bash\n\n python -m parcell ...\n\n\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/JosuaKrause/parcell/", "keywords": "parcell,remote,execution,project,management,web,UI", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "parcell", "package_url": "https://pypi.org/project/parcell/", "platform": "", "project_url": "https://pypi.org/project/parcell/", "project_urls": { "Homepage": "https://github.com/JosuaKrause/parcell/" }, "release_url": "https://pypi.org/project/parcell/0.2.3/", "requires_dist": [ "pexpect", "quick-cache", "quick-server", "tej" ], "requires_python": "", "summary": "UI for local development of server executed projects.", "version": "0.2.3" }, "last_serial": 2555170, "releases": { "0.1.0": [ { "comment_text": "", "digests": { "md5": "891b526de1670ab71f9df47280ce008c", "sha256": "3b1f0dfbc87b95e5bd6cc320f64b030189c9e0fa5b8a57b27072ce3db6302e3c" }, "downloads": -1, "filename": "parcell-0.1.0-py2-none-any.whl", "has_sig": false, "md5_digest": "891b526de1670ab71f9df47280ce008c", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 893299, "upload_time": "2016-12-23T05:39:30", "url": "https://files.pythonhosted.org/packages/e9/91/bd6ea1831eaa02f104834d45542fa4c8a483db08c4974ddc7a97c2ac3ac7/parcell-0.1.0-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "96b240106e6c5d3655fd49de6b8bc329", "sha256": "0d964b97bef4811033db1340661de1e745a65e726e8198a0c9a0671c0e1f8dbc" }, "downloads": -1, "filename": "parcell-0.1.0.tar.gz", "has_sig": false, "md5_digest": "96b240106e6c5d3655fd49de6b8bc329", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 872083, "upload_time": "2016-12-23T05:39:34", "url": "https://files.pythonhosted.org/packages/9d/74/477bd611eeef6716023504896001864e22d32cec224f7aa35c01fd414e38/parcell-0.1.0.tar.gz" } ], "0.1.1": [ { "comment_text": "", "digests": { "md5": "885b6d714f8f298dd558ffa7479c55c5", "sha256": "71511428faca78d19f4554b974f4f93d7791e48b65a4a5d5cfab61219ccbac29" }, "downloads": -1, "filename": "parcell-0.1.1-py2-none-any.whl", "has_sig": false, "md5_digest": "885b6d714f8f298dd558ffa7479c55c5", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 894723, "upload_time": "2016-12-23T10:30:31", "url": "https://files.pythonhosted.org/packages/68/d3/0640fbdb19f8be7db69010860e45e9a13ba22dc87a18aa800e2f60d2b635/parcell-0.1.1-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "5351ec9050ec5118628a1c140350c130", "sha256": "a8df7ad55822edbe9feef1f7d5a09bba3a704b8e69e2fb38ef103a2e09140f73" }, "downloads": -1, "filename": "parcell-0.1.1.tar.gz", "has_sig": false, "md5_digest": "5351ec9050ec5118628a1c140350c130", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 873336, "upload_time": "2016-12-23T10:30:35", "url": "https://files.pythonhosted.org/packages/cf/0b/0a87323db23dc9793535a172003454dfe3c78fcc8b55c8dfad715dc9e1de/parcell-0.1.1.tar.gz" } ], "0.1.2": [ { "comment_text": "", "digests": { "md5": "ff116d3454f4a44f039cbc586a03861c", "sha256": "3a219d65129e761355c8ed80703119773cf8fa0c67f8c97563b3a3fa2517c2b5" }, "downloads": -1, "filename": "parcell-0.1.2-py2-none-any.whl", "has_sig": false, "md5_digest": "ff116d3454f4a44f039cbc586a03861c", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 895352, "upload_time": "2016-12-23T19:51:44", "url": "https://files.pythonhosted.org/packages/8f/ca/8f5c9c5fe2935ee210adac950db5462c126cbf17c61f9b842bb1bc77bd5a/parcell-0.1.2-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "e84da673790a1461efed29cbbb895056", "sha256": "63c12e6007ff72282c63e886c671ea7a9c13e54aeffcd2768e6c76f89602d566" }, "downloads": -1, "filename": "parcell-0.1.2.tar.gz", "has_sig": false, "md5_digest": "e84da673790a1461efed29cbbb895056", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 873930, "upload_time": "2016-12-23T19:51:49", "url": "https://files.pythonhosted.org/packages/92/60/ce968bb26414aca209f9a7e6e150bcb9e5ec3ed364b66ef099fc4c22e426/parcell-0.1.2.tar.gz" } ], "0.1.3": [ { "comment_text": "", "digests": { "md5": "b73eda4e4e36f7ba0694e4312c21d851", "sha256": "7038de86a7af6a6024bff13993f3fec132409be8f4a950d42bd481fec314e8f4" }, "downloads": -1, "filename": "parcell-0.1.3-py2-none-any.whl", "has_sig": false, "md5_digest": "b73eda4e4e36f7ba0694e4312c21d851", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 895368, "upload_time": "2016-12-25T00:40:53", "url": "https://files.pythonhosted.org/packages/90/df/fb419052200c6565e79b7329d2480b49430658bd86292eb302e36825b963/parcell-0.1.3-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "3379a3aefa144e16ae30f5ff77e889fa", "sha256": "26b0b5a1eae4f099e39e281da1984a3527cdf412cd162604d701ae4a91ecb8e2" }, "downloads": -1, "filename": "parcell-0.1.3.tar.gz", "has_sig": false, "md5_digest": "3379a3aefa144e16ae30f5ff77e889fa", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 873949, "upload_time": "2016-12-25T00:40:56", "url": "https://files.pythonhosted.org/packages/36/82/78f24a385d1ecfba0ce3e8cbd44683f3b63605391d51e3eb4e6b4237f213/parcell-0.1.3.tar.gz" } ], "0.1.4": [ { "comment_text": "", "digests": { "md5": "a562955b9ef0726143d818e092014dd9", "sha256": "a1f4bccc9b5fa3a2100d5948485dc7026792031acaee41696381656663d56c81" }, "downloads": -1, "filename": "parcell-0.1.4-py2-none-any.whl", "has_sig": false, "md5_digest": "a562955b9ef0726143d818e092014dd9", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 895480, "upload_time": "2016-12-25T00:56:57", "url": "https://files.pythonhosted.org/packages/47/dc/76b2a99756a346c495d2faf194687d1bec0fe4dcd4ac65e211b1f5a88326/parcell-0.1.4-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "bc0892d38d6809a797248c4a9262691b", "sha256": "a3e76b6e6c6bac824b17bdc5e216713b900e099e38f9fdf20f900a2385b16a92" }, "downloads": -1, "filename": "parcell-0.1.4.tar.gz", "has_sig": false, "md5_digest": "bc0892d38d6809a797248c4a9262691b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 874049, "upload_time": "2016-12-25T00:56:59", "url": "https://files.pythonhosted.org/packages/10/04/5e868c9667d18b90bc5dc078eaf2085981831cc94f375aabc45823af0070/parcell-0.1.4.tar.gz" } ], "0.1.5": [ { "comment_text": "", "digests": { "md5": "9f285759fe07e9b700c9fee161f1ee89", "sha256": "c7f32ac9d5e79b9d4f584cdbdab64b83e7dc26c6ca7e6f48be26545cdf8ed6db" }, "downloads": -1, "filename": "parcell-0.1.5-py2-none-any.whl", "has_sig": false, "md5_digest": "9f285759fe07e9b700c9fee161f1ee89", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 895624, "upload_time": "2016-12-25T01:31:53", "url": "https://files.pythonhosted.org/packages/c4/5f/d91e4c7e8120bb2ee7878e702c8c40c423de7ba99a1aba604118290f3e07/parcell-0.1.5-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "c8f7867df36b7dafd6a6fcf0353b1d53", "sha256": "f6dc94e9115a99300f67c4256800d67848e96c37fd2760a5124561518b9643ec" }, "downloads": -1, "filename": "parcell-0.1.5.tar.gz", "has_sig": false, "md5_digest": "c8f7867df36b7dafd6a6fcf0353b1d53", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 874181, "upload_time": "2016-12-25T01:31:55", "url": "https://files.pythonhosted.org/packages/df/91/5338c7e662dacf8b788a0a38f5fb1243a4f519773e8584c531415f795baa/parcell-0.1.5.tar.gz" } ], "0.2.0": [ { "comment_text": "", "digests": { "md5": "f98c596e2be213b6123f31a731fc87d3", "sha256": "17c7d3c7115687b03d49d803861bf27180f67b291803a8df9bbfdf4b65f943ac" }, "downloads": -1, "filename": "parcell-0.2.0-py2-none-any.whl", "has_sig": false, "md5_digest": "f98c596e2be213b6123f31a731fc87d3", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 898888, "upload_time": "2016-12-28T16:19:24", "url": "https://files.pythonhosted.org/packages/85/c7/d2d0d9504bd412532fa503e294e9d9d0d87cee5f6b7cef993d59b883e335/parcell-0.2.0-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "1af433852f6405dc899fce291adbcd85", "sha256": "e809c950237039354bcc54c09806e31fb45dffadd737f4d7b02786a1fc79b834" }, "downloads": -1, "filename": "parcell-0.2.0.tar.gz", "has_sig": false, "md5_digest": "1af433852f6405dc899fce291adbcd85", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 878213, "upload_time": "2016-12-28T16:19:26", "url": "https://files.pythonhosted.org/packages/38/01/a6e2b9cd32e29e6a84b90778fb49d903fdac34a6542114d96c7a2de45a2f/parcell-0.2.0.tar.gz" } ], "0.2.1": [ { "comment_text": "", "digests": { "md5": "946922a80c0c90ad5deb43d5ddfbdb1a", "sha256": "6d1685856fff155fdd445b25fdaa8d838c5f185a8dcbd83044229d13f5cd71fa" }, "downloads": -1, "filename": "parcell-0.2.1-py2-none-any.whl", "has_sig": false, "md5_digest": "946922a80c0c90ad5deb43d5ddfbdb1a", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 900759, "upload_time": "2017-01-05T05:10:15", "url": "https://files.pythonhosted.org/packages/ab/b3/d9625165bf1260a64883ca38d74528d41a95bd9e9dbaa16f9a1bd1302de2/parcell-0.2.1-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "f9688547db6e7342486a25efbfbbe007", "sha256": "180a14962195acfc68925b5a04f8b55f0e6b5f8d6ed7036b588c6b3e7b14f1a8" }, "downloads": -1, "filename": "parcell-0.2.1.tar.gz", "has_sig": false, "md5_digest": "f9688547db6e7342486a25efbfbbe007", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 880687, "upload_time": "2017-01-05T05:10:22", "url": "https://files.pythonhosted.org/packages/f3/ea/baab216f6db06e5c3088c5ea43865f0caafbc2a43fa8a2a5ad18923176c3/parcell-0.2.1.tar.gz" } ], "0.2.2": [ { "comment_text": "", "digests": { "md5": "943c7bfc3b1d9e21973350dfa93a7dc5", "sha256": "2438df538368615910353f02e1c6a09bfdc140b60494bc3f030e464bbc67c734" }, "downloads": -1, "filename": "parcell-0.2.2-py2-none-any.whl", "has_sig": false, "md5_digest": "943c7bfc3b1d9e21973350dfa93a7dc5", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 900769, "upload_time": "2017-01-05T05:59:26", "url": "https://files.pythonhosted.org/packages/49/61/1877b782924717fdd846bbd337fe1a9750bd90476b1d60e0cb3878ab3f5a/parcell-0.2.2-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "da224b942bb104244fbd421ceaf3a01f", "sha256": "68641868be8546b49563d6b23e6a63abda0b89289346014a0e71382851a13705" }, "downloads": -1, "filename": "parcell-0.2.2.tar.gz", "has_sig": false, "md5_digest": "da224b942bb104244fbd421ceaf3a01f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 880625, "upload_time": "2017-01-05T05:59:30", "url": "https://files.pythonhosted.org/packages/5c/a7/b53121b48facc2a4a8b50bf36cd97452e4b41843b68907d047e3495e1b16/parcell-0.2.2.tar.gz" } ], "0.2.3": [ { "comment_text": "", "digests": { "md5": "94d74e3bb0bee3c02fb619398ab47665", "sha256": "e29ff6effcbfb1d251e486dd6f85da84fd7360d7808d08eb855b2f459a1ef896" }, "downloads": -1, "filename": "parcell-0.2.3-py2-none-any.whl", "has_sig": false, "md5_digest": "94d74e3bb0bee3c02fb619398ab47665", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 900775, "upload_time": "2017-01-05T06:06:26", "url": "https://files.pythonhosted.org/packages/42/97/ae7c2606c84dcfd92181804b29c37a9ca82883701d0dff0367fbc2d938dc/parcell-0.2.3-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "fd7024963b53432dffaf7104c869dc88", "sha256": "55dda1d2d8eda430932f70566c7507982d0c33ede6e0cecfbf31d614f64885b9" }, "downloads": -1, "filename": "parcell-0.2.3.tar.gz", "has_sig": false, "md5_digest": "fd7024963b53432dffaf7104c869dc88", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 880729, "upload_time": "2017-01-05T06:06:30", "url": "https://files.pythonhosted.org/packages/ec/aa/a5b3e50ef499cbe8b379b4fe8ac48859bcf16a623cf26b771593ed871ad7/parcell-0.2.3.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "94d74e3bb0bee3c02fb619398ab47665", "sha256": "e29ff6effcbfb1d251e486dd6f85da84fd7360d7808d08eb855b2f459a1ef896" }, "downloads": -1, "filename": "parcell-0.2.3-py2-none-any.whl", "has_sig": false, "md5_digest": "94d74e3bb0bee3c02fb619398ab47665", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 900775, "upload_time": "2017-01-05T06:06:26", "url": "https://files.pythonhosted.org/packages/42/97/ae7c2606c84dcfd92181804b29c37a9ca82883701d0dff0367fbc2d938dc/parcell-0.2.3-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "fd7024963b53432dffaf7104c869dc88", "sha256": "55dda1d2d8eda430932f70566c7507982d0c33ede6e0cecfbf31d614f64885b9" }, "downloads": -1, "filename": "parcell-0.2.3.tar.gz", "has_sig": false, "md5_digest": "fd7024963b53432dffaf7104c869dc88", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 880729, "upload_time": "2017-01-05T06:06:30", "url": "https://files.pythonhosted.org/packages/ec/aa/a5b3e50ef499cbe8b379b4fe8ac48859bcf16a623cf26b771593ed871ad7/parcell-0.2.3.tar.gz" } ] }