The code is incompatible with python 3.6
Summary
subprocess.Popen
argument capture_output
was introduced in python3.7
and is not available in python3.6
Steps to reproduce
Attempt to launch the code with python3.6
What is the expected correct behavior?
Relevant logs and/or screenshots
> sim_runner -c test_local.toml
***
Traceback (most recent call last):
File "/work/venv-python3/bin/sim_runner", line 4, in <module>
main()
File "/work/venv-python3/lib64/python3.6/site-packages/sim_runner/scripts/sim_runner.py", line 331, in main
get_configuration_by_tag(config)
File "/work/venv-python3/lib64/python3.6/site-packages/sim_runner/scripts/sim_runner.py", line 132, in get_configuration_by_tag
subprocess.run(cmd, shell=True, capture_output=True, check=True)
File "/opt/rh/rh-python36/root/usr/lib64/python3.6/subprocess.py", line 403, in run
with Popen(*popenargs, **kwargs) as process:
TypeError: __init__() got an unexpected keyword argument 'capture_output'
Environment
- Version used: head of develop
- Operation System: docker container based on slc6 with rh-python36 package
One can emulate the same behavior with
from subprocess import PIPE
subprocess.run(["ls", "-l", "/dev/null"], stdout=PIPE, stderr=PIPE)