Vendor debugpy for VS Code attach debugging
Bundles debugpy 1.7.0 directly in python/ so "Maya: Attach (debugpy)" works with no per-machine pip install step. Installed via Maya 2022's own pip so it resolved a version actually compatible with Python 3.7 (Maya 2022's interpreter), then verified import + listen() succeeds under all three target Maya Python versions (3.7/3.9/3.10). Also fixes a latent __file__-under-exec() bug in start_debug_server.py (same pitfall as Maya's own plugin loader, never hit until this exercised it) and corrects the README's Maya Python version claim -- 2022 ships Python 3.7, not 3.9 as previously stated, which was never independently verified until now. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,32 @@
|
||||
# Copyright (c) Microsoft Corporation. All rights reserved.
|
||||
# Licensed under the MIT License. See LICENSE in the project root
|
||||
# for license information.
|
||||
|
||||
__all__ = []
|
||||
|
||||
|
||||
adapter_host = None
|
||||
"""The host on which adapter is running and listening for incoming connections
|
||||
from the launcher and the servers."""
|
||||
|
||||
channel = None
|
||||
"""DAP message channel to the adapter."""
|
||||
|
||||
|
||||
def connect(host, port):
|
||||
from debugpy.common import log, messaging, sockets
|
||||
from debugpy.launcher import handlers
|
||||
|
||||
global channel, adapter_host
|
||||
assert channel is None
|
||||
assert adapter_host is None
|
||||
|
||||
log.info("Connecting to adapter at {0}:{1}", host, port)
|
||||
|
||||
sock = sockets.create_client()
|
||||
sock.connect((host, port))
|
||||
adapter_host = host
|
||||
|
||||
stream = messaging.JsonIOStream.from_socket(sock, "Adapter")
|
||||
channel = messaging.JsonMessageChannel(stream, handlers=handlers)
|
||||
channel.start()
|
||||
Reference in New Issue
Block a user