{ "info": { "author": "Brian Rutledge", "author_email": "brian@bhrutledge.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 5 - Production/Stable", "Framework :: Pytest", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Operating System :: OS Independent", "Programming Language :: Python", "Programming Language :: Python :: 2", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7", "Programming Language :: Python :: 3.8", "Programming Language :: Python :: Implementation :: CPython", "Topic :: Software Development :: Testing" ], "description": "# pytest-quarantine\n\n[![PyPI version](https://img.shields.io/pypi/v/pytest-quarantine.svg)](https://pypi.org/project/pytest-quarantine)\n[![Python versions](https://img.shields.io/pypi/pyversions/pytest-quarantine.svg)](https://pypi.org/project/pytest-quarantine)\n[![Linux build status](https://img.shields.io/travis/com/EnergySage/pytest-quarantine?logo=travis)](https://travis-ci.com/EnergySage/pytest-quarantine)\n[![Windows build status](https://img.shields.io/appveyor/ci/EnergySage/pytest-quarantine?logo=appveyor)](https://ci.appveyor.com/project/EnergySage/pytest-quarantine)\n[![Test coverage](https://img.shields.io/codecov/c/github/EnergySage/pytest-quarantine?logo=codecov)](https://codecov.io/gh/EnergySage/pytest-quarantine)\n\nA plugin for [pytest](https://github.com/pytest-dev/pytest) to manage expected test failures.\n\n## Features\n\nSave the list of failing tests, so that they can be automatically marked as expected failures on future test runs.\n\n### Why?\n\nYou've got a test suite; nicely done! Unfortunately, for completely understandable reasons, a lot of the tests are failing. Someday, you and/or your team will get those tests to pass. For now, though, what you really want is to draw a line in the sand and avoid new test failures. Unfortunately, it's hard to tell when they're introduced because the test suite is already failing. You could get the test suite to pass by applying [`pytest.mark.xfail`](http://doc.pytest.org/en/latest/skipping.html#xfail) to the existing failures, but there are *so many* of them.\n\nWith this plugin, you can save all of existing failures to a file (the quarantine). On future test runs, this plugin will automatically apply `pytest.mark.xfail` to the quarantined tests. Then, the test suite will pass, and any new failures will cause it to fail.\n\n## Requirements\n\n- Python 2.7 or 3.5+\n- pytest 4.6 or newer\n\n## Installation\n\nVia [pip](https://pypi.org/project/pip/) from [PyPI](https://pypi.org/project/pytest-quarantine) in an active [virtual environment](https://docs.python.org/3/tutorial/venv.html):\n\n```\n$ pip install pytest-quarantine\n```\n\n## Usage\n\nRun your test suite and save the failing tests to `quarantine.txt`:\n\n```\n$ pytest --save-quarantine=quarantine.txt\n============================= test session starts ==============================\n...\ncollected 1380 items\n\n...\n\n---------------------- 661 items saved to quarantine.txt -----------------------\n============== 629 failed, 719 passed, 32 error in 312.56 seconds ==============\n```\n\nAdd `quarantine.txt` to your version control system.\n\nRun your test suite with the quarantined tests marked as expected failures:\n\n```\n$ pytest --quarantine=quarantine.txt\n============================= test session starts ==============================\n...\ncollected 1380 items\nadded mark.xfail to 661 of 661 items from quarantine.txt\n\n...\n\n================== 719 passed, 661 xfailed in 300.51 seconds ===================\n```\n\nWhen the expected failures eventually pass (i.e., they get counted as `xpassed`), they can be removed manually from `quarantine.txt`, or automatically using `--save-quarantine`. Note that the latter will overwrite the contents of the quarantine, so it's best to only use it when running the entire test suite.\n\n## Getting help\n\nPlease submit questions, bug reports, and feature requests in the [issue tracker](https://github.com/EnergySage/pytest-quarantine/issues).\n\n## Contributing\n\nImprovements to the code and documentation are greatly appreciated. See [How to contribute](https://github.com/EnergySage/pytest-quarantine/blob/master/CONTRIBUTING.md) for details.\n\n## Code of conduct\n\nEveryone interacting with this project is expected to follow the [Contributor Covenant](https://github.com/EnergySage/pytest-quarantine/blob/master/CODE_OF_CONDUCT.md).\n\n## License\n\nDistributed under the terms of the [MIT](http://opensource.org/licenses/MIT) license.\n\n## Acknowledgements\n\nThis project was initially developed at [EnergySage](https://www.energysage.com/about/who-we-are) to aid our migration to Python 3. We hope other people find it helpful.\n\nThe name was inspired by the [quarantine feature](https://confluence.atlassian.com/bamboo/quarantining-failing-tests-289276886.html) of the Bamboo CI/CD service. [Pros and Cons of Quarantined Tests](https://marklapierre.net/pros-cons-quarantined-tests/) is a good introduction to the concept (not related to this project).\n\nThe repository was generated with [Cookiecutter](https://github.com/audreyr/cookiecutter) using the [cookiecutter-pytest-plugin](https://github.com/pytest-dev/cookiecutter-pytest-plugin) template. The layout and tooling has been heavily modified since then, but it was very helpful to start.\n\nSome other helpful resources were:\n\n- [Starting an Open Source Project | Open Source Guides](https://opensource.guide/starting-a-project/)\n- [Testing & Packaging | Hynek Schlawack](https://hynek.me/articles/testing-packaging/)\n- [Maintaining a Python Project When It\u2019s Not Your Job | Hynek Schlawack](https://hynek.me/talks/python-foss/)\n- [Python Testing with pytest | Brian Okken | The Pragmatic Bookshelf](https://pragprog.com/book/bopytest/python-testing-with-pytest)\n- [Developing better test suites for pytest plugins | Raphael Pierzina](https://raphael.codes/blog/test-suites-for-pytest-plugins/)\n- [GitHub search](https://github.com/search) for examples from `org:pytest-dev org:pypa org:pycqa org:pallets org:encode`\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/EnergySage/pytest-quarantine", "keywords": "", "license": "MIT", "maintainer": "Brian Rutledge", "maintainer_email": "brian@bhrutledge.com", "name": "pytest-quarantine", "package_url": "https://pypi.org/project/pytest-quarantine/", "platform": "", "project_url": "https://pypi.org/project/pytest-quarantine/", "project_urls": { "Homepage": "https://github.com/EnergySage/pytest-quarantine" }, "release_url": "https://pypi.org/project/pytest-quarantine/2.0.0/", "requires_dist": [ "attrs", "pytest (>=4.6)", "tox ; extra == 'dev'", "coverage ; extra == 'dev'", "pre-commit ; extra == 'dev'", "pydocstyle ; extra == 'dev'", "flake8 ; extra == 'dev'", "black ; extra == 'dev'" ], "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*", "summary": "A plugin for pytest to manage expected test failures", "version": "2.0.0", "yanked": false, "yanked_reason": null }, "last_serial": 8783435, "releases": { "0.0.0": [ { "comment_text": "", "digests": { "md5": "92d04678c058abe15e28136474ed4a19", "sha256": "5e943f34033c05662af1c7586124fb67bb6daefc3a4d4c12114e0b3cf906c740" }, "downloads": -1, "filename": "pytest_quarantine-0.0.0-py2.py3-none-any.whl", "has_sig": true, "md5_digest": "92d04678c058abe15e28136474ed4a19", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*", "size": 3743, "upload_time": "2019-10-21T09:55:53", "upload_time_iso_8601": "2019-10-21T09:55:53.562940Z", "url": "https://files.pythonhosted.org/packages/73/b1/7efebe5bba6c43ff1d3414b7c19e83010b9309c63ed8a9b2d4de9c3cc3d0/pytest_quarantine-0.0.0-py2.py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "8164cede049e602e4ca26801e12aa249", "sha256": "d2cc62d2a7c0261dce714fe58334279ccff715cda0c3751c7e8f0a772f3069e4" }, "downloads": -1, "filename": "pytest_quarantine-0.0.0.tar.gz", "has_sig": true, "md5_digest": "8164cede049e602e4ca26801e12aa249", "packagetype": "sdist", "python_version": "source", "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*", "size": 10111, "upload_time": "2019-10-21T09:55:56", "upload_time_iso_8601": "2019-10-21T09:55:56.268872Z", "url": "https://files.pythonhosted.org/packages/4e/3e/a0b81309666a88cf24024e8a89463fea1e9dc4b94d89862770678b958ea3/pytest_quarantine-0.0.0.tar.gz", "yanked": false, "yanked_reason": null } ], "0.0.1": [ { "comment_text": "", "digests": { "md5": "210157f74a7102940f2c3867136072ab", "sha256": "65f27d1230738fa3388739dea589566f4c38637092ce60d446fae9b3173e72ac" }, "downloads": -1, "filename": "pytest_quarantine-0.0.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "210157f74a7102940f2c3867136072ab", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*", "size": 3744, "upload_time": "2019-10-23T10:56:39", "upload_time_iso_8601": "2019-10-23T10:56:39.607238Z", "url": "https://files.pythonhosted.org/packages/11/04/f89694e1b6a6864843d4fe1cc1e8143980a6e97b78e7557eaa7fd23076ff/pytest_quarantine-0.0.1-py2.py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "76d42141cd62f495dd390862187f4100", "sha256": "fcbf9a51a140aebd43ccb43e5e00d7d4eece38b695245625911226efa0760d6d" }, "downloads": -1, "filename": "pytest_quarantine-0.0.1.tar.gz", "has_sig": false, "md5_digest": "76d42141cd62f495dd390862187f4100", "packagetype": "sdist", "python_version": "source", "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*", "size": 10269, "upload_time": "2019-10-23T10:56:41", "upload_time_iso_8601": "2019-10-23T10:56:41.043511Z", "url": "https://files.pythonhosted.org/packages/1b/c6/76fb32bbfb25ca343d446a85f1e05d02618baf9a90d189e4da5fab72c580/pytest_quarantine-0.0.1.tar.gz", "yanked": false, "yanked_reason": null } ], "0.0.1rc2": [ { "comment_text": "", "digests": { "md5": "f08494ad1ed42b00bf19c38b4e303d86", "sha256": "02184cfdfe34dc84d9a9a03a0bbbacf40d3068f022a9c001561e4b5888f3f9b2" }, "downloads": -1, "filename": "pytest_quarantine-0.0.1rc2-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "f08494ad1ed42b00bf19c38b4e303d86", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*", "size": 3787, "upload_time": "2019-10-23T09:59:04", "upload_time_iso_8601": "2019-10-23T09:59:04.551307Z", "url": "https://files.pythonhosted.org/packages/10/51/62eb4c7d3cd6b64387522a042423c3f339ae5d98e724b4fb366fe1e113b6/pytest_quarantine-0.0.1rc2-py2.py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "66f468933f211b118fdc24e84ede3857", "sha256": "626990656344648b844beae3b783fb929f2662ae8b45e80e2db1768eaf17fdec" }, "downloads": -1, "filename": "pytest_quarantine-0.0.1rc2.tar.gz", "has_sig": false, "md5_digest": "66f468933f211b118fdc24e84ede3857", "packagetype": "sdist", "python_version": "source", "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*", "size": 10298, "upload_time": "2019-10-23T09:59:06", "upload_time_iso_8601": "2019-10-23T09:59:06.250656Z", "url": "https://files.pythonhosted.org/packages/9a/0a/3e07b55f9fb18e554fd5de116998195317f94ad8a2ce188c474a06dbe390/pytest_quarantine-0.0.1rc2.tar.gz", "yanked": false, "yanked_reason": null } ], "0.0.1rc3": [ { "comment_text": "", "digests": { "md5": "c46b7aed46ace3ebe499c24e78f80294", "sha256": "60fc8172044095fce4dd67c5037ada660f38644c0597ba4175c03896835beb92" }, "downloads": -1, "filename": "pytest_quarantine-0.0.1rc3-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "c46b7aed46ace3ebe499c24e78f80294", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*", "size": 3788, "upload_time": "2019-10-23T10:22:43", "upload_time_iso_8601": "2019-10-23T10:22:43.633362Z", "url": "https://files.pythonhosted.org/packages/08/38/bbe875d1ad252855bf128af1f5a2a838a6cfd06d07851d61b76a31a74811/pytest_quarantine-0.0.1rc3-py2.py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "99fe3d356492622b9db7c5cfa5d41bcb", "sha256": "7df2e201cecc94ebdb884e9098898b839550b109f1f604270bd51c3a22bb0fdc" }, "downloads": -1, "filename": "pytest_quarantine-0.0.1rc3.tar.gz", "has_sig": false, "md5_digest": "99fe3d356492622b9db7c5cfa5d41bcb", "packagetype": "sdist", "python_version": "source", "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*", "size": 10261, "upload_time": "2019-10-23T10:22:44", "upload_time_iso_8601": "2019-10-23T10:22:44.720335Z", "url": "https://files.pythonhosted.org/packages/9d/f6/4d9ac8311cc3e156d1616bd78d4fb7851959d71eed4a884f446a896f328b/pytest_quarantine-0.0.1rc3.tar.gz", "yanked": false, "yanked_reason": null } ], "0.0.2": [ { "comment_text": "", "digests": { "md5": "7fc031e34be2efb89fa24db9af684c91", "sha256": "34b98b105d28779aaa2655cf55f7e15f93455e6243887ddb5bb322990cc8e0b6" }, "downloads": -1, "filename": "pytest_quarantine-0.0.2-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "7fc031e34be2efb89fa24db9af684c91", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*", "size": 3753, "upload_time": "2019-11-01T21:01:41", "upload_time_iso_8601": "2019-11-01T21:01:41.966873Z", "url": "https://files.pythonhosted.org/packages/00/4c/f9ed3de3c5f1939816608a4fcef8c584c8b31f89cab4be23ca28d0bf1e67/pytest_quarantine-0.0.2-py2.py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "8da59e1a495b7e1d7581a5e0b7bde3b8", "sha256": "c5f1858fef8790e0ccfbdd8df9b8db7e37c0506adcc5647c8a7877a067234b32" }, "downloads": -1, "filename": "pytest_quarantine-0.0.2.tar.gz", "has_sig": false, "md5_digest": "8da59e1a495b7e1d7581a5e0b7bde3b8", "packagetype": "sdist", "python_version": "source", "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*", "size": 10249, "upload_time": "2019-11-01T21:01:43", "upload_time_iso_8601": "2019-11-01T21:01:43.446960Z", "url": "https://files.pythonhosted.org/packages/fe/dd/d0d7a45e1269ef01139239a4117f2e6320a3a69455694a17b57c4e495af7/pytest_quarantine-0.0.2.tar.gz", "yanked": false, "yanked_reason": null } ], "0.0.3": [ { "comment_text": "", "digests": { "md5": "85e8114c22d677dc6bd7b4d57aee89de", "sha256": "1a0a28439bf12e9a51212cb6958b6dd93fef58842d41399df9c04bac51110b24" }, "downloads": -1, "filename": "pytest_quarantine-0.0.3-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "85e8114c22d677dc6bd7b4d57aee89de", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*", "size": 3753, "upload_time": "2019-11-02T15:50:48", "upload_time_iso_8601": "2019-11-02T15:50:48.016317Z", "url": "https://files.pythonhosted.org/packages/5a/29/6868b29379f1cb4fbd60c0e2fc992e17e065bffca1d6d792b925ad297cfb/pytest_quarantine-0.0.3-py2.py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "de25878857bbdbcf3689429893ab4e8c", "sha256": "cfe25b17137c9051d3777a74c4fb7606fc37e46dff1ed93cb1644ddccfdf68cd" }, "downloads": -1, "filename": "pytest_quarantine-0.0.3.tar.gz", "has_sig": false, "md5_digest": "de25878857bbdbcf3689429893ab4e8c", "packagetype": "sdist", "python_version": "source", "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*", "size": 10411, "upload_time": "2019-11-02T15:50:49", "upload_time_iso_8601": "2019-11-02T15:50:49.381028Z", "url": "https://files.pythonhosted.org/packages/15/b9/4bb502e0f74a6291e75e5efd22c06afd04d8ae557194bc427b896a65c317/pytest_quarantine-0.0.3.tar.gz", "yanked": false, "yanked_reason": null } ], "1.0.0": [ { "comment_text": "", "digests": { "md5": "9e6813c7618e831a6d4a35630f1ccb1a", "sha256": "aaafdf8707534e31ef8cf91b47a03ff18db38a284821a93295dc3c9b5161afbe" }, "downloads": -1, "filename": "pytest_quarantine-1.0.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "9e6813c7618e831a6d4a35630f1ccb1a", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*", "size": 5574, "upload_time": "2019-11-03T18:57:10", "upload_time_iso_8601": "2019-11-03T18:57:10.958061Z", "url": "https://files.pythonhosted.org/packages/89/db/aa898212b03df089d91a851536e10d7f76200298728f3a54c6d26be62e58/pytest_quarantine-1.0.0-py2.py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "4a086def1923b35cb333b25784ecc620", "sha256": "0c89aa64310f2976a742626e1ea19685ed1d39c3bc3afd712c38eed97224fca9" }, "downloads": -1, "filename": "pytest_quarantine-1.0.0.tar.gz", "has_sig": false, "md5_digest": "4a086def1923b35cb333b25784ecc620", "packagetype": "sdist", "python_version": "source", "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*", "size": 12416, "upload_time": "2019-11-03T18:57:12", "upload_time_iso_8601": "2019-11-03T18:57:12.379730Z", "url": "https://files.pythonhosted.org/packages/83/c9/7b2620e2649529baad4b6ac6d2c1ac5dbbb3e8e9cd394b6bfd350d13fa0d/pytest_quarantine-1.0.0.tar.gz", "yanked": false, "yanked_reason": null } ], "1.0.0a0": [ { "comment_text": "", "digests": { "md5": "2e908569d4909ffbb73c96156a80903f", "sha256": "94b2a74ab2d8980ede85e11d745bbe1138847d3a1fd32b5b0bac66ae50f65833" }, "downloads": -1, "filename": "pytest_quarantine-1.0.0a0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "2e908569d4909ffbb73c96156a80903f", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*", "size": 4787, "upload_time": "2019-11-03T00:51:56", "upload_time_iso_8601": "2019-11-03T00:51:56.082842Z", "url": "https://files.pythonhosted.org/packages/b2/e8/28c9081ca16fbf2c1f75c8a95d628ea6948b537096a76da0ba8678f442ba/pytest_quarantine-1.0.0a0-py2.py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "0d84305d45bb2963c7d929e4d9f3da51", "sha256": "cac3dd5daaa62d91a1b23f98909f8a9187bfeddd6491f00f0458246c3fd8df5d" }, "downloads": -1, "filename": "pytest_quarantine-1.0.0a0.tar.gz", "has_sig": false, "md5_digest": "0d84305d45bb2963c7d929e4d9f3da51", "packagetype": "sdist", "python_version": "source", "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*", "size": 11547, "upload_time": "2019-11-03T00:51:57", "upload_time_iso_8601": "2019-11-03T00:51:57.563069Z", "url": "https://files.pythonhosted.org/packages/6d/1c/329a4c219cef75cb8bd39606da3d378982cf3f02aa81dc43e42e682cc3a6/pytest_quarantine-1.0.0a0.tar.gz", "yanked": false, "yanked_reason": null } ], "1.0.0b1": [ { "comment_text": "", "digests": { "md5": "755d8a5869268909ab231a588b8d6b02", "sha256": "792e109c790e1bde3c46c1759f3e366d051ac0bf1b539c52d58e92aa8e2a1045" }, "downloads": -1, "filename": "pytest_quarantine-1.0.0b1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "755d8a5869268909ab231a588b8d6b02", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*", "size": 5439, "upload_time": "2019-11-03T14:34:15", "upload_time_iso_8601": "2019-11-03T14:34:15.650317Z", "url": "https://files.pythonhosted.org/packages/ff/46/838d0d2de4c7e0733474abdc6d84cd73886b0af6686c3e2f2185ba105402/pytest_quarantine-1.0.0b1-py2.py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "00810c0dad073bdcf9b9561ef910a9e1", "sha256": "c21b795407c8abfe877d8ba418b28c148e03899de73fd155c7f7032c42515331" }, "downloads": -1, "filename": "pytest_quarantine-1.0.0b1.tar.gz", "has_sig": false, "md5_digest": "00810c0dad073bdcf9b9561ef910a9e1", "packagetype": "sdist", "python_version": "source", "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*", "size": 12170, "upload_time": "2019-11-03T14:34:16", "upload_time_iso_8601": "2019-11-03T14:34:16.937888Z", "url": "https://files.pythonhosted.org/packages/77/55/3fb2e402413dd847b0288f2ad18d8ead50a5ead00ac196888a243581ab0b/pytest_quarantine-1.0.0b1.tar.gz", "yanked": false, "yanked_reason": null } ], "1.1.0": [ { "comment_text": "", "digests": { "md5": "715b50896a41ff1632fadd275321e6d5", "sha256": "992177bdcf059e5cf762a8c88dd2cda6f1967fcf58aac6ed26caf40f5c473de7" }, "downloads": -1, "filename": "pytest_quarantine-1.1.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "715b50896a41ff1632fadd275321e6d5", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*", "size": 6436, "upload_time": "2019-11-11T17:38:37", "upload_time_iso_8601": "2019-11-11T17:38:37.988966Z", "url": "https://files.pythonhosted.org/packages/43/91/72bd3e4dec191dfb44f6adf15f1df71190a374659d7eca64fbb96999926d/pytest_quarantine-1.1.0-py2.py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "59b462db647deb065f4308908991eb48", "sha256": "7f2d93e84fdd2b3415d0b6d0cf9f2567cbde094c680aa011690b8287aad9adfe" }, "downloads": -1, "filename": "pytest_quarantine-1.1.0.tar.gz", "has_sig": false, "md5_digest": "59b462db647deb065f4308908991eb48", "packagetype": "sdist", "python_version": "source", "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*", "size": 14188, "upload_time": "2019-11-11T17:38:39", "upload_time_iso_8601": "2019-11-11T17:38:39.517468Z", "url": "https://files.pythonhosted.org/packages/da/0c/8ca81d34136033024c6c689c713951491dfc710be1ffd3f5af826c0e1459/pytest_quarantine-1.1.0.tar.gz", "yanked": false, "yanked_reason": null } ], "1.2.0": [ { "comment_text": "", "digests": { "md5": "47cc531d46e11a85464a1817e19ef69b", "sha256": "9fbe2c3de203e7c62ea465411c9978acc324898d395d993e15f6ccaa55943c61" }, "downloads": -1, "filename": "pytest_quarantine-1.2.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "47cc531d46e11a85464a1817e19ef69b", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*", "size": 6471, "upload_time": "2019-11-13T11:18:40", "upload_time_iso_8601": "2019-11-13T11:18:40.671942Z", "url": "https://files.pythonhosted.org/packages/bb/69/1a8e3b0e78f9ae4dc5b0a3172d78638dd5fd68926d20a26646ebc7527e6d/pytest_quarantine-1.2.0-py2.py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "11c8c3288d6b950ede6b7e3454b53123", "sha256": "b45265cabe08cfc2ba9f01dbfb0326ff72620ffcba05f42433391c71abf31f60" }, "downloads": -1, "filename": "pytest_quarantine-1.2.0.tar.gz", "has_sig": false, "md5_digest": "11c8c3288d6b950ede6b7e3454b53123", "packagetype": "sdist", "python_version": "source", "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*", "size": 14387, "upload_time": "2019-11-13T11:18:41", "upload_time_iso_8601": "2019-11-13T11:18:41.922840Z", "url": "https://files.pythonhosted.org/packages/ac/00/3fde46cc0a6a17ac0d530289172d23b3862b54c28ea52ae1a69ed9796a74/pytest_quarantine-1.2.0.tar.gz", "yanked": false, "yanked_reason": null } ], "2.0.0": [ { "comment_text": "", "digests": { "md5": "01042618fd1abaf782a829afa1d61c0b", "sha256": "8bfa7db4f43e85c06449713b9655b23c6e5470b84f1f0200f84b3d945615438b" }, "downloads": -1, "filename": "pytest_quarantine-2.0.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "01042618fd1abaf782a829afa1d61c0b", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*", "size": 6753, "upload_time": "2019-11-24T12:11:25", "upload_time_iso_8601": "2019-11-24T12:11:25.996636Z", "url": "https://files.pythonhosted.org/packages/b6/98/f1dc0080ac5f0a69ed016b5b7c953671aaa72667a2de70bfaf3a3e67f674/pytest_quarantine-2.0.0-py2.py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "a2cb5201c127d3e4d1256547eb596572", "sha256": "dda53da57c8150e99982f092ceed6d65c85031e0215a5689a3f150801851aaac" }, "downloads": -1, "filename": "pytest_quarantine-2.0.0.tar.gz", "has_sig": false, "md5_digest": "a2cb5201c127d3e4d1256547eb596572", "packagetype": "sdist", "python_version": "source", "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*", "size": 14872, "upload_time": "2019-11-24T12:11:27", "upload_time_iso_8601": "2019-11-24T12:11:27.426384Z", "url": "https://files.pythonhosted.org/packages/95/5a/47db22b0f863bb4f33187e2f97c710dab27d5d542fedcc228b80980a7502/pytest_quarantine-2.0.0.tar.gz", "yanked": false, "yanked_reason": null } ], "2.0.0a0": [ { "comment_text": "", "digests": { "md5": "6255a45799c4b8f334cfa6b5e499bfc7", "sha256": "7dadab5646d880545c58d2a1a64f7350937debda3c42ec9ccca48b6da1805435" }, "downloads": -1, "filename": "pytest_quarantine-2.0.0a0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "6255a45799c4b8f334cfa6b5e499bfc7", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*", "size": 6303, "upload_time": "2019-11-17T20:13:06", "upload_time_iso_8601": "2019-11-17T20:13:06.682952Z", "url": "https://files.pythonhosted.org/packages/2c/e8/66e9fd65ef7cf09ff122a80a068ede7c4b6b0c4abd4409c95ad7d10d8e0a/pytest_quarantine-2.0.0a0-py2.py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "534644fc89d812b0fcc6e849474229f8", "sha256": "9024438bdf67dba4770f422ac4abe1e73d2e76abdde42d30dedf721d97a41ad8" }, "downloads": -1, "filename": "pytest_quarantine-2.0.0a0.tar.gz", "has_sig": false, "md5_digest": "534644fc89d812b0fcc6e849474229f8", "packagetype": "sdist", "python_version": "source", "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*", "size": 14215, "upload_time": "2019-11-17T20:13:08", "upload_time_iso_8601": "2019-11-17T20:13:08.114358Z", "url": "https://files.pythonhosted.org/packages/ee/fc/f16332aff57007c4375e0be85a62d646266c72561e0e8f6e5d7d0d0d0497/pytest_quarantine-2.0.0a0.tar.gz", "yanked": false, "yanked_reason": null } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "01042618fd1abaf782a829afa1d61c0b", "sha256": "8bfa7db4f43e85c06449713b9655b23c6e5470b84f1f0200f84b3d945615438b" }, "downloads": -1, "filename": "pytest_quarantine-2.0.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "01042618fd1abaf782a829afa1d61c0b", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*", "size": 6753, "upload_time": "2019-11-24T12:11:25", "upload_time_iso_8601": "2019-11-24T12:11:25.996636Z", "url": "https://files.pythonhosted.org/packages/b6/98/f1dc0080ac5f0a69ed016b5b7c953671aaa72667a2de70bfaf3a3e67f674/pytest_quarantine-2.0.0-py2.py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "a2cb5201c127d3e4d1256547eb596572", "sha256": "dda53da57c8150e99982f092ceed6d65c85031e0215a5689a3f150801851aaac" }, "downloads": -1, "filename": "pytest_quarantine-2.0.0.tar.gz", "has_sig": false, "md5_digest": "a2cb5201c127d3e4d1256547eb596572", "packagetype": "sdist", "python_version": "source", "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*", "size": 14872, "upload_time": "2019-11-24T12:11:27", "upload_time_iso_8601": "2019-11-24T12:11:27.426384Z", "url": "https://files.pythonhosted.org/packages/95/5a/47db22b0f863bb4f33187e2f97c710dab27d5d542fedcc228b80980a7502/pytest_quarantine-2.0.0.tar.gz", "yanked": false, "yanked_reason": null } ], "vulnerabilities": [] }