Staging
v0.8.1
v0.8.1
https://github.com/python/cpython
Revision dd0e087edc8f1e4d2c0913236b1a62a77d9db6d8 authored by Martin Teichmann on 28 January 2018, 04:17:46 UTC, committed by Nick Coghlan on 28 January 2018, 04:17:46 UTC
The arguments to a generator function which is declared as a contextmanager are stored inside the context manager, and thus are kept alive, even when it is used as a regular context manager, and not as a function decorator (where it needs the original arguments to recreate the generator on each call). This is a possible unnecessary memory leak, so this changes contextmanager.__enter__ to release the saved arguments, as that method being called means that particular CM instance isn't going to need to recreate the underlying generator. Patch by Martin Teichmann.
1 parent c4b1248
Tip revision: dd0e087edc8f1e4d2c0913236b1a62a77d9db6d8 authored by Martin Teichmann on 28 January 2018, 04:17:46 UTC
bpo-30306: release arguments of contextmanager (GH-1500)
bpo-30306: release arguments of contextmanager (GH-1500)
Tip revision: dd0e087
.gitattributes
# Binary data types
*.aif binary
*.aifc binary
*.aiff binary
*.au binary
*.bmp binary
*.exe binary
*.icns binary
*.gif binary
*.ico binary
*.jpg binary
*.pck binary
*.png binary
*.psd binary
*.tar binary
*.wav binary
*.whl binary
*.zip binary
# Specific binary files
Lib/test/sndhdrdata/sndhdr.* binary
# Text files that should not be subject to eol conversion
Lib/test/cjkencodings/* -text
Lib/test/decimaltestdata/*.decTest -text
Lib/test/test_email/data/*.txt -text
Lib/test/xmltestdata/* -text
Lib/test/coding20731.py -text
Lib/test/test_importlib/data01/* -text
# CRLF files
*.bat text eol=crlf
*.ps1 text eol=crlf
*.sln text eol=crlf
*.vcxproj* text eol=crlf
*.props text eol=crlf
*.proj text eol=crlf
PCbuild/readme.txt text eol=crlf
PC/readme.txt text eol=crlf
Computing file changes ...