pytest-dev / pytest-dev/pytest-xdist

please add looponfailrootsignore option

Open
#633 1 comment 2 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

enhancement help wanted
Dominant language
Python
Stars
1.9k
Forks
287
Avg merge
9h 30m
Merged PRs (30d)
2

Description

(I hope this is the right repo to open the issue, I arrived here via https://github.com/pytest-dev/pytest/issues/679 pointing to https://github.com/pytest-dev/pytest-xdist/issues/499).

I think https://github.com/pytest-dev/pytest-xdist/issues/51 isn't a duplicate of this issue, though if the regex based watch list suggestion is the fix, that would solve this issue too.

I'm using https://pypi.org/project/vcrpy/ in some tests where I want to test my 3rd party API wrappers, and record the vcr files alongside the test files (similar to jest's snapshot testing approach). However, when I am just creating the API interaction, pytest --looponfail goes into an infinite loop, as the recorded file keeps updating.

It would be great if there was a looponfailrootsignore option, similar to the rsyncignore option

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start at the pytest --looponfail entry point and compare its file-watching behavior with the rsyncignore option mentioned in the issue. Trace how watched roots and ignored paths are configured, then add coverage showing that changes to ignored roots do not trigger another loop while other changes still do.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
testing
Issue type
Feature
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.