basedpyright 1.13.1 → 1.13.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (148) hide show
  1. package/dist/pyright-langserver.js +1 -1
  2. package/dist/pyright-langserver.js.map +1 -1
  3. package/dist/pyright.js +1 -1
  4. package/dist/pyright.js.map +1 -1
  5. package/dist/typeshed-fallback/commit.txt +1 -1
  6. package/dist/typeshed-fallback/stdlib/VERSIONS +3 -1
  7. package/dist/typeshed-fallback/stdlib/_ast.pyi +1 -1
  8. package/dist/typeshed-fallback/stdlib/_bisect.pyi +221 -221
  9. package/dist/typeshed-fallback/stdlib/_csv.pyi +213 -213
  10. package/dist/typeshed-fallback/stdlib/_curses.pyi +1 -2
  11. package/dist/typeshed-fallback/stdlib/_heapq.pyi +67 -67
  12. package/dist/typeshed-fallback/stdlib/_interpchannels.pyi +84 -0
  13. package/dist/typeshed-fallback/stdlib/_json.pyi +92 -92
  14. package/dist/typeshed-fallback/stdlib/_lsprof.pyi +92 -92
  15. package/dist/typeshed-fallback/stdlib/_random.pyi +30 -30
  16. package/dist/typeshed-fallback/stdlib/_tkinter.pyi +7 -0
  17. package/dist/typeshed-fallback/stdlib/_weakref.pyi +3 -2
  18. package/dist/typeshed-fallback/stdlib/argparse.pyi +6 -2
  19. package/dist/typeshed-fallback/stdlib/array.pyi +281 -281
  20. package/dist/typeshed-fallback/stdlib/asyncio/events.pyi +56 -37
  21. package/dist/typeshed-fallback/stdlib/asyncio/tasks.pyi +4 -1
  22. package/dist/typeshed-fallback/stdlib/asyncio/unix_events.pyi +156 -134
  23. package/dist/typeshed-fallback/stdlib/asyncio/windows_events.pyi +3 -2
  24. package/dist/typeshed-fallback/stdlib/audioop.pyi +95 -95
  25. package/dist/typeshed-fallback/stdlib/binascii.pyi +123 -123
  26. package/dist/typeshed-fallback/stdlib/cmath.pyi +112 -112
  27. package/dist/typeshed-fallback/stdlib/dataclasses.pyi +1 -1
  28. package/dist/typeshed-fallback/stdlib/logging/__init__.pyi +2 -5
  29. package/dist/typeshed-fallback/stdlib/math.pyi +424 -424
  30. package/dist/typeshed-fallback/stdlib/mmap.pyi +160 -154
  31. package/dist/typeshed-fallback/stdlib/multiprocessing/context.pyi +10 -6
  32. package/dist/typeshed-fallback/stdlib/multiprocessing/sharedctypes.pyi +33 -12
  33. package/dist/typeshed-fallback/stdlib/os/__init__.pyi +10 -10
  34. package/dist/typeshed-fallback/stdlib/posixpath.pyi +3 -13
  35. package/dist/typeshed-fallback/stdlib/spwd.pyi +9 -0
  36. package/dist/typeshed-fallback/stdlib/subprocess.pyi +8 -0
  37. package/dist/typeshed-fallback/stdlib/tarfile.pyi +23 -1
  38. package/dist/typeshed-fallback/stdlib/telnetlib.pyi +1 -0
  39. package/dist/typeshed-fallback/stdlib/typing.pyi +21 -2
  40. package/dist/typeshed-fallback/stdlib/weakref.pyi +4 -1
  41. package/dist/typeshed-fallback/stdlib/xml/sax/handler.pyi +1 -1
  42. package/dist/typeshed-fallback/stdlib/zlib.pyi +157 -157
  43. package/dist/typeshed-fallback/stubs/Flask-SocketIO/flask_socketio/__init__.pyi +4 -4
  44. package/dist/typeshed-fallback/stubs/aiofiles/METADATA.toml +1 -1
  45. package/dist/typeshed-fallback/stubs/aiofiles/aiofiles/base.pyi +6 -20
  46. package/dist/typeshed-fallback/stubs/aiofiles/aiofiles/os.pyi +2 -0
  47. package/dist/typeshed-fallback/stubs/aiofiles/aiofiles/ospath.pyi +5 -3
  48. package/dist/typeshed-fallback/stubs/aiofiles/aiofiles/tempfile/__init__.pyi +143 -79
  49. package/dist/typeshed-fallback/stubs/aiofiles/aiofiles/threadpool/__init__.pyi +5 -5
  50. package/dist/typeshed-fallback/stubs/assertpy/assertpy/extracting.pyi +7 -1
  51. package/dist/typeshed-fallback/stubs/docker/docker/_types.pyi +8 -0
  52. package/dist/typeshed-fallback/stubs/docker/docker/api/container.pyi +2 -2
  53. package/dist/typeshed-fallback/stubs/docker/docker/api/image.pyi +3 -2
  54. package/dist/typeshed-fallback/stubs/docker/docker/api/network.pyi +32 -15
  55. package/dist/typeshed-fallback/stubs/docker/docker/models/containers.pyi +36 -7
  56. package/dist/typeshed-fallback/stubs/docker/docker/models/images.pyi +67 -5
  57. package/dist/typeshed-fallback/stubs/docker/docker/models/networks.pyi +20 -3
  58. package/dist/typeshed-fallback/stubs/docker/docker/types/containers.pyi +78 -70
  59. package/dist/typeshed-fallback/stubs/docker/docker/utils/json_stream.pyi +4 -7
  60. package/dist/typeshed-fallback/stubs/flake8/METADATA.toml +1 -1
  61. package/dist/typeshed-fallback/stubs/fpdf2/fpdf/fpdf.pyi +16 -5
  62. package/dist/typeshed-fallback/stubs/fpdf2/fpdf/image_datastructures.pyi +2 -1
  63. package/dist/typeshed-fallback/stubs/fpdf2/fpdf/table.pyi +4 -2
  64. package/dist/typeshed-fallback/stubs/fpdf2/fpdf/text_region.pyi +7 -7
  65. package/dist/typeshed-fallback/stubs/hdbcli/METADATA.toml +1 -1
  66. package/dist/typeshed-fallback/stubs/hdbcli/hdbcli/dbapi.pyi +1 -0
  67. package/dist/typeshed-fallback/stubs/hvac/METADATA.toml +1 -1
  68. package/dist/typeshed-fallback/stubs/hvac/hvac/api/system_backend/raft.pyi +9 -0
  69. package/dist/typeshed-fallback/stubs/hvac/hvac/api/system_backend/wrapping.pyi +1 -0
  70. package/dist/typeshed-fallback/stubs/influxdb-client/METADATA.toml +1 -1
  71. package/dist/typeshed-fallback/stubs/influxdb-client/influxdb_client/client/_pages.pyi +37 -0
  72. package/dist/typeshed-fallback/stubs/influxdb-client/influxdb_client/client/bucket_api.pyi +5 -1
  73. package/dist/typeshed-fallback/stubs/influxdb-client/influxdb_client/client/tasks_api.pyi +4 -3
  74. package/dist/typeshed-fallback/stubs/influxdb-client/influxdb_client/domain/bucket.pyi +6 -6
  75. package/dist/typeshed-fallback/stubs/influxdb-client/influxdb_client/domain/task.pyi +6 -6
  76. package/dist/typeshed-fallback/stubs/networkx/METADATA.toml +3 -1
  77. package/dist/typeshed-fallback/stubs/olefile/olefile/olefile.pyi +41 -31
  78. package/dist/typeshed-fallback/stubs/openpyxl/METADATA.toml +1 -1
  79. package/dist/typeshed-fallback/stubs/openpyxl/openpyxl/cell/rich_text.pyi +3 -0
  80. package/dist/typeshed-fallback/stubs/openpyxl/openpyxl/chart/trendline.pyi +1 -2
  81. package/dist/typeshed-fallback/stubs/openpyxl/openpyxl/descriptors/base.pyi +1 -1
  82. package/dist/typeshed-fallback/stubs/openpyxl/openpyxl/descriptors/container.pyi +18 -0
  83. package/dist/typeshed-fallback/stubs/openpyxl/openpyxl/descriptors/sequence.pyi +20 -12
  84. package/dist/typeshed-fallback/stubs/openpyxl/openpyxl/packaging/custom.pyi +1 -1
  85. package/dist/typeshed-fallback/stubs/openpyxl/openpyxl/packaging/extended.pyi +2 -2
  86. package/dist/typeshed-fallback/stubs/openpyxl/openpyxl/packaging/relationship.pyi +6 -11
  87. package/dist/typeshed-fallback/stubs/openpyxl/openpyxl/pivot/cache.pyi +66 -135
  88. package/dist/typeshed-fallback/stubs/openpyxl/openpyxl/pivot/fields.pyi +2 -2
  89. package/dist/typeshed-fallback/stubs/openpyxl/openpyxl/styles/alignment.pyi +0 -1
  90. package/dist/typeshed-fallback/stubs/openpyxl/openpyxl/styles/borders.pyi +0 -2
  91. package/dist/typeshed-fallback/stubs/openpyxl/openpyxl/styles/fills.pyi +3 -3
  92. package/dist/typeshed-fallback/stubs/openpyxl/openpyxl/styles/named_styles.pyi +5 -10
  93. package/dist/typeshed-fallback/stubs/openpyxl/openpyxl/utils/cell.pyi +2 -2
  94. package/dist/typeshed-fallback/stubs/openpyxl/openpyxl/utils/indexed_list.pyi +2 -2
  95. package/dist/typeshed-fallback/stubs/openpyxl/openpyxl/workbook/defined_name.pyi +2 -2
  96. package/dist/typeshed-fallback/stubs/openpyxl/openpyxl/worksheet/_read_only.pyi +11 -3
  97. package/dist/typeshed-fallback/stubs/openpyxl/openpyxl/worksheet/datavalidation.pyi +2 -2
  98. package/dist/typeshed-fallback/stubs/openpyxl/openpyxl/worksheet/dimensions.pyi +6 -3
  99. package/dist/typeshed-fallback/stubs/openpyxl/openpyxl/worksheet/filters.pyi +26 -22
  100. package/dist/typeshed-fallback/stubs/openpyxl/openpyxl/worksheet/hyperlink.pyi +3 -5
  101. package/dist/typeshed-fallback/stubs/openpyxl/openpyxl/worksheet/views.pyi +5 -2
  102. package/dist/typeshed-fallback/stubs/openpyxl/openpyxl/worksheet/worksheet.pyi +4 -2
  103. package/dist/typeshed-fallback/stubs/peewee/METADATA.toml +1 -1
  104. package/dist/typeshed-fallback/stubs/peewee/peewee.pyi +6 -1
  105. package/dist/typeshed-fallback/stubs/protobuf/METADATA.toml +2 -2
  106. package/dist/typeshed-fallback/stubs/protobuf/google/protobuf/descriptor_pb2.pyi +84 -15
  107. package/dist/typeshed-fallback/stubs/psutil/METADATA.toml +1 -1
  108. package/dist/typeshed-fallback/stubs/psutil/psutil/__init__.pyi +3 -1
  109. package/dist/typeshed-fallback/stubs/psutil/psutil/_common.pyi +0 -2
  110. package/dist/typeshed-fallback/stubs/psutil/psutil/_compat.pyi +0 -1
  111. package/dist/typeshed-fallback/stubs/psutil/psutil/_psaix.pyi +1 -1
  112. package/dist/typeshed-fallback/stubs/psutil/psutil/_psbsd.pyi +1 -1
  113. package/dist/typeshed-fallback/stubs/psutil/psutil/_pslinux.pyi +2 -2
  114. package/dist/typeshed-fallback/stubs/psutil/psutil/_psosx.pyi +1 -1
  115. package/dist/typeshed-fallback/stubs/psutil/psutil/_pssunos.pyi +1 -1
  116. package/dist/typeshed-fallback/stubs/psutil/psutil/_psutil_osx.pyi +1 -1
  117. package/dist/typeshed-fallback/stubs/psutil/psutil/_pswindows.pyi +1 -1
  118. package/dist/typeshed-fallback/stubs/pyinstaller/METADATA.toml +1 -1
  119. package/dist/typeshed-fallback/stubs/pyinstaller/PyInstaller/__main__.pyi +1 -0
  120. package/dist/typeshed-fallback/stubs/pyinstaller/PyInstaller/building/splash.pyi +0 -2
  121. package/dist/typeshed-fallback/stubs/pyinstaller/PyInstaller/compat.pyi +2 -3
  122. package/dist/typeshed-fallback/stubs/reportlab/METADATA.toml +3 -2
  123. package/dist/typeshed-fallback/stubs/requests/requests/models.pyi +2 -2
  124. package/dist/typeshed-fallback/stubs/seaborn/METADATA.toml +2 -1
  125. package/dist/typeshed-fallback/stubs/setuptools/METADATA.toml +1 -1
  126. package/dist/typeshed-fallback/stubs/setuptools/pkg_resources/__init__.pyi +80 -50
  127. package/dist/typeshed-fallback/stubs/setuptools/setuptools/__init__.pyi +2 -4
  128. package/dist/typeshed-fallback/stubs/setuptools/setuptools/build_meta.pyi +6 -3
  129. package/dist/typeshed-fallback/stubs/setuptools/setuptools/command/bdist_egg.pyi +3 -9
  130. package/dist/typeshed-fallback/stubs/setuptools/setuptools/command/bdist_wheel.pyi +61 -0
  131. package/dist/typeshed-fallback/stubs/setuptools/setuptools/command/build_ext.pyi +2 -2
  132. package/dist/typeshed-fallback/stubs/setuptools/setuptools/command/build_py.pyi +12 -1
  133. package/dist/typeshed-fallback/stubs/setuptools/setuptools/command/easy_install.pyi +1 -1
  134. package/dist/typeshed-fallback/stubs/setuptools/setuptools/command/egg_info.pyi +4 -4
  135. package/dist/typeshed-fallback/stubs/setuptools/setuptools/command/install_lib.pyi +3 -4
  136. package/dist/typeshed-fallback/stubs/setuptools/setuptools/compat/py311.pyi +1 -1
  137. package/dist/typeshed-fallback/stubs/setuptools/setuptools/config/expand.pyi +0 -1
  138. package/dist/typeshed-fallback/stubs/shapely/METADATA.toml +2 -1
  139. package/dist/typeshed-fallback/stubs/shapely/shapely/_geometry.pyi +3 -3
  140. package/dist/typeshed-fallback/stubs/shapely/shapely/constructive.pyi +6 -6
  141. package/dist/typeshed-fallback/stubs/shapely/shapely/geometry/base.pyi +3 -3
  142. package/dist/typeshed-fallback/stubs/shapely/shapely/io.pyi +2 -2
  143. package/dist/typeshed-fallback/stubs/shapely/shapely/strtree.pyi +9 -9
  144. package/dist/typeshed-fallback/stubs/tree-sitter-languages/METADATA.toml +1 -1
  145. package/package.json +1 -1
  146. package/dist/typeshed-fallback/stubs/tree-sitter/METADATA.toml +0 -7
  147. package/dist/typeshed-fallback/stubs/tree-sitter/tree_sitter/__init__.pyi +0 -17
  148. package/dist/typeshed-fallback/stubs/tree-sitter/tree_sitter/binding.pyi +0 -115
@@ -1,4 +1,3 @@
1
- import sys
2
1
  import types
3
2
  import zipimport
4
3
  from _typeshed import BytesPath, Incomplete, StrOrBytesPath, StrPath, Unused
@@ -7,30 +6,32 @@ from io import BytesIO
7
6
  from itertools import chain
8
7
  from pkgutil import get_importer as get_importer
9
8
  from re import Pattern
10
- from typing import IO, Any, ClassVar, Final, Literal, NoReturn, Protocol, TypeVar, overload, type_check_only
9
+ from typing import IO, Any, ClassVar, Final, Literal, NamedTuple, NoReturn, Protocol, TypeVar, overload
11
10
  from typing_extensions import Self, TypeAlias
12
11
  from zipfile import ZipInfo
13
12
 
14
13
  from ._vendored_packaging import requirements as packaging_requirements, version as packaging_version
15
14
 
16
- # TODO: Use _typeshed.importlib.LoaderProtocol once mypy has included it in its vendored typeshed
17
- class _LoaderProtocol(Protocol):
18
- def load_module(self, fullname: str, /) -> types.ModuleType: ...
19
-
15
+ # defined in setuptools
20
16
  _T = TypeVar("_T")
21
- _D = TypeVar("_D", bound=Distribution)
17
+ _DistributionT = TypeVar("_DistributionT", bound=Distribution)
22
18
  _NestedStr: TypeAlias = str | Iterable[_NestedStr]
23
- _StrictInstallerType: TypeAlias = Callable[[Requirement], _D]
24
- _InstallerType: TypeAlias = Callable[[Requirement], Distribution | None] | None
19
+ _InstallerTypeT: TypeAlias = Callable[[Requirement], _DistributionT] # noqa: Y043
20
+ _InstallerType: TypeAlias = Callable[[Requirement], Distribution | None]
25
21
  _PkgReqType: TypeAlias = str | Requirement
26
22
  _EPDistType: TypeAlias = Distribution | _PkgReqType
27
23
  _MetadataType: TypeAlias = IResourceProvider | None
28
24
  _ResolvedEntryPoint: TypeAlias = Any # Can be any attribute in the module
25
+ _ResourceStream: TypeAlias = Incomplete # A readable file-like object
29
26
  _ModuleLike: TypeAlias = object | types.ModuleType # Any object that optionally has __loader__ or __file__, usually a module
30
- _ProviderFactoryType: TypeAlias = Callable[[_ModuleLike], IResourceProvider]
27
+ # Any: Should be _ModuleLike but we end up with issues where _ModuleLike doesn't have _ZipLoaderModule's __loader__
28
+ _ProviderFactoryType: TypeAlias = Callable[[Any], IResourceProvider]
31
29
  _DistFinderType: TypeAlias = Callable[[_T, str, bool], Iterable[Distribution]]
32
30
  _NSHandlerType: TypeAlias = Callable[[_T, str, str, types.ModuleType], str | None]
33
- _ResourceStream: TypeAlias = Incomplete # A readable file-like object
31
+
32
+ # TODO: Use _typeshed.importlib.LoaderProtocol after mypy 1.11 is released
33
+ class _LoaderProtocol(Protocol):
34
+ def load_module(self, fullname: str, /) -> types.ModuleType: ...
34
35
 
35
36
  __all__ = [
36
37
  "require",
@@ -106,7 +107,6 @@ __all__ = [
106
107
  "AvailableDistributions",
107
108
  ]
108
109
 
109
- @type_check_only
110
110
  class _ZipLoaderModule(Protocol):
111
111
  __loader__: zipimport.zipimporter
112
112
 
@@ -128,48 +128,52 @@ class WorkingSet:
128
128
  self,
129
129
  requirements: Iterable[Requirement],
130
130
  env: Environment | None,
131
- installer: _StrictInstallerType[_D],
131
+ installer: _InstallerTypeT[_DistributionT],
132
132
  replace_conflicting: bool = False,
133
133
  extras: tuple[str, ...] | None = None,
134
- ) -> list[_D]: ...
134
+ ) -> list[_DistributionT]: ...
135
135
  @overload
136
136
  def resolve( # type: ignore[overload-overlap]
137
137
  self,
138
138
  requirements: Iterable[Requirement],
139
139
  env: Environment | None = None,
140
140
  *,
141
- installer: _StrictInstallerType[_D],
141
+ installer: _InstallerTypeT[_DistributionT],
142
142
  replace_conflicting: bool = False,
143
143
  extras: tuple[str, ...] | None = None,
144
- ) -> list[_D]: ...
144
+ ) -> list[_DistributionT]: ...
145
145
  @overload
146
- def resolve(
146
+ def resolve( # type: ignore[overload-overlap]
147
147
  self,
148
148
  requirements: Iterable[Requirement],
149
149
  env: Environment | None = None,
150
- installer: _InstallerType = None,
150
+ installer: _InstallerType | None = None,
151
151
  replace_conflicting: bool = False,
152
152
  extras: tuple[str, ...] | None = None,
153
153
  ) -> list[Distribution]: ...
154
154
  @overload
155
155
  def find_plugins( # type: ignore[overload-overlap]
156
- self, plugin_env: Environment, full_env: Environment | None, installer: _StrictInstallerType[_D], fallback: bool = True
157
- ) -> tuple[list[_D], dict[Distribution, Exception]]: ...
156
+ self,
157
+ plugin_env: Environment,
158
+ full_env: Environment | None,
159
+ installer: _InstallerTypeT[_DistributionT],
160
+ fallback: bool = True,
161
+ ) -> tuple[list[_DistributionT], dict[Distribution, Exception]]: ...
158
162
  @overload
159
163
  def find_plugins( # type: ignore[overload-overlap]
160
164
  self,
161
165
  plugin_env: Environment,
162
166
  full_env: Environment | None = None,
163
167
  *,
164
- installer: _StrictInstallerType[_D],
168
+ installer: _InstallerTypeT[_DistributionT],
165
169
  fallback: bool = True,
166
- ) -> tuple[list[_D], dict[Distribution, Exception]]: ...
170
+ ) -> tuple[list[_DistributionT], dict[Distribution, Exception]]: ...
167
171
  @overload
168
172
  def find_plugins(
169
173
  self,
170
174
  plugin_env: Environment,
171
175
  full_env: Environment | None = None,
172
- installer: _InstallerType = None,
176
+ installer: _InstallerType | None = None,
173
177
  fallback: bool = True,
174
178
  ) -> tuple[list[Distribution], dict[Distribution, Exception]]: ...
175
179
  def require(self, *requirements: _NestedStr) -> Sequence[Distribution]: ...
@@ -186,18 +190,26 @@ class Environment:
186
190
  def add(self, dist: Distribution) -> None: ...
187
191
  @overload
188
192
  def best_match(
189
- self, req: Requirement, working_set: WorkingSet, installer: _StrictInstallerType[_D], replace_conflicting: bool = False
190
- ) -> _D: ...
193
+ self,
194
+ req: Requirement,
195
+ working_set: WorkingSet,
196
+ installer: _InstallerTypeT[_DistributionT],
197
+ replace_conflicting: bool = False,
198
+ ) -> _DistributionT: ...
191
199
  @overload
192
200
  def best_match(
193
- self, req: Requirement, working_set: WorkingSet, installer: _InstallerType = None, replace_conflicting: bool = False
201
+ self,
202
+ req: Requirement,
203
+ working_set: WorkingSet,
204
+ installer: _InstallerType | None = None,
205
+ replace_conflicting: bool = False,
194
206
  ) -> Distribution | None: ...
195
207
  @overload
196
- def obtain(self, requirement: Requirement, installer: _StrictInstallerType[_D]) -> _D: ... # type: ignore[overload-overlap]
208
+ def obtain(self, requirement: Requirement, installer: _InstallerTypeT[_DistributionT]) -> _DistributionT: ... # type: ignore[overload-overlap]
197
209
  @overload
198
210
  def obtain(self, requirement: Requirement, installer: Callable[[Requirement], None] | None = None) -> None: ...
199
211
  @overload
200
- def obtain(self, requirement: Requirement, installer: _InstallerType = None) -> Distribution | None: ...
212
+ def obtain(self, requirement: Requirement, installer: _InstallerType | None = None) -> Distribution | None: ...
201
213
  def __iter__(self) -> Iterator[str]: ...
202
214
  def __iadd__(self, other: Distribution | Environment) -> Self: ...
203
215
  def __add__(self, other: Distribution | Environment) -> Self: ...
@@ -239,12 +251,12 @@ class EntryPoint:
239
251
  ) -> None: ...
240
252
  @overload
241
253
  def load(
242
- self, require: Literal[True] = True, env: Environment | None = None, installer: _InstallerType = None
254
+ self, require: Literal[True] = True, env: Environment | None = None, installer: _InstallerType | None = None
243
255
  ) -> _ResolvedEntryPoint: ...
244
256
  @overload
245
- def load(self, require: Literal[False], *args: Unused, **kwargs: Unused) -> _ResolvedEntryPoint: ...
257
+ def load(self, require: Literal[False], *args: Any, **kwargs: Any) -> _ResolvedEntryPoint: ...
246
258
  def resolve(self) -> _ResolvedEntryPoint: ...
247
- def require(self, env: Environment | None = None, installer: _InstallerType = None) -> None: ...
259
+ def require(self, env: Environment | None = None, installer: _InstallerType | None = None) -> None: ...
248
260
  pattern: ClassVar[Pattern[str]]
249
261
  @classmethod
250
262
  def parse(cls, src: str, dist: Distribution | None = None) -> Self: ...
@@ -256,8 +268,17 @@ class EntryPoint:
256
268
  ) -> dict[str, dict[str, Self]]: ...
257
269
 
258
270
  def find_distributions(path_item: str, only: bool = False) -> Generator[Distribution, None, None]: ...
271
+ def find_eggs_in_zip(importer: zipimport.zipimporter, path_item: str, only: bool = False) -> Iterator[Distribution]: ...
272
+ def find_nothing(importer: object | None, path_item: str | None, only: bool | None = False) -> tuple[Distribution, ...]: ...
273
+ def find_on_path(importer: object | None, path_item: str, only: bool = False) -> Generator[Distribution, None, None]: ...
274
+ def dist_factory(path_item: StrPath, entry: str, only: bool) -> Callable[[str], Iterable[Distribution]]: ...
275
+
276
+ class NoDists:
277
+ def __bool__(self) -> Literal[False]: ...
278
+ def __call__(self, fullpath: Unused) -> Iterator[Distribution]: ...
279
+
259
280
  @overload
260
- def get_distribution(dist: _D) -> _D: ...
281
+ def get_distribution(dist: _DistributionT) -> _DistributionT: ...
261
282
  @overload
262
283
  def get_distribution(dist: _PkgReqType) -> Distribution: ...
263
284
 
@@ -279,7 +300,7 @@ class ResourceManager:
279
300
  def resource_listdir(self, package_or_requirement: _PkgReqType, resource_name: str) -> list[str]: ...
280
301
  def extraction_error(self) -> NoReturn: ...
281
302
  def get_cache_path(self, archive_name: str, names: Iterable[StrPath] = ()) -> str: ...
282
- def postprocess(self, tempname: StrOrBytesPath, filename: str) -> None: ...
303
+ def postprocess(self, tempname: StrOrBytesPath, filename: StrOrBytesPath) -> None: ...
283
304
  def set_extraction_path(self, path: str) -> None: ...
284
305
  def cleanup_resources(self, force: bool = False) -> list[str]: ...
285
306
 
@@ -298,16 +319,6 @@ class IMetadataProvider(Protocol):
298
319
 
299
320
  class ResolutionError(Exception): ...
300
321
 
301
- class DistributionNotFound(ResolutionError):
302
- def __init__(self, req: Requirement, requirers: set[str] | None, /, *args: object) -> None: ...
303
- @property
304
- def req(self) -> Requirement: ...
305
- @property
306
- def requirers(self) -> set[str] | None: ...
307
- @property
308
- def requirers_str(self) -> str: ...
309
- def report(self) -> str: ...
310
-
311
322
  class VersionConflict(ResolutionError):
312
323
  def __init__(self, dist: Distribution, req: Requirement, /, *args: object) -> None: ...
313
324
  @property
@@ -322,6 +333,16 @@ class ContextualVersionConflict(VersionConflict):
322
333
  @property
323
334
  def required_by(self) -> set[str]: ...
324
335
 
336
+ class DistributionNotFound(ResolutionError):
337
+ def __init__(self, req: Requirement, requirers: set[str] | None, /, *args: object) -> None: ...
338
+ @property
339
+ def req(self) -> Requirement: ...
340
+ @property
341
+ def requirers(self) -> set[str] | None: ...
342
+ @property
343
+ def requirers_str(self) -> str: ...
344
+ def report(self) -> str: ...
345
+
325
346
  class UnknownExtra(ResolutionError): ...
326
347
 
327
348
  class ExtractionError(Exception):
@@ -331,6 +352,7 @@ class ExtractionError(Exception):
331
352
 
332
353
  def register_finder(importer_type: type[_T], distribution_finder: _DistFinderType[_T]) -> None: ...
333
354
  def register_loader_type(loader_type: type[_ModuleLike], provider_factory: _ProviderFactoryType) -> None: ...
355
+ def resolve_egg_link(path: str) -> Iterable[Distribution]: ...
334
356
  def register_namespace_handler(importer_type: type[_T], namespace_handler: _NSHandlerType[_T]) -> None: ...
335
357
 
336
358
  class IResourceProvider(IMetadataProvider, Protocol):
@@ -348,7 +370,7 @@ class NullProvider:
348
370
  egg_name: str | None
349
371
  egg_info: str | None
350
372
  loader: _LoaderProtocol | None
351
- module_path: str | None
373
+ module_path: str
352
374
 
353
375
  def __init__(self, module: _ModuleLike) -> None: ...
354
376
  def get_resource_filename(self, manager: ResourceManager, resource_name: str) -> str: ...
@@ -449,11 +471,24 @@ class EggMetadata(ZipProvider):
449
471
  def __init__(self, importer: zipimport.zipimporter) -> None: ...
450
472
 
451
473
  class EmptyProvider(NullProvider):
452
- module_path: None
474
+ # A special case, we don't want all Providers inheriting from NullProvider to have a potentially None module_path
475
+ module_path: str | None # type:ignore[assignment]
453
476
  def __init__(self) -> None: ...
454
477
 
455
478
  empty_provider: EmptyProvider
456
479
 
480
+ class ZipManifests(dict[str, MemoizedZipManifests.manifest_mod]):
481
+ @classmethod
482
+ def build(cls, path: str) -> dict[str, ZipInfo]: ...
483
+ load = build
484
+
485
+ class MemoizedZipManifests(ZipManifests):
486
+ class manifest_mod(NamedTuple):
487
+ manifest: dict[str, ZipInfo]
488
+ mtime: float
489
+
490
+ def load(self, path: str) -> dict[str, ZipInfo]: ... # type: ignore[override]
491
+
457
492
  class FileMetadata(EmptyProvider):
458
493
  path: StrPath
459
494
  def __init__(self, path: StrPath) -> None: ...
@@ -499,8 +534,3 @@ iter_entry_points = working_set.iter_entry_points
499
534
  add_activation_listener = working_set.subscribe
500
535
  run_script = working_set.run_script
501
536
  run_main = run_script
502
-
503
- if sys.version_info >= (3, 10):
504
- LOCALE_ENCODING: Final = "locale"
505
- else:
506
- LOCALE_ENCODING: Final = None
@@ -1,7 +1,7 @@
1
1
  from _typeshed import StrPath
2
2
  from abc import abstractmethod
3
3
  from collections.abc import Iterable, Mapping, Sequence
4
- from typing import Any, Literal
4
+ from typing import Any
5
5
 
6
6
  from ._distutils.cmd import Command as _Command
7
7
  from .depends import Require as Require
@@ -76,9 +76,7 @@ class Command(_Command):
76
76
  distribution: Distribution
77
77
  def __init__(self, dist: Distribution, **kw: Any) -> None: ...
78
78
  def ensure_string_list(self, option: str | list[str]) -> None: ...
79
- def reinitialize_command(
80
- self, command: _Command | str, reinit_subcommands: bool | Literal[0, 1] = 0, **kw: Any
81
- ) -> _Command: ...
79
+ def reinitialize_command(self, command: _Command | str, reinit_subcommands: bool = False, **kw: Any) -> _Command: ... # type: ignore[override]
82
80
  @abstractmethod
83
81
  def initialize_options(self) -> None: ...
84
82
  @abstractmethod
@@ -1,6 +1,7 @@
1
1
  from _typeshed import StrPath
2
2
  from collections.abc import Mapping
3
3
  from typing import Any
4
+ from typing_extensions import TypeAlias
4
5
 
5
6
  from . import dist
6
7
 
@@ -17,6 +18,8 @@ __all__ = [
17
18
  "SetupRequirementsError",
18
19
  ]
19
20
 
21
+ _ConfigSettings: TypeAlias = dict[str, str | list[str] | None] | None
22
+
20
23
  class SetupRequirementsError(BaseException):
21
24
  specifiers: Any
22
25
  def __init__(self, specifiers) -> None: ...
@@ -34,11 +37,11 @@ class _BuildMetaBackend:
34
37
  self, metadata_directory: str, config_settings: Mapping[str, Any] | None = None
35
38
  ) -> str: ...
36
39
  def build_wheel(
37
- self, wheel_directory: StrPath, config_settings: Mapping[str, Any] | None = None, metadata_directory: str | None = None
40
+ self, wheel_directory: StrPath, config_settings: _ConfigSettings | None = None, metadata_directory: StrPath | None = None
38
41
  ) -> str: ...
39
- def build_sdist(self, sdist_directory: StrPath, config_settings: Mapping[str, Any] | None = None) -> str: ...
42
+ def build_sdist(self, sdist_directory: StrPath, config_settings: _ConfigSettings | None = None) -> str: ...
40
43
  def build_editable(
41
- self, wheel_directory: StrPath, config_settings: Mapping[str, Any] | None = None, metadata_directory: str | None = None
44
+ self, wheel_directory: StrPath, config_settings: _ConfigSettings | None = None, metadata_directory: str | None = None
42
45
  ) -> str: ...
43
46
  def get_requires_for_build_editable(self, config_settings: Mapping[str, Any] | None = None) -> list[str]: ...
44
47
  def prepare_metadata_for_build_editable(
@@ -1,6 +1,5 @@
1
1
  from _typeshed import Incomplete
2
2
  from collections.abc import Generator
3
- from typing import Literal
4
3
 
5
4
  from .. import Command
6
5
 
@@ -14,9 +13,9 @@ class bdist_egg(Command):
14
13
  boolean_options: Incomplete
15
14
  bdist_dir: Incomplete
16
15
  plat_name: Incomplete
17
- keep_temp: int
16
+ keep_temp: bool
18
17
  dist_dir: Incomplete
19
- skip_build: int
18
+ skip_build: bool
20
19
  egg_output: Incomplete
21
20
  exclude_source_files: Incomplete
22
21
  def initialize_options(self) -> None: ...
@@ -48,10 +47,5 @@ def can_scan(): ...
48
47
  INSTALL_DIRECTORY_ATTRS: Incomplete
49
48
 
50
49
  def make_zipfile(
51
- zip_filename,
52
- base_dir,
53
- verbose: bool | Literal[0, 1] = 0,
54
- dry_run: bool | Literal[0, 1] = 0,
55
- compress: bool = True,
56
- mode: str = "w",
50
+ zip_filename, base_dir, verbose: bool = False, dry_run: bool = False, compress: bool = True, mode: str = "w"
57
51
  ): ...
@@ -0,0 +1,61 @@
1
+ from _typeshed import Incomplete
2
+ from collections.abc import Callable, Iterable
3
+ from types import TracebackType
4
+ from typing import Any, ClassVar, Final, Literal
5
+
6
+ from setuptools import Command
7
+
8
+ def safe_name(name: str) -> str: ...
9
+ def safe_version(version: str) -> str: ...
10
+
11
+ setuptools_major_version: Final[int]
12
+
13
+ PY_LIMITED_API_PATTERN: Final[str]
14
+
15
+ def python_tag() -> str: ...
16
+ def get_platform(archive_root: str | None) -> str: ...
17
+ def get_flag(var: str, fallback: bool, expected: bool = True, warn: bool = True) -> bool: ...
18
+ def get_abi_tag() -> str | None: ...
19
+ def safer_name(name: str) -> str: ...
20
+ def safer_version(version: str) -> str: ...
21
+ def remove_readonly(
22
+ func: Callable[..., object], path: str, excinfo: tuple[type[Exception], Exception, TracebackType]
23
+ ) -> None: ...
24
+ def remove_readonly_exc(func: Callable[..., object], path: str, exc: Exception) -> None: ...
25
+
26
+ class bdist_wheel(Command):
27
+ description: ClassVar[str]
28
+ supported_compressions: ClassVar[dict[str, int]]
29
+ user_options: ClassVar[list[tuple[Any, ...]]]
30
+ boolean_options: ClassVar[list[str]]
31
+
32
+ bdist_dir: str | None
33
+ data_dir: Incomplete | None
34
+ plat_name: str | None
35
+ plat_tag: Incomplete | None
36
+ format: str
37
+ keep_temp: bool
38
+ dist_dir: str | None
39
+ egginfo_dir: Incomplete | None
40
+ root_is_pure: bool | None
41
+ skip_build: Incomplete | None
42
+ relative: bool
43
+ owner: Incomplete | None
44
+ group: Incomplete | None
45
+ universal: bool
46
+ compression: str | int
47
+ python_tag: str
48
+ build_number: str | None
49
+ py_limited_api: str | Literal[False]
50
+ plat_name_supplied: bool
51
+
52
+ def initialize_options(self) -> None: ...
53
+ def finalize_options(self) -> None: ...
54
+ @property
55
+ def wheel_dist_name(self) -> str: ...
56
+ def get_tag(self) -> tuple[str, str, str]: ...
57
+ def run(self) -> None: ...
58
+ def write_wheelfile(self, wheelfile_base: str, generator: str = ...) -> None: ...
59
+ @property
60
+ def license_paths(self) -> Iterable[str]: ...
61
+ def egg2dist(self, egginfo_path: str, distinfo_path: str) -> None: ...
@@ -1,5 +1,5 @@
1
1
  from _typeshed import Incomplete
2
- from typing import Any, ClassVar, Literal
2
+ from typing import Any, ClassVar
3
3
 
4
4
  from .._distutils.command.build_ext import build_ext as _build_ext
5
5
 
@@ -40,7 +40,7 @@ def link_shared_object(
40
40
  library_dirs: Incomplete | None = None,
41
41
  runtime_library_dirs: Incomplete | None = None,
42
42
  export_symbols: Incomplete | None = None,
43
- debug: bool | Literal[0, 1] = 0,
43
+ debug: bool = False,
44
44
  extra_preargs: Incomplete | None = None,
45
45
  extra_postargs: Incomplete | None = None,
46
46
  build_temp: Incomplete | None = None,
@@ -1,6 +1,7 @@
1
- from _typeshed import Incomplete
1
+ from _typeshed import Incomplete, StrPath
2
2
  from typing import Any, ClassVar
3
3
 
4
+ from .._distutils.cmd import _StrPathT
4
5
  from .._distutils.command import build_py as orig
5
6
 
6
7
  def make_writable(target) -> None: ...
@@ -10,12 +11,22 @@ class build_py(orig.build_py):
10
11
  package_data: Any
11
12
  exclude_package_data: Any
12
13
  def finalize_options(self) -> None: ...
14
+ def copy_file( # type: ignore[override]
15
+ self,
16
+ infile: StrPath,
17
+ outfile: _StrPathT,
18
+ preserve_mode: bool = True,
19
+ preserve_times: bool = True,
20
+ link: str | None = None,
21
+ level=1,
22
+ ) -> tuple[_StrPathT | str, bool]: ...
13
23
  def run(self) -> None: ...
14
24
  data_files: Any
15
25
  def __getattr__(self, attr: str): ...
16
26
  def build_module(self, module, module_file, package): ...
17
27
  def get_data_files_without_manifest(self) -> list[tuple[Incomplete, Incomplete, Incomplete, list[Incomplete]]]: ...
18
28
  def find_data_files(self, package, src_dir): ...
29
+ def get_outputs(self, include_bytecode: bool = True) -> list[str]: ... # type: ignore[override]
19
30
  def build_package_data(self) -> None: ...
20
31
  manifest_files: Any
21
32
  def get_output_mapping(self) -> dict[str, str]: ...
@@ -16,7 +16,7 @@ class easy_install(Command):
16
16
  boolean_options: Incomplete
17
17
  negative_opt: Incomplete
18
18
  create_index: Incomplete
19
- user: int
19
+ user: bool
20
20
  zip_ok: Incomplete
21
21
  install_dir: Incomplete
22
22
  index_url: Incomplete
@@ -59,10 +59,10 @@ class FileList(_FileList):
59
59
 
60
60
  class manifest_maker(sdist):
61
61
  template: str
62
- use_defaults: int
63
- prune: int
64
- manifest_only: int
65
- force_manifest: int
62
+ use_defaults: bool
63
+ prune: bool
64
+ manifest_only: bool
65
+ force_manifest: bool
66
66
  def initialize_options(self) -> None: ...
67
67
  def finalize_options(self) -> None: ...
68
68
  filelist: Incomplete
@@ -1,5 +1,4 @@
1
1
  from _typeshed import StrPath, Unused
2
- from typing import Literal
3
2
 
4
3
  from .._distutils.command import install_lib as orig
5
4
 
@@ -10,9 +9,9 @@ class install_lib(orig.install_lib):
10
9
  self,
11
10
  infile: StrPath,
12
11
  outfile: str,
13
- preserve_mode: bool | Literal[0, 1] = 1,
14
- preserve_times: bool | Literal[0, 1] = 1,
15
- preserve_symlinks: bool | Literal[0, 1] = 0,
12
+ preserve_mode: bool = True, # type: ignore[override]
13
+ preserve_times: bool = True, # type: ignore[override]
14
+ preserve_symlinks: bool = False, # type: ignore[override]
16
15
  level: Unused = 1,
17
16
  ): ...
18
17
  def get_outputs(self): ...
@@ -1,4 +1,4 @@
1
1
  from _typeshed import StrOrBytesPath
2
2
  from shutil import _OnExcCallback
3
3
 
4
- def shutil_rmtree(path: StrOrBytesPath, ignore_errors: bool = False, onexc: _OnExcCallback | None = None): ...
4
+ def shutil_rmtree(path: StrOrBytesPath, ignore_errors: bool = False, onexc: _OnExcCallback | None = None) -> None: ...
@@ -7,7 +7,6 @@ from typing_extensions import Self
7
7
 
8
8
  from ..dist import Distribution
9
9
 
10
- chain_iter: Incomplete
11
10
  _K = TypeVar("_K")
12
11
  _VCo = TypeVar("_VCo", covariant=True)
13
12
 
@@ -1,4 +1,5 @@
1
1
  version = "2.0.*"
2
2
  # Requires a version of numpy with a `py.typed` file
3
- requires = ["numpy>=1.20"]
3
+ # TODO: stubtest errors when using numpy 2
4
+ requires = ["numpy>=1.20,<2"]
4
5
  upstream_repository = "https://github.com/shapely/shapely"
@@ -162,9 +162,9 @@ def get_precision(geometry: Geometry | None, **kwargs) -> float: ...
162
162
  def get_precision(geometry: OptGeoArrayLikeSeq, **kwargs) -> NDArray[np.float64]: ...
163
163
 
164
164
  class SetPrecisionMode(ParamEnum):
165
- valid_output = 0 # noqa: Y052
166
- pointwise = 1 # noqa: Y052
167
- keep_collapsed = 2 # noqa: Y052
165
+ valid_output = 0
166
+ pointwise = 1
167
+ keep_collapsed = 2
168
168
 
169
169
  @overload
170
170
  def set_precision(geometry: OptGeoT, grid_size: float, mode: _PrecisionMode = "valid_output", **kwargs) -> OptGeoT: ...
@@ -39,14 +39,14 @@ __all__ = [
39
39
  ]
40
40
 
41
41
  class BufferCapStyle(ParamEnum):
42
- round = 1 # noqa: Y052
43
- flat = 2 # noqa: Y052
44
- square = 3 # noqa: Y052
42
+ round = 1
43
+ flat = 2
44
+ square = 3
45
45
 
46
46
  class BufferJoinStyle(ParamEnum):
47
- round = 1 # noqa: Y052
48
- mitre = 2 # noqa: Y052
49
- bevel = 3 # noqa: Y052
47
+ round = 1
48
+ mitre = 2
49
+ bevel = 3
50
50
 
51
51
  @overload
52
52
  def boundary(geometry: Point | MultiPoint, **kwargs) -> GeometryCollection: ...
@@ -1,7 +1,7 @@
1
1
  from array import array
2
2
  from collections.abc import Iterator
3
3
  from typing import Any, Generic, Literal, NoReturn, overload
4
- from typing_extensions import Self, TypeVar, deprecated # noqa: Y023
4
+ from typing_extensions import Self, TypeVar, deprecated
5
5
 
6
6
  import numpy as np
7
7
  from numpy.typing import NDArray
@@ -33,7 +33,7 @@ class JOIN_STYLE:
33
33
  class BaseGeometry(Geometry):
34
34
  @deprecated(
35
35
  "Directly calling 'BaseGeometry()' is deprecated. To create an empty geometry, "
36
- "use one of the subclasses instead, for example 'GeometryCollection()'." # pyright: ignore[reportImplicitStringConcatenation]
36
+ "use one of the subclasses instead, for example 'GeometryCollection()'."
37
37
  )
38
38
  def __new__(self) -> GeometryCollection: ...
39
39
  def __bool__(self) -> bool: ...
@@ -280,6 +280,6 @@ class GeometrySequence(Generic[_P_co]):
280
280
  class EmptyGeometry(BaseGeometry):
281
281
  @deprecated(
282
282
  "The 'EmptyGeometry()' constructor is deprecated. Use one of the "
283
- "geometry subclasses instead, for example 'GeometryCollection()'." # pyright: ignore[reportImplicitStringConcatenation]
283
+ "geometry subclasses instead, for example 'GeometryCollection()'."
284
284
  )
285
285
  def __new__(self) -> GeometryCollection: ... # type: ignore[misc]
@@ -18,8 +18,8 @@ __all__ = ["from_geojson", "from_ragged_array", "from_wkb", "from_wkt", "to_geoj
18
18
  DecodingErrorOptions: Incomplete
19
19
 
20
20
  class WKBFlavorOptions(ParamEnum):
21
- extended = 1 # noqa: Y052
22
- iso = 2 # noqa: Y052
21
+ extended = 1
22
+ iso = 2
23
23
 
24
24
  @overload
25
25
  def to_wkt(
@@ -15,15 +15,15 @@ _BinaryPredicate: TypeAlias = Literal[
15
15
  ]
16
16
 
17
17
  class BinaryPredicate(ParamEnum):
18
- intersects = 1 # noqa: Y052
19
- within = 2 # noqa: Y052
20
- contains = 3 # noqa: Y052
21
- overlaps = 4 # noqa: Y052
22
- crosses = 5 # noqa: Y052
23
- touches = 6 # noqa: Y052
24
- covers = 7 # noqa: Y052
25
- covered_by = 8 # noqa: Y052
26
- contains_properly = 9 # noqa: Y052
18
+ intersects = 1
19
+ within = 2
20
+ contains = 3
21
+ overlaps = 4
22
+ crosses = 5
23
+ touches = 6
24
+ covers = 7
25
+ covered_by = 8
26
+ contains_properly = 9
27
27
 
28
28
  class STRtree:
29
29
  def __init__(self, geoms: GeoArrayLikeSeq, node_capacity: SupportsIndex = 10) -> None: ...
@@ -1,3 +1,3 @@
1
1
  version = "1.10.*"
2
2
  upstream_repository = "https://github.com/grantjenks/py-tree-sitter-languages"
3
- requires = ["types-tree-sitter"]
3
+ requires = ["tree-sitter>=0.20.3"]
package/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "name": "basedpyright",
3
3
  "displayName": "basedpyright",
4
4
  "description": "a pyright fork with various type checking improvements, improved vscode support and pylance features built into the language server",
5
- "version": "1.13.1",
5
+ "version": "1.13.2",
6
6
  "license": "MIT",
7
7
  "author": {
8
8
  "name": "detachhead"