Skip to content

Commit

Permalink
Add fake __getattribute__ to AbstractSandbox to let type-checkers kno…
Browse files Browse the repository at this point in the history
…w it has a bunch of dynamic methods
  • Loading branch information
Avasam committed Oct 31, 2024
1 parent c032a5b commit e3d3e98
Showing 1 changed file with 6 additions and 1 deletion.
7 changes: 6 additions & 1 deletion setuptools/sandbox.py
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@
import tempfile
import textwrap
from types import TracebackType
from typing import TYPE_CHECKING, ClassVar
from typing import TYPE_CHECKING, Any, ClassVar

import pkg_resources
from pkg_resources import working_set
Expand Down Expand Up @@ -406,6 +406,11 @@ def _remap_pair(self, operation, src, dst, *args, **kw):
self._remap_input(operation + '-to', dst, *args, **kw),
)

if TYPE_CHECKING:
# This is a catch-all for all the dynamically created attributes.
# This isn't public API anyway
def __getattribute__(self, name: str) -> Any: ...


if hasattr(os, 'devnull'):
_EXCEPTIONS = [os.devnull]
Expand Down

0 comments on commit e3d3e98

Please sign in to comment.