Skip to content

Conversation

@vstinner
Copy link
Member

@vstinnervstinner commented Apr 12, 2021

Deprecate io.OpenWrapper and _pyio.OpenWrapper: use io.open and
_pyio.open instead. Until Python 3.9, _pyio.open was not a static
method and builtins.open was set to OpenWrapper to not become a bound
method when set to a class variable. _io.open is a built-in function
whereas _pyio.open is a Python function. In Python 3.10, _pyio.open()
is now a static method, and builtins.open() is now io.open().

https://bugs.python.org/issue43680

Deprecate io.OpenWrapper and _pyio.OpenWrapper: use io.open and _pyio.open instead. Until Python 3.9, _pyio.open was not a static method and builtins.open was set to OpenWrapper to not become a bound method when set to a class variable. _io.open is a built-in function whereas _pyio.open is a Python function. In Python 3.10, _pyio.open() is now a static method, and builtins.open() is now io.open().
@vstinner
Copy link
MemberAuthor

@methane: Would you mind to review this change?

@vstinnervstinner merged commit 3bc694d into python:masterApr 14, 2021
@vstinnervstinner deleted the deprecate_openwrapper branch April 14, 2021 01:24
@vstinner
Copy link
MemberAuthor

@methane: Thanks for the review, it was useful, you found a bug ;-)

Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants

@vstinner@methane@the-knights-who-say-ni@bedevere-bot