{ "info": { "author": "Tomas Korbar", "author_email": "tomas.korb@seznam.cz", "bugtrack_url": null, "classifiers": [ "Development Status :: 4 - Beta", "License :: OSI Approved :: GNU General Public License v3 (GPLv3)", "Topic :: Software Development :: Debuggers", "Topic :: Software Development :: Quality Assurance", "Topic :: Software Development :: Testing" ], "description": "# comparerr\n\nComparerr uses pylint to analyze 2 versions of python software versioned with git and lists you messages which did not occur in old version and messages which are no longer emitted. It is an alternative to pylints disabling of some messages because they are not useful or they are false positives.\n\n## Example\nWe have 2 branches. Master is the most recent stable development and pull request is my new changes which add new feature to my software.\n - master\n - pullrequest\n\nI want to know if i did not add some new warning to those which were already occurring.\nSo i will run:\n\n $ comparerr \"./.git\" \"master\" \"pullrequest\" --error-only --targets src/ tests/ \\*.py\nLet me explain what happens here.\n\n 1. `\"./.git\"` first argument is a location of the git repository\n 2. `\"master\"` first git reference for comparison\n 3. `\"pullrequest\"` second git reference for comparison\n 4. `--error-only` options which forces pylint and comparerr to work only with errors in code and\n not search for example coding style issues.\n 4. `--targets src/ tests/ \\*.py` these are folders and files which we want to analyze with pylint. *Please note escaped asterisk symbol. You can use regex but you must escape it, because your shell could and most probably will resolve them in context of your current working directory*\n\nNow lets see the output.\n```\nFixed errors:\nMessage: Instance of 'JunkClass' has no '_non_existent' member\nFile: /junk.py\nLine: 4\nContext:\n\nclass JunkClass:\n def __init__(self):\n self._non_existent += 1\n\n\nAdded errors:\nMessage: Undefined variable 'variabble'\nFile: /junk.py\nLine: 9\nContext:\n def great_method(self, keyword=None):\n variable = 1\n print(variabble)\n```\n\nFirst block `Fixed errors:` shows us what messages have not been present in analysis of new version.\n\nSecond block `Added errors:` shows us what messages have been added in analysis of new version.\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/TomasKorbar/comparerr", "keywords": "lint,testing,CI", "license": "GPL3", "maintainer": "", "maintainer_email": "", "name": "comparerr", "package_url": "https://pypi.org/project/comparerr/", "platform": "", "project_url": "https://pypi.org/project/comparerr/", "project_urls": { "Homepage": "https://github.com/TomasKorbar/comparerr" }, "release_url": "https://pypi.org/project/comparerr/0.2.0/", "requires_dist": [ "GitPython (>=3)", "pylint (>=2.3.1)" ], "requires_python": ">=3.7", "summary": "Comparerr is a tool which which analyzes two versions of python software versioned by git with pylint and shows you errors which you added and fixed.", "version": "0.2.0" }, "last_serial": 5839967, "releases": { "0.2.0": [ { "comment_text": "", "digests": { "md5": "e41f8af44043d1c36c6ad340ba025889", "sha256": "b17e9a4c0ba0a6372aabed9b1ab4210f3cda15a0994895d7e33f6d4942fbd3dd" }, "downloads": -1, "filename": "comparerr-0.2.0-py3-none-any.whl", "has_sig": false, "md5_digest": "e41f8af44043d1c36c6ad340ba025889", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.7", "size": 20126, "upload_time": "2019-09-17T07:11:59", "url": "https://files.pythonhosted.org/packages/30/b0/209afb35eb34ab189c75fdea286af74e5527e40bd4742d2f8149ef995b7a/comparerr-0.2.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "396a1b49ec7605b8839d1cc10da65c8b", "sha256": "ddd491f5dfd5a45639b878b409042c382fe0567a68b40dffb83b5abb8e4f7c03" }, "downloads": -1, "filename": "comparerr-0.2.0.tar.gz", "has_sig": false, "md5_digest": "396a1b49ec7605b8839d1cc10da65c8b", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.7", "size": 4904, "upload_time": "2019-09-17T07:12:01", "url": "https://files.pythonhosted.org/packages/cf/22/5905a75027fc632437c1d2ca5fcd1101c8f6bce2fe489c5c531f64497e6b/comparerr-0.2.0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "e41f8af44043d1c36c6ad340ba025889", "sha256": "b17e9a4c0ba0a6372aabed9b1ab4210f3cda15a0994895d7e33f6d4942fbd3dd" }, "downloads": -1, "filename": "comparerr-0.2.0-py3-none-any.whl", "has_sig": false, "md5_digest": "e41f8af44043d1c36c6ad340ba025889", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.7", "size": 20126, "upload_time": "2019-09-17T07:11:59", "url": "https://files.pythonhosted.org/packages/30/b0/209afb35eb34ab189c75fdea286af74e5527e40bd4742d2f8149ef995b7a/comparerr-0.2.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "396a1b49ec7605b8839d1cc10da65c8b", "sha256": "ddd491f5dfd5a45639b878b409042c382fe0567a68b40dffb83b5abb8e4f7c03" }, "downloads": -1, "filename": "comparerr-0.2.0.tar.gz", "has_sig": false, "md5_digest": "396a1b49ec7605b8839d1cc10da65c8b", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.7", "size": 4904, "upload_time": "2019-09-17T07:12:01", "url": "https://files.pythonhosted.org/packages/cf/22/5905a75027fc632437c1d2ca5fcd1101c8f6bce2fe489c5c531f64497e6b/comparerr-0.2.0.tar.gz" } ] }