{ "info": { "author": "Peter Odding", "author_email": "peter@peterodding.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 5 - Production/Stable", "Intended Audience :: Developers", "Intended Audience :: Information Technology", "Intended Audience :: System Administrators", "License :: OSI Approved :: MIT License", "Programming Language :: Python", "Programming Language :: Python :: 2", "Programming Language :: Python :: 2.6", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: Implementation :: CPython", "Programming Language :: Python :: Implementation :: PyPy", "Topic :: Software Development", "Topic :: Software Development :: Libraries", "Topic :: Software Development :: Libraries :: Python Modules", "Topic :: System", "Topic :: System :: Logging", "Topic :: System :: Systems Administration", "Topic :: Terminals" ], "description": "verboselogs: Verbose logging level for Python's logging module\n==============================================================\n\n.. image:: https://travis-ci.org/xolox/python-verboselogs.svg?branch=master\n :target: https://travis-ci.org/xolox/python-verboselogs\n\n.. image:: https://coveralls.io/repos/xolox/python-verboselogs/badge.png?branch=master\n :target: https://coveralls.io/r/xolox/python-verboselogs?branch=master\n\nThe verboselogs_ package extends Python's logging_ module to add the log levels\nNOTICE_, SPAM_, SUCCESS_ and VERBOSE_:\n\n- The NOTICE level sits between the predefined WARNING and INFO levels.\n- The SPAM level sits between the predefined DEBUG and NOTSET levels.\n- The SUCCESS level sits between the predefined WARNING and ERROR levels.\n- The VERBOSE level sits between the predefined INFO and DEBUG levels.\n\nThe code to do this is simple and short, but I still don't want to copy/paste\nit to every project I'm working on, hence this package. It's currently tested\non Python 2.6, 2.7, 3.4, 3.5, 3.6 and PyPy.\n\n.. contents::\n :local:\n :depth: 2\n\nInstallation\n------------\n\nThe verboselogs package is available on PyPI_ which means installation should\nbe as simple as:\n\n.. code-block:: sh\n\n $ pip install verboselogs\n\nThere's actually a multitude of ways to install Python packages (e.g. the `per\nuser site-packages directory`_, `virtual environments`_ or just installing\nsystem wide) and I have no intention of getting into that discussion here, so\nif this intimidates you then read up on your options before returning to these\ninstructions ;-).\n\nUsage\n-----\n\nIt's very simple to start using the verboselogs package:\n\n>>> import logging, verboselogs\n>>> logger = verboselogs.VerboseLogger('verbose-demo')\n>>> logger.addHandler(logging.StreamHandler())\n>>> logger.setLevel(logging.VERBOSE)\n>>> logger.verbose(\"Can we have verbose logging? %s\", \"Yes we can!\")\n\nHere's a skeleton of a very simple Python program with a command line interface\nand configurable logging:\n\n.. code-block:: python\n\n \"\"\"\n Usage: demo.py [OPTIONS]\n\n This is the usage message of demo.py. Usually\n this text explains how to use the program.\n\n Supported options:\n -v, --verbose make more noise\n -h, --help show this message and exit\n \"\"\"\n\n import getopt\n import logging\n import sys\n import verboselogs\n\n logger = verboselogs.VerboseLogger('demo')\n logger.addHandler(logging.StreamHandler())\n logger.setLevel(logging.INFO)\n\n # Command line option defaults.\n verbosity = 0\n\n # Parse command line options.\n opts, args = getopt.getopt(sys.argv[1:], 'vqh', ['verbose', 'quiet', 'help'])\n\n # Map command line options to variables.\n for option, argument in opts:\n if option in ('-v', '--verbose'):\n verbosity += 1\n elif option in ('-q', '--quiet'):\n verbosity -= 1\n elif option in ('-h', '--help'):\n print __doc__.strip()\n sys.exit(0)\n else:\n assert False, \"Unhandled option!\"\n\n # Configure logger for requested verbosity.\n if verbosity >= 4:\n logger.setLevel(logging.SPAM)\n elif verbosity >= 3:\n logger.setLevel(logging.DEBUG)\n elif verbosity >= 2:\n logger.setLevel(logging.VERBOSE)\n elif verbosity >= 1:\n logger.setLevel(logging.NOTICE)\n elif verbosity < 0:\n logger.setLevel(logging.WARNING)\n\n # Your code goes here.\n ...\n\nIf you want to set VerboseLogger_ as the default logging class for all\nsubsequent logger instances, you can do so using `verboselogs.install()`_:\n\n.. code-block:: python\n\n import logging\n import verboselogs\n\n verboselogs.install()\n logger = logging.getLogger(__name__) # will be a VerboseLogger instance\n\nPylint plugin\n-------------\n\nIf using the above `verboselogs.install()`_ approach, Pylint_ is not smart\nenough to recognize that logging_ is using verboselogs, resulting in errors\nlike::\n\n E:285,24: Module 'logging' has no 'VERBOSE' member (no-member)\n E:375,12: Instance of 'RootLogger' has no 'verbose' member (no-member)\n\nTo fix this, verboselogs provides a Pylint plugin verboselogs.pylint_ which,\nwhen loaded with ``pylint --load-plugins verboselogs.pylint``, adds the\nverboselogs methods and constants to Pylint's understanding of the logging_\nmodule.\n\nOverview of logging levels\n--------------------------\n\nThe table below shows the names, `numeric values`_ and descriptions_ of the\npredefined log levels and the VERBOSE, NOTICE, and SPAM levels defined by this\npackage, plus some notes that I added.\n\n======== ===== ============================= =============================\nLevel Value Description Notes\n======== ===== ============================= =============================\nNOTSET 0 When a logger is created, the This level isn't intended to\n level is set to NOTSET (note be used explicitly, however\n that the root logger is when a logger has its level\n created with level WARNING). set to NOTSET its effective\n level will be inherited from\n the parent logger.\nSPAM 5 Way too verbose for regular\n debugging, but nice to have\n when someone is getting\n desperate in a late night\n debugging session and decides\n that they want as much\n instrumentation as possible!\n :-)\nDEBUG 10 Detailed information, Usually at this level the\n typically of interest only logging output is so low\n when diagnosing problems. level that it's not useful\n to users who are not\n familiar with the software's\n internals.\nVERBOSE 15 Detailed information that\n should be understandable to\n experienced users to provide\n insight in the software's\n behavior; a sort of high\n level debugging information.\nINFO 20 Confirmation that things\n are working as expected.\nNOTICE 25 Auditing information about\n things that have multiple\n success paths or may need to\n be reverted.\nWARNING 30 An indication that something\n unexpected happened, or\n indicative of some problem\n in the near future (e.g.\n \u2018disk space low\u2019). The\n software is still working\n as expected.\nSUCCESS 35 A very explicit confirmation\n of success.\nERROR 40 Due to a more serious\n problem, the software has not\n been able to perform some\n function.\nCRITICAL 50 A serious error, indicating\n that the program itself may\n be unable to continue\n running.\n======== ===== ============================= =============================\n\nContact\n-------\n\nThe latest version of verboselogs is available on PyPI_ and GitHub_. The\ndocumentation is hosted on `Read the Docs`_. For bug reports please create an\nissue on GitHub_. If you have questions, suggestions, etc. feel free to send me\nan e-mail at `peter@peterodding.com`_.\n\nLicense\n-------\n\nThis software is licensed under the `MIT license`_.\n\n\u00a9 2017 Peter Odding.\n\n.. External references:\n.. _descriptions: http://docs.python.org/howto/logging.html#when-to-use-logging\n.. _GitHub: https://github.com/xolox/python-verboselogs\n.. _logging: http://docs.python.org/library/logging.html\n.. _MIT license: http://en.wikipedia.org/wiki/MIT_License\n.. _NOTICE: http://verboselogs.readthedocs.io/en/latest/api.html#verboselogs.NOTICE\n.. _numeric values: http://docs.python.org/howto/logging.html#logging-levels\n.. _per user site-packages directory: https://www.python.org/dev/peps/pep-0370/\n.. _peter@peterodding.com: peter@peterodding.com\n.. _Pylint: https://pypi.python.org/pypi/pylint\n.. _PyPI: https://pypi.python.org/pypi/verboselogs\n.. _Read the Docs: https://verboselogs.readthedocs.io\n.. _SPAM: http://verboselogs.readthedocs.io/en/latest/api.html#verboselogs.SPAM\n.. _SUCCESS: http://verboselogs.readthedocs.io/en/latest/api.html#verboselogs.SUCCESS\n.. _VERBOSE: http://verboselogs.readthedocs.io/en/latest/api.html#verboselogs.VERBOSE\n.. _VerboseLogger: http://verboselogs.readthedocs.io/en/latest/api.html#verboselogs.VerboseLogger\n.. _verboselogs.install(): http://verboselogs.readthedocs.io/en/latest/api.html#verboselogs.install\n.. _verboselogs.pylint: http://verboselogs.readthedocs.io/en/latest/api.html#verboselogs.pylint\n.. _verboselogs: https://pypi.python.org/pypi/verboselogs/\n.. _virtual environments: http://docs.python-guide.org/en/latest/dev/virtualenvs/\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://verboselogs.readthedocs.io", "keywords": "", "license": "", "maintainer": "", "maintainer_email": "", "name": "verboselogs", "package_url": "https://pypi.org/project/verboselogs/", "platform": "", "project_url": "https://pypi.org/project/verboselogs/", "project_urls": { "Homepage": "https://verboselogs.readthedocs.io" }, "release_url": "https://pypi.org/project/verboselogs/1.7/", "requires_dist": null, "requires_python": "", "summary": "Verbose logging level for Python's logging module", "version": "1.7" }, "last_serial": 3079358, "releases": { "1.0": [ { "comment_text": "", "digests": { "md5": "5acef216ab84687465d4a9700e89b896", "sha256": "671aca7e68f761a057904a1a8ebba95bb2b2b49556192bbb6ecbf6cbb2f526b7" }, "downloads": -1, "filename": "verboselogs-1.0.tar.gz", "has_sig": false, "md5_digest": "5acef216ab84687465d4a9700e89b896", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4370, "upload_time": "2013-06-06T21:29:02", "url": "https://files.pythonhosted.org/packages/5e/98/ff7b5914031ac8eb99a8ba633cdf340029fdf37bf15a8f5468d1987654bf/verboselogs-1.0.tar.gz" } ], "1.0.1": [ { "comment_text": "", "digests": { "md5": "ddff692ca9235fe4bae05c17e163f454", "sha256": "0a1fa58d6c4bdf7249f04d502cb25c9926f6d1abb834448f27c533728db4d8ac" }, "downloads": -1, "filename": "verboselogs-1.0.1.tar.gz", "has_sig": false, "md5_digest": "ddff692ca9235fe4bae05c17e163f454", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4619, "upload_time": "2013-06-30T13:24:34", "url": "https://files.pythonhosted.org/packages/69/85/4f48d0a416b6becbf8d1724907aa343e66bd67d3c5eb305a4718ebcc7613/verboselogs-1.0.1.tar.gz" } ], "1.0.2": [ { "comment_text": "", "digests": { "md5": "28545085b07260ecb2ae7432cab4258a", "sha256": "78e8f81a7608417f92b819adf5f66411026f6cf5bcca4102a44c91dcbf60efc8" }, "downloads": -1, "filename": "verboselogs-1.0.2.tar.gz", "has_sig": false, "md5_digest": "28545085b07260ecb2ae7432cab4258a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4784, "upload_time": "2015-10-21T19:24:42", "url": "https://files.pythonhosted.org/packages/43/7e/8b8d1905b857ff29c7bfa8774c741b728b59ba967e92d402a48b4c4b4168/verboselogs-1.0.2.tar.gz" } ], "1.1": [ { "comment_text": "", "digests": { "md5": "73ef0a8bcccb8cf3f896879750073be3", "sha256": "c2bd492e431f68be9ea2ef92b834f2c8c7c421489800bef272966f89b7cfc991" }, "downloads": -1, "filename": "verboselogs-1.1.tar.gz", "has_sig": false, "md5_digest": "73ef0a8bcccb8cf3f896879750073be3", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5157, "upload_time": "2016-06-01T00:01:11", "url": "https://files.pythonhosted.org/packages/9e/0a/b61663f6394904d3a90d540571b38f7d199992a1919bd8f7b59635de0e01/verboselogs-1.1.tar.gz" } ], "1.2": [ { "comment_text": "", "digests": { "md5": "f6561fa76c99878ef5909087f34bd36a", "sha256": "c8e331141122b1a2c980dc52315ecc35336dae653c2ef2a3f8e16a58e502884b" }, "downloads": -1, "filename": "verboselogs-1.2-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "f6561fa76c99878ef5909087f34bd36a", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 8759, "upload_time": "2016-06-22T20:25:30", "url": "https://files.pythonhosted.org/packages/fe/c9/93136a56a12512b3f088bab014c8f11c5595e29e5448aeef9a2de9f8a59b/verboselogs-1.2-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "4a70c989161a6b957c4b2013bb6c1171", "sha256": "27cea07249139eaf84c6940b05d55c548ce0cbaf75fe3f2325ed95e381650639" }, "downloads": -1, "filename": "verboselogs-1.2.tar.gz", "has_sig": false, "md5_digest": "4a70c989161a6b957c4b2013bb6c1171", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6427, "upload_time": "2016-06-22T20:22:11", "url": "https://files.pythonhosted.org/packages/c7/2f/a3636b3e5aa680e79f5809aa290fa1e36b14af443d3a22295eaaa6152914/verboselogs-1.2.tar.gz" } ], "1.3": [ { "comment_text": "", "digests": { "md5": "43ab895695bf039dc708ef961ef30b52", "sha256": "d869e28f313dcbe72f5b26ea206b82956b29510fa641f7a99ee677ecf3204361" }, "downloads": -1, "filename": "verboselogs-1.3-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "43ab895695bf039dc708ef961ef30b52", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 9240, "upload_time": "2016-06-22T22:25:55", "url": "https://files.pythonhosted.org/packages/66/ee/5745c9bc3811d2c6514724790550e788da049c09c52869ac88fb718a5de9/verboselogs-1.3-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "952f4be8dbe0ec2b65fd0452bdc5ae03", "sha256": "1cb11427f12a2af2db7f7cd7d72d99afa2eb5602c5694ff9855bad043845bf22" }, "downloads": -1, "filename": "verboselogs-1.3.tar.gz", "has_sig": false, "md5_digest": "952f4be8dbe0ec2b65fd0452bdc5ae03", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6832, "upload_time": "2016-06-22T22:26:00", "url": "https://files.pythonhosted.org/packages/0b/fc/bb131abef0f1c96a3c459d2cc6f701ca69380209b466d1500c34e4739d45/verboselogs-1.3.tar.gz" } ], "1.4": [ { "comment_text": "", "digests": { "md5": "468ff755f0b5282024053d2677943791", "sha256": "b30a65276aec46c09b7cdd2d6a0e69db27a77cea5f2559567eb9b08c46a799d3" }, "downloads": -1, "filename": "verboselogs-1.4-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "468ff755f0b5282024053d2677943791", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 11138, "upload_time": "2016-06-23T00:31:12", "url": "https://files.pythonhosted.org/packages/20/da/ea0144eadfe81377acbd5cb947395a2dee879f7c4879e80e806d3da8f5ca/verboselogs-1.4-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "811da460e30f3abd51ada927d6da8b48", "sha256": "1a3b30956f6a1b8eeb69c9a57b4be96665469be49d4931096f2ece415206c357" }, "downloads": -1, "filename": "verboselogs-1.4.tar.gz", "has_sig": false, "md5_digest": "811da460e30f3abd51ada927d6da8b48", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8453, "upload_time": "2016-06-23T00:31:17", "url": "https://files.pythonhosted.org/packages/cd/b8/d87bbd0eab68c1e13ca7b2a0f38a986ed7f16b006f7bc6115e8043f514fe/verboselogs-1.4.tar.gz" } ], "1.5": [ { "comment_text": "", "digests": { "md5": "0b4fdb9e7c916585e231bd10e9f9d677", "sha256": "a9d449465698b9d3f83d27c3492e4dc8cb867368cd6fbabd1d3392f063cc6aef" }, "downloads": -1, "filename": "verboselogs-1.5-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "0b4fdb9e7c916585e231bd10e9f9d677", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 11502, "upload_time": "2016-07-26T17:37:48", "url": "https://files.pythonhosted.org/packages/9f/5f/39eef9835d3bc129cadfdbbe4fffebe2dceebff6b80bd509f476f97dc9dc/verboselogs-1.5-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "4d53a5126203992c299d51b118668e7e", "sha256": "c4cb801e53db22a88cfd63d5c698da12d00bee6add10a81e628f44870fab9c46" }, "downloads": -1, "filename": "verboselogs-1.5.tar.gz", "has_sig": false, "md5_digest": "4d53a5126203992c299d51b118668e7e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8715, "upload_time": "2016-07-26T17:37:50", "url": "https://files.pythonhosted.org/packages/b3/da/02af26288f4ea346ad4fd4b3c57a5e37405e94496a4a7256c7bd0a6530a6/verboselogs-1.5.tar.gz" } ], "1.6": [ { "comment_text": "", "digests": { "md5": "b10d8618bece249cc196ca1a8be80998", "sha256": "0727a0e55e03a618702a0d4160b7ab2963c80f6d90416c8706a9753db25ead59" }, "downloads": -1, "filename": "verboselogs-1.6-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "b10d8618bece249cc196ca1a8be80998", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 11542, "upload_time": "2017-03-07T17:48:29", "url": "https://files.pythonhosted.org/packages/de/42/26804333c8687b7c2e838a378041a347852de9a31d6bce361bc59263f53c/verboselogs-1.6-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "59de04fa33101a0863f003da7b0ed84e", "sha256": "0967a8a19afaf8e815b8f5060511cd7e172a86c7ecf94838c316baf7b0ee10e1" }, "downloads": -1, "filename": "verboselogs-1.6.tar.gz", "has_sig": false, "md5_digest": "59de04fa33101a0863f003da7b0ed84e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8837, "upload_time": "2017-03-07T17:48:31", "url": "https://files.pythonhosted.org/packages/c8/09/77d7b6dbe39ef77422baa6d826e4270212bad817b2ef14b8ec6d584b3864/verboselogs-1.6.tar.gz" } ], "1.6.1": [ { "comment_text": "", "digests": { "md5": "008366988821e67f20ea69406b9583ea", "sha256": "d50e777b0dc20b7beed59f2a9e216bffbfe6cae169e49adb298122e4a2665e64" }, "downloads": -1, "filename": "verboselogs-1.6.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "008366988821e67f20ea69406b9583ea", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 11742, "upload_time": "2017-08-07T19:00:05", "url": "https://files.pythonhosted.org/packages/d3/98/c4e32a33525a785edddc79f190bcae749a1952595491394b44fda51d9692/verboselogs-1.6.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "e7dae0397dde217836e34676254141d2", "sha256": "3974864fd1ac2781c9bf6e55f84c5d1acdf6e4df77c268487744b2e0ce482fc9" }, "downloads": -1, "filename": "verboselogs-1.6.1.tar.gz", "has_sig": false, "md5_digest": "e7dae0397dde217836e34676254141d2", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10201, "upload_time": "2017-08-07T19:00:06", "url": "https://files.pythonhosted.org/packages/4a/da/10ff85d88b00d4ee991e3749120edf3813d6de65b1291b6f3019634075ea/verboselogs-1.6.1.tar.gz" } ], "1.6.2": [ { "comment_text": "", "digests": { "md5": "5feb78aa4ac6d1c3e58311a3b5ac7a41", "sha256": "0edf6c9470221982498f598bcbd8170f8ed4c14299b93349457952061e5d19c9" }, "downloads": -1, "filename": "verboselogs-1.6.2-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "5feb78aa4ac6d1c3e58311a3b5ac7a41", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 11687, "upload_time": "2017-08-07T19:11:05", "url": "https://files.pythonhosted.org/packages/fb/6e/703599982183a0a4efea1a23f0ca4983a72f0450017d874f5f7d4d9d9674/verboselogs-1.6.2-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "adebfd38b326dac0b709959ab6ee2c5d", "sha256": "e83aeb1dc54a3f12a8e26c861b1de14c050faf294d28c90b6e62bb421785c918" }, "downloads": -1, "filename": "verboselogs-1.6.2.tar.gz", "has_sig": false, "md5_digest": "adebfd38b326dac0b709959ab6ee2c5d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10148, "upload_time": "2017-08-07T19:11:07", "url": "https://files.pythonhosted.org/packages/b1/ad/55c226dda11c1caef55c035ca57125241630724b3132af280389c393a91a/verboselogs-1.6.2.tar.gz" } ], "1.7": [ { "comment_text": "", "digests": { "md5": "da40d0a9becbd9c4ffb0e9bd3f74a0d4", "sha256": "d63f23bf568295b95d3530c6864a0b580cec70e7ff974177dead1e4ffbc6ff49" }, "downloads": -1, "filename": "verboselogs-1.7-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "da40d0a9becbd9c4ffb0e9bd3f74a0d4", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 11907, "upload_time": "2017-08-07T19:46:15", "url": "https://files.pythonhosted.org/packages/b8/9d/c5c3cb0093642042fd604b53928ac65e7650fdc5a8a97814288e29beab84/verboselogs-1.7-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "7c33bd58875e0d316a4f8d7505e946ff", "sha256": "e33ddedcdfdafcb3a174701150430b11b46ceb64c2a9a26198c76a156568e427" }, "downloads": -1, "filename": "verboselogs-1.7.tar.gz", "has_sig": false, "md5_digest": "7c33bd58875e0d316a4f8d7505e946ff", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10338, "upload_time": "2017-08-07T19:46:16", "url": "https://files.pythonhosted.org/packages/29/15/90ffe9bdfdd1e102bc6c21b1eea755d34e69772074b6e706cab741b9b698/verboselogs-1.7.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "da40d0a9becbd9c4ffb0e9bd3f74a0d4", "sha256": "d63f23bf568295b95d3530c6864a0b580cec70e7ff974177dead1e4ffbc6ff49" }, "downloads": -1, "filename": "verboselogs-1.7-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "da40d0a9becbd9c4ffb0e9bd3f74a0d4", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 11907, "upload_time": "2017-08-07T19:46:15", "url": "https://files.pythonhosted.org/packages/b8/9d/c5c3cb0093642042fd604b53928ac65e7650fdc5a8a97814288e29beab84/verboselogs-1.7-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "7c33bd58875e0d316a4f8d7505e946ff", "sha256": "e33ddedcdfdafcb3a174701150430b11b46ceb64c2a9a26198c76a156568e427" }, "downloads": -1, "filename": "verboselogs-1.7.tar.gz", "has_sig": false, "md5_digest": "7c33bd58875e0d316a4f8d7505e946ff", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10338, "upload_time": "2017-08-07T19:46:16", "url": "https://files.pythonhosted.org/packages/29/15/90ffe9bdfdd1e102bc6c21b1eea755d34e69772074b6e706cab741b9b698/verboselogs-1.7.tar.gz" } ] }