pytest-leaks
pytest-leaks copied to clipboard
A pytest plugin to trace resource leaks.
It is my pytest-leaks season again soon, and every time I currently roll back my pytest version and skip/ignore some fixtures. I am not sure how involved it is to...
Instead of report summary it produce strange traceback with pytest internals. ``` memoryleak run-test: commands[0] | python3.8d -m pytest -c /dev/null --leaks=: ============================================================================ test session starts ============================================================================ platform linux --...
The current dependency on a debug version of Python is not unproblematic. For example, on MacOS there is no homebrew-installable debug version of Python. On Travis, a virtual env is...
A list of integers of leaked references does not help too much. If we have a reference to the object could we find it sources and print it in the...
Since we now have multiple authors, it may be appropriate to move this project from a personal namespace to an appropriate organization. Ideally, this belongs in the [pytest-dev](https://github.com/pytest-dev), but I...
The following leaks spuriously ``` import pytest @pytest.fixture(scope='module') def a(): return 1 @pytest.mark.parametrize("b", [1,2]) def test_threaded_same(a, b): pass ```
Numpy has the following in its `conftest.py`: ``` @pytest.fixture(autouse=True) def add_np(doctest_namespace, request): doctest_namespace['np'] = numpy ``` For some reason, this makes pytest-leaks report a leak. Didn't so far find out...
A very timely news from PyPI folks: "You can now use API tokens to upload packages to PyPI and Test PyPI!" See https://discuss.python.org/t/pypi-security-work-multifactor-auth-progress-help-needed/1042/31 /cc: @pv
Currently, the leak checking encompasses the whole setup/call/teardown cycle. This is maybe not optimal, since some pytest fixtures appear to leak, and those leaks are usually not of interest. It...
The test `tests/test_refleaks.py:test_doctest` checks for leaks, but it gives a false positive if the line `>>> items.append(SomeClass())` that adds stuff to a global variable is replaced just by `>>> SomeClass()`....