Hi,
> v10 attached to resolve merge conflicts.
I tested and reviewed patches 0001 .. 0003 on Linux x64. All in all
the code is in a pretty good shape except for several TODOs:
```
# TODO: proper quoting
v = v.replace("\\", "\\\\")
v = v.replace("'", "\\'")
v = "'{}'".format(v)
```
and:
```
# TODO: rather than using callback(), consider explicitly signaling
# the fn() implementation to stop early if we get an exception.
# Otherwise we'll hang until the end of the timeout.
self._thread = threading.Thread(target=_bg)
self.callback(self._join)
```
Are there any plans to rewrite this code? If not, maybe there should
be no TODOs in the comments?
Also leaving this:
```
# XXX interacts poorly with testwrap's boilerplate diagnostics
# self.print("TAP version 13")
```
... doesn't seem to be particularly useful. I see XXX but what are
actionable items? If there are none, perhaps there shouldn't be XXX
here.
I haven't looked at 0004 and 0005.
--
Best regards,
Aleksander Alekseev