diff --git a/cwltool/context.py b/cwltool/context.py index e76c7dad6..28050b8ea 100644 --- a/cwltool/context.py +++ b/cwltool/context.py @@ -2,7 +2,6 @@ import copy import os import shutil -import sys import tempfile import threading from typing import ( @@ -199,7 +198,7 @@ def __init__(self, kwargs: Optional[Dict[str, Any]] = None) -> None: self.default_stdout: Optional[Union[IO[bytes], TextIO]] = None self.default_stderr: Optional[Union[IO[bytes], TextIO]] = None self.validate_only: bool = False - self.validate_stdout: Union[IO[bytes], TextIO, IO[str]] = sys.stdout + self.validate_stdout: Optional[Union[IO[bytes], TextIO, IO[str]]] = None super().__init__(kwargs) if self.tmp_outdir_prefix == "": self.tmp_outdir_prefix = self.tmpdir_prefix diff --git a/tests/test_subclass_mypyc.py b/tests/test_subclass_mypyc.py index bb138cdc5..aa4964b34 100644 --- a/tests/test_subclass_mypyc.py +++ b/tests/test_subclass_mypyc.py @@ -81,3 +81,12 @@ def test_serialize_builder() -> None: "docker", ) assert pickle.dumps(builder) + + +def test_pickle_unpickle_runtime_context() -> None: + """We can pickle & unpickle RuntimeContext""" + + runtime_context = RuntimeContext() + stream = pickle.dumps(runtime_context) + assert stream + assert pickle.loads(stream)