Skip to content

Commit ff36c72

Browse files
committed
Avoid common browser log errors:
Its too easy for user or framework their using to pass limited-functionality sys.stderr wrappers, so detect it and don't pass it to browser since it won't work with Popen.
1 parent dcbf2ad commit ff36c72

File tree

2 files changed

+3
-2
lines changed

2 files changed

+3
-2
lines changed

choreographer/browser.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -82,7 +82,8 @@ def __init__(
8282
and not isinstance(stderr, int) ):
8383
try: stderr.fileno()
8484
except io.UnsupportedOperation:
85-
warnings.warn("A value has been passed to debug_browser which is not compatible with python. The default value if deug_browser is True is whatever the value of sys.stderr is. sys.stderr may be many things but debug_browser must be a value Popen accepts for stderr, or True.")
85+
warnings.warn("A value has been passed to debug_browser which is not compatible with python's Popen. This may be because one was passed to Browser or because sys.stderr has been overrided by a framework. Browser logs will not be handled by python in this case.")
86+
stderr = None
8687

8788

8889

tests/conftest.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,7 @@ def pytest_addoption(parser):
4646
async def browser(request):
4747
headless = request.config.getoption("--headless")
4848
debug = request.config.get_verbosity() > 2
49-
debug_browser = None if debug else False # what's going on here
49+
debug_browser = None if debug else False
5050
browser = await choreo.Browser(
5151
headless=headless, debug=debug, debug_browser=debug_browser
5252
)

0 commit comments

Comments
 (0)