{ "info": { "author": "WillahScott", "author_email": "", "bugtrack_url": null, "classifiers": [ "Framework :: Jupyter", "Intended Audience :: Developers", "Intended Audience :: Science/Research", "License :: OSI Approved :: MIT License", "Programming Language :: Python", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.3", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Topic :: Software Development :: Build Tools" ], "description": "## IPyProgressBar\n\n[![saythanks](https://img.shields.io/badge/Say%20Thanks-!-1EAEDB.svg)](https://saythanks.io/to/WillahScott)\n\nA small package that provides an python-asynchronous progressbar widgets for use in Jupyter/IPython in conjunction with `ipywidgets`.\n\n\n### Why\n\nMany times, when building a small dashboard on IPython there are functions that take some time to be executed but cannot be split into chunks, in the middle of which we could update a progress bar.\n\nSince we want to give the user feedback that we are actually doing something and now he has to wait for a little, we can simply display the prototypical `Loading...`.\n\nHowever for some (most?) functions we may actually have a rough estimate of the time of wait and can make the wait a little more visual with a progressbar!\n\n\n### \"Python-Asynchronous\"\n\nThe progressbar needs to be updated (filled) while python is working on other things. Therefore, we can use a python thread to update the value of the progressbar. That way, our main python process can take care of other code meanwhile.\n\n\n### Usage\n\n```python\n# Create the progress bar object (not the widget)\nmy_progressbar = AsyncProgressBar(time=2, description='Loading dataset:')\n\n# Return the widget for display\nmy_progressbar.display()\n\n# ...\n\n# Trigger the progressbar\nmy_progressbar.run()\n```\n\nThe object also has a `close()` method (and its inverse `reopen()`), for hiding the progressbar whenever we want:\n\n```python\nmy_progressbar.run()\nfunction_that_takes_long()\nmy_progressbar.close(on_finish=True) # or set close_on_finish=True on creating the progressbar object\n```\n\nHowever,for a typical use case in which we just want a temporal progressbar, we can specify the `close_on_finish` on creation:\n\n```python\n# Create the progress bar object (not the widget)\nmy_progressbar = AsyncProgressBar(time=2, description='Loading dataset:', close_on_finish=True)\n\n# ...\n\n# Trigger the progressbar\nmy_progressbar.run() # when done the progress bar will hide\n```\n\n\n\n### Contact\n\nCreated by: [WillahScott](https://github.com/WillahScott/)\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/WillahScott/ipyprogressbar", "keywords": "widget jupyter progressbar asynchronous", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "ipyprogressbar", "package_url": "https://pypi.org/project/ipyprogressbar/", "platform": "", "project_url": "https://pypi.org/project/ipyprogressbar/", "project_urls": { "Bug Reports": "https://github.com/WillahScott/ipyprogressbar/issues", "Homepage": "https://github.com/WillahScott/ipyprogressbar", "Say Thanks!": "https://saythanks.io/to/WillahScott" }, "release_url": "https://pypi.org/project/ipyprogressbar/1.0.2/", "requires_dist": null, "requires_python": "", "summary": "Python-asynchronous progressbar widgets for use in Jupyter/IPython in conjunction with ipywidgets", "version": "1.0.2" }, "last_serial": 3889778, "releases": { "0.1.0": [ { "comment_text": "", "digests": { "md5": "5d328cbdc229deba26828d5d154bef41", "sha256": "3d516bf16efe8869e0c8feeec78c42c4fec58a090cf6e33493e2d636774696a0" }, "downloads": -1, "filename": "ipyprogressbar-0.1.0-py3-none-any.whl", "has_sig": false, "md5_digest": "5d328cbdc229deba26828d5d154bef41", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 3845, "upload_time": "2018-05-20T21:51:02", "url": "https://files.pythonhosted.org/packages/92/b5/bf3fe20eea69923d22c33d030f85d88e0a7c96ce2832919fd75472c99580/ipyprogressbar-0.1.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "b95dbe4572027d0372d3e54002a178e0", "sha256": "711b681c6083be0dc51c8a52822ba71b27386d762f6e5392dfde03094b9aed52" }, "downloads": -1, "filename": "ipyprogressbar-0.1.0.tar.gz", "has_sig": false, "md5_digest": "b95dbe4572027d0372d3e54002a178e0", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3484, "upload_time": "2018-05-20T21:51:04", "url": "https://files.pythonhosted.org/packages/63/0e/8020305db4a787335ecacb21239f4ddd8894e980f3b95b8aa998a81036de/ipyprogressbar-0.1.0.tar.gz" } ], "1.0.2": [ { "comment_text": "", "digests": { "md5": "837ba7b7ef02ee06d8346073188a9914", "sha256": "fe5f47547f897043b237d56ea8b493cb9fa61327d1dc45437368e0ca33fa7019" }, "downloads": -1, "filename": "ipyprogressbar-1.0.2-py3-none-any.whl", "has_sig": false, "md5_digest": "837ba7b7ef02ee06d8346073188a9914", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 3883, "upload_time": "2018-05-23T01:35:40", "url": "https://files.pythonhosted.org/packages/53/46/962b97a06158bc6fa3316bfb26e46ee1f6c299adbf28a55cdd39c6fcc3d0/ipyprogressbar-1.0.2-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "6411fd54b0a877707e7d836d37a138f8", "sha256": "a0b9a8b1deaccb6c13a91b64d7728cbc5cb7e136c6391e8b34a11ab73e052bbc" }, "downloads": -1, "filename": "ipyprogressbar-1.0.2.tar.gz", "has_sig": false, "md5_digest": "6411fd54b0a877707e7d836d37a138f8", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3500, "upload_time": "2018-05-23T01:35:42", "url": "https://files.pythonhosted.org/packages/10/b2/1f6e0630328bef645ead9574ef74fdda75b9d87d792b1c37136b25ded32e/ipyprogressbar-1.0.2.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "837ba7b7ef02ee06d8346073188a9914", "sha256": "fe5f47547f897043b237d56ea8b493cb9fa61327d1dc45437368e0ca33fa7019" }, "downloads": -1, "filename": "ipyprogressbar-1.0.2-py3-none-any.whl", "has_sig": false, "md5_digest": "837ba7b7ef02ee06d8346073188a9914", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 3883, "upload_time": "2018-05-23T01:35:40", "url": "https://files.pythonhosted.org/packages/53/46/962b97a06158bc6fa3316bfb26e46ee1f6c299adbf28a55cdd39c6fcc3d0/ipyprogressbar-1.0.2-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "6411fd54b0a877707e7d836d37a138f8", "sha256": "a0b9a8b1deaccb6c13a91b64d7728cbc5cb7e136c6391e8b34a11ab73e052bbc" }, "downloads": -1, "filename": "ipyprogressbar-1.0.2.tar.gz", "has_sig": false, "md5_digest": "6411fd54b0a877707e7d836d37a138f8", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3500, "upload_time": "2018-05-23T01:35:42", "url": "https://files.pythonhosted.org/packages/10/b2/1f6e0630328bef645ead9574ef74fdda75b9d87d792b1c37136b25ded32e/ipyprogressbar-1.0.2.tar.gz" } ] }