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

12 statements  

« prev     ^ index     » next       coverage.py v7.2.7, created at 2023-06-07 06:53 +0000

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")