Python 3.4.0 发布,此版本包括一系列 3.x 系列的改进,数百个小的改进和 bug 修复。
值得注意的更新内容如下:
新语法特性:
-
Python 3.4 并未添加任何新的语法特性
其他新特性:
-
Newly created file descriptors are non-inheritable(PEP 446).
-
command line option for isolated mode(issue 16499).
-
improvements in the handling of codecsthat are not text encodings (multiple issues).
-
A ModuleSpec Type for the Import System (PEP 451). (Affects importer authors.)
-
The marshal format has been made more compact and efficient (issue 16475).
新的库模块:
-
asyncio: New provisional API for asynchronous IO (PEP 3156).
-
selectors: High-level and efficient I/O multiplexing, built upon the select module primitives (part of PEP 3156).
-
statistics: A basic numerically stable statistics library (PEP 450).
库模块中重大的改进:
-
New pickle protocol 4 (PEP 3154).
-
multiprocessing now has an option to avoid using os.fork on Unix (issue 8713).
-
email has a new submodule, contentmanager, and a new Message subclass (EmailMessage) that simplify MIME handling (issue 18891).
-
The inspect and pydoc modules are now capable of correct introspection of a much wider variety of callable objects, which improves the output of the Python help() system.
-
The ipaddress module API has been declared stable
安全改进:
-
Make newly created file descriptors non-inheritable(PEP 446) to avoid leaking file descriptors to child processes.
-
New command line option for isolated mode, (issue 16499).
-
multiprocessing now has an option to avoid using os.fork on Unix. spawn and forkserver are more secure because they avoid sharing data with child processes.
-
multiprocessing child processes on Windows no longer inherit all of the parent’s inheritable handles, only the necessary ones.
-
A new hashlib.pbkdf2_hmac() function provides the PKCS#5 password-based key derivation function 2.
-
Retrieving certificates from the Windows system cert store support for ssl.
-
The ssl.SSLContext class has a lot of improvements.
-
All modules in the standard library that support SSL now support server certificate verification, including hostname matching (ssl.match_hostname()) and CRLs (Certificate Revocation lists, seessl.SSLContext.load_verify_locations()).
CPython 实现改进:
-
Leveraging PEP 442, in most cases module globals are no longer set to None during finalization (issue 18214).
其他的还包括许多 CPython 的优化,用法和潜在移植问题,更多内容请看发行说明,新特性介绍或者是更新日志,可以在这里下载最新版本。