Improve handling of ResourceWarning from sqlite3. #727
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
The patch allows suppressing ResourceWarnings from sqlite3 by specifying filter on command line with -W option.
In our project we have multiple packages with separate
pyproject.tomlfile (or even without it). Our build system runspyteston each of the packages, the only way for us to suppressResourceWarningsfrom sqlite3 is to pass the filter on the command line. This unfortunately does not work, as command line filter is escaped before compiled to regex, and escaped regex does not match non-escaped one that pytest-cov tries to match. I am adding an escaped message to the check so that both variants are checked.And in general, I do not think it was a good idea for pytest-cov to enable one specific
ResourceWarningwarning. People who care about super-clean code just usedefaultfilter orResourceWarningwith empty message. In our case we do use-Wd, but we cannot fix sqlite3 warnings as they come fromsqlalchemywhich has no easy way to close all connections in connection pool (but it is safe to garbage-collect them).