{ "info": { "author": "Giorgos Verigakis", "author_email": "verigak@gmail.com", "bugtrack_url": null, "classifiers": [ "Environment :: Console", "Intended Audience :: Developers", "License :: OSI Approved :: ISC License (ISCL)", "Programming Language :: Python :: 2.6", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3.3", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6" ], "description": "Easy progress reporting for Python\n==================================\n\n|pypi|\n\n|demo|\n\n.. |pypi| image:: https://img.shields.io/pypi/v/progress.svg\n :target: https://pypi.org/project/progress/\n.. |demo| image:: https://raw.github.com/verigak/progress/master/demo.gif\n :alt: Demo\n\nBars\n----\n\nThere are 7 progress bars to choose from:\n\n- ``Bar``\n- ``ChargingBar``\n- ``FillingSquaresBar``\n- ``FillingCirclesBar``\n- ``IncrementalBar``\n- ``PixelBar``\n- ``ShadyBar``\n\nTo use them, just call ``next`` to advance and ``finish`` to finish:\n\n.. code-block:: python\n\n from progress.bar import Bar\n\n bar = Bar('Processing', max=20)\n for i in range(20):\n # Do some work\n bar.next()\n bar.finish()\n\nor use any bar of this class as a context manager:\n\n.. code-block:: python\n\n from progress.bar import Bar\n\n with Bar('Processing', max=20) as bar:\n for i in range(20):\n # Do some work\n bar.next()\n\nThe result will be a bar like the following: ::\n\n Processing |############# | 42/100\n\nTo simplify the common case where the work is done in an iterator, you can\nuse the ``iter`` method:\n\n.. code-block:: python\n\n for i in Bar('Processing').iter(it):\n # Do some work\n\nProgress bars are very customizable, you can change their width, their fill\ncharacter, their suffix and more:\n\n.. code-block:: python\n\n bar = Bar('Loading', fill='@', suffix='%(percent)d%%')\n\nThis will produce a bar like the following: ::\n\n Loading |@@@@@@@@@@@@@ | 42%\n\nYou can use a number of template arguments in ``message`` and ``suffix``:\n\n========== ================================\nName Value\n========== ================================\nindex current value\nmax maximum value\nremaining max - index\nprogress index / max\npercent progress * 100\navg simple moving average time per item (in seconds)\nelapsed elapsed time in seconds\nelapsed_td elapsed as a timedelta (useful for printing as a string)\neta avg * remaining\neta_td eta as a timedelta (useful for printing as a string)\n========== ================================\n\nInstead of passing all configuration options on instatiation, you can create\nyour custom subclass:\n\n.. code-block:: python\n\n class FancyBar(Bar):\n message = 'Loading'\n fill = '*'\n suffix = '%(percent).1f%% - %(eta)ds'\n\nYou can also override any of the arguments or create your own:\n\n.. code-block:: python\n\n class SlowBar(Bar):\n suffix = '%(remaining_hours)d hours remaining'\n @property\n def remaining_hours(self):\n return self.eta // 3600\n\n\nSpinners\n========\n\nFor actions with an unknown number of steps you can use a spinner:\n\n.. code-block:: python\n\n from progress.spinner import Spinner\n\n spinner = Spinner('Loading ')\n while state != 'FINISHED':\n # Do some work\n spinner.next()\n\nThere are 5 predefined spinners:\n\n- ``Spinner``\n- ``PieSpinner``\n- ``MoonSpinner``\n- ``LineSpinner``\n- ``PixelSpinner``\n\nInstallation\n============\n\nDownload from PyPi\n\n.. code-block:: shell\n\n pip install progress\n\n\nOther\n=====\n\nThere are a number of other classes available too, please check the source or\nsubclass one of them to create your own.\n\n\nLicense\n=======\n\nprogress is licensed under ISC\n", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "http://github.com/verigak/progress/", "keywords": "", "license": "ISC", "maintainer": "", "maintainer_email": "", "name": "progress", "package_url": "https://pypi.org/project/progress/", "platform": "", "project_url": "https://pypi.org/project/progress/", "project_urls": { "Homepage": "http://github.com/verigak/progress/" }, "release_url": "https://pypi.org/project/progress/1.5/", "requires_dist": null, "requires_python": "", "summary": "Easy to use progress bars", "version": "1.5" }, "last_serial": 4903907, "releases": { "1.0": [ { "comment_text": "", "digests": { "md5": "cfb19cb05ac6891155ddd376a8637b6c", "sha256": "51214c1cb8b67588aed1361440333ebe8eab038566529ad4ed846aba7514e5f3" }, "downloads": -1, "filename": "progress-1.0.tar.gz", "has_sig": false, "md5_digest": "cfb19cb05ac6891155ddd376a8637b6c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4589, "upload_time": "2012-04-18T18:26:17", "url": "https://files.pythonhosted.org/packages/3d/43/30aed7a1449477f3ede7600782af434b4f69028c742ab6babca8586c64de/progress-1.0.tar.gz" } ], "1.0.1": [ { "comment_text": "", "digests": { "md5": "51ab5b8093ad0ac9d461dfba26bbcf0e", "sha256": "0d8ef1b6435e18f82b41ee81d9edd7c86edb6571f16796dfcabfb9488fef2c9b" }, "downloads": -1, "filename": "progress-1.0.1.tar.gz", "has_sig": false, "md5_digest": "51ab5b8093ad0ac9d461dfba26bbcf0e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4995, "upload_time": "2012-04-18T19:21:54", "url": "https://files.pythonhosted.org/packages/4d/dc/a5d074f17ccbe579c23578554e708030770ef1fdb4d6f2ff8cce2854cda2/progress-1.0.1.tar.gz" } ], "1.0.2": [ { "comment_text": "", "digests": { "md5": "06da1f7d6d3e5829f251856c3d481c69", "sha256": "65c06f01de471ab4621e323f6e165a7250d12789bfb95380abda3dbcd5dc531f" }, "downloads": -1, "filename": "progress-1.0.2.tar.gz", "has_sig": false, "md5_digest": "06da1f7d6d3e5829f251856c3d481c69", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5116, "upload_time": "2012-07-28T03:30:22", "url": "https://files.pythonhosted.org/packages/a8/d6/6d5cf123489c93f7c87f046b092a6ea310dedb7cb870b1a35bb616e66e77/progress-1.0.2.tar.gz" } ], "1.1": [ { "comment_text": "", "digests": { "md5": "8f92d41a96af6f4102a1c0984056e1e9", "sha256": "579981faba6b343713405c8f4ae26d1c3b40540da3d71e5d3117871b8debe7a8" }, "downloads": -1, "filename": "progress-1.1.tar.gz", "has_sig": false, "md5_digest": "8f92d41a96af6f4102a1c0984056e1e9", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4842, "upload_time": "2013-01-22T02:59:33", "url": "https://files.pythonhosted.org/packages/f8/9e/28a299c54960a4f123c313c9bdb454c2940ef933ec7df6243794a94b229c/progress-1.1.tar.gz" } ], "1.2": [ { "comment_text": "", "digests": { "md5": "c1dbf49a41e80408d3874d976ba894cc", "sha256": "5b6a50f9ac76820f619d7789b5354881c8c10060a64047e415868d8f503cc2eb" }, "downloads": -1, "filename": "progress-1.2.tar.gz", "has_sig": false, "md5_digest": "c1dbf49a41e80408d3874d976ba894cc", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4951, "upload_time": "2013-11-28T06:50:50", "url": "https://files.pythonhosted.org/packages/74/54/bb538ae57f32fca8bf65c837d3f1715f7c17ae7734d87f4a9a56dab6e982/progress-1.2.tar.gz" } ], "1.3": [ { "comment_text": "", "digests": { "md5": "f65ccfcc2339d522b2dd5801aaa40dc7", "sha256": "c88d89ee3bd06716a0b8b5504d9c3bcb3c1c0ab98f96dc7f1dc5f56812a4f60a" }, "downloads": -1, "filename": "progress-1.3.tar.gz", "has_sig": false, "md5_digest": "f65ccfcc2339d522b2dd5801aaa40dc7", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5300, "upload_time": "2017-04-10T11:39:49", "url": "https://files.pythonhosted.org/packages/37/15/66bb190760a7129b65bf07eb23cdade607d91f894496121c16a9ada5d9f9/progress-1.3.tar.gz" } ], "1.4": [ { "comment_text": "", "digests": { "md5": "057981e2f09029288f5255b1ea3ab64d", "sha256": "5e2f9da88ed8236a76fffbee3ceefd259589cf42dfbc2cec2877102189fae58a" }, "downloads": -1, "filename": "progress-1.4.tar.gz", "has_sig": false, "md5_digest": "057981e2f09029288f5255b1ea3ab64d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5352, "upload_time": "2018-06-25T06:10:41", "url": "https://files.pythonhosted.org/packages/e9/ff/7871f3736dc6707435b2a2f217c46b5a5bc6ea7e0a9a443cd69146a1afd1/progress-1.4.tar.gz" } ], "1.5": [ { "comment_text": "", "digests": { "md5": "408df0e3db0ad4b74f19f6beec814ae4", "sha256": "69ecedd1d1bbe71bf6313d88d1e6c4d2957b7f1d4f71312c211257f7dae64372" }, "downloads": -1, "filename": "progress-1.5.tar.gz", "has_sig": false, "md5_digest": "408df0e3db0ad4b74f19f6beec814ae4", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5842, "upload_time": "2019-03-06T07:26:19", "url": "https://files.pythonhosted.org/packages/38/ef/2e887b3d2b248916fc2121889ce68af8a16aaddbe82f9ae6533c24ff0d2b/progress-1.5.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "408df0e3db0ad4b74f19f6beec814ae4", "sha256": "69ecedd1d1bbe71bf6313d88d1e6c4d2957b7f1d4f71312c211257f7dae64372" }, "downloads": -1, "filename": "progress-1.5.tar.gz", "has_sig": false, "md5_digest": "408df0e3db0ad4b74f19f6beec814ae4", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5842, "upload_time": "2019-03-06T07:26:19", "url": "https://files.pythonhosted.org/packages/38/ef/2e887b3d2b248916fc2121889ce68af8a16aaddbe82f9ae6533c24ff0d2b/progress-1.5.tar.gz" } ] }