{ "info": { "author": "Faster Than Light", "author_email": "devops@fasterthanlight.dev", "bugtrack_url": null, "classifiers": [ "Development Status :: 3 - Alpha", "Intended Audience :: Developers", "License :: OSI Approved :: GNU General Public License v2 (GPLv2)", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7", "Programming Language :: Python :: 3.8", "Topic :: Software Development :: Build Tools" ], "description": "# bugcatcher-ci\nContinuous Integration Tool Assisting in Static Code Analysis Facilitated Through BugCatcher by Faster Than Light\n\n[![PyPI version](https://badge.fury.io/py/bugcatcher-ci.svg)](https://badge.fury.io/py/bugcatcher-ci)\n[![CircleCI](https://circleci.com/gh/faster-than-light/bugcatcher-ci.svg?style=svg)](https://circleci.com/gh/faster-than-light/bugcatcher-ci)\n\n[![Issues](https://img.shields.io/github/issues/faster-than-light/bugcatcher-ci)](https://github.com/faster-than-light/bugcatcher-ci/issues)\n![Forks](https://img.shields.io/github/forks/faster-than-light/bugcatcher-ci)\n![Stars](https://img.shields.io/github/stars/faster-than-light/bugcatcher-ci)\n[![License: GPL v2](https://img.shields.io/badge/License-GPL%20v2-blue.svg)](https://www.gnu.org/licenses/old-licenses/gpl-2.0.en.html)\n\n### Installation\n\n#### Installing with PIP\n`pip install bugcatcher-ci`\n\n#### Sample Integration\nPlease view the changed files in [this PR](https://github.com/faster-than-light/sampleproject/pull/1). Setting up your testing is as easy as following this example and making sure you have an environment variable saved on CircleCI/TravisCI for `FTL_SID`. Your `FTL_SID` can be found on the dashboard of your BugCatcher account at https://bugcatcher.fasterthanlight.dev\n\nExample of a test run using BugCatcher-CI:\n```\n% pytest -s\n=============================================================== test session starts ===============================================================\nplatform darwin -- Python 3.8.0, pytest-5.2.2, py-1.8.0, pluggy-0.13.0\nrootdir: /sampleproject\nplugins: bugcatcher-0.1.6\ncollected 2 items \n\ntests/test_simple.py \nTesting codebase with BugCatcher API...\nUploading \"sampleproject\" code to BugCatcher...\nFound a `.gitignore` file. Evaluating files...\n6 of 20 local files match .gitignore patterns.\n14 files ready to upload...\nLocal item MANIFEST.in\nLocal item README.md\nLocal item setup.py\nLocal item .gitignore\nLocal item tox.ini\nLocal item setup.cfg\nLocal item LICENSE.txt\nLocal item .travis.yml\nLocal item tests/test_simple.py\nLocal item tests/__init__.py\nLocal item sample/__init__.py\nLocal item sample/package_data.dat\nLocal item data/data_file\nLocal item .circleci/config.yml\nSending new files:\n\t.circleci/config.yml\n\t.gitignore\n\t.travis.yml\n\tLICENSE.txt\n\tMANIFEST.in\n\tREADME.md\n\tdata/data_file\n\tsample/__init__.py\n\tsample/package_data.dat\n\tsetup.cfg\n\tsetup.py\n\ttests/__init__.py\n\ttests/test_simple.py\n\ttox.ini\n\n14 items total changed\n\nRunning tests on \"sampleproject\" using BugCatcher...\nBugCatcher results for \"sampleproject\":\n\nSeverity: low ===> tests/test_simple.py (lines 15-15)\n\tassert_used - Use of assert detected. The enclosed code will be removed when compiling to optimised byte code.\n\nSeverity: low ===> tests/test_simple.py (lines 17-17)\n\tassert_used - Use of assert detected. The enclosed code will be removed when compiling to optimised byte code.\n\nSeverity: low ===> tests/test_simple.py (lines 21-21)\n\tassert_used - Use of assert detected. The enclosed code will be removed when compiling to optimised byte code.\n\nMinimum Severity Level to FAIL tests: \"medium\"\nPASSING! - All results are less than \"medium\" level severity.\n..\n\n=============================================================== 2 passed in 34.72s ================================================================\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/faster-than-light/bugcatcher-ci", "keywords": "CI CircleCI Travis-CI Python static analysis", "license": "", "maintainer": "", "maintainer_email": "", "name": "bugcatcher-ci", "package_url": "https://pypi.org/project/bugcatcher-ci/", "platform": "", "project_url": "https://pypi.org/project/bugcatcher-ci/", "project_urls": { "Bug Reports": "https://github.com/faster-than-light/bugcatcher-ci/issues", "Homepage": "https://github.com/faster-than-light/bugcatcher-ci", "Source": "https://github.com/faster-than-light/bugcatcher-ci/" }, "release_url": "https://pypi.org/project/bugcatcher-ci/0.1.9/", "requires_dist": [ "bugcatcher (>=0.1.6)", "check-manifest ; extra == 'dev'", "coverage ; extra == 'test'" ], "requires_python": ">=3.5", "summary": "A continuous integration tool for Python static analysis", "version": "0.1.9", "yanked": false, "yanked_reason": null }, "last_serial": 6088688, "releases": { "0.1.5": [ { "comment_text": "", "digests": { "md5": "1d56c62cb10cef52cfd9eca7fad3d7a2", "sha256": "e1a6497133b112dc4f6613e96013f637577a8b4aba11188179b9d554ee08176d" }, "downloads": -1, "filename": "bugcatcher_ci-0.1.5-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "1d56c62cb10cef52cfd9eca7fad3d7a2", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": ">=3.5", "size": 11350, "upload_time": "2019-11-01T00:49:40", "upload_time_iso_8601": "2019-11-01T00:49:40.757523Z", "url": "https://files.pythonhosted.org/packages/39/52/4447b31fcd5368ef2928773dce2a8f7a1aba925d1964164fc660c6a71fe9/bugcatcher_ci-0.1.5-py2.py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "5d92cfc9dd1a404d89466d06dde1f18d", "sha256": "a9d3c48226890ba20ce9f2f3bd1bc2d21deec7c60c9b70b391b9bae616b54ff6" }, "downloads": -1, "filename": "bugcatcher-ci-0.1.5.tar.gz", "has_sig": false, "md5_digest": "5d92cfc9dd1a404d89466d06dde1f18d", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.5", "size": 12661, "upload_time": "2019-11-01T00:49:42", "upload_time_iso_8601": "2019-11-01T00:49:42.427641Z", "url": "https://files.pythonhosted.org/packages/39/8b/887481acb1e162b87b26f387159aeb4129487a0e8052ddd279dceb468de7/bugcatcher-ci-0.1.5.tar.gz", "yanked": false, "yanked_reason": null } ], "0.1.6": [ { "comment_text": "", "digests": { "md5": "f86851f497f682699adf0bb150d2656c", "sha256": "58ef29ef3e82b37ae1fc577233c77e2701b7331cd13656acf5b6bc08002c55bf" }, "downloads": -1, "filename": "bugcatcher_ci-0.1.6-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "f86851f497f682699adf0bb150d2656c", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": ">=3.5", "size": 11404, "upload_time": "2019-11-01T01:19:29", "upload_time_iso_8601": "2019-11-01T01:19:29.737061Z", "url": "https://files.pythonhosted.org/packages/72/e6/1cbae6c709b0935924075dd6678d698b110745ddbcabc28070bebcf04e44/bugcatcher_ci-0.1.6-py2.py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "34af6b31140be7ad26084a021430730e", "sha256": "e6cdebb3123ef473e48f4fcef3526fd9d3321dd561da96f9116807b435592bd4" }, "downloads": -1, "filename": "bugcatcher-ci-0.1.6.tar.gz", "has_sig": false, "md5_digest": "34af6b31140be7ad26084a021430730e", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.5", "size": 12683, "upload_time": "2019-11-01T01:19:30", "upload_time_iso_8601": "2019-11-01T01:19:30.964062Z", "url": "https://files.pythonhosted.org/packages/6e/fd/bff591266e16241bdbabd4a603952709041dc823efd7e84d01230f0c9af0/bugcatcher-ci-0.1.6.tar.gz", "yanked": false, "yanked_reason": null } ], "0.1.8": [ { "comment_text": "", "digests": { "md5": "5ef20c614bc1d02a4bdbd5d535a7b8f4", "sha256": "f2205966ee9a888677ba35c9db00f784c93c423c9a3697baae6b5939247c53f9" }, "downloads": -1, "filename": "bugcatcher_ci-0.1.8-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "5ef20c614bc1d02a4bdbd5d535a7b8f4", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": ">=3.5", "size": 12447, "upload_time": "2019-11-06T17:17:16", "upload_time_iso_8601": "2019-11-06T17:17:16.642952Z", "url": "https://files.pythonhosted.org/packages/b3/fc/d8ae77fe772809b45077b39e0c07f6b9cc51425c360253997a8a6f899bce/bugcatcher_ci-0.1.8-py2.py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "778b977958ea683d279b0839f969c56a", "sha256": "bd841391bae234e2d129065fcf2cbcee3fae2ce7b91ef442a04959f67495c8aa" }, "downloads": -1, "filename": "bugcatcher-ci-0.1.8.tar.gz", "has_sig": false, "md5_digest": "778b977958ea683d279b0839f969c56a", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.5", "size": 13763, "upload_time": "2019-11-06T17:17:18", "upload_time_iso_8601": "2019-11-06T17:17:18.349722Z", "url": "https://files.pythonhosted.org/packages/85/c9/96b730bcf62bc0eb8325fdc9b942e898fa55b92ebde6d05b6a7e113d6b6e/bugcatcher-ci-0.1.8.tar.gz", "yanked": false, "yanked_reason": null } ], "0.1.9": [ { "comment_text": "", "digests": { "md5": "3417fd33a4c289741673c4d554eb0bc1", "sha256": "f8c5db3f867d8e99bfca2d1b8ba1450d1944e1bfa0e51b21adfe133540c81238" }, "downloads": -1, "filename": "bugcatcher_ci-0.1.9-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "3417fd33a4c289741673c4d554eb0bc1", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": ">=3.5", "size": 12447, "upload_time": "2019-11-06T17:21:45", "upload_time_iso_8601": "2019-11-06T17:21:45.461544Z", "url": "https://files.pythonhosted.org/packages/4a/23/eb500b57879d9a050e48e030449346f17669ffebcf01bf78fea2da0879a0/bugcatcher_ci-0.1.9-py2.py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "c8fe2fcf4774fd28b04ddf883b44a07a", "sha256": "fe6fd946888af19e4575f3618956e0308af919552b71720baa85e86bd03cba7c" }, "downloads": -1, "filename": "bugcatcher-ci-0.1.9.tar.gz", "has_sig": false, "md5_digest": "c8fe2fcf4774fd28b04ddf883b44a07a", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.5", "size": 13770, "upload_time": "2019-11-06T17:21:46", "upload_time_iso_8601": "2019-11-06T17:21:46.979643Z", "url": "https://files.pythonhosted.org/packages/8b/39/86c66a3ba9f6ac1d5b0355392787df63736d9f73770b30d18cae5c48257d/bugcatcher-ci-0.1.9.tar.gz", "yanked": false, "yanked_reason": null } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "3417fd33a4c289741673c4d554eb0bc1", "sha256": "f8c5db3f867d8e99bfca2d1b8ba1450d1944e1bfa0e51b21adfe133540c81238" }, "downloads": -1, "filename": "bugcatcher_ci-0.1.9-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "3417fd33a4c289741673c4d554eb0bc1", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": ">=3.5", "size": 12447, "upload_time": "2019-11-06T17:21:45", "upload_time_iso_8601": "2019-11-06T17:21:45.461544Z", "url": "https://files.pythonhosted.org/packages/4a/23/eb500b57879d9a050e48e030449346f17669ffebcf01bf78fea2da0879a0/bugcatcher_ci-0.1.9-py2.py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "c8fe2fcf4774fd28b04ddf883b44a07a", "sha256": "fe6fd946888af19e4575f3618956e0308af919552b71720baa85e86bd03cba7c" }, "downloads": -1, "filename": "bugcatcher-ci-0.1.9.tar.gz", "has_sig": false, "md5_digest": "c8fe2fcf4774fd28b04ddf883b44a07a", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.5", "size": 13770, "upload_time": "2019-11-06T17:21:46", "upload_time_iso_8601": "2019-11-06T17:21:46.979643Z", "url": "https://files.pythonhosted.org/packages/8b/39/86c66a3ba9f6ac1d5b0355392787df63736d9f73770b30d18cae5c48257d/bugcatcher-ci-0.1.9.tar.gz", "yanked": false, "yanked_reason": null } ], "vulnerabilities": [] }