Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
C
cpython
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
Kirill Smelkov
cpython
Commits
dd6507eb
Commit
dd6507eb
authored
Sep 10, 2014
by
Serhiy Storchaka
Browse files
Options
Browse Files
Download
Plain Diff
Issue #22369: Change "context manager protocol" to "context management protocol".
parents
9f69b867
14867998
Changes
16
Hide whitespace changes
Inline
Side-by-side
Showing
16 changed files
with
42 additions
and
42 deletions
+42
-42
Doc/library/asyncio-sync.rst
Doc/library/asyncio-sync.rst
+2
-2
Doc/library/mailbox.rst
Doc/library/mailbox.rst
+1
-1
Doc/library/multiprocessing.rst
Doc/library/multiprocessing.rst
+4
-4
Doc/library/ossaudiodev.rst
Doc/library/ossaudiodev.rst
+2
-2
Doc/library/tarfile.rst
Doc/library/tarfile.rst
+1
-1
Doc/library/threading.rst
Doc/library/threading.rst
+4
-4
Doc/whatsnew/2.7.rst
Doc/whatsnew/2.7.rst
+1
-1
Doc/whatsnew/3.1.rst
Doc/whatsnew/3.1.rst
+1
-1
Doc/whatsnew/3.2.rst
Doc/whatsnew/3.2.rst
+3
-3
Doc/whatsnew/3.3.rst
Doc/whatsnew/3.3.rst
+2
-2
Doc/whatsnew/3.4.rst
Doc/whatsnew/3.4.rst
+3
-3
Lib/asyncio/locks.py
Lib/asyncio/locks.py
+2
-2
Lib/mailbox.py
Lib/mailbox.py
+1
-1
Misc/HISTORY
Misc/HISTORY
+9
-9
Misc/NEWS
Misc/NEWS
+4
-4
Modules/ossaudiodev.c
Modules/ossaudiodev.c
+2
-2
No files found.
Doc/library/asyncio-sync.rst
View file @
dd6507eb
...
...
@@ -34,7 +34,7 @@ Lock
:meth:`acquire` is a coroutine and should be called with ``yield from``.
Locks also support the context manage
r
protocol. ``(yield from lock)``
Locks also support the context manage
ment
protocol. ``(yield from lock)``
should be used as context manager expression.
Usage::
...
...
@@ -229,7 +229,7 @@ Semaphore
counter can never go below zero; when :meth:`acquire` finds that it is zero,
it blocks, waiting until some other thread calls :meth:`release`.
Semaphores also support the context manage
r
protocol.
Semaphores also support the context manage
ment
protocol.
The optional argument gives the initial value for the internal counter; it
defaults to ``1``. If the value given is less than ``0``, :exc:`ValueError`
...
...
Doc/library/mailbox.rst
View file @
dd6507eb
...
...
@@ -202,7 +202,7 @@ Supported mailbox formats are Maildir, mbox, MH, Babyl, and MMDF.
.. versionchanged:: 3.2
The file object really is a binary file; previously it was incorrectly
returned in text mode. Also, the file-like object now supports the
context manage
r
protocol: you can use a :keyword:`with` statement to
context manage
ment
protocol: you can use a :keyword:`with` statement to
automatically close it.
.. note::
...
...
Doc/library/multiprocessing.rst
View file @
dd6507eb
...
...
@@ -1046,7 +1046,7 @@ Connection objects are usually created using :func:`Pipe` -- see also
using
:
meth
:`
Connection
.
send
`
and
:
meth
:`
Connection
.
recv
`.
..
versionadded
::
3.3
Connection
objects
now
support
the
context
manage
r
protocol
--
see
Connection
objects
now
support
the
context
manage
ment
protocol
--
see
:
ref
:`
typecontextmanager
`.
:
meth
:`~
contextmanager
.
__enter__
`
returns
the
connection
object
,
and
:
meth
:`~
contextmanager
.
__exit__
`
calls
:
meth
:`
close
`.
...
...
@@ -1506,7 +1506,7 @@ their parent process exits. The manager classes are defined in the
The
address
used
by
the
manager
.
..
versionchanged
::
3.3
Manager
objects
support
the
context
manage
r
protocol
--
see
Manager
objects
support
the
context
manage
ment
protocol
--
see
:
ref
:`
typecontextmanager
`.
:
meth
:`~
contextmanager
.
__enter__
`
starts
the
server
process
(
if
it
has
not
already
started
)
and
then
returns
the
manager
object
.
:
meth
:`~
contextmanager
.
__exit__
`
calls
:
meth
:`
shutdown
`.
...
...
@@ -1998,7 +1998,7 @@ with the :class:`Pool` class.
:meth:`terminate` before using :meth:`join`.
.. versionadded:: 3.3
Pool objects now support the context manage
r
protocol -- see
Pool objects now support the context manage
ment
protocol -- see
:ref:`typecontextmanager`. :meth:`~contextmanager.__enter__` returns the
pool object, and :meth:`~contextmanager.__exit__` calls :meth:`terminate`.
...
...
@@ -2171,7 +2171,7 @@ multiple connections at the same time.
unavailable then it is ``None``.
.. versionadded:: 3.3
Listener objects now support the context manage
r
protocol -- see
Listener objects now support the context manage
ment
protocol -- see
:ref:`typecontextmanager`. :meth:`~contextmanager.__enter__` returns the
listener object, and :meth:`~contextmanager.__exit__` calls :meth:`close`.
...
...
Doc/library/ossaudiodev.rst
View file @
dd6507eb
...
...
@@ -165,7 +165,7 @@ and (read-only) attributes:
data written is always equal to the amount of data supplied.
.. versionchanged:: 3.2
Audio device objects also support the context manage
r
protocol, i.e. they can
Audio device objects also support the context manage
ment
protocol, i.e. they can
be used in a :keyword:`with` statement.
...
...
@@ -357,7 +357,7 @@ The mixer object provides two file-like methods:
Returns the file handle number of the open mixer device file.
.. versionchanged:: 3.2
Mixer objects also support the context manage
r
protocol.
Mixer objects also support the context manage
ment
protocol.
The remaining methods are specific to audio mixing:
...
...
Doc/library/tarfile.rst
View file @
dd6507eb
...
...
@@ -238,7 +238,7 @@ be finalized; only the internally used file object will be closed. See the
:ref:`tar-examples` section for a use case.
.. versionadded:: 3.2
Added support for the context manage
r
protocol.
Added support for the context manage
ment
protocol.
.. class:: TarFile(name=None, mode='r', fileobj=None, format=DEFAULT_FORMAT, tarinfo=TarInfo, dereference=False, ignore_zeros=False, encoding=ENCODING, errors='surrogateescape', pax_headers=None, debug=0, errorlevel=0)
...
...
Doc/library/threading.rst
View file @
dd6507eb
...
...
@@ -354,7 +354,7 @@ called in the locked state; it changes the state to unlocked and returns
immediately. If an attempt is made to release an unlocked lock, a
:exc:`RuntimeError` will be raised.
Locks also support the :ref:`context manage
r
protocol <with-locks>`.
Locks also support the :ref:`context manage
ment
protocol <with-locks>`.
When more than one thread is blocked in :meth:`~Lock.acquire` waiting for the
state to turn to unlocked, only one thread proceeds when a :meth:`~Lock.release`
...
...
@@ -433,7 +433,7 @@ call pairs may be nested; only the final :meth:`~Lock.release` (the
:meth:`~Lock.release` of the outermost pair) resets the lock to unlocked and
allows another thread blocked in :meth:`~Lock.acquire` to proceed.
Reentrant locks also support the :ref:`context manage
r
protocol <with-locks>`.
Reentrant locks also support the :ref:`context manage
ment
protocol <with-locks>`.
.. class:: RLock()
...
...
@@ -501,7 +501,7 @@ passed in or one will be created by default. Passing one in is useful when
several condition variables must share the same lock. The lock is part of
the condition object: you don't have to track it separately.
A condition variable obeys the :ref:`context manage
r
protocol <with-locks>`:
A condition variable obeys the :ref:`context manage
ment
protocol <with-locks>`:
using the ``with`` statement acquires the associated lock for the duration of
the enclosed block. The :meth:`~Condition.acquire` and
:meth:`~Condition.release` methods also call the corresponding methods of
...
...
@@ -677,7 +677,7 @@ call. The counter can never go below zero; when :meth:`~Semaphore.acquire`
finds that it is zero, it blocks, waiting until some other thread calls
:meth:`~Semaphore.release`.
Semaphores also support the :ref:`context manage
r
protocol <with-locks>`.
Semaphores also support the :ref:`context manage
ment
protocol <with-locks>`.
.. class:: Semaphore(value=1)
...
...
Doc/whatsnew/2.7.rst
View file @
dd6507eb
...
...
@@ -1612,7 +1612,7 @@ changes, or look through the Subversion logs for all the details.
resulting archive. This is more powerful than the existing
*exclude* argument, which has therefore been deprecated.
(Added by Lars Gustäbel; :issue:`6856`.)
The :class:`~tarfile.TarFile` class also now supports the context manage
r
protocol.
The :class:`~tarfile.TarFile` class also now supports the context manage
ment
protocol.
(Added by Lars Gustäbel; :issue:`7232`.)
* The :meth:`~threading.Event.wait` method of the :class:`threading.Event` class
...
...
Doc/whatsnew/3.1.rst
View file @
dd6507eb
...
...
@@ -238,7 +238,7 @@ New, Improved, and Deprecated Modules
(Contributed by Guilherme Polo; :issue:`2983`.)
* The :class:`gzip.GzipFile` and :class:`bz2.BZ2File` classes now support
the context manage
r
protocol::
the context manage
ment
protocol::
>>> # Automatically close file after writing
>>> with gzip.GzipFile(filename, "wb") as f:
...
...
Doc/whatsnew/3.2.rst
View file @
dd6507eb
...
...
@@ -522,7 +522,7 @@ Some smaller changes made to the core Python language are:
(Proposed and implemented by Mark Dickinson; :issue:`9337`.)
* :class:`memoryview` objects now have a :meth:`~memoryview.release()` method
and they also now support the context manage
r
protocol. This allows timely
and they also now support the context manage
ment
protocol. This allows timely
release of any resources that were acquired when requesting a buffer from the
original object.
...
...
@@ -1315,7 +1315,7 @@ contexts that correspond to the decimal interchange formats specified in IEEE
ftp
---
The :class:`ftplib.FTP` class now supports the context manage
r
protocol to
The :class:`ftplib.FTP` class now supports the context manage
ment
protocol to
unconditionally consume :exc:`socket.error` exceptions and to close the FTP
connection when done::
...
...
@@ -1595,7 +1595,7 @@ The :mod:`socket` module has two new improvements.
descriptor. The latter can then be reused for other purposes.
(Added by Antoine Pitrou; :issue:`8524`.)
* :func:`socket.create_connection` now supports the context manage
r
protocol
* :func:`socket.create_connection` now supports the context manage
ment
protocol
to unconditionally consume :exc:`socket.error` exceptions and to close the
socket when done.
(Contributed by Giampaolo Rodolà; :issue:`9794`.)
...
...
Doc/whatsnew/3.3.rst
View file @
dd6507eb
...
...
@@ -1556,7 +1556,7 @@ Schlawack in :issue:`12708`.)
nntplib
-------
The :class:`nntplib.NNTP` class now supports the context manage
r
protocol to
The :class:`nntplib.NNTP` class now supports the context manage
ment
protocol to
unconditionally consume :exc:`socket.error` exceptions and to close the NNTP
connection when done::
...
...
@@ -1861,7 +1861,7 @@ to specify the ``(host, port)`` to use as the source address in the bind call
when creating the outgoing socket. (Contributed by Paulo Scardine in
:issue:`11281`.)
:class:`~smtplib.SMTP` now supports the context manage
r
protocol, allowing an
:class:`~smtplib.SMTP` now supports the context manage
ment
protocol, allowing an
``SMTP`` instance to be used in a ``with`` statement. (Contributed
by Giampaolo Rodolà in :issue:`11289`.)
...
...
Doc/whatsnew/3.4.rst
View file @
dd6507eb
...
...
@@ -608,7 +608,7 @@ aifc
The :meth:`~aifc.aifc.getparams` method now returns a namedtuple rather than a
plain tuple. (Contributed by Claudiu Popa in :issue:`17818`.)
:func:`aifc.open` now supports the context manage
r
protocol: when used in a
:func:`aifc.open` now supports the context manage
ment
protocol: when used in a
:keyword:`with` block, the :meth:`~aifc.aifc.close` method of the returned
object will be called automatically at the end of the block. (Contributed by
Serhiy Storchacha in :issue:`16486`.)
...
...
@@ -1521,7 +1521,7 @@ sunau
The :meth:`~sunau.getparams` method now returns a namedtuple rather than a
plain tuple. (Contributed by Claudiu Popa in :issue:`18901`.)
:meth:`sunau.open` now supports the context manage
r
protocol: when used in a
:meth:`sunau.open` now supports the context manage
ment
protocol: when used in a
:keyword:`with` block, the ``close`` method of the returned object will be
called automatically at the end of the block. (Contributed by Serhiy Storchaka
in :issue:`18878`.)
...
...
@@ -1723,7 +1723,7 @@ wave
The :meth:`~wave.getparams` method now returns a namedtuple rather than a
plain tuple. (Contributed by Claudiu Popa in :issue:`17487`.)
:meth:`wave.open` now supports the context manage
r
protocol. (Contributed
:meth:`wave.open` now supports the context manage
ment
protocol. (Contributed
by Claudiu Popa in :issue:`17616`.)
:mod:`wave` can now :ref:`write output to unseekable files
...
...
Lib/asyncio/locks.py
View file @
dd6507eb
...
...
@@ -63,7 +63,7 @@ class Lock:
acquire() is a coroutine and should be called with 'yield from'.
Locks also support the context manage
r
protocol. '(yield from lock)'
Locks also support the context manage
ment
protocol. '(yield from lock)'
should be used as context manager expression.
Usage:
...
...
@@ -376,7 +376,7 @@ class Semaphore:
can never go below zero; when acquire() finds that it is zero, it blocks,
waiting until some other thread calls release().
Semaphores also support the context manage
r
protocol.
Semaphores also support the context manage
ment
protocol.
The optional argument gives the initial value for the internal
counter; it defaults to 1. If the value given is less than 0,
...
...
Lib/mailbox.py
View file @
dd6507eb
...
...
@@ -1980,7 +1980,7 @@ class _ProxyFile:
return
result
def
__enter__
(
self
):
"""Context manage
r
protocol support."""
"""Context manage
ment
protocol support."""
return
self
def
__exit__
(
self
,
*
exc
):
...
...
Misc/HISTORY
View file @
dd6507eb
...
...
@@ -806,7 +806,7 @@ Library
- Issue #14772: Return destination values from some shutil functions.
- Issue #15064: Implement context manage
r
protocol for multiprocessing types
- Issue #15064: Implement context manage
ment
protocol for multiprocessing types
- Issue #15101: Make pool finalizer avoid joining current thread.
...
...
@@ -3527,7 +3527,7 @@ Library
``mmap.PROT_READ|mmap.PROT_EXEC`` would segfault instead of raising a
TypeError. Patch by Charles-François Natali.
- Issue #9795: add context manage
r
protocol support for nntplib.NNTP class.
- Issue #9795: add context manage
ment
protocol support for nntplib.NNTP class.
- Issue #11306: mailbox in certain cases adapts to an inability to open
certain files in read-write mode. Previously it detected this by
...
...
@@ -4837,7 +4837,7 @@ Library
- Issue #1486713: HTMLParser now has an optional tolerant mode where it tries to
guess at the correct parsing of invalid html.
- Issue #10554: Add context manage
r
support to subprocess.Popen objects.
- Issue #10554: Add context manage
ment protocol
support to subprocess.Popen objects.
- Issue #8989: email.utils.make_msgid now has a domain parameter that can
override the domain name used in the generated msgid.
...
...
@@ -5199,7 +5199,7 @@ Library
- Issue #10253: FileIO leaks a file descriptor when trying to open a file for
append that isn't seekable. Patch by Brian Brazil.
- Support context manage
r
protocol for file-like objects returned by mailbox
- Support context manage
ment
protocol for file-like objects returned by mailbox
``get_file()`` methods.
- Issue #10246: uu.encode didn't close file objects explicitly when filenames
...
...
@@ -5333,7 +5333,7 @@ Extension Modules
- Issue #10143: Update "os.pathconf" values.
- Issue #6518: Support context manage
r prot
col for ossaudiodev types.
- Issue #6518: Support context manage
ment proto
col for ossaudiodev types.
- Issue #678250: Make mmap flush a noop on ACCESS_READ and ACCESS_COPY.
...
...
@@ -5942,7 +5942,7 @@ Extension Modules
- Issue #8105: Validate file descriptor passed to mmap.mmap on Windows.
- Issue #8046: Add context manage
r
protocol support and .closed property to mmap
- Issue #8046: Add context manage
ment
protocol support and .closed property to mmap
objects.
Library
...
...
@@ -6949,7 +6949,7 @@ Library
- The audioop module now supports sound fragments of length greater than 2**31
bytes on 64-bit machines, and is PY_SSIZE_T_CLEAN.
- Issue #4972: Add support for the context manage
r
protocol to the ftplib.FTP
- Issue #4972: Add support for the context manage
ment
protocol to the ftplib.FTP
class.
- Issue #8664: In py_compile, create __pycache__ when the compiled path is
...
...
@@ -7237,7 +7237,7 @@ Library
- Issue #7494: fix a crash in _lsprof (cProfile) after clearing the profiler,
reset also the pointer to the current pointer context.
- Issue #7232: Add support for the context manage
r
protocol to the TarFile
- Issue #7232: Add support for the context manage
ment
protocol to the TarFile
class.
- Issue #7250: Fix info leak of os.environ across multi-run uses of
...
...
@@ -9275,7 +9275,7 @@ Library
- Issue #1696199: Add collections.Counter() for rapid and convenient
counting.
- Issue #3860: GzipFile and BZ2File now support the context manage
r
protocol.
- Issue #3860: GzipFile and BZ2File now support the context manage
ment
protocol.
- Issue #4867: Fixed a crash in ctypes when passing a string to a
function without defining argtypes.
Misc/NEWS
View file @
dd6507eb
...
...
@@ -132,7 +132,7 @@ Core and Builtins
Library
-------
-
Issue
#
12410
:
imaplib
.
IMAP4
now
supports
the
context
manage
r
protocol
.
-
Issue
#
12410
:
imaplib
.
IMAP4
now
supports
the
context
manage
ment
protocol
.
Original
patch
by
Tarek
Ziad
é
.
-
Issue
#
16662
:
load_tests
()
is
now
unconditionally
run
when
it
is
present
in
...
...
@@ -2286,7 +2286,7 @@ Library
-
Issue
#
19448
:
Add
private
API
to
SSL
module
to
lookup
ASN
.1
objects
by
OID
,
NID
,
short
name
and
long
name
.
-
Issue
#
19282
:
dbm
.
open
now
supports
the
context
manage
r
protocol
.
(
Inital
-
Issue
#
19282
:
dbm
.
open
now
supports
the
context
manage
ment
protocol
.
(
Inital
patch
by
Claudiu
Popa
)
-
Issue
#
8311
:
Added
support
for
writing
any
bytes
-
like
objects
in
the
aifc
,
...
...
@@ -2995,7 +2995,7 @@ Library
- Issue #18830: inspect.getclasstree() no longer produces duplicate entries even
when input list contains duplicates.
- Issue #18878: sunau.open now supports the context manage
r
protocol. Based on
- Issue #18878: sunau.open now supports the context manage
ment
protocol. Based on
patches by Claudiu Popa and R. David Murray.
- Issue #18909: Fix _tkinter.tkapp.interpaddr() on Windows 64-bit, don'
t
cast
...
...
@@ -3635,7 +3635,7 @@ Library
initialization
,
so
as
to
reclaim
allocated
resources
(
Python
callbacks
)
at
shutdown
.
Original
patch
by
Robin
Schreiber
.
-
Issue
#
17616
:
wave
.
open
now
supports
the
context
manage
r
protocol
.
-
Issue
#
17616
:
wave
.
open
now
supports
the
context
manage
ment
protocol
.
-
Issue
#
18599
:
Fix
name
attribute
of
_sha1
.
sha1
()
object
.
It
now
returns
'SHA1'
instead
of
'SHA'
.
...
...
Modules/ossaudiodev.c
View file @
dd6507eb
...
...
@@ -894,7 +894,7 @@ static PyMethodDef oss_methods[] = {
/* Aliases for backwards compatibility */
{
"flush"
,
(
PyCFunction
)
oss_sync
,
METH_VARARGS
},
/* Support for the context manage
r
protocol */
/* Support for the context manage
ment
protocol */
{
"__enter__"
,
oss_self
,
METH_NOARGS
},
{
"__exit__"
,
oss_exit
,
METH_VARARGS
},
...
...
@@ -906,7 +906,7 @@ static PyMethodDef oss_mixer_methods[] = {
{
"close"
,
(
PyCFunction
)
oss_mixer_close
,
METH_NOARGS
},
{
"fileno"
,
(
PyCFunction
)
oss_mixer_fileno
,
METH_NOARGS
},
/* Support for the context manage
r
protocol */
/* Support for the context manage
ment
protocol */
{
"__enter__"
,
oss_self
,
METH_NOARGS
},
{
"__exit__"
,
oss_exit
,
METH_VARARGS
},
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment