From 9747e9a23d4b4ed81d021271fda04abf0fa6c010 Mon Sep 17 00:00:00 2001 From: Michael Seifert Date: Mon, 7 Mar 2022 13:41:42 +0100 Subject: [PATCH 1/3] docs: Extracted changelog into a separate file. Signed-off-by: Michael Seifert --- CHANGELOG.rst | 157 ++++++++++++++++++++++++++++++++++++++++++++++++ MANIFEST.in | 1 + README.rst | 163 -------------------------------------------------- 3 files changed, 158 insertions(+), 163 deletions(-) create mode 100644 CHANGELOG.rst create mode 100644 MANIFEST.in diff --git a/CHANGELOG.rst b/CHANGELOG.rst new file mode 100644 index 00000000..a6e71e2d --- /dev/null +++ b/CHANGELOG.rst @@ -0,0 +1,157 @@ +Changelog +--------- + +0.18.2 (22-03-03) +~~~~~~~~~~~~~~~~~~~ +- Fix asyncio auto mode not marking static methods. `#295 `_ +- Fix a compatibility issue with Hypothesis 6.39.0. `#302 `_ + +0.18.1 (22-02-10) +~~~~~~~~~~~~~~~~~~~ +- Fixes a regression that prevented async fixtures from working in synchronous tests. `#286 `_ + +0.18.0 (22-02-07) +~~~~~~~~~~~~~~~~~~~ + +- Raise a warning if @pytest.mark.asyncio is applied to non-async function. `#275 `_ +- Support parametrized ``event_loop`` fixture. `#278 `_ + +0.17.2 (22-01-17) +~~~~~~~~~~~~~~~~~~~ + +- Require ``typing-extensions`` on Python<3.8 only. `#269 `_ +- Fix a regression in tests collection introduced by 0.17.1, the plugin works fine with non-python tests again. `#267 `_ + + +0.17.1 (22-01-16) +~~~~~~~~~~~~~~~~~~~ +- Fixes a bug that prevents async Hypothesis tests from working without explicit ``asyncio`` marker when ``--asyncio-mode=auto`` is set. `#258 `_ +- Fixed a bug that closes the default event loop if the loop doesn't exist `#257 `_ +- Added type annotations. `#198 `_ +- Show asyncio mode in pytest report headers. `#266 `_ +- Relax ``asyncio_mode`` type definition; it allows to support pytest 6.1+. `#262 `_ + +0.17.0 (22-01-13) +~~~~~~~~~~~~~~~~~~~ +- `pytest-asyncio` no longer alters existing event loop policies. `#168 `_, `#188 `_ +- Drop support for Python 3.6 +- Fixed an issue when pytest-asyncio was used in combination with `flaky` or inherited asynchronous Hypothesis tests. `#178 `_ `#231 `_ +- Added `flaky `_ to test dependencies +- Added ``unused_udp_port`` and ``unused_udp_port_factory`` fixtures (similar to ``unused_tcp_port`` and ``unused_tcp_port_factory`` counterparts. `#99 `_ +- Added the plugin modes: *strict*, *auto*, and *legacy*. See `documentation `_ for details. `#125 `_ +- Correctly process ``KeyboardInterrupt`` during async fixture setup phase `#219 `_ + +0.16.0 (2021-10-16) +~~~~~~~~~~~~~~~~~~~ +- Add support for Python 3.10 + +0.15.1 (2021-04-22) +~~~~~~~~~~~~~~~~~~~ +- Hotfix for errors while closing event loops while replacing them. + `#209 `_ + `#210 `_ + +0.15.0 (2021-04-19) +~~~~~~~~~~~~~~~~~~~ +- Add support for Python 3.9 +- Abandon support for Python 3.5. If you still require support for Python 3.5, please use pytest-asyncio v0.14 or earlier. +- Set ``unused_tcp_port_factory`` fixture scope to 'session'. + `#163 `_ +- Properly close event loops when replacing them. + `#208 `_ + +0.14.0 (2020-06-24) +~~~~~~~~~~~~~~~~~~~ +- Fix `#162 `_, and ``event_loop`` fixture behavior now is coherent on all scopes. + `#164 `_ + +0.12.0 (2020-05-04) +~~~~~~~~~~~~~~~~~~~ +- Run the event loop fixture as soon as possible. This helps with fixtures that have an implicit dependency on the event loop. + `#156 `_ + +0.11.0 (2020-04-20) +~~~~~~~~~~~~~~~~~~~ +- Test on 3.8, drop 3.3 and 3.4. Stick to 0.10 for these versions. + `#152 `_ +- Use the new Pytest 5.4.0 Function API. We therefore depend on pytest >= 5.4.0. + `#142 `_ +- Better ``pytest.skip`` support. + `#126 `_ + +0.10.0 (2019-01-08) +~~~~~~~~~~~~~~~~~~~~ +- ``pytest-asyncio`` integrates with `Hypothesis `_ + to support ``@given`` on async test functions using ``asyncio``. + `#102 `_ +- Pytest 4.1 support. + `#105 `_ + +0.9.0 (2018-07-28) +~~~~~~~~~~~~~~~~~~ +- Python 3.7 support. +- Remove ``event_loop_process_pool`` fixture and + ``pytest.mark.asyncio_process_pool`` marker (see + https://bugs.python.org/issue34075 for deprecation and removal details) + +0.8.0 (2017-09-23) +~~~~~~~~~~~~~~~~~~ +- Improve integration with other packages (like aiohttp) with more careful event loop handling. + `#64 `_ + +0.7.0 (2017-09-08) +~~~~~~~~~~~~~~~~~~ +- Python versions pre-3.6 can use the async_generator library for async fixtures. + `#62 ` + +0.6.0 (2017-05-28) +~~~~~~~~~~~~~~~~~~ +- Support for Python versions pre-3.5 has been dropped. +- ``pytestmark`` now works on both module and class level. +- The ``forbid_global_loop`` parameter has been removed. +- Support for async and async gen fixtures has been added. + `#45 `_ +- The deprecation warning regarding ``asyncio.async()`` has been fixed. + `#51 `_ + +0.5.0 (2016-09-07) +~~~~~~~~~~~~~~~~~~ +- Introduced a changelog. + `#31 `_ +- The ``event_loop`` fixture is again responsible for closing itself. + This makes the fixture slightly harder to correctly override, but enables + other fixtures to depend on it correctly. + `#30 `_ +- Deal with the event loop policy by wrapping a special pytest hook, + ``pytest_fixture_setup``. This allows setting the policy before fixtures + dependent on the ``event_loop`` fixture run, thus allowing them to take + advantage of the ``forbid_global_loop`` parameter. As a consequence of this, + we now depend on pytest 3.0. + `#29 `_ + +0.4.1 (2016-06-01) +~~~~~~~~~~~~~~~~~~ +- Fix a bug preventing the propagation of exceptions from the plugin. + `#25 `_ + +0.4.0 (2016-05-30) +~~~~~~~~~~~~~~~~~~ +- Make ``event_loop`` fixtures simpler to override by closing them in the + plugin, instead of directly in the fixture. + `#21 `_ +- Introduce the ``forbid_global_loop`` parameter. + `#21 `_ + +0.3.0 (2015-12-19) +~~~~~~~~~~~~~~~~~~ +- Support for Python 3.5 ``async``/``await`` syntax. + `#17 `_ + +0.2.0 (2015-08-01) +~~~~~~~~~~~~~~~~~~ +- ``unused_tcp_port_factory`` fixture. + `#10 `_ + +0.1.1 (2015-04-23) +~~~~~~~~~~~~~~~~~~ +Initial release. diff --git a/MANIFEST.in b/MANIFEST.in new file mode 100644 index 00000000..18e06834 --- /dev/null +++ b/MANIFEST.in @@ -0,0 +1 @@ +include CHANGELOG.rst diff --git a/README.rst b/README.rst index 5d313344..93b369b7 100644 --- a/README.rst +++ b/README.rst @@ -254,169 +254,6 @@ Test classes subclassing the standard `unittest `__ or an async framework such as `asynctest `__. -Changelog ---------- - -0.18.2 (22-03-03) -~~~~~~~~~~~~~~~~~~~ -- Fix asyncio auto mode not marking static methods. `#295 `_ -- Fix a compatibility issue with Hypothesis 6.39.0. `#302 `_ - - -0.18.1 (22-02-10) -~~~~~~~~~~~~~~~~~~~ -- Fixes a regression that prevented async fixtures from working in synchronous tests. `#286 `_ - -0.18.0 (22-02-07) -~~~~~~~~~~~~~~~~~~~ - -- Raise a warning if @pytest.mark.asyncio is applied to non-async function. `#275 `_ -- Support parametrized ``event_loop`` fixture. `#278 `_ - -0.17.2 (22-01-17) -~~~~~~~~~~~~~~~~~~~ - -- Require ``typing-extensions`` on Python<3.8 only. `#269 `_ -- Fix a regression in tests collection introduced by 0.17.1, the plugin works fine with non-python tests again. `#267 `_ - - -0.17.1 (22-01-16) -~~~~~~~~~~~~~~~~~~~ -- Fixes a bug that prevents async Hypothesis tests from working without explicit ``asyncio`` marker when ``--asyncio-mode=auto`` is set. `#258 `_ -- Fixed a bug that closes the default event loop if the loop doesn't exist `#257 `_ -- Added type annotations. `#198 `_ -- Show asyncio mode in pytest report headers. `#266 `_ -- Relax ``asyncio_mode`` type definition; it allows to support pytest 6.1+. `#262 `_ - -0.17.0 (22-01-13) -~~~~~~~~~~~~~~~~~~~ -- `pytest-asyncio` no longer alters existing event loop policies. `#168 `_, `#188 `_ -- Drop support for Python 3.6 -- Fixed an issue when pytest-asyncio was used in combination with `flaky` or inherited asynchronous Hypothesis tests. `#178 `_ `#231 `_ -- Added `flaky `_ to test dependencies -- Added ``unused_udp_port`` and ``unused_udp_port_factory`` fixtures (similar to ``unused_tcp_port`` and ``unused_tcp_port_factory`` counterparts. `#99 `_ -- Added the plugin modes: *strict*, *auto*, and *legacy*. See `documentation `_ for details. `#125 `_ -- Correctly process ``KeyboardInterrupt`` during async fixture setup phase `#219 `_ - -0.16.0 (2021-10-16) -~~~~~~~~~~~~~~~~~~~ -- Add support for Python 3.10 - -0.15.1 (2021-04-22) -~~~~~~~~~~~~~~~~~~~ -- Hotfix for errors while closing event loops while replacing them. - `#209 `_ - `#210 `_ - -0.15.0 (2021-04-19) -~~~~~~~~~~~~~~~~~~~ -- Add support for Python 3.9 -- Abandon support for Python 3.5. If you still require support for Python 3.5, please use pytest-asyncio v0.14 or earlier. -- Set ``unused_tcp_port_factory`` fixture scope to 'session'. - `#163 `_ -- Properly close event loops when replacing them. - `#208 `_ - -0.14.0 (2020-06-24) -~~~~~~~~~~~~~~~~~~~ -- Fix `#162 `_, and ``event_loop`` fixture behavior now is coherent on all scopes. - `#164 `_ - -0.12.0 (2020-05-04) -~~~~~~~~~~~~~~~~~~~ -- Run the event loop fixture as soon as possible. This helps with fixtures that have an implicit dependency on the event loop. - `#156 `_ - -0.11.0 (2020-04-20) -~~~~~~~~~~~~~~~~~~~ -- Test on 3.8, drop 3.3 and 3.4. Stick to 0.10 for these versions. - `#152 `_ -- Use the new Pytest 5.4.0 Function API. We therefore depend on pytest >= 5.4.0. - `#142 `_ -- Better ``pytest.skip`` support. - `#126 `_ - -0.10.0 (2019-01-08) -~~~~~~~~~~~~~~~~~~~~ -- ``pytest-asyncio`` integrates with `Hypothesis `_ - to support ``@given`` on async test functions using ``asyncio``. - `#102 `_ -- Pytest 4.1 support. - `#105 `_ - -0.9.0 (2018-07-28) -~~~~~~~~~~~~~~~~~~ -- Python 3.7 support. -- Remove ``event_loop_process_pool`` fixture and - ``pytest.mark.asyncio_process_pool`` marker (see - https://bugs.python.org/issue34075 for deprecation and removal details) - -0.8.0 (2017-09-23) -~~~~~~~~~~~~~~~~~~ -- Improve integration with other packages (like aiohttp) with more careful event loop handling. - `#64 `_ - -0.7.0 (2017-09-08) -~~~~~~~~~~~~~~~~~~ -- Python versions pre-3.6 can use the async_generator library for async fixtures. - `#62 ` - - -0.6.0 (2017-05-28) -~~~~~~~~~~~~~~~~~~ -- Support for Python versions pre-3.5 has been dropped. -- ``pytestmark`` now works on both module and class level. -- The ``forbid_global_loop`` parameter has been removed. -- Support for async and async gen fixtures has been added. - `#45 `_ -- The deprecation warning regarding ``asyncio.async()`` has been fixed. - `#51 `_ - -0.5.0 (2016-09-07) -~~~~~~~~~~~~~~~~~~ -- Introduced a changelog. - `#31 `_ -- The ``event_loop`` fixture is again responsible for closing itself. - This makes the fixture slightly harder to correctly override, but enables - other fixtures to depend on it correctly. - `#30 `_ -- Deal with the event loop policy by wrapping a special pytest hook, - ``pytest_fixture_setup``. This allows setting the policy before fixtures - dependent on the ``event_loop`` fixture run, thus allowing them to take - advantage of the ``forbid_global_loop`` parameter. As a consequence of this, - we now depend on pytest 3.0. - `#29 `_ - - -0.4.1 (2016-06-01) -~~~~~~~~~~~~~~~~~~ -- Fix a bug preventing the propagation of exceptions from the plugin. - `#25 `_ - -0.4.0 (2016-05-30) -~~~~~~~~~~~~~~~~~~ -- Make ``event_loop`` fixtures simpler to override by closing them in the - plugin, instead of directly in the fixture. - `#21 `_ -- Introduce the ``forbid_global_loop`` parameter. - `#21 `_ - -0.3.0 (2015-12-19) -~~~~~~~~~~~~~~~~~~ -- Support for Python 3.5 ``async``/``await`` syntax. - `#17 `_ - -0.2.0 (2015-08-01) -~~~~~~~~~~~~~~~~~~ -- ``unused_tcp_port_factory`` fixture. - `#10 `_ - - -0.1.1 (2015-04-23) -~~~~~~~~~~~~~~~~~~ -Initial release. - - Contributing ------------ Contributions are very welcome. Tests can be run with ``tox``, please ensure From 1f9b5898021df1d07b27b4e30ae2cae091b11b84 Mon Sep 17 00:00:00 2001 From: Michael Seifert Date: Mon, 7 Mar 2022 13:43:23 +0100 Subject: [PATCH 2/3] docs: Adjusted heading adornments in changelog to reflect its status as a standalone file. Signed-off-by: Michael Seifert --- CHANGELOG.rst | 49 +++++++++++++++++++++++++------------------------ 1 file changed, 25 insertions(+), 24 deletions(-) diff --git a/CHANGELOG.rst b/CHANGELOG.rst index a6e71e2d..3eac3894 100644 --- a/CHANGELOG.rst +++ b/CHANGELOG.rst @@ -1,30 +1,31 @@ +========= Changelog ---------- +========= 0.18.2 (22-03-03) -~~~~~~~~~~~~~~~~~~~ +================= - Fix asyncio auto mode not marking static methods. `#295 `_ - Fix a compatibility issue with Hypothesis 6.39.0. `#302 `_ 0.18.1 (22-02-10) -~~~~~~~~~~~~~~~~~~~ +================= - Fixes a regression that prevented async fixtures from working in synchronous tests. `#286 `_ 0.18.0 (22-02-07) -~~~~~~~~~~~~~~~~~~~ +================= - Raise a warning if @pytest.mark.asyncio is applied to non-async function. `#275 `_ - Support parametrized ``event_loop`` fixture. `#278 `_ 0.17.2 (22-01-17) -~~~~~~~~~~~~~~~~~~~ +================= - Require ``typing-extensions`` on Python<3.8 only. `#269 `_ - Fix a regression in tests collection introduced by 0.17.1, the plugin works fine with non-python tests again. `#267 `_ 0.17.1 (22-01-16) -~~~~~~~~~~~~~~~~~~~ +================= - Fixes a bug that prevents async Hypothesis tests from working without explicit ``asyncio`` marker when ``--asyncio-mode=auto`` is set. `#258 `_ - Fixed a bug that closes the default event loop if the loop doesn't exist `#257 `_ - Added type annotations. `#198 `_ @@ -32,7 +33,7 @@ Changelog - Relax ``asyncio_mode`` type definition; it allows to support pytest 6.1+. `#262 `_ 0.17.0 (22-01-13) -~~~~~~~~~~~~~~~~~~~ +================= - `pytest-asyncio` no longer alters existing event loop policies. `#168 `_, `#188 `_ - Drop support for Python 3.6 - Fixed an issue when pytest-asyncio was used in combination with `flaky` or inherited asynchronous Hypothesis tests. `#178 `_ `#231 `_ @@ -42,17 +43,17 @@ Changelog - Correctly process ``KeyboardInterrupt`` during async fixture setup phase `#219 `_ 0.16.0 (2021-10-16) -~~~~~~~~~~~~~~~~~~~ +=================== - Add support for Python 3.10 0.15.1 (2021-04-22) -~~~~~~~~~~~~~~~~~~~ +=================== - Hotfix for errors while closing event loops while replacing them. `#209 `_ `#210 `_ 0.15.0 (2021-04-19) -~~~~~~~~~~~~~~~~~~~ +=================== - Add support for Python 3.9 - Abandon support for Python 3.5. If you still require support for Python 3.5, please use pytest-asyncio v0.14 or earlier. - Set ``unused_tcp_port_factory`` fixture scope to 'session'. @@ -61,17 +62,17 @@ Changelog `#208 `_ 0.14.0 (2020-06-24) -~~~~~~~~~~~~~~~~~~~ +=================== - Fix `#162 `_, and ``event_loop`` fixture behavior now is coherent on all scopes. `#164 `_ 0.12.0 (2020-05-04) -~~~~~~~~~~~~~~~~~~~ +=================== - Run the event loop fixture as soon as possible. This helps with fixtures that have an implicit dependency on the event loop. `#156 `_ 0.11.0 (2020-04-20) -~~~~~~~~~~~~~~~~~~~ +=================== - Test on 3.8, drop 3.3 and 3.4. Stick to 0.10 for these versions. `#152 `_ - Use the new Pytest 5.4.0 Function API. We therefore depend on pytest >= 5.4.0. @@ -80,7 +81,7 @@ Changelog `#126 `_ 0.10.0 (2019-01-08) -~~~~~~~~~~~~~~~~~~~~ +==================== - ``pytest-asyncio`` integrates with `Hypothesis `_ to support ``@given`` on async test functions using ``asyncio``. `#102 `_ @@ -88,24 +89,24 @@ Changelog `#105 `_ 0.9.0 (2018-07-28) -~~~~~~~~~~~~~~~~~~ +================== - Python 3.7 support. - Remove ``event_loop_process_pool`` fixture and ``pytest.mark.asyncio_process_pool`` marker (see https://bugs.python.org/issue34075 for deprecation and removal details) 0.8.0 (2017-09-23) -~~~~~~~~~~~~~~~~~~ +================== - Improve integration with other packages (like aiohttp) with more careful event loop handling. `#64 `_ 0.7.0 (2017-09-08) -~~~~~~~~~~~~~~~~~~ +================== - Python versions pre-3.6 can use the async_generator library for async fixtures. `#62 ` 0.6.0 (2017-05-28) -~~~~~~~~~~~~~~~~~~ +================== - Support for Python versions pre-3.5 has been dropped. - ``pytestmark`` now works on both module and class level. - The ``forbid_global_loop`` parameter has been removed. @@ -115,7 +116,7 @@ Changelog `#51 `_ 0.5.0 (2016-09-07) -~~~~~~~~~~~~~~~~~~ +================== - Introduced a changelog. `#31 `_ - The ``event_loop`` fixture is again responsible for closing itself. @@ -130,12 +131,12 @@ Changelog `#29 `_ 0.4.1 (2016-06-01) -~~~~~~~~~~~~~~~~~~ +================== - Fix a bug preventing the propagation of exceptions from the plugin. `#25 `_ 0.4.0 (2016-05-30) -~~~~~~~~~~~~~~~~~~ +================== - Make ``event_loop`` fixtures simpler to override by closing them in the plugin, instead of directly in the fixture. `#21 `_ @@ -143,15 +144,15 @@ Changelog `#21 `_ 0.3.0 (2015-12-19) -~~~~~~~~~~~~~~~~~~ +================== - Support for Python 3.5 ``async``/``await`` syntax. `#17 `_ 0.2.0 (2015-08-01) -~~~~~~~~~~~~~~~~~~ +================== - ``unused_tcp_port_factory`` fixture. `#10 `_ 0.1.1 (2015-04-23) -~~~~~~~~~~~~~~~~~~ +================== Initial release. From 47ead4fe99b5a840602bc96c93ca3c3d648710d8 Mon Sep 17 00:00:00 2001 From: Michael Seifert Date: Mon, 7 Mar 2022 13:49:07 +0100 Subject: [PATCH 3/3] build: Removed GitHub and git-related files from the source tarball. Signed-off-by: Michael Seifert --- MANIFEST.in | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/MANIFEST.in b/MANIFEST.in index 18e06834..fdf813e9 100644 --- a/MANIFEST.in +++ b/MANIFEST.in @@ -1 +1,5 @@ include CHANGELOG.rst + +recursive-exclude .github * +exclude .gitignore +exclude .pre-commit-config.yaml