comparison tests/test-stdio.py @ 52640:24ee91ba9aa8

pyupgrade: drop usage of py3 aliases for `OSError` These were different classes in py2, but now a handful of error classes are just an alias of `OSError`, like `IOError`, `EnvironmentError`, `WindowsError`, etc. This is the result of running a hacked version of `pyupgrade` 3.19.1[1] $ hg files -0 'relglob:**.py' | xargs -0 \ pyupgrade --py38-plus --keep-percent-format --keep-mock --keep-runtime-typing The hack is because it doesn't have command line switches to disable most changes, so it makes tons of unrelated changes all at once. The hack is to 1) patch `pyupgrade._main._fix_tokens()` to immediately return its content arg 2) change `pyupgrade._data.register_decorator()` to only register the function if it's from the fixer we're interested in: if func.__module__ in ( "pyupgrade._plugins.exceptions", ): FUNCS[tp].append(func) return func [1] https://github.com/asottile/pyupgrade
author Matt Harbison <matt_harbison@yahoo.com>
date Sun, 05 Jan 2025 21:03:17 -0500
parents 402f9f0f9387
children f8f14e6d032b
comparison
equal deleted inserted replaced
52639:9db77d46de79 52640:24ee91ba9aa8
86 yield 86 yield
87 finally: 87 finally:
88 for fd in fds: 88 for fd in fds:
89 try: 89 try:
90 os.close(fd) 90 os.close(fd)
91 except EnvironmentError: 91 except OSError:
92 pass 92 pass
93 93
94 94
95 # In the following, we set the FDs non-inheritable mainly to make it possible 95 # In the following, we set the FDs non-inheritable mainly to make it possible
96 # for tests to close the receiving end of the pipe / PTYs. 96 # for tests to close the receiving end of the pipe / PTYs.