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
cd8611d5
Commit
cd8611d5
authored
Sep 12, 2015
by
Yury Selivanov
Browse files
Options
Browse Files
Download
Plain Diff
Merge 3.5
parents
3d6e7b0e
46a8b40c
Changes
1
Show whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
129 additions
and
10 deletions
+129
-10
Doc/whatsnew/3.5.rst
Doc/whatsnew/3.5.rst
+129
-10
No files found.
Doc/whatsnew/3.5.rst
View file @
cd8611d5
...
...
@@ -114,7 +114,7 @@ CPython implementation improvements:
* Builtin and extension modules are now initialized in a multi-phase process,
which is similar to how Python modules are loaded. (:pep:`489`).
Significantly
Improved Library M
odules:
Significantly
improved library m
odules:
* :class:`collections.OrderedDict` is now implemented in C, which makes it
4 to 100 times faster. (Contributed by Eric Snow in :issue:`16991`.)
...
...
@@ -432,7 +432,7 @@ PEP 475: Retry system calls failing with EINTR
:
pep
:`
475
`
adds
support
for
automatic
retry
of
system
calls
failing
with
:
py
:
data
:`~
errno
.
EINTR
`:
this
means
that
user
code
doesn
't have to deal with
EINTR
or :exc:`InterruptedError` manually, and should make it more robust
``EINTR``
or :exc:`InterruptedError` manually, and should make it more robust
against asynchronous signal reception.
Examples of functions which are now retried when interrupted by a signal
...
...
@@ -656,6 +656,13 @@ The :class:`~cgi.FieldStorage` class now supports the context management
protocol. (Contributed by Berker Peksag in :issue:`20289`.)
csv
---
:meth:`Writer.writerow <csv.Writer.writerow>` now supports arbitrary iterables,
not just sequences. (Contributed by Serhiy Storchaka in :issue:`23171`.)
cmath
-----
...
...
@@ -709,10 +716,15 @@ methods to match corresponding methods of :class:`str`.
collections.abc
---------------
The :meth:`Sequence.index <collections.abc.Sequence.index>` method now
accepts *start* and *stop* arguments to match the corresponding methods
of :class:`tuple`, :class:`list`, etc.
(Contributed by Devin Jeanpierre in :issue:`23086`.)
A new :class:`~collections.abc.Generator` abstract base class. (Contributed
by Stefan Behnel in :issue:`24018`.)
New :class:`~collections.abc.Coroutine`,
New :class:`~collections.abc.
Awaitable` :class:`~collections.abc.
Coroutine`,
:class:`~collections.abc.AsyncIterator`, and
:class:`~collections.abc.AsyncIterable` abstract base classes.
(Contributed by Yury Selivanov in :issue:`24184`.)
...
...
@@ -726,6 +738,9 @@ sumultaneously to perform parallel bytecode compilation.
The :func:`~compileall.compile_dir` function has a corresponding ``workers``
parameter. (Contributed by Claudiu Popa in :issue:`16104`.)
Another new option, ``-r``, allows to control the maximum recursion
level for subdirectories. (Contributed by Claudiu Popa in :issue:`19628`.)
The ``-q`` command line option can now be specified more than once, in
which case all output, including errors, will be suppressed. The corresponding
``quiet`` parameter in :func:`~compileall.compile_dir`,
...
...
@@ -742,6 +757,19 @@ The :meth:`Executor.map <concurrent.futures.Executor.map>` method now accepts a
:meth:`~concurrent.futures.ProcessPoolExecutor` is used.
(Contributed by Dan O'
Reilly
in
:
issue
:`
11271
`.)
A
number
of
workers
in
:
class
:`~
concurrent
.
futures
.
ThreadPoolExecutor
`
is
optional
now
.
The
default
value
equals
to
5
times
the
number
of
CPUs
.
(
Contributed
by
Claudiu
Popa
in
:
issue
:`
21527
`.)
configparser
------------
Config
parsers
can
be
customized
by
providing
a
dictionary
of
converters
in
the
constructor
.
All
converters
defined
in
config
parser
(
either
by
subclassing
or
by
providing
in
a
constructor
)
will
be
available
on
all
section
proxies
.
(
Contributed
by
Ł
ukasz
Langa
in
:
issue
:`
18159
`.)
contextlib
----------
...
...
@@ -761,6 +789,13 @@ and :envvar:`COLS` environment variables. This is useful for detecting
manual screen resize. (Contributed by Arnon Yaari in :issue:`4254`.)
dbm
---
:func:`dumb.open <dbm.dumb.open>` always creates a new database when the flag
has the value ``'
n
'``. (Contributed by Claudiu Popa in :issue:`18039`.)
difflib
-------
...
...
@@ -818,6 +853,10 @@ of using encoded words. This allows ``Messages`` to be formatted according to
``SMTPUTF8`` extension. (Contributed by R. David Murray in
:issue:`24211`.)
:class:`email.mime.text.MIMEText` constructor now accepts a
:class:`~email.charset.Charset` instance.
(Contributed by Claude Paroz and Berker Peksag in :issue:`16324`.)
enum
----
...
...
@@ -860,12 +899,20 @@ search in subdirectories using the ``"**"`` pattern.
(Contributed by Serhiy Storchaka in :issue:`13968`.)
gzip
----
The *mode* argument of :class:`~gzip.GzipFile` constructor now
accepts ``"x"`` to request exclusive creation.
(Contributed by Tim Heaney in :issue:`19222`.)
heapq
-----
Element comparison in :func:`~heapq.merge` can now be customized by
passing a :term:`key function` in a new optional
``key``
keyword argument.
A new optional
``reverse``
keyword argument can be used to reverse element
passing a :term:`key function` in a new optional
*key*
keyword argument.
A new optional
*reverse*
keyword argument can be used to reverse element
comparison. (Contributed by Raymond Hettinger in :issue:`13742`.)
...
...
@@ -877,6 +924,18 @@ HTTP status codes, reason phrases and long descriptions written in English.
(Contributed by Demian Brecht in :issue:`21793`.)
http.client
-----------
:meth:`HTTPConnection.getresponse() <http.client.HTTPConnection.getresponse>`
now raises a :exc:`~http.client.RemoteDisconnected` exception when a
remote server connection is closed unexpectedly. Additionally, if a
:exc:`ConnectionError` (of which ``RemoteDisconnected``
is a subclass) is raised, the client socket is now closed automatically,
and will reconnect on the next request.
(Contributed by Martin Panter in :issue:`3566`.)
idlelib and IDLE
----------------
...
...
@@ -1006,7 +1065,18 @@ to sort the keys alphabetically. (Contributed by Berker Peksag
in
:
issue
:`
21650
`.)
JSON
decoder
now
raises
:
exc
:`
json
.
JSONDecodeError
`
instead
of
:
exc
:`
ValueError
`.
(
Contributed
by
Serhiy
Storchaka
in
:
issue
:`
19361
`.)
:
exc
:`
ValueError
`
to
provide
better
context
information
about
the
error
.
(
Contributed
by
Serhiy
Storchaka
in
:
issue
:`
19361
`.)
linecache
---------
A
new
:
func
:`~
linecache
.
lazycache
`
function
can
be
used
to
capture
information
about
a
non
-
file
based
module
to
permit
getting
its
lines
later
via
:
func
:`~
linecache
.
getline
`.
This
avoids
doing
I
/
O
until
a
line
is
actually
needed
,
without
having
to
carry
the
module
globals
around
indefinitely
.
(
Contributed
by
Robert
Collins
in
:
issue
:`
17911
`.)
locale
...
...
@@ -1060,6 +1130,14 @@ function is now deprecated. (Contributed by Mark Dickinson and Serhiy
Storchaka
in
:
issue
:`
22486
`.)
multiprocessing
---------------
:
func
:`~
multiprocessing
.
synchronized
`
objects
now
support
the
:
term
:`
context
manager
`
protocol
.
(
Contributed
by
Charles
-
Fran
ç
ois
Natali
in
:
issue
:`
21565
`.)
operator
--------
...
...
@@ -1155,6 +1233,10 @@ A new :meth:`POP3.utf8 <poplib.POP3.utf8>` command enables :rfc:`6856`
re
--
References
and
conditional
references
to
groups
with
fixed
length
are
now
allowed
in
lookbehind
assertions
.
(
Contributed
by
Serhiy
Storchaka
in
:
issue
:`
9179
`.)
The
number
of
capturing
groups
in
regular
expression
is
no
longer
limited
by
100.
(
Contributed
by
Serhiy
Storchaka
in
:
issue
:`
22437
`.)
...
...
@@ -1400,8 +1482,9 @@ A new :func:`~sys.set_coroutine_wrapper` function allows setting a global
hook that will be called whenever a :term:`coroutine object <coroutine>`
is created by an :keyword:`async def` function. A corresponding
:func:`~sys.get_coroutine_wrapper` can be used to obtain a currently set
wrapper. Both functions are provisional, and are intended for debugging
purposes only. (Contributed by Yury Selivanov in :issue:`24017`.)
wrapper. Both functions are :term:`provisional <provisional package>`,
and are intended for debugging purposes only. (Contributed by Yury Selivanov
in :issue:`24017`.)
A new :func:`~sys.is_finalizing` function can be used to check if the Python
interpreter is :term:`shutting down <interpreter shutdown>`.
...
...
@@ -1430,6 +1513,11 @@ If set to ``False`` (the default, and the behavior in versions prior to 3.5),
they will be owned by the named user and group in the tarfile.
(Contributed by Michael Vogt and Eric Smith in :issue:`23193`.)
The :meth:`TarFile.list <tarfile.TarFile.list>` now accepts an optional
*members* keyword argument that can be set to a subset of the list returned
by :meth:`TarFile.getmembers <tarfile.TarFile.getmembers>`.
(Contributed by Serhiy Storchaka in :issue:`21549`.)
threading
---------
...
...
@@ -1535,6 +1623,18 @@ The :mod:`unicodedata` module now uses data from `Unicode 8.0.0
unittest
--------
The :meth:`TestLoader.loadTestsFromModule <unittest.TestLoader.loadTestsFromModule>`
method now accepts a keyword-only argument *pattern* which is passed to
``load_tests`` as the third argument. Found packages are now checked for
``load_tests`` regardless of whether their path matches *pattern*, because it
is impossible for a package name to match the default pattern.
(Contributed by Robert Collins and Barry A. Warsaw in :issue:`16662`.)
Unittest discovery errors now are exposed in
:data:`TestLoader.errors <unittest.TestLoader.errors>` attribute of the
:class:`~unittest.TestLoader` instance.
(Contributed by Robert Collins in :issue:`19746`.)
A new command line option ``--locals`` to show local variables in
tracebacks. (Contributed by Robert Collins in :issue:`22936`.)
...
...
@@ -1558,6 +1658,10 @@ The :class:`~unittest.mock.MagicMock` class now supports :meth:`__truediv__`,
(Contributed by Johannes Baiter in :issue:`20968`, and Håkan Lövdahl
in :issue:`23581` and :issue:`23568`.)
It is no longer necessary to explicitly pass ``create=True`` to the
:func:`~unittest.mock.patch` function when patching builtin names.
(Contributed by Kushal Das in :issue:`17660`.)
wsgiref
-------
...
...
@@ -1586,6 +1690,9 @@ SAX parsers now support a character stream of the
:class:`xmlreader.InputSource <xml.sax.xmlreader.InputSource>` object.
(Contributed by Serhiy Storchaka in :issue:`2175`.)
:func:`~xml.sax.parseString` now accepts a :class:`str` instance.
(Contributed by Serhiy Storchaka in :issue:`10590`.)
zipfile
-------
...
...
@@ -1808,6 +1915,7 @@ instead. In addition, the undocumented *LegalChars* parameter of
Passing a format string as keyword argument *format_string* to the
:meth:`~string.Formatter.format` method of the :class:`string.Formatter`
class has been deprecated.
(Contributed by Serhiy Storchaka in :issue:`23671`.)
The :func:`platform.dist` and :func:`platform.linux_distribution` functions
are now deprecated and will be removed in Python 3.7. Linux distributions use
...
...
@@ -1833,6 +1941,16 @@ The :mod:`inspect` :func:`~inspect.getfullargspec`,
Use of ``re.LOCALE`` flag with str patterns or ``re.ASCII`` is now
deprecated. (Contributed by Serhiy Storchaka in :issue:`22407`.)
Use of unrecognized special sequences consisting of ``'
\
'`` and an ASCII letter
in regular expression patterns and replacement patterns now raises a
deprecation warning and will be forbidden in Python 3.6.
(Contributed by Serhiy Storchaka in :issue:`23622`.)
The undocumented and unofficial *use_load_tests* default argument of the
:meth:`unittest.TestLoader.loadTestsFromModule` method now is
deprecated and ignored.
(Contributed by Robert Collins and Barry A. Warsaw in :issue:`16662`.)
Removed
=======
...
...
@@ -1853,8 +1971,8 @@ removed:
*
The
concept
of
``.
pyo
``
files
has
been
removed
.
*
The
JoinableQueue
class
in
the
provisional
asyncio
module
was
deprecated
in
3.4.4
and
is
now
removed
.
*
The
JoinableQueue
class
in
the
provisional
:
mod
:`
asyncio
`
module
was
deprecated
in
3.4.4
and
is
now
removed
.
(
Contributed
by
A
.
Jesse
Jiryu
Davis
in
:
issue
:`
23464
`.)
...
...
@@ -1925,6 +2043,7 @@ Changes in the Python API
an
empty
string
.
For
compatibility
use
patterns
that
never
match
an
empty
string
(
e
.
g
.
``
"x+"
``
instead
of
``
"x*"
``).
Patterns
that
could
only
match
an
empty
string
(
such
as
``
"
\b
"
``)
now
raise
an
error
.
(
Contributed
by
Serhiy
Storchaka
in
:
issue
:`
22818
`.)
*
The
:
class
:`~
http
.
cookies
.
Morsel
`
dict
-
like
interface
has
been
made
self
consistent
:
morsel
comparison
now
takes
the
:
attr
:`~
http
.
cookies
.
Morsel
.
key
`
...
...
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