gh-95913: make the new internal classes pdb.ModuleTarget/ScriptTarget private (GH-96053)

This commit is contained in:
Irit Katriel 2022-08-18 11:16:07 +01:00 committed by GitHub
parent 4a6fa89465
commit 1a720c6003
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 5 additions and 5 deletions

View file

@ -131,7 +131,7 @@ def __repr__(self):
return self
class ScriptTarget(str):
class _ScriptTarget(str):
def __new__(cls, val):
# Mutate self to be the "real path".
res = super().__new__(cls, os.path.realpath(val))
@ -167,7 +167,7 @@ def code(self):
return f"exec(compile({fp.read()!r}, {self!r}, 'exec'))"
class ModuleTarget(str):
class _ModuleTarget(str):
def check(self):
try:
self._details
@ -1625,7 +1625,7 @@ def lookupmodule(self, filename):
return fullname
return None
def _run(self, target: Union[ModuleTarget, ScriptTarget]):
def _run(self, target: Union[_ModuleTarget, _ScriptTarget]):
# When bdb sets tracing, a number of call and line events happen
# BEFORE debugger even reaches user's code (and the exact sequence of
# events depends on python version). Take special measures to
@ -1789,7 +1789,7 @@ def main():
commands = [optarg for opt, optarg in opts if opt in ['-c', '--command']]
module_indicated = any(opt in ['-m'] for opt, optarg in opts)
cls = ModuleTarget if module_indicated else ScriptTarget
cls = _ModuleTarget if module_indicated else _ScriptTarget
target = cls(args[0])
target.check()

View file

@ -229,7 +229,7 @@ def test_others(self):
cm(
'pdb',
# pyclbr does not handle elegantly `typing` or properties
ignore=('Union', 'ModuleTarget', 'ScriptTarget'),
ignore=('Union', '_ModuleTarget', '_ScriptTarget'),
)
cm('pydoc', ignore=('input', 'output',)) # properties