Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

chore(deps): update dependency pytest-xdist to v3 #116

Merged
merged 1 commit into from
Jun 6, 2023

Conversation

renovate[bot]
Copy link
Contributor

@renovate renovate bot commented Apr 15, 2023

Mend Renovate

This PR contains the following updates:

Package Change Age Adoption Passing Confidence
pytest-xdist (changelog) ==2.5.0 -> ==3.3.1 age adoption passing confidence

Release Notes

pytest-dev/pytest-xdist

v3.3.1

Compare Source

===============================

Bug Fixes

  • #&#8203;907 <https://github.com/pytest-dev/pytest-xdist/issues/907>_: 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-dev/execnet#&#8203;96 <https://github.com/pytest-dev/execnet/issues/96>__).

v3.3.0

Compare Source

===============================

Features

  • #&#8203;555 <https://github.com/pytest-dev/pytest-xdist/issues/555>_: Improved progress output when collecting nodes to be less verbose.

v3.2.1

Compare Source

===============================

Bug Fixes

  • #&#8203;884 <https://github.com/pytest-dev/pytest-xdist/issues/884>_: Fixed hang in worksteal scheduler.

v3.2.0

Compare Source

===============================

Improved Documentation

  • #&#8203;863 <https://github.com/pytest-dev/pytest-xdist/issues/863>_: Document limitations for debugging due to standard I/O of workers not being forwarded. Also, mention remote debugging as a possible workaround.

Features

  • #&#8203;855 <https://github.com/pytest-dev/pytest-xdist/issues/855>_: Users can now configure load scheduling precision using --maxschedchunk command
    line option.

  • #&#8203;858 <https://github.com/pytest-dev/pytest-xdist/issues/858>: New worksteal scheduler, based on the idea of work stealing <https://en.wikipedia.org/wiki/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

  • #&#8203;870 <https://github.com/pytest-dev/pytest-xdist/issues/870>_: Make the tests pass even when $PYTEST_XDIST_AUTO_NUM_WORKERS is set.

v3.1.0

Compare Source

===============================

Features

  • #&#8203;789 <https://github.com/pytest-dev/pytest-xdist/issues/789>_: Users can now set a default distribution mode in their configuration file:

    .. code-block:: ini

    [pytest]
    addopts = --dist loadscope
    
  • #&#8203;842 <https://github.com/pytest-dev/pytest-xdist/issues/842>_: Python 3.11 is now officially supported.

Removals

  • #&#8203;842 <https://github.com/pytest-dev/pytest-xdist/issues/842>_: Python 3.6 is no longer supported.

v3.0.2

Compare Source

===============================

Bug Fixes

  • #&#8203;813 <https://github.com/pytest-dev/pytest-xdist/issues/813>_: Cancel shutdown when a crashed worker is restarted.

Deprecations

  • #&#8203;825 <https://github.com/pytest-dev/pytest-xdist/issues/825>_: The --rsyncdir command line argument and rsyncdirs config variable are deprecated.

    The rsync feature will be removed in pytest-xdist 4.0.

  • #&#8203;826 <https://github.com/pytest-dev/pytest-xdist/issues/826>_: 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

  • #&#8203;791 <https://github.com/pytest-dev/pytest-xdist/issues/791>_: Document the pytest_xdist_auto_num_workers hook.

  • #&#8203;796 <https://github.com/pytest-dev/pytest-xdist/issues/796>_: Added known limitations section to documentation.

  • #&#8203;829 <https://github.com/pytest-dev/pytest-xdist/issues/829>_: Document the -n logical option.

Features

  • #&#8203;792 <https://github.com/pytest-dev/pytest-xdist/issues/792>_: The environment variable PYTEST_XDIST_AUTO_NUM_WORKERS can now be used to
    specify the default for -n auto and -n logical.

  • #&#8203;812 <https://github.com/pytest-dev/pytest-xdist/issues/812>_: 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

  • #&#8203;468 <https://github.com/pytest-dev/pytest-xdist/issues/468>_: 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

  • #&#8203;468 <https://github.com/pytest-dev/pytest-xdist/issues/468>_: The py dependency has been dropped.

  • #&#8203;822 <https://github.com/pytest-dev/pytest-xdist/issues/822>_: Replace internal usage of py.log with a custom solution (but with the same interface).

  • #&#8203;823 <https://github.com/pytest-dev/pytest-xdist/issues/823>_: Remove usage of py._pydir as an rsync candidate.

  • #&#8203;824 <https://github.com/pytest-dev/pytest-xdist/issues/824>_: Replace internal usages of py.path.local by pathlib.Path.


Configuration

📅 Schedule: Branch creation - "every weekend" (UTC), Automerge - At any time (no schedule defined).

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.


  • If you want to rebase/retry this PR, check this box

This PR has been generated by Mend Renovate. View repository job log here.

@renovate renovate bot force-pushed the renovate/pytest-xdist-3.x branch from 59d4fdc to a0fa894 Compare May 3, 2023 19:15
@renovate renovate bot force-pushed the renovate/pytest-xdist-3.x branch 2 times, most recently from e678a47 to b0e8f7f Compare May 19, 2023 13:11
@renovate renovate bot force-pushed the renovate/pytest-xdist-3.x branch from b0e8f7f to 1c97af9 Compare June 5, 2023 23:06
@folex folex merged commit 6267324 into main Jun 6, 2023
@folex folex deleted the renovate/pytest-xdist-3.x branch June 6, 2023 19:28
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant