basedpyright 1.18.4 → 1.19.0

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 (45) 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/stdlib/_collections_abc.pyi +6 -2
  6. package/dist/typeshed-fallback/stdlib/_csv.pyi +1 -63
  7. package/dist/typeshed-fallback/stdlib/_ctypes.pyi +29 -3
  8. package/dist/typeshed-fallback/stdlib/_interpchannels.pyi +258 -86
  9. package/dist/typeshed-fallback/stdlib/_interpqueues.pyi +100 -16
  10. package/dist/typeshed-fallback/stdlib/_interpreters.pyi +204 -50
  11. package/dist/typeshed-fallback/stdlib/_json.pyi +1 -1
  12. package/dist/typeshed-fallback/stdlib/_socket.pyi +5 -26
  13. package/dist/typeshed-fallback/stdlib/_sqlite3.pyi +24 -9
  14. package/dist/typeshed-fallback/stdlib/_stat.pyi +13 -2
  15. package/dist/typeshed-fallback/stdlib/_thread.pyi +35 -93
  16. package/dist/typeshed-fallback/stdlib/asyncio/futures.pyi +3 -1
  17. package/dist/typeshed-fallback/stdlib/atexit.pyi +6 -20
  18. package/dist/typeshed-fallback/stdlib/builtins.pyi +250 -251
  19. package/dist/typeshed-fallback/stdlib/collections/__init__.pyi +8 -7
  20. package/dist/typeshed-fallback/stdlib/datetime.pyi +9 -3
  21. package/dist/typeshed-fallback/stdlib/dbm/sqlite3.pyi +29 -29
  22. package/dist/typeshed-fallback/stdlib/dis.pyi +33 -7
  23. package/dist/typeshed-fallback/stdlib/functools.pyi +2 -2
  24. package/dist/typeshed-fallback/stdlib/gc.pyi +5 -11
  25. package/dist/typeshed-fallback/stdlib/importlib/metadata/__init__.pyi +17 -2
  26. package/dist/typeshed-fallback/stdlib/importlib/metadata/diagnose.pyi +2 -2
  27. package/dist/typeshed-fallback/stdlib/importlib/resources/_functional.pyi +30 -30
  28. package/dist/typeshed-fallback/stdlib/io.pyi +3 -1
  29. package/dist/typeshed-fallback/stdlib/ipaddress.pyi +8 -1
  30. package/dist/typeshed-fallback/stdlib/itertools.pyi +3 -6
  31. package/dist/typeshed-fallback/stdlib/marshal.pyi +61 -4
  32. package/dist/typeshed-fallback/stdlib/math.pyi +7 -1
  33. package/dist/typeshed-fallback/stdlib/mmap.pyi +1 -1
  34. package/dist/typeshed-fallback/stdlib/multiprocessing/managers.pyi +14 -2
  35. package/dist/typeshed-fallback/stdlib/os/__init__.pyi +43 -9
  36. package/dist/typeshed-fallback/stdlib/posixpath.pyi +14 -2
  37. package/dist/typeshed-fallback/stdlib/signal.pyi +2 -3
  38. package/dist/typeshed-fallback/stdlib/sqlite3/__init__.pyi +54 -6
  39. package/dist/typeshed-fallback/stdlib/sys/__init__.pyi +11 -17
  40. package/dist/typeshed-fallback/stdlib/threading.pyi +44 -16
  41. package/dist/typeshed-fallback/stdlib/time.pyi +2 -10
  42. package/dist/typeshed-fallback/stdlib/types.pyi +31 -13
  43. package/dist/typeshed-fallback/stdlib/typing.pyi +6 -2
  44. package/dist/typeshed-fallback/stdlib/unicodedata.pyi +2 -2
  45. package/package.json +1 -1
@@ -352,7 +352,14 @@ class Connection:
352
352
  """
353
353
  ...
354
354
  def create_aggregate(self, name: str, n_arg: int, aggregate_class: Callable[[], _AggregateProtocol]) -> None:
355
- """Creates a new aggregate."""
355
+ """
356
+ Creates a new aggregate.
357
+
358
+ Note: Passing keyword arguments 'name', 'n_arg' and 'aggregate_class'
359
+ to _sqlite3.Connection.create_aggregate() is deprecated. Parameters
360
+ 'name', 'n_arg' and 'aggregate_class' will become positional-only in
361
+ Python 3.15.
362
+ """
356
363
  ...
357
364
  if sys.version_info >= (3, 11):
358
365
  # num_params determines how many params will be passed to the aggregate class. We provide an overload
@@ -416,7 +423,13 @@ class Connection:
416
423
  def create_function(
417
424
  self, name: str, narg: int, func: Callable[..., _SqliteData] | None, *, deterministic: bool = False
418
425
  ) -> None:
419
- """Creates a new function."""
426
+ """
427
+ Creates a new function.
428
+
429
+ Note: Passing keyword arguments 'name', 'narg' and 'func' to
430
+ _sqlite3.Connection.create_function() is deprecated. Parameters
431
+ 'name', 'narg' and 'func' will become positional-only in Python 3.15.
432
+ """
420
433
  ...
421
434
  @overload
422
435
  def cursor(self, factory: None = None) -> Cursor:
@@ -439,7 +452,14 @@ class Connection:
439
452
  """Abort any pending database operation."""
440
453
  ...
441
454
  if sys.version_info >= (3, 13):
442
- def iterdump(self, *, filter: str | None = None) -> Generator[str, None, None]: ...
455
+ def iterdump(self, *, filter: str | None = None) -> Generator[str, None, None]:
456
+ """
457
+ Returns iterator to the dump of the database in an SQL text format.
458
+
459
+ filter
460
+ An optional LIKE pattern for database objects to dump
461
+ """
462
+ ...
443
463
  else:
444
464
  def iterdump(self) -> Generator[str, None, None]:
445
465
  """Returns iterator to the dump of the database in an SQL text format."""
@@ -455,13 +475,41 @@ class Connection:
455
475
  def set_authorizer(
456
476
  self, authorizer_callback: Callable[[int, str | None, str | None, str | None, str | None], int] | None
457
477
  ) -> None:
458
- """Sets authorizer callback."""
478
+ """
479
+ Set authorizer callback.
480
+
481
+ Note: Passing keyword argument 'authorizer_callback' to
482
+ _sqlite3.Connection.set_authorizer() is deprecated. Parameter
483
+ 'authorizer_callback' will become positional-only in Python 3.15.
484
+ """
459
485
  ...
460
486
  def set_progress_handler(self, progress_handler: Callable[[], int | None] | None, n: int) -> None:
461
- """Sets progress handler callback."""
487
+ """
488
+ Set progress handler callback.
489
+
490
+ progress_handler
491
+ A callable that takes no arguments.
492
+ If the callable returns non-zero, the current query is terminated,
493
+ and an exception is raised.
494
+ n
495
+ The number of SQLite virtual machine instructions that are
496
+ executed between invocations of 'progress_handler'.
497
+
498
+ If 'progress_handler' is None or 'n' is 0, the progress handler is disabled.
499
+
500
+ Note: Passing keyword argument 'progress_handler' to
501
+ _sqlite3.Connection.set_progress_handler() is deprecated. Parameter
502
+ 'progress_handler' will become positional-only in Python 3.15.
503
+ """
462
504
  ...
463
505
  def set_trace_callback(self, trace_callback: Callable[[str], object] | None) -> None:
464
- """Sets a trace callback called for each SQL statement (passed as unicode)."""
506
+ """
507
+ Set a trace callback called for each SQL statement (passed as unicode).
508
+
509
+ Note: Passing keyword argument 'trace_callback' to
510
+ _sqlite3.Connection.set_trace_callback() is deprecated. Parameter
511
+ 'trace_callback' will become positional-only in Python 3.15.
512
+ """
465
513
  ...
466
514
  # enable_load_extension and load_extension is not available on python distributions compiled
467
515
  # without sqlite3 loadable extension support. see footnotes https://docs.python.org/3/library/sqlite3.html#f1
@@ -447,10 +447,10 @@ def getprofile() -> ProfileFunction | None:
447
447
  ...
448
448
  def setprofile(function: ProfileFunction | None, /) -> None:
449
449
  """
450
- setprofile(function)
450
+ Set the profiling function.
451
451
 
452
- Set the profiling function. It will be called on each function call
453
- and return. See the profiler chapter in the library manual.
452
+ It will be called on each function call and return. See the profiler
453
+ chapter in the library manual.
454
454
  """
455
455
  ...
456
456
  def gettrace() -> TraceFunction | None:
@@ -462,10 +462,10 @@ def gettrace() -> TraceFunction | None:
462
462
  ...
463
463
  def settrace(function: TraceFunction | None, /) -> None:
464
464
  """
465
- settrace(function)
465
+ Set the global debug tracing function.
466
466
 
467
- Set the global debug tracing function. It will be called on each
468
- function call. See the debugger chapter in the library manual.
467
+ It will be called on each function call. See the debugger chapter
468
+ in the library manual.
469
469
  """
470
470
  ...
471
471
 
@@ -509,11 +509,7 @@ def is_finalizing() -> bool:
509
509
  """Return True if Python is exiting."""
510
510
  ...
511
511
  def breakpointhook(*args: Any, **kwargs: Any) -> Any:
512
- """
513
- breakpointhook(*args, **kws)
514
-
515
- This hook function is called by built-in breakpoint().
516
- """
512
+ """This hook function is called by built-in breakpoint()."""
517
513
  ...
518
514
 
519
515
  __breakpointhook__ = breakpointhook # Contains the original value of breakpointhook
@@ -625,11 +621,7 @@ def addaudithook(hook: Callable[[str, tuple[Any, ...]], Any]) -> None:
625
621
  """Adds a new audit hook callback."""
626
622
  ...
627
623
  def audit(event: str, /, *args: Any) -> None:
628
- """
629
- audit(event, *args)
630
-
631
- Passes the event to any audit hooks that are attached.
632
- """
624
+ """Passes the event to any audit hooks that are attached."""
633
625
  ...
634
626
 
635
627
  _AsyncgenHook: TypeAlias = Callable[[AsyncGenerator[Any, Any]], None] | None
@@ -684,7 +676,9 @@ def get_int_max_str_digits() -> int:
684
676
 
685
677
  if sys.version_info >= (3, 12):
686
678
  if sys.version_info >= (3, 13):
687
- def getunicodeinternedsize(*, _only_immortal: bool = False) -> int: ...
679
+ def getunicodeinternedsize(*, _only_immortal: bool = False) -> int:
680
+ """Return the number of elements of the unicode interned dictionary"""
681
+ ...
688
682
  else:
689
683
  def getunicodeinternedsize() -> int:
690
684
  """Return the number of elements of the unicode interned dictionary"""
@@ -49,8 +49,6 @@ def current_thread() -> Thread: ...
49
49
  def currentThread() -> Thread: ... # deprecated alias for current_thread()
50
50
  def get_ident() -> int:
51
51
  """
52
- get_ident() -> integer
53
-
54
52
  Return a non-zero integer that uniquely identifies the current thread
55
53
  amongst other threads that exist simultaneously.
56
54
  This may be used to identify per-thread resources.
@@ -75,8 +73,6 @@ if sys.version_info >= (3, 10):
75
73
 
76
74
  def stack_size(size: int = 0, /) -> int:
77
75
  """
78
- stack_size([size]) -> size
79
-
80
76
  Return the thread stack size used when creating new threads. The
81
77
  optional size argument specifies the stack size (in bytes) to be used
82
78
  for subsequently created threads, and must be 0 (use platform or
@@ -151,22 +147,54 @@ class _DummyThread(Thread):
151
147
  @final
152
148
  class Lock:
153
149
  """
154
- allocate_lock() -> lock object
155
- (allocate() is an obsolete synonym)
150
+ A lock object is a synchronization primitive. To create a lock,
151
+ call threading.Lock(). Methods are:
152
+
153
+ acquire() -- lock the lock, possibly blocking until it can be obtained
154
+ release() -- unlock of the lock
155
+ locked() -- test whether the lock is currently locked
156
156
 
157
- Create a new lock object. See help(type(threading.Lock())) for
158
- information about locks.
157
+ A lock is not owned by the thread that locked it; another thread may
158
+ unlock it. A thread attempting to lock a lock that it has already locked
159
+ will block until another thread unlocks it. Deadlocks may ensue.
159
160
  """
160
- def __enter__(self) -> bool: ...
161
+ def __enter__(self) -> bool:
162
+ """Lock the lock."""
163
+ ...
161
164
  def __exit__(
162
165
  self, exc_type: type[BaseException] | None, exc_val: BaseException | None, exc_tb: TracebackType | None
163
- ) -> None: ...
164
- def acquire(self, blocking: bool = ..., timeout: float = ...) -> bool: ...
165
- def release(self) -> None: ...
166
- def locked(self) -> bool: ...
167
- def acquire_lock(self, blocking: bool = ..., timeout: float = ...) -> bool: ... # undocumented
168
- def release_lock(self) -> None: ... # undocumented
169
- def locked_lock(self) -> bool: ... # undocumented
166
+ ) -> None:
167
+ """Release the lock."""
168
+ ...
169
+ def acquire(self, blocking: bool = ..., timeout: float = ...) -> bool:
170
+ """
171
+ Lock the lock. Without argument, this blocks if the lock is already
172
+ locked (even by the same thread), waiting for another thread to release
173
+ the lock, and return True once the lock is acquired.
174
+ With an argument, this will only block if the argument is true,
175
+ and the return value reflects whether the lock is acquired.
176
+ The blocking operation is interruptible.
177
+ """
178
+ ...
179
+ def release(self) -> None:
180
+ """
181
+ Release the lock, allowing another thread that is blocked waiting for
182
+ the lock to acquire the lock. The lock must be in the locked state,
183
+ but it needn't be locked by the same thread that unlocks it.
184
+ """
185
+ ...
186
+ def locked(self) -> bool:
187
+ """Return whether the lock is in the locked state."""
188
+ ...
189
+ def acquire_lock(self, blocking: bool = ..., timeout: float = ...) -> bool:
190
+ """An obsolete synonym of acquire()."""
191
+ ...
192
+ def release_lock(self) -> None:
193
+ """An obsolete synonym of release()."""
194
+ ...
195
+ def locked_lock(self) -> bool:
196
+ """An obsolete synonym of locked()."""
197
+ ...
170
198
 
171
199
  @final
172
200
  class _RLock:
@@ -309,11 +309,7 @@ if sys.platform != "win32":
309
309
  """
310
310
  ...
311
311
  def clock_gettime(clk_id: int, /) -> float:
312
- """
313
- clock_gettime(clk_id) -> float
314
-
315
- Return the time of the specified clock clk_id.
316
- """
312
+ """Return the time of the specified clock clk_id as a float."""
317
313
  ...
318
314
  def clock_settime(clk_id: int, time: float, /) -> None:
319
315
  """
@@ -325,11 +321,7 @@ if sys.platform != "win32":
325
321
 
326
322
  if sys.platform != "win32":
327
323
  def clock_gettime_ns(clk_id: int, /) -> int:
328
- """
329
- clock_gettime_ns(clk_id) -> int
330
-
331
- Return the time of the specified clock clk_id as nanoseconds.
332
- """
324
+ """Return the time of the specified clock clk_id as nanoseconds (int)."""
333
325
  ...
334
326
  def clock_settime_ns(clock_id: int, time: int, /) -> int:
335
327
  """
@@ -84,6 +84,8 @@ class FunctionType:
84
84
  a tuple that specifies the default argument values
85
85
  closure
86
86
  a tuple that supplies the bindings for free variables
87
+ kwdefaults
88
+ a dictionary that specifies the default keyword argument values
87
89
  """
88
90
  @property
89
91
  def __closure__(self) -> tuple[CellType, ...] | None: ...
@@ -325,6 +327,7 @@ class CodeType:
325
327
 
326
328
  @final
327
329
  class MappingProxyType(Mapping[_KT, _VT_co]):
330
+ """Read-only proxy of a mapping."""
328
331
  __hash__: ClassVar[None] # type: ignore[assignment]
329
332
  def __new__(cls, mapping: SupportsKeysAndGetItem[_KT, _VT_co]) -> Self: ...
330
333
  def __getitem__(self, key: _KT, /) -> _VT_co:
@@ -353,11 +356,11 @@ class MappingProxyType(Mapping[_KT, _VT_co]):
353
356
  ...
354
357
  @overload
355
358
  def get(self, key: _KT, /) -> _VT_co | None:
356
- """D.get(k[,d]) -> D[k] if k in D, else d. d defaults to None."""
359
+ """Return the value for key if key is in the mapping, else default."""
357
360
  ...
358
361
  @overload
359
362
  def get(self, key: _KT, default: _VT_co | _T2, /) -> _VT_co | _T2:
360
- """D.get(k[,d]) -> D[k] if k in D, else d. d defaults to None."""
363
+ """Return the value for key if key is in the mapping, else default."""
361
364
  ...
362
365
  if sys.version_info >= (3, 9):
363
366
  def __class_getitem__(cls, item: Any, /) -> GenericAlias:
@@ -393,7 +396,9 @@ class SimpleNamespace:
393
396
  """Implement delattr(self, name)."""
394
397
  ...
395
398
  if sys.version_info >= (3, 13):
396
- def __replace__(self, **kwargs: Any) -> Self: ...
399
+ def __replace__(self, **kwargs: Any) -> Self:
400
+ """Return a copy of the namespace object with new values for the specified attributes."""
401
+ ...
397
402
 
398
403
  class ModuleType:
399
404
  """
@@ -484,7 +489,9 @@ class GeneratorType(Generator[_YieldT_co, _SendT_contra, _ReturnT_co]):
484
489
  """
485
490
  ...
486
491
  if sys.version_info >= (3, 13):
487
- def __class_getitem__(cls, item: Any, /) -> Any: ...
492
+ def __class_getitem__(cls, item: Any, /) -> Any:
493
+ """See PEP 585"""
494
+ ...
488
495
 
489
496
  @final
490
497
  class AsyncGeneratorType(AsyncGenerator[_YieldT_co, _SendT_contra]):
@@ -588,7 +595,9 @@ class CoroutineType(Coroutine[_YieldT_co, _SendT_contra, _ReturnT_co]):
588
595
  """
589
596
  ...
590
597
  if sys.version_info >= (3, 13):
591
- def __class_getitem__(cls, item: Any, /) -> Any: ...
598
+ def __class_getitem__(cls, item: Any, /) -> Any:
599
+ """See PEP 585"""
600
+ ...
592
601
 
593
602
  @final
594
603
  class MethodType:
@@ -710,12 +719,7 @@ class ClassMethodDescriptorType:
710
719
 
711
720
  @final
712
721
  class TracebackType:
713
- """
714
- TracebackType(tb_next, tb_frame, tb_lasti, tb_lineno)
715
- --
716
-
717
- Create a new traceback object.
718
- """
722
+ """Create a new traceback object."""
719
723
  def __new__(cls, tb_next: TracebackType | None, tb_frame: FrameType, tb_lasti: int, tb_lineno: int) -> Self: ...
720
724
  tb_next: TracebackType | None
721
725
  # the rest are read-only
@@ -854,12 +858,15 @@ if sys.version_info >= (3, 9):
854
858
  if sys.version_info >= (3, 10):
855
859
  @final
856
860
  class NoneType:
861
+ """The type of the None singleton."""
857
862
  def __bool__(self) -> Literal[False]:
858
863
  """True if self else False"""
859
864
  ...
860
865
 
861
866
  @final
862
- class EllipsisType: ...
867
+ class EllipsisType:
868
+ """The type of the Ellipsis singleton."""
869
+ ...
863
870
 
864
871
  from builtins import _NotImplementedType
865
872
 
@@ -883,4 +890,15 @@ if sys.version_info >= (3, 10):
883
890
 
884
891
  if sys.version_info >= (3, 13):
885
892
  @final
886
- class CapsuleType: ...
893
+ class CapsuleType:
894
+ """
895
+ Capsule objects let you wrap a C "void *" pointer in a Python
896
+ object. They're a way of passing data through the Python interpreter
897
+ without creating your own custom type.
898
+
899
+ Capsules are used for communication between extension modules.
900
+ They provide a way for an extension module to export a C interface
901
+ to other extension modules, so that extension modules can use the
902
+ Python import mechanism to link to one another.
903
+ """
904
+ ...
@@ -232,7 +232,9 @@ if sys.version_info >= (3, 11):
232
232
  def __name__(self) -> str: ...
233
233
  if sys.version_info >= (3, 13):
234
234
  @property
235
- def __default__(self) -> Any: ...
235
+ def __default__(self) -> Any:
236
+ """The default value for this TypeVarTuple."""
237
+ ...
236
238
  def has_default(self) -> bool: ...
237
239
  if sys.version_info >= (3, 13):
238
240
  def __init__(self, name: str, *, default: Any = ...) -> None: ...
@@ -279,7 +281,9 @@ if sys.version_info >= (3, 10):
279
281
  def __infer_variance__(self) -> bool: ...
280
282
  if sys.version_info >= (3, 13):
281
283
  @property
282
- def __default__(self) -> Any: ...
284
+ def __default__(self) -> Any:
285
+ """The default value for this ParamSpec."""
286
+ ...
283
287
  if sys.version_info >= (3, 13):
284
288
  def __init__(
285
289
  self,
@@ -2,10 +2,10 @@
2
2
  This module provides access to the Unicode Character Database which
3
3
  defines character properties for all Unicode characters. The data in
4
4
  this database is based on the UnicodeData.txt file version
5
- 15.0.0 which is publicly available from ftp://ftp.unicode.org/.
5
+ 15.1.0 which is publicly available from ftp://ftp.unicode.org/.
6
6
 
7
7
  The module uses the same names and symbols as defined by the
8
- UnicodeData File Format 15.0.0.
8
+ UnicodeData File Format 15.1.0.
9
9
  """
10
10
 
11
11
  import sys
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.18.4",
5
+ "version": "1.19.0",
6
6
  "license": "MIT",
7
7
  "author": {
8
8
  "name": "detachhead"