2023-11-21 21:37:43 by Adam Ciarcinski | Files touched by this commit (2) | |
Log message:
py-test-xdist: updated to 3.5.0
pytest-xdist 3.5.0 (2023-11-21)
Features
- ``--dist=loadscope`` now sorts scopes by number of tests to assign largest \
scopes early -- in many cases this should improve overall test session running \
time, as there is less chance of a large scope being left to be processed near \
the end of the session, leaving other workers idle.
|
2023-11-16 10:24:03 by Adam Ciarcinski | Files touched by this commit (2) | |
Log message:
py-test-xdist: updated to 3.4.0
pytest-xdist 3.4.0 (2023-11-11)
Features
- Wait for workers to finish reporting when test run stops early.
This makes sure that the results of in-progress tests are displayed.
Previously these reports were being discarded, losing information about the
test run.
- Added support for Python 3.12.
|
2023-10-28 21:57:26 by Thomas Klausner | Files touched by this commit (516) | |
Log message:
python/wheel.mk: simplify a lot, and switch to 'installer' for installation
This follows the recommended bootstrap method (flit_core, build, installer).
However, installer installs different files than pip, so update PLISTs
for all packages using wheel.mk and bump their PKGREVISIONs.
|
2023-05-24 08:53:06 by Adam Ciarcinski | Files touched by this commit (2) | |
Log message:
py-test-xdist: updated to 3.3.1
pytest-xdist 3.3.1 (2023-05-19)
Bug Fixes
- Avoid remote calls during startup as ``execnet`` by default does not ensure \
remote affinity with the
main thread and might accidentally schedule the pytest worker into a non-main \
thread, which breaks numerous frameworks,
for example ``asyncio``, ``anyio``, ``PyQt/PySide``, etc.
A more safe correction will require thread affinity in ``execnet``
pytest-xdist 3.3.0 (2023-05-12)
Features
- Improved progress output when collecting nodes to be less verbose.
|
2023-03-13 09:45:46 by Adam Ciarcinski | Files touched by this commit (2) | |
Log message:
py-test-xdist: updated to 3.2.1
pytest-xdist 3.2.1
Fixed hang in ``worksteal`` scheduler.
|
2023-02-20 19:00:36 by Adam Ciarcinski | Files touched by this commit (3) | |
Log message:
py-test-xdist: updated to 3.2.0
pytest-xdist 3.2.0 (2023-02-07)
Improved Documentation
Document limitations for debugging due to standard I/O of workers not being \
forwarded. Also, mention remote debugging as a possible workaround.
Features
Users can now configure load scheduling precision using --maxschedchunk command \
line option.
New worksteal scheduler, based on the idea of work stealing. It's similar to \
load scheduler, but it should handle tests with significantly differing duration \
better, and, at the same time, it should provide similar or better reuse of \
fixtures.
Trivial Changes
Make the tests pass even when $PYTEST_XDIST_AUTO_NUM_WORKERS is set.
|
2022-12-12 11:09:32 by Adam Ciarcinski | Files touched by this commit (2) | |
Log message:
py-test-xdist: updated to 3.1.0
pytest-xdist 3.1.0 (2022-12-01)
===============================
Features
--------
- Users can now set a default distribution mode in their configuration file:
.. code-block:: ini
[pytest]
addopts = --dist loadscope
- Python 3.11 is now officially supported.
Removals
--------
- Python 3.6 is no longer supported.
|
2022-10-31 13:32:31 by Adam Ciarcinski | Files touched by this commit (3) | |
Log message:
py-test-xdist: updated to 3.0.2
pytest-xdist 3.0.2 (2022-10-25)
===============================
Bug Fixes
---------
- Cancel shutdown when a crashed worker is restarted.
Deprecations
------------
- The ``--rsyncdir`` command line argument and ``rsyncdirs`` config variable are \
deprecated.
The rsync feature will be removed in pytest-xdist 4.0.
- The ``--looponfail`` command line argument and ``looponfailroots`` config \
variable are deprecated.
The loop-on-fail feature will be removed in pytest-xdist 4.0.
Improved Documentation
----------------------
- Document the ``pytest_xdist_auto_num_workers`` hook.
- Added known limitations section to documentation.
- Document the ``-n logical`` option.
Features
--------
- The environment variable ``PYTEST_XDIST_AUTO_NUM_WORKERS`` can now be used to
specify the default for ``-n auto`` and ``-n logical``.
- Partially restore old initial batch distribution algorithm in ``LoadScheduling``.
pytest orders tests for optimal sequential execution - i. e. avoiding
unnecessary setup and teardown of fixtures. So executing tests in consecutive
chunks is important for optimal performance.
In v1.14, initial test distribution in ``LoadScheduling`` was changed to
round-robin, optimized for the corner case, when the number of tests is less
than ``2 * number of nodes``. At the same time, it became worse for all other
cases.
For example: if some tests use some "heavy" fixture, and these tests \
fit into
the initial batch, with round-robin distribution the fixture will be created
``min(n_tests, n_workers)`` times, no matter how many other tests there are.
With the old algorithm (before v1.14), if there are enough tests not using
the fixture, the fixture was created only once.
So restore the old behavior for typical cases where the number of tests is
much greater than the number of workers (or, strictly speaking, when there
are at least 2 tests for every node).
Removals
--------
- The ``--boxed`` command-line option has been removed. If you still need this \
functionality, install `pytest-forked \
<https://pypi.org/project/pytest-forked>`__ separately.
Trivial Changes
---------------
- The ``py`` dependency has been dropped.
- Replace internal usage of ``py.log`` with a custom solution (but with the same \
interface).
- Remove usage of ``py._pydir`` as an rsync candidate.
- Replace internal usages of ``py.path.local`` by ``pathlib.Path``.
|
2022-08-24 12:03:24 by Thomas Klausner | Files touched by this commit (3) | |
Log message:
py-test-xdist: update to 2.5.0.
pytest-xdist 2.5.0 (2021-12-10)
===============================
Features
--------
- `#722 `_: Full compatibility with pytest 7 - no deprecation warnings or use of \
legacy features.
- `#733 `_: New ``--dist=loadgroup`` option, which ensures all tests marked with \
``@pytest.mark.xdist_group`` run in the same session/worker. Other tests run \
distributed as in ``--dist=load``.
Trivial Changes
---------------
- `#708 `_: Use ``@pytest.hookspec`` decorator to declare hook options in \
``newhooks.py`` to avoid warnings in ``pytest 7.0``.
- `#719 `_: Use up-to-date ``setup.cfg``/``pyproject.toml`` packaging setup.
- `#720 `_: Require pytest>=6.2.0.
- `#721 `_: Started using type annotations and mypy checking internally. The \
types are incomplete and not published.
pytest-xdist 2.4.0 (2021-09-20)
===============================
Features
--------
- `#696 `_: On Linux, the process title now changes to indicate the current \
worker state (running/idle).
Depends on the `setproctitle `__ package, which can be installed with ``pip \
install pytest-xdist[setproctitle]``.
- `#704 `_: Add support for Python 3.10.
pytest-xdist 2.3.0 (2021-06-16)
===============================
Deprecations and Removals
-------------------------
- `#654 `_: Python 3.5 is no longer supported.
Features
--------
- `#646 `_: Add ``--numprocesses=logical`` flag, which automatically uses the \
number of logical CPUs available, instead of physical CPUs with ``auto``.
This is very useful for test suites which are not CPU-bound.
- `#650 `_: Added new ``pytest_handlecrashitem`` hook to allow handling and \
rescheduling crashed items.
Bug Fixes
---------
- `#421 `_: Copy the parent process sys.path into local workers, to work around \
execnet's python -c adding the current directory to sys.path.
- `#638 `_: Fix issue caused by changing the branch name of the pytest repository.
Trivial Changes
---------------
- `#592 `_: Replace master with controller where ever possible.
- `#643 `_: Use 'main' to refer to pytest default branch in tox env names.
pytest-xdist 2.2.1 (2021-02-09)
===============================
Bug Fixes
---------
- `#623 `_: Gracefully handle the pending deprecation of Node.fspath by using \
config.rootpath for topdir.
pytest-xdist 2.2.0 (2020-12-14)
===============================
Features
--------
- `#608 `_: Internal errors in workers are now propagated to the master node.
pytest-xdist 2.1.0 (2020-08-25)
===============================
Features
--------
- `#585 `_: New ``pytest_xdist_auto_num_workers`` hook can be implemented by \
plugins or ``conftest.py`` files to control the number of workers when \
``--numprocesses=auto`` is given in the command-line.
Trivial Changes
---------------
- `#585 `_: ``psutil`` has proven to make ``pytest-xdist`` installation in \
certain platforms and containers problematic, so to use it for automatic number \
of CPUs detection users need to install the ``psutil`` extra::
pip install pytest-xdist[psutil]
pytest-xdist 2.0.0 (2020-08-12)
===============================
Deprecations and Removals
-------------------------
- `#541 `_: Drop backward-compatibility "slave" aliases related to \
worker nodes. We deliberately moved away from this terminology years ago, and \
it seems like the right time to finish the deprecation and removal process.
- `#569 `_: ``pytest-xdist`` no longer supports Python 2.7.
Features
--------
- `#504 `_: New functions ``xdist.is_xdist_worker``, ``xdist.is_xdist_master``, \
``xdist.get_xdist_worker_id``, to easily identify the current node.
Bug Fixes
---------
- `#471 `_: Fix issue with Rsync reporting in quiet mode.
- `#553 `_: When using ``-n auto``, count the number of physical CPU cores \
instead of logical ones.
Trivial Changes
---------------
- `#541 `_: ``pytest-xdist`` now requires ``pytest>=6.0``.
|
2022-01-14 12:49:45 by Thomas Klausner | Files touched by this commit (34) |
Log message:
*: remove workaround patches for python 3.6
|