Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Commit 05c5ad5

Browse files
Prepare release 2.8.0 (#126)
1 parent 7f94c4d commit 05c5ad5

527 files changed

Lines changed: 21441 additions & 10005 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

README.rst

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -100,12 +100,13 @@ call ``resolver.get_fully_qualified_name('collections.Set')`` to retrieve the
100100
Changelog
101101
---------
102102

103-
Unreleased
103+
Version 2.8.0 (July 15, 2025)
104104

105105
- Drop support for Python 3.8 and add preliminary support for Python 3.14
106106
- Search for names and imports in ``.py`` files in addition to ``.pyi`` files
107107
- Allow more redefinitions in stub files. ``OverloadedName`` objects can now
108108
contain ``ImportedName`` objects.
109+
- Explicitly set encoding to UTF-8, fixing crashes on Windows in some cases.
109110

110111
Version 2.7.0 (July 16, 2024)
111112

typeshed_client/__init__.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@
1919
)
2020
from .resolver import ImportedInfo, Resolver
2121

22-
__version__ = "2.7.0"
22+
__version__ = "2.8.0"
2323

2424

2525
__all__ = [

typeshed_client/parser.py

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -83,14 +83,19 @@ def parse_ast(
8383
return name_dict
8484
for info in names:
8585
if info.name in name_dict:
86+
existing = name_dict[info.name]
87+
if isinstance(existing.ast, ImportedName):
88+
# If it's imported, allow to just overwrite it
89+
name_dict[info.name] = info
90+
continue
91+
8692
if info.child_nodes:
8793
_warn(
8894
f"Name is already present in {', '.join(module_name)}: {info}",
8995
search_context,
9096
file_path,
9197
)
9298
continue
93-
existing = name_dict[info.name]
9499

95100
# This is common and harmless, likely from an "import *"
96101
if existing == info:

typeshed_client/typeshed/VERSIONS

Lines changed: 37 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -20,37 +20,53 @@
2020
__future__: 3.0-
2121
__main__: 3.0-
2222
_ast: 3.0-
23+
_asyncio: 3.0-
2324
_bisect: 3.0-
25+
_blake2: 3.6-
2426
_bootlocale: 3.4-3.9
27+
_bz2: 3.3-
2528
_codecs: 3.0-
2629
_collections_abc: 3.3-
2730
_compat_pickle: 3.1-
28-
_compression: 3.5-
31+
_compression: 3.5-3.13
32+
_contextvars: 3.7-
2933
_csv: 3.0-
3034
_ctypes: 3.0-
3135
_curses: 3.0-
36+
_curses_panel: 3.0-
37+
_dbm: 3.0-
3238
_decimal: 3.3-
33-
_dummy_thread: 3.0-3.8
34-
_dummy_threading: 3.0-3.8
39+
_frozen_importlib: 3.0-
40+
_frozen_importlib_external: 3.5-
41+
_gdbm: 3.0-
42+
_hashlib: 3.0-
3543
_heapq: 3.0-
3644
_imp: 3.0-
3745
_interpchannels: 3.13-
3846
_interpqueues: 3.13-
3947
_interpreters: 3.13-
48+
_io: 3.0-
4049
_json: 3.0-
4150
_locale: 3.0-
4251
_lsprof: 3.0-
52+
_lzma: 3.3-
4353
_markupbase: 3.0-
44-
_msi: 3.0-
54+
_msi: 3.0-3.12
55+
_multibytecodec: 3.0-
4556
_operator: 3.4-
4657
_osx_support: 3.0-
58+
_pickle: 3.0-
4759
_posixsubprocess: 3.2-
4860
_py_abc: 3.7-
4961
_pydecimal: 3.5-
62+
_queue: 3.7-
5063
_random: 3.0-
5164
_sitebuiltins: 3.4-
5265
_socket: 3.0- # present in 3.0 at runtime, but not in typeshed
66+
_sqlite3: 3.0-
67+
_ssl: 3.0-
5368
_stat: 3.4-
69+
_struct: 3.0-
5470
_thread: 3.0-
5571
_threading_local: 3.0-
5672
_tkinter: 3.0-
@@ -60,8 +76,10 @@ _warnings: 3.0-
6076
_weakref: 3.0-
6177
_weakrefset: 3.0-
6278
_winapi: 3.3-
79+
_zstd: 3.14-
6380
abc: 3.0-
6481
aifc: 3.0-3.12
82+
annotationlib: 3.14-
6583
antigravity: 3.0-
6684
argparse: 3.0-
6785
array: 3.0-
@@ -70,12 +88,14 @@ asynchat: 3.0-3.11
7088
asyncio: 3.4-
7189
asyncio.exceptions: 3.8-
7290
asyncio.format_helpers: 3.7-
91+
asyncio.graph: 3.14-
7392
asyncio.mixins: 3.10-
7493
asyncio.runners: 3.7-
7594
asyncio.staggered: 3.8-
7695
asyncio.taskgroups: 3.11-
7796
asyncio.threads: 3.9-
7897
asyncio.timeouts: 3.11-
98+
asyncio.tools: 3.14-
7999
asyncio.trsock: 3.8-
80100
asyncore: 3.0-3.11
81101
atexit: 3.0-
@@ -101,7 +121,9 @@ collections: 3.0-
101121
collections.abc: 3.3-
102122
colorsys: 3.0-
103123
compileall: 3.0-
124+
compression: 3.14-
104125
concurrent: 3.2-
126+
concurrent.futures.interpreter: 3.14-
105127
configparser: 3.0-
106128
contextlib: 3.0-
107129
contextvars: 3.7-
@@ -122,9 +144,13 @@ distutils: 3.0-3.11
122144
distutils.command.bdist_msi: 3.0-3.10
123145
distutils.command.bdist_wininst: 3.0-3.9
124146
doctest: 3.0-
125-
dummy_threading: 3.0-3.8
126147
email: 3.0-
127148
encodings: 3.0-
149+
encodings.cp1125: 3.4-
150+
encodings.cp273: 3.4-
151+
encodings.cp858: 3.2-
152+
encodings.koi8_t: 3.5-
153+
encodings.kz1048: 3.5-
128154
ensurepip: 3.0-
129155
enum: 3.4-
130156
errno: 3.0-
@@ -156,11 +182,15 @@ imghdr: 3.0-3.12
156182
imp: 3.0-3.11
157183
importlib: 3.0-
158184
importlib._abc: 3.10-
185+
importlib._bootstrap: 3.0-
186+
importlib._bootstrap_external: 3.5-
159187
importlib.metadata: 3.8-
160188
importlib.metadata._meta: 3.10-
161189
importlib.metadata.diagnose: 3.13-
162190
importlib.readers: 3.10-
163191
importlib.resources: 3.7-
192+
importlib.resources._common: 3.11-
193+
importlib.resources._functional: 3.13-
164194
importlib.resources.abc: 3.11-
165195
importlib.resources.readers: 3.11-
166196
importlib.resources.simple: 3.11-
@@ -202,6 +232,7 @@ os: 3.0-
202232
ossaudiodev: 3.0-3.12
203233
parser: 3.0-3.9
204234
pathlib: 3.4-
235+
pathlib.types: 3.14-
205236
pdb: 3.0-
206237
pickle: 3.0-
207238
pickletools: 3.0-
@@ -254,6 +285,7 @@ ssl: 3.0-
254285
stat: 3.0-
255286
statistics: 3.4-
256287
string: 3.0-
288+
string.templatelib: 3.14-
257289
stringprep: 3.0-
258290
struct: 3.0-
259291
subprocess: 3.0-
Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1 @@
1-
from typing import Any
2-
3-
def __getattr__(name: str) -> Any: ...
1+
def __getattr__(name: str): ... # incomplete module

0 commit comments

Comments
 (0)