cli.output: use subprocess.DEVNULL in PlayerOutput #5242
Merged
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.
Instead of passing
os.devnull
file-handles tosubprocess.Popen
, use thesubprocess.DEVNULL
identifier for stdout/stderr streams.This avoids
ResourceWarning
s in tests when the file-handles don't get closed despite never callingPlayerOutput.open()
, as they were already opened in thePlayerOutput
's constructor, e.g. during test collection in parametrized tests without indirect fixtures.Also call
PlayerOutput.close()
in tests where a mocked player output was explicitly opened.master
https://github.com/streamlink/streamlink/actions/runs/4394894339/jobs/7696256649#step:5:282
PR
https://github.com/streamlink/streamlink/actions/runs/4397095519/jobs/7699992192#step:5:281