Coverage for /pythoncovmergedfiles/medio/medio/usr/local/lib/python3.8/site-packages/astroid/_backport_stdlib_names.py: 67%

Shortcuts on this page

r m x   toggle line displays

j k   next/prev highlighted chunk

0   (zero) top of page

1   (one) first highlighted chunk

12 statements  

1# Licensed under the LGPL: https://www.gnu.org/licenses/old-licenses/lgpl-2.1.en.html 

2# For details: https://github.com/pylint-dev/astroid/blob/main/LICENSE 

3# Copyright (c) https://github.com/pylint-dev/astroid/blob/main/CONTRIBUTORS.txt 

4 

5""" 

6Shim to support Python versions < 3.10 that don't have sys.stdlib_module_names 

7 

8These values were created by cherry-picking the commits from 

9https://bugs.python.org/issue42955 into each version, but may be updated 

10manually if changes are needed. 

11""" 

12 

13import sys 

14 

15# TODO: Remove this file when Python 3.9 is no longer supported 

16 

17PY_3_7 = frozenset( 

18 { 

19 "__future__", 

20 "_abc", 

21 "_ast", 

22 "_asyncio", 

23 "_bisect", 

24 "_blake2", 

25 "_bootlocale", 

26 "_bz2", 

27 "_codecs", 

28 "_codecs_cn", 

29 "_codecs_hk", 

30 "_codecs_iso2022", 

31 "_codecs_jp", 

32 "_codecs_kr", 

33 "_codecs_tw", 

34 "_collections", 

35 "_collections_abc", 

36 "_compat_pickle", 

37 "_compression", 

38 "_contextvars", 

39 "_crypt", 

40 "_csv", 

41 "_ctypes", 

42 "_curses", 

43 "_curses_panel", 

44 "_datetime", 

45 "_dbm", 

46 "_decimal", 

47 "_dummy_thread", 

48 "_elementtree", 

49 "_functools", 

50 "_gdbm", 

51 "_hashlib", 

52 "_heapq", 

53 "_imp", 

54 "_io", 

55 "_json", 

56 "_locale", 

57 "_lsprof", 

58 "_lzma", 

59 "_markupbase", 

60 "_md5", 

61 "_msi", 

62 "_multibytecodec", 

63 "_multiprocessing", 

64 "_opcode", 

65 "_operator", 

66 "_osx_support", 

67 "_pickle", 

68 "_posixsubprocess", 

69 "_py_abc", 

70 "_pydecimal", 

71 "_pyio", 

72 "_queue", 

73 "_random", 

74 "_sha1", 

75 "_sha256", 

76 "_sha3", 

77 "_sha512", 

78 "_signal", 

79 "_sitebuiltins", 

80 "_socket", 

81 "_sqlite3", 

82 "_sre", 

83 "_ssl", 

84 "_stat", 

85 "_string", 

86 "_strptime", 

87 "_struct", 

88 "_symtable", 

89 "_thread", 

90 "_threading_local", 

91 "_tkinter", 

92 "_tracemalloc", 

93 "_uuid", 

94 "_warnings", 

95 "_weakref", 

96 "_weakrefset", 

97 "_winapi", 

98 "abc", 

99 "aifc", 

100 "antigravity", 

101 "argparse", 

102 "array", 

103 "ast", 

104 "asynchat", 

105 "asyncio", 

106 "asyncore", 

107 "atexit", 

108 "audioop", 

109 "base64", 

110 "bdb", 

111 "binascii", 

112 "binhex", 

113 "bisect", 

114 "builtins", 

115 "bz2", 

116 "cProfile", 

117 "calendar", 

118 "cgi", 

119 "cgitb", 

120 "chunk", 

121 "cmath", 

122 "cmd", 

123 "code", 

124 "codecs", 

125 "codeop", 

126 "collections", 

127 "colorsys", 

128 "compileall", 

129 "concurrent", 

130 "configparser", 

131 "contextlib", 

132 "contextvars", 

133 "copy", 

134 "copyreg", 

135 "crypt", 

136 "csv", 

137 "ctypes", 

138 "curses", 

139 "dataclasses", 

140 "datetime", 

141 "dbm", 

142 "decimal", 

143 "difflib", 

144 "dis", 

145 "distutils", 

146 "doctest", 

147 "dummy_threading", 

148 "email", 

149 "encodings", 

150 "ensurepip", 

151 "enum", 

152 "errno", 

153 "faulthandler", 

154 "fcntl", 

155 "filecmp", 

156 "fileinput", 

157 "fnmatch", 

158 "formatter", 

159 "fractions", 

160 "ftplib", 

161 "functools", 

162 "gc", 

163 "genericpath", 

164 "getopt", 

165 "getpass", 

166 "gettext", 

167 "glob", 

168 "grp", 

169 "gzip", 

170 "hashlib", 

171 "heapq", 

172 "hmac", 

173 "html", 

174 "http", 

175 "idlelib", 

176 "imaplib", 

177 "imghdr", 

178 "imp", 

179 "importlib", 

180 "inspect", 

181 "io", 

182 "ipaddress", 

183 "itertools", 

184 "json", 

185 "keyword", 

186 "lib2to3", 

187 "linecache", 

188 "locale", 

189 "logging", 

190 "lzma", 

191 "macpath", 

192 "mailbox", 

193 "mailcap", 

194 "marshal", 

195 "math", 

196 "mimetypes", 

197 "mmap", 

198 "modulefinder", 

199 "msilib", 

200 "msvcrt", 

201 "multiprocessing", 

202 "netrc", 

203 "nis", 

204 "nntplib", 

205 "nt", 

206 "ntpath", 

207 "nturl2path", 

208 "numbers", 

209 "opcode", 

210 "operator", 

211 "optparse", 

212 "os", 

213 "ossaudiodev", 

214 "parser", 

215 "pathlib", 

216 "pdb", 

217 "pickle", 

218 "pickletools", 

219 "pipes", 

220 "pkgutil", 

221 "platform", 

222 "plistlib", 

223 "poplib", 

224 "posix", 

225 "posixpath", 

226 "pprint", 

227 "profile", 

228 "pstats", 

229 "pty", 

230 "pwd", 

231 "py_compile", 

232 "pyclbr", 

233 "pydoc", 

234 "pydoc_data", 

235 "pyexpat", 

236 "queue", 

237 "quopri", 

238 "random", 

239 "re", 

240 "readline", 

241 "reprlib", 

242 "resource", 

243 "rlcompleter", 

244 "runpy", 

245 "sched", 

246 "secrets", 

247 "select", 

248 "selectors", 

249 "shelve", 

250 "shlex", 

251 "shutil", 

252 "signal", 

253 "site", 

254 "smtpd", 

255 "smtplib", 

256 "sndhdr", 

257 "socket", 

258 "socketserver", 

259 "spwd", 

260 "sqlite3", 

261 "sre_compile", 

262 "sre_constants", 

263 "sre_parse", 

264 "ssl", 

265 "stat", 

266 "statistics", 

267 "string", 

268 "stringprep", 

269 "struct", 

270 "subprocess", 

271 "sunau", 

272 "symbol", 

273 "symtable", 

274 "sys", 

275 "sysconfig", 

276 "syslog", 

277 "tabnanny", 

278 "tarfile", 

279 "telnetlib", 

280 "tempfile", 

281 "termios", 

282 "textwrap", 

283 "this", 

284 "threading", 

285 "time", 

286 "timeit", 

287 "tkinter", 

288 "token", 

289 "tokenize", 

290 "trace", 

291 "traceback", 

292 "tracemalloc", 

293 "tty", 

294 "turtle", 

295 "turtledemo", 

296 "types", 

297 "typing", 

298 "unicodedata", 

299 "unittest", 

300 "urllib", 

301 "uu", 

302 "uuid", 

303 "venv", 

304 "warnings", 

305 "wave", 

306 "weakref", 

307 "webbrowser", 

308 "winreg", 

309 "winsound", 

310 "wsgiref", 

311 "xdrlib", 

312 "xml", 

313 "xmlrpc", 

314 "zipapp", 

315 "zipfile", 

316 "zipimport", 

317 "zlib", 

318 } 

319) 

320 

321PY_3_8 = frozenset( 

322 PY_3_7 

323 - { 

324 "macpath", 

325 } 

326 | { 

327 "_posixshmem", 

328 "_statistics", 

329 "_xxsubinterpreters", 

330 } 

331) 

332 

333PY_3_9 = frozenset( 

334 PY_3_8 

335 - { 

336 "_dummy_thread", 

337 "dummy_threading", 

338 } 

339 | { 

340 "_aix_support", 

341 "_bootsubprocess", 

342 "_peg_parser", 

343 "_zoneinfo", 

344 "graphlib", 

345 "zoneinfo", 

346 } 

347) 

348 

349if sys.version_info[:2] == (3, 7): 

350 stdlib_module_names = PY_3_7 

351elif sys.version_info[:2] == (3, 8): 

352 stdlib_module_names = PY_3_8 

353elif sys.version_info[:2] == (3, 9): 

354 stdlib_module_names = PY_3_9 

355else: 

356 raise AssertionError("This module is only intended as a backport for Python <= 3.9")