* Add more logging for 313 failure
* Auto retry failures
* Add retry for socket.write
* Put watchdog timeout back and drop errors
* Fix linter
* Add message on error so at least it's logged
* Try a different combination
* Fix linter
* Go back to longer watchdog
* Try a different tactic
* Don't log failure and wait a bit in the watchdog
* Go back to the NoMoreMessages
* Just disable watchdog in 3.13 for now
* Change watchdog timeout
* Try different algorithm for ports in use
* Add retries option
* Fix usages of get_test_server_port
* Retries don't seem to work at global level with xdist, use retries on individual tests
Fix#357: "argsExpansion" does not do what it says in VSCode
Treat non-array "args" in debug config as a request to prevent shell argument escaping and allow shell expansion.
Remove "argsExpansion".
Expose "pythonArgs" to clients.
Make "python" usable in tests in lieu of "pythonPath", and make the runners use it.
Add tests for all combinations of "python"/"pythonPath" and "pythonArgs".
Propagate "subProcess" to the debug server via command line in launch scenarios.
Fix debugpy.configure() being a no-op rather than a shim for api.configure().
Add time.sleep() to attach_by_pid spinning loop to give the injected code a better chance to execute.
Read and log injector output to prevent it from blocking on prints.
Improve code injection logging.
Fix race between socket.accept() backchannel listener thread, and debug.Session.close().
Fix launcher not propagating debuggee exit code.
Fix attach-by-PID without explicit --log-dir overriding PTVSD_LOG_DIR (and disabling logging).
Improve test logging, with a separate directory for every test.
Various test fixes.