#50 Crash on start due to incorrect open call in python 3.7.7
Closed: Invalid by bignose. Opened by cujomalainey.

You have the following line in runner
self.daemon_context.stderr = open(app.stderr_path, 'w+t', buffering=0)
Which violates open call requirements

buffering is an optional integer used to set the buffering policy. Pass 0 to switch buffering off (only allowed in binary mode), 1 to select line buffering (only usable in text mode)

From https://docs.python.org/3/library/functions.html#open

This causes the crash

Traceback (most recent call last):
  File "main.py", line 18, in <module>
    bot = DaemonRunner(steve_miner_bot())
  File "/usr/local/lib/python3.7/site-packages/daemon/runner.py", line 114, in __init__
    self._open_streams_from_app_stream_paths(app)
  File "/usr/local/lib/python3.7/site-packages/daemon/runner.py", line 135, in _open_streams_from_app_stream_paths
    app.stderr_path, 'w+t', buffering=0)
ValueError: can't have unbuffered text I/O

You have the following line in runner

Thank you for the report.

The runner example module is looking for a separate maintainer, and is not a formal part of the daemon library. I'll close this bug report, but if anyone wants to maintain runner separately they're welcome to.

Metadata Update from @bignose:
- Issue close_status updated to: Invalid
- Issue status updated to: Closed (was: Open)

Metadata