Replace which command subprocesses with shutil.which()#136
Open
bwoodsend wants to merge 1 commit intoasweigart:masterfrom
Open
Replace which command subprocesses with shutil.which()#136bwoodsend wants to merge 1 commit intoasweigart:masterfrom
which command subprocesses with shutil.which()#136bwoodsend wants to merge 1 commit intoasweigart:masterfrom
Conversation
This fixes (hidden by default) warnings about the subprocesses'
stdout/stderr handles not being closed before being garbage collected:
> PYTHONWARNINGS=always::Warning pytest
...
../../../home/brenainn/.pyenv/versions/3.12.0/lib/python3.12/site-packages/pyscreeze/__init__.py:81
/home/brenainn/.pyenv/versions/3.12.0/lib/python3.12/site-packages/pyscreeze/__init__.py:81: ResourceWarning: unclosed file <_io.BufferedReader name=11>
whichProc = subprocess.Popen(['which', 'scrot'], stdout=subprocess.PIPE, stderr=subprocess.PIPE)
Enable tracemalloc to get traceback where the object was allocated.
See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info.
../../../home/brenainn/.pyenv/versions/3.12.0/lib/python3.12/site-packages/pyscreeze/__init__.py:81
/home/brenainn/.pyenv/versions/3.12.0/lib/python3.12/site-packages/pyscreeze/__init__.py:81: ResourceWarning: unclosed file <_io.BufferedReader name=13>
whichProc = subprocess.Popen(['which', 'scrot'], stdout=subprocess.PIPE, stderr=subprocess.PIPE)
Enable tracemalloc to get traceback where the object was allocated.
See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info.
And it removes the awkwardness of minimal Linux environments that don't
have `which` installed.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
This fixes (hidden by default) warnings about the subprocesses' stdout/stderr handles not being closed before being garbage collected:
And it removes the awkwardness of minimal Linux environments that don't have
whichinstalled.