{ "info": { "author": "Stavros Korokithakis", "author_email": "hi@stavros.io", "bugtrack_url": null, "classifiers": [ "License :: OSI Approved :: MIT License", "Programming Language :: Python", "Programming Language :: Python :: 2.5", "Programming Language :: Python :: 2.6", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3.2", "Programming Language :: Python :: 3.3", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Topic :: Software Development :: Libraries :: Python Modules" ], "description": "TBVaccine\n---------\n\n.. image:: https://www.codeshelter.co/static/badges/badge-flat.svg\n :target: www.codeshelter.co\n.. image:: https://img.shields.io/badge/code%20style-black-000000.svg\n :target: https://github.com/ambv/black\n\nTBVaccine is a utility that pretty-prints Python tracebacks. It automatically\nhighlights lines you care about and deemphasizes lines you don't, and colorizes\nthe various elements in a traceback to make it easier to parse.\n\nHere are some screenshots. This is the before:\n\n.. image:: misc/before.png\n\nAnd this is the after:\n\n.. image:: misc/after.png\n\nIf you add the hook or call TBVaccine in your code, it can also print all\nvariables in each stack frame. That is, it turns this:\n\n.. image:: misc/before-vars.png\n\ninto this:\n\n.. image:: misc/after-vars.png\n\n\nInstallation\n============\n\nTo install, use ``pip``::\n\n pip install tbvaccine\n\nYou are done!\n\n\nGlobal usage\n============\n\nYou can have TBVaccine insert itself all up in your system and stick its tentacles in\nall your libraries, like a cute, useful Cthulhu. That way, every single Python\ntraceback in your system will be pretty. Just set the `TBVACCINE` environment\nvariable to 1, and you're done.\n\nE.g. for bash::\n\n export TBVACCINE=1\n\nOr fish::\n\n set -x TBVACCINE=1\n\n\nUsage as a command-line utility\n===============================\n\nTBVaccine can be used from the command line several ways.::\n\n python -m tbvaccine myscript.py\n\nOr just pipe STDERR into it from the program you want to watch::\n\n ./myscript.py 2>&1 | tbvaccine\n\nAnd all the tracebacks will now be pretty!\n\n\nUsage as a Python library\n=========================\n\nThere are various ways to use TBVaccine as a Python library.\n\nInitialize it like so::\n\n from tbvaccine import TBVaccine\n tbv = TBVaccine(\n code_dir=\"/my/code/dir\",\n isolate=True\n )\n\n``code_dir`` marks the directory we code about. Files under that directory that\nappear in the traceback will be highlighted. If not passed, the current\ndirectory, as returned by ``os.getcwd()`` will be used.\n\nIf ``isolate`` is ``False``, all lines are colorized, and ``code_dir`` is\nignored.\n\nIf ``show_vars`` is ``False``, variables will not be printed in each stack\nframe.\n\nTo use it in an ``except`` block::\n\n from tbvaccine import TBVaccine\n try:\n some_stuff()\n except:\n print(TBVaccine().format_exc())\n\n\nTo make it the default way of printing tracebacks, use ``add_hook()`` (which\nalso accepts any argument the ``TBVaccine`` class does)::\n\n import tbvaccine\n tbvaccine.add_hook(isolate=False)\n\n 1 / 0\n\nBam! Instant pretty tracebacks.\n\n\nLogging integration\n===================\n\nYou can integrate TBVaccine with logging like so::\n\n class TbVaccineFormatter(logging.Formatter):\n def formatException(self, exc_info):\n return TBVaccine(isolate=True).format_exc()\n\n sh = logging.StreamHandler()\n sh.setFormatter(TbVaccineFormatter('[%(levelname)s] %(asctime)s : %(message)s', '%Y-%m-%d %H:%M:%S'))\n logger.addHandler(sh)\n\n\nEpilogue\n========\n\nThis library is still pretty new, please contribute patches if something doesn't\nwork as intended, and also please tell your friends about it! Hopefully one day\nit will be implemented in the Python interpreters themselves.\n\n-- Stavros\n", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/skorokithakis/tbvaccine/", "keywords": "", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "tbvaccine", "package_url": "https://pypi.org/project/tbvaccine/", "platform": "", "project_url": "https://pypi.org/project/tbvaccine/", "project_urls": { "Homepage": "https://github.com/skorokithakis/tbvaccine/" }, "release_url": "https://pypi.org/project/tbvaccine/0.3.1/", "requires_dist": null, "requires_python": "", "summary": "A utility that cures the horrible traceback displays in Python, making them more readable.", "version": "0.3.1" }, "last_serial": 4600236, "releases": { "0.0.1": [ { "comment_text": "", "digests": { "md5": "2c22aa84577aff68d51a89b7861e5f2f", "sha256": "5789f336b04ad8a5dceda9f6cf14c4c7612145ba241618e5cf8610f4e2302f33" }, "downloads": -1, "filename": "tbvaccine-0.0.1-py3-none-any.whl", "has_sig": false, "md5_digest": "2c22aa84577aff68d51a89b7861e5f2f", "packagetype": "bdist_wheel", "python_version": "3.5", "requires_python": null, "size": 6638, "upload_time": "2016-08-27T18:53:04", "url": "https://files.pythonhosted.org/packages/05/fb/e076eb5c862121b547afaad17387a3f10d36d993ac125515efa637186c0e/tbvaccine-0.0.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "931c258c9917a4dd73948775abbe3d76", "sha256": "5add6a11d8206bf80cd93d64003d2f7a9ec0179cd22981a25bdd91aeb13f46e3" }, "downloads": -1, "filename": "tbvaccine-0.0.1.tar.gz", "has_sig": false, "md5_digest": "931c258c9917a4dd73948775abbe3d76", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4185, "upload_time": "2016-08-27T18:53:01", "url": "https://files.pythonhosted.org/packages/14/c7/78ca596a063cc3b146fbab0bd9456a1054611c03f5ca618952533c37d601/tbvaccine-0.0.1.tar.gz" } ], "0.0.2": [ { "comment_text": "", "digests": { "md5": "623ea16e1906df44656ddfef671f3507", "sha256": "09d2ae7ca4109bc5bf526296f97e43e3c5680ba914245ef12c78ecfff644f90a" }, "downloads": -1, "filename": "tbvaccine-0.0.2-py2-none-any.whl", "has_sig": false, "md5_digest": "623ea16e1906df44656ddfef671f3507", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 7247, "upload_time": "2016-08-28T03:49:01", "url": "https://files.pythonhosted.org/packages/eb/58/d8fcdc272373fe31fec7cfda1fc8148520ebab1f4a226fe08da196ab84d6/tbvaccine-0.0.2-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "642927d0d0901e8a27e423c65dde3531", "sha256": "58cd76e9e44848612726e856909f437d5a87fabe684e3fcb51193b2ee6677ffc" }, "downloads": -1, "filename": "tbvaccine-0.0.2.tar.gz", "has_sig": false, "md5_digest": "642927d0d0901e8a27e423c65dde3531", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4696, "upload_time": "2016-08-28T03:49:04", "url": "https://files.pythonhosted.org/packages/fb/5b/c4bbbc3c840de4a642aa7cd358c96d19f49a4b2fa14de9ee72e37acf6e95/tbvaccine-0.0.2.tar.gz" } ], "0.0.3": [ { "comment_text": "", "digests": { "md5": "707f7a046e4d91a52d4ad01f7ce011c4", "sha256": "2bae09764a35dd686425bc3cd6fa8f2273cf2e9c0a02e9608dbe46f5cc7a8e5f" }, "downloads": -1, "filename": "tbvaccine-0.0.3.tar.gz", "has_sig": false, "md5_digest": "707f7a046e4d91a52d4ad01f7ce011c4", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4742, "upload_time": "2017-02-26T14:18:46", "url": "https://files.pythonhosted.org/packages/01/1f/a0f72668c7bcb7dd4fa72696c0246bc4edccb80e71748bad76ead7a165c6/tbvaccine-0.0.3.tar.gz" } ], "0.1.0": [ { "comment_text": "", "digests": { "md5": "282f8c4b31335caf594510296ea6c86b", "sha256": "0df52aac506872b82ba0dcd4509360a0c4dc18e2ab62ceb6674220ec225aab87" }, "downloads": -1, "filename": "tbvaccine-0.1.0-py2-none-any.whl", "has_sig": false, "md5_digest": "282f8c4b31335caf594510296ea6c86b", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 8751, "upload_time": "2017-05-18T00:31:31", "url": "https://files.pythonhosted.org/packages/8b/79/26b8f81756cf627b20e2f45904f82442d051d0dde54771db8028a0b78da0/tbvaccine-0.1.0-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "51819be023982d42b1ee847320286970", "sha256": "f801e468a607635ca86f2f2ec1de33ca5d9906b127153da15e0b6029e324b0dc" }, "downloads": -1, "filename": "tbvaccine-0.1.0.tar.gz", "has_sig": false, "md5_digest": "51819be023982d42b1ee847320286970", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5773, "upload_time": "2017-05-18T00:31:29", "url": "https://files.pythonhosted.org/packages/9b/9a/8e47ecfd5e2d25ddc8bf88d20a777224fe26ccf419659750fbb7d887cc51/tbvaccine-0.1.0.tar.gz" } ], "0.1.1": [ { "comment_text": "", "digests": { "md5": "30cd218977fdac7bc32fdbb72ee6f2a5", "sha256": "b0c4c82f63b9c56ce3f079cb747ab5540d22607309736e2c4b41bc30bfc96170" }, "downloads": -1, "filename": "tbvaccine-0.1.1-py2-none-any.whl", "has_sig": false, "md5_digest": "30cd218977fdac7bc32fdbb72ee6f2a5", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 8794, "upload_time": "2017-05-18T13:20:20", "url": "https://files.pythonhosted.org/packages/d8/82/4875491fa86a0e666364dd448a4d476c05e647d6169fd0f740798c9a508f/tbvaccine-0.1.1-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "c2cf5c44ab8e70c54e2836a092ac196a", "sha256": "c52c601abcaca3d1c592eb6823f708e2d5b08d518aef3102edd01984769ead8a" }, "downloads": -1, "filename": "tbvaccine-0.1.1.tar.gz", "has_sig": false, "md5_digest": "c2cf5c44ab8e70c54e2836a092ac196a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5804, "upload_time": "2017-05-18T13:20:18", "url": "https://files.pythonhosted.org/packages/07/3e/4f47de357e9bcdbc548462e1bd42ba79f1faf2e669d17f60069b3c9cf8f4/tbvaccine-0.1.1.tar.gz" } ], "0.1.2": [ { "comment_text": "", "digests": { "md5": "4d1432ef59c3ef594a4f04474c00556d", "sha256": "6b78126932930238fc01b4bd9a26f0fadd29cb16c503062dc8146404703f17a9" }, "downloads": -1, "filename": "tbvaccine-0.1.2-py2-none-any.whl", "has_sig": false, "md5_digest": "4d1432ef59c3ef594a4f04474c00556d", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 9233, "upload_time": "2017-05-20T09:43:45", "url": "https://files.pythonhosted.org/packages/c6/90/129d40207ba11b97a4cf946fdca07880d5c84a134ef45e347b932804e2e9/tbvaccine-0.1.2-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "73e5b92d6aa407d910bd8d6742a9ff7f", "sha256": "2f347c15d427192160c8346178fd22689d12c03abe314155a6d081360b3e7d7a" }, "downloads": -1, "filename": "tbvaccine-0.1.2.tar.gz", "has_sig": false, "md5_digest": "73e5b92d6aa407d910bd8d6742a9ff7f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6180, "upload_time": "2017-05-20T09:43:43", "url": "https://files.pythonhosted.org/packages/83/15/c14f882467cf8c383db3b262f2fe9aa2ab8ca7c4cf6bfdd1b35e635abbe5/tbvaccine-0.1.2.tar.gz" } ], "0.1.3": [ { "comment_text": "", "digests": { "md5": "2e0dc2479fb99bef32ae84c862b64c02", "sha256": "e7cac18a1839ed84bacd6782116a9ff4c9226c8bc3dbacfab62e8976138aecee" }, "downloads": -1, "filename": "tbvaccine-0.1.3-py2-none-any.whl", "has_sig": false, "md5_digest": "2e0dc2479fb99bef32ae84c862b64c02", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 9236, "upload_time": "2017-06-01T12:04:37", "url": "https://files.pythonhosted.org/packages/c9/19/be9bf1462858ebae88c71f7ea2bd31d41d45325eeb4036abfe120d89e9ba/tbvaccine-0.1.3-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "cdbb39050490ead66d79a48f091f77d7", "sha256": "ca7ec780d6c0978f78b69610bb7b94f4e51f28a307e3efe28e2502ff8b3acd84" }, "downloads": -1, "filename": "tbvaccine-0.1.3.tar.gz", "has_sig": false, "md5_digest": "cdbb39050490ead66d79a48f091f77d7", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6204, "upload_time": "2017-06-01T12:04:40", "url": "https://files.pythonhosted.org/packages/c4/e4/37e2bdbad4da655f2edccc0a55fe05b423fa1792d889d5ef42122e5a4a25/tbvaccine-0.1.3.tar.gz" } ], "0.2.0": [ { "comment_text": "", "digests": { "md5": "c708bf539f526e077df0e99ae79bcb70", "sha256": "3884b1a3215746e322e7c0fe3f95cbe6f824d8659bb879dc2382b6bede7528b2" }, "downloads": -1, "filename": "tbvaccine-0.2.0-py2-none-any.whl", "has_sig": false, "md5_digest": "c708bf539f526e077df0e99ae79bcb70", "packagetype": "bdist_wheel", "python_version": "2.7", "requires_python": null, "size": 10075, "upload_time": "2017-07-22T12:35:09", "url": "https://files.pythonhosted.org/packages/16/4b/38807518ec80fa1a68cf44afbee04c51873f069f8037382202d569e0c9e3/tbvaccine-0.2.0-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "8263ccc4872d76fd24bad7da9cd3f35a", "sha256": "02e8093f38c4ec4c5026877d390205316cf20b7fcdbb6afb79e193a01e127189" }, "downloads": -1, "filename": "tbvaccine-0.2.0.tar.gz", "has_sig": false, "md5_digest": "8263ccc4872d76fd24bad7da9cd3f35a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6791, "upload_time": "2017-07-22T12:35:06", "url": "https://files.pythonhosted.org/packages/1a/18/a70677b5d4db698640005e8450c59f272f7e45bad1229c87fd940cecf456/tbvaccine-0.2.0.tar.gz" } ], "0.2.1": [ { "comment_text": "", "digests": { "md5": "286b72028033b9256883a270f6a9756a", "sha256": "13feeae726e6310b49f1e9f3ae045313013f926fbafa75f4e18506dbf1ef2dd4" }, "downloads": -1, "filename": "tbvaccine-0.2.1-py2-none-any.whl", "has_sig": false, "md5_digest": "286b72028033b9256883a270f6a9756a", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 9986, "upload_time": "2017-07-27T16:20:29", "url": "https://files.pythonhosted.org/packages/8e/80/b9d35a1bc89294a9848e600a3bac1bc55a3d7b8b320888147f1cd617af2a/tbvaccine-0.2.1-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "053c916dda597ac3faf545ca5287ed7a", "sha256": "be692ba4acc9b66c1bdc5b92001ded7a7be54e207d53eb1f3beda79102302674" }, "downloads": -1, "filename": "tbvaccine-0.2.1.tar.gz", "has_sig": false, "md5_digest": "053c916dda597ac3faf545ca5287ed7a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6835, "upload_time": "2017-07-27T16:20:34", "url": "https://files.pythonhosted.org/packages/77/5e/4462ea3b839dabdb2aee5467c5c24e5ff6cedfc4c00342e3e758a90677a4/tbvaccine-0.2.1.tar.gz" } ], "0.2.2": [ { "comment_text": "", "digests": { "md5": "8fa534864c71636ca516e3956803c14b", "sha256": "a6ec99b16a9a7204e0c522c18b28bfdb44e891295d931e3e88c5a4b17871dc19" }, "downloads": -1, "filename": "tbvaccine-0.2.2-py2-none-any.whl", "has_sig": false, "md5_digest": "8fa534864c71636ca516e3956803c14b", "packagetype": "bdist_wheel", "python_version": "2.7", "requires_python": null, "size": 9987, "upload_time": "2017-07-27T16:45:34", "url": "https://files.pythonhosted.org/packages/ad/68/af2fdc13122bde84e81af1b306915bcacf6eafb7b1be0f4466615f6dfc74/tbvaccine-0.2.2-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "e9978cf6c594139dac0fc1eafda8b96a", "sha256": "083b1ffd9e547e27c7d74fac4ad169f679a5f0ad499d1800e3743697f825b0eb" }, "downloads": -1, "filename": "tbvaccine-0.2.2.tar.gz", "has_sig": false, "md5_digest": "e9978cf6c594139dac0fc1eafda8b96a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6937, "upload_time": "2017-07-27T16:45:31", "url": "https://files.pythonhosted.org/packages/65/75/12b88d29caffcc12a9f1035ebdc626ebdded3ce64310db272ffe3443c581/tbvaccine-0.2.2.tar.gz" } ], "0.3.0": [ { "comment_text": "", "digests": { "md5": "3584e13855a86f13b5ebf626b174a900", "sha256": "5c88ce2a3adfecf5064dbfb4cbb5f5b8e9df4adcf0ecf980739af296597f8d75" }, "downloads": -1, "filename": "tbvaccine-0.3.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "3584e13855a86f13b5ebf626b174a900", "packagetype": "bdist_wheel", "python_version": "3.6", "requires_python": null, "size": 8179, "upload_time": "2018-12-14T18:02:47", "url": "https://files.pythonhosted.org/packages/9d/bf/677a46058a52882a68965904a86a03b7c890bc296d4ae306511a39a5c61d/tbvaccine-0.3.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "a115b5a5c9c196085381060c24b807be", "sha256": "e361d3422f6cf52f7908f775d66026adab3e76edfe65e76a57f3ced8979f49af" }, "downloads": -1, "filename": "tbvaccine-0.3.0.tar.gz", "has_sig": false, "md5_digest": "a115b5a5c9c196085381060c24b807be", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7441, "upload_time": "2018-12-14T18:02:45", "url": "https://files.pythonhosted.org/packages/37/22/f893a3d505cb6af8ca6300b27ebeb9193a5373dccc944c28ef5b27fde182/tbvaccine-0.3.0.tar.gz" } ], "0.3.1": [ { "comment_text": "", "digests": { "md5": "e6099ee0d69d5d1301d740f7c006aa08", "sha256": "3aae41b75e237f2840dde274722b1070ca43d65dd24cf60344bd6d345c77cc3d" }, "downloads": -1, "filename": "tbvaccine-0.3.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "e6099ee0d69d5d1301d740f7c006aa08", "packagetype": "bdist_wheel", "python_version": "3.6", "requires_python": null, "size": 8181, "upload_time": "2018-12-14T18:07:29", "url": "https://files.pythonhosted.org/packages/b1/fb/84c930393fb23cf5fef93629df6370c51639306f0f403b9628f1d44b3b26/tbvaccine-0.3.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "680db7c14961091cd968a614be9be47c", "sha256": "8665d037ac8ad4c97bc44512de91798565b1226f7b2f59669bb7dbe9a1f87718" }, "downloads": -1, "filename": "tbvaccine-0.3.1.tar.gz", "has_sig": false, "md5_digest": "680db7c14961091cd968a614be9be47c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7438, "upload_time": "2018-12-14T18:07:28", "url": "https://files.pythonhosted.org/packages/b2/2e/e8a5f61ae44deb508778fc828fe9cc167d5bbc5e594f016f5c477aabf293/tbvaccine-0.3.1.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "e6099ee0d69d5d1301d740f7c006aa08", "sha256": "3aae41b75e237f2840dde274722b1070ca43d65dd24cf60344bd6d345c77cc3d" }, "downloads": -1, "filename": "tbvaccine-0.3.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "e6099ee0d69d5d1301d740f7c006aa08", "packagetype": "bdist_wheel", "python_version": "3.6", "requires_python": null, "size": 8181, "upload_time": "2018-12-14T18:07:29", "url": "https://files.pythonhosted.org/packages/b1/fb/84c930393fb23cf5fef93629df6370c51639306f0f403b9628f1d44b3b26/tbvaccine-0.3.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "680db7c14961091cd968a614be9be47c", "sha256": "8665d037ac8ad4c97bc44512de91798565b1226f7b2f59669bb7dbe9a1f87718" }, "downloads": -1, "filename": "tbvaccine-0.3.1.tar.gz", "has_sig": false, "md5_digest": "680db7c14961091cd968a614be9be47c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7438, "upload_time": "2018-12-14T18:07:28", "url": "https://files.pythonhosted.org/packages/b2/2e/e8a5f61ae44deb508778fc828fe9cc167d5bbc5e594f016f5c477aabf293/tbvaccine-0.3.1.tar.gz" } ] }