-
-
Notifications
You must be signed in to change notification settings - Fork 530
Avoid race conditions in tests using the demo_pkg_inline fixture #2986
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
Conversation
Working on the typing fix. never understood why pytest fixtures are strongly typed, but will try to figure it out. |
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I like the solution.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
👍
By using FileLock (already used as a dependency), we ensure only one test uses the demo_pkg at a time. This avoids race conditions happening with `pytest -n=auto`. Fixes tox-dev#2985
Belated idea: Should the lockfile be gitignored? |
Yeah |
Do you prefer |
|
This PR contains the following updates: | Package | Type | Update | Change | Pending | |---|---|---|---|---| | [tox](https://togithub.com/tox-dev/tox) ([changelog](https://tox.wiki/en/latest/changelog.html)) | dev | minor | `4.4.8` -> `4.5.1` | `4.6.0` (+1) | --- ### Release Notes <details> <summary>tox-dev/tox</summary> ### [`v4.5.1`](https://togithub.com/tox-dev/tox/releases/tag/4.5.1): Test Trusted Publisher [Compare Source](https://togithub.com/tox-dev/tox/compare/4.5.0...4.5.1) ### [`v4.5.0`](https://togithub.com/tox-dev/tox/releases/tag/4.5.0) [Compare Source](https://togithub.com/tox-dev/tox/compare/4.4.12...4.5.0) #### What's Changed - Bump deps and tools by [@​gaborbernat](https://togithub.com/gaborbernat) in [https://github.com/tox-dev/tox/pull/2987](https://togithub.com/tox-dev/tox/pull/2987) - git: Ignore the .lock file for demo_pkg_inline by [@​hroncok](https://togithub.com/hroncok) in [https://github.com/tox-dev/tox/pull/2988](https://togithub.com/tox-dev/tox/pull/2988) - Add FAQ entry on how to test against EOL Python versions by [@​jugmac00](https://togithub.com/jugmac00) in [https://github.com/tox-dev/tox/pull/2991](https://togithub.com/tox-dev/tox/pull/2991) - Feature: suppress step timings for verbosity=1 [#​2891](https://togithub.com/tox-dev/tox/issues/2891) by [@​nedbat](https://togithub.com/nedbat) in [https://github.com/tox-dev/tox/pull/2992](https://togithub.com/tox-dev/tox/pull/2992) **Full Changelog**: tox-dev/tox@4.4.12...4.5.0 ### [`v4.4.12`](https://togithub.com/tox-dev/tox/releases/tag/4.4.12) [Compare Source](https://togithub.com/tox-dev/tox/compare/4.4.11...4.4.12) #### What's Changed - Avoid race conditions in tests using the demo_pkg_inline fixture by [@​hroncok](https://togithub.com/hroncok) in [https://github.com/tox-dev/tox/pull/2986](https://togithub.com/tox-dev/tox/pull/2986) - Bump deps and tools by [@​gaborbernat](https://togithub.com/gaborbernat) in [https://github.com/tox-dev/tox/pull/2981](https://togithub.com/tox-dev/tox/pull/2981) **Full Changelog**: tox-dev/tox@4.4.11...4.4.12 ### [`v4.4.11`](https://togithub.com/tox-dev/tox/releases/tag/4.4.11) [Compare Source](https://togithub.com/tox-dev/tox/compare/4.4.10...4.4.11) #### What's Changed - Allow plugins to set `tox_root` by [@​kdestin](https://togithub.com/kdestin) in [https://github.com/tox-dev/tox/pull/2978](https://togithub.com/tox-dev/tox/pull/2978) #### New Contributors - [@​kdestin](https://togithub.com/kdestin) made their first contribution in [https://github.com/tox-dev/tox/pull/2978](https://togithub.com/tox-dev/tox/pull/2978) **Full Changelog**: tox-dev/tox@4.4.10...4.4.11 ### [`v4.4.10`](https://togithub.com/tox-dev/tox/releases/tag/4.4.10) [Compare Source](https://togithub.com/tox-dev/tox/compare/4.4.9...4.4.10) #### What's Changed - Bump deps and tools by [@​gaborbernat](https://togithub.com/gaborbernat) in [https://github.com/tox-dev/tox/pull/2976](https://togithub.com/tox-dev/tox/pull/2976) - Fix `tox_root` propagation to `work_dir` by [@​Tbruno25](https://togithub.com/Tbruno25) in [https://github.com/tox-dev/tox/pull/2962](https://togithub.com/tox-dev/tox/pull/2962) #### New Contributors - [@​Tbruno25](https://togithub.com/Tbruno25) made their first contribution in [https://github.com/tox-dev/tox/pull/2962](https://togithub.com/tox-dev/tox/pull/2962) **Full Changelog**: tox-dev/tox@4.4.9...4.4.10 ### [`v4.4.9`](https://togithub.com/tox-dev/tox/releases/tag/4.4.9) [Compare Source](https://togithub.com/tox-dev/tox/compare/4.4.8...4.4.9) #### What's Changed - Added python 3.11 by [@​ElBe-Plaq](https://togithub.com/ElBe-Plaq) in [https://github.com/tox-dev/tox/pull/2964](https://togithub.com/tox-dev/tox/pull/2964) - Document running tox within a Docker container by [@​31z4](https://togithub.com/31z4) in [https://github.com/tox-dev/tox/pull/2923](https://togithub.com/tox-dev/tox/pull/2923) - Correct Docker image working dir by [@​31z4](https://togithub.com/31z4) in [https://github.com/tox-dev/tox/pull/2965](https://togithub.com/tox-dev/tox/pull/2965) - Avoid UnicodeDecodeError from command output by [@​masenf](https://togithub.com/masenf) in [https://github.com/tox-dev/tox/pull/2970](https://togithub.com/tox-dev/tox/pull/2970) - Bump pypa/gh-action-pypi-publish from 1.8.3 to 1.8.5 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/tox-dev/tox/pull/2971](https://togithub.com/tox-dev/tox/pull/2971) #### New Contributors - [@​ElBe-Plaq](https://togithub.com/ElBe-Plaq) made their first contribution in [https://github.com/tox-dev/tox/pull/2964](https://togithub.com/tox-dev/tox/pull/2964) - [@​31z4](https://togithub.com/31z4) made their first contribution in [https://github.com/tox-dev/tox/pull/2923](https://togithub.com/tox-dev/tox/pull/2923) **Full Changelog**: tox-dev/tox@4.4.8...4.4.9 </details> --- ### Configuration 📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Enabled. ♻ **Rebasing**: Whenever PR is behind base branch, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNS4xMC4yIiwidXBkYXRlZEluVmVyIjoiMzUuMTAuMiJ9--> Co-authored-by: descope[bot] <descope[bot]@users.noreply.github.com>
By using FileLock (already used as a dependency),
we ensure only one test uses the demo_pkg at a time.
This avoids race conditions happening with
pytest -n=auto
.Fixes #2985
Thanks for contribution
Please, make sure you address all the checklists (for details on how see
development documentation)!
tox -e fix
)docs/changelog
folder