Skip to content

Commit d8fd65e

Browse files
committed
Add what's new in Python 3.5
1 parent 6954973 commit d8fd65e

2 files changed

Lines changed: 155 additions & 0 deletions

File tree

README.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -43,6 +43,7 @@ See the following lists for features from each version of CPython that have been
4343
- [What's New In Python 3.2](WhatsNewInPython32.md)
4444
- [What's New In Python 3.3](WhatsNewInPython33.md)
4545
- [What's New In Python 3.4](WhatsNewInPython34.md)
46+
- [What's New In Python 3.5](WhatsNewInPython35.md)
4647

4748
## Upgrading from IronPython 2
4849
For details on upgrading from IronPython 2 to 3 see the [Upgrading from IronPython 2 to 3](Documentation/upgrading-from-ipy2.md) article.

WhatsNewInPython35.md

Lines changed: 154 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,154 @@
1+
# What's New In Python 3.5
2+
3+
https://docs.python.org/3/whatsnew/3.5.html
4+
5+
New Features
6+
============
7+
- [ ] [PEP 492][]: Coroutines with async and await syntax
8+
- [x] [PEP 465][]: A dedicated infix operator for matrix multiplication
9+
- [x] [PEP 448][]: Additional Unpacking Generalizations
10+
- [ ] [PEP 461][]: percent formatting support for bytes and bytearray
11+
- [ ] [PEP 484][]: Type Hints
12+
- [ ] [PEP 471][]: os.scandir() function – a better and faster directory iterator
13+
- [ ] [PEP 475][]: Retry system calls failing with EINTR
14+
- [x] [PEP 479][]: Change StopIteration handling inside generators
15+
- [ ] [PEP 485][]: A function for testing approximate equality
16+
- [ ] [PEP 486][]: Make the Python Launcher aware of virtual environments
17+
- [ ] [PEP 488][]: Elimination of PYO files
18+
- [ ] [PEP 489][]: Multi-phase extension module initialization
19+
20+
Other Language Changes
21+
======================
22+
- [ ] Added the `"namereplace"` error handlers. The `"backslashreplace"` error handlers now work with decoding and translating.
23+
- [ ] The `-b` option now affects comparisons of `bytes` with `int`.
24+
- [ ] New Kazakh `kz1048` and Tajik `koi8_t` codecs.
25+
- [ ] Property docstrings are now writable. This is especially useful for `collections.namedtuple()` docstrings.
26+
- [ ] Circular imports involving relative imports are now supported.
27+
28+
New Modules
29+
===========
30+
- [ ] `typing`
31+
- [ ] `zipapp`
32+
33+
Improved Modules
34+
================
35+
- [ ] `argparse`
36+
- [ ] `asyncio`
37+
- [ ] `bz2`
38+
- [ ] `cgi`
39+
- [ ] `cmath`
40+
- [ ] `code`
41+
- [ ] `collections`
42+
- [ ] `collections.abc`
43+
- [ ] `compileall`
44+
- [ ] `concurrent.futures`
45+
- [ ] `configparser`
46+
- [ ] `contextlib`
47+
- [ ] `csv`
48+
- [ ] `curses`
49+
- [ ] `dbm`
50+
- [ ] `difflib`
51+
- [ ] `distutils`
52+
- [ ] `doctest`
53+
- [ ] `email`
54+
- [ ] `enum`
55+
- [ ] `faulthandler`
56+
- [ ] `functools`
57+
- [ ] `glob`
58+
- [ ] `gzip`
59+
- [ ] `heapq`
60+
- [ ] `http`
61+
- [ ] `http.client`
62+
- [ ] `idlelib and IDLE`
63+
- [ ] `imaplib`
64+
- [ ] `imghdr`
65+
- [ ] `importlib`
66+
- [ ] `inspect`
67+
- [ ] `io`
68+
- [ ] `ipaddress`
69+
- [ ] `json`
70+
- [ ] `linecache`
71+
- [ ] `locale`
72+
- [ ] `logging`
73+
- [ ] `lzma`
74+
- [ ] `math`
75+
- [ ] `multiprocessing`
76+
- [ ] `operator`
77+
- [ ] `os`
78+
- [ ] `pathlib`
79+
- [ ] `pickle`
80+
- [ ] `poplib`
81+
- [ ] `re`
82+
- [ ] `readline`
83+
- [ ] `selectors`
84+
- [ ] `shutil`
85+
- [ ] `signal`
86+
- [ ] `smtpd`
87+
- [ ] `smtplib`
88+
- [ ] `sndhdr`
89+
- [ ] `socket`
90+
- [ ] `ssl`
91+
- [ ] `sqlite3`
92+
- [ ] `subprocess`
93+
- [ ] `sys`
94+
- [ ] `sysconfig`
95+
- [ ] `tarfile`
96+
- [ ] `threading`
97+
- [ ] `time`
98+
- [ ] `timeit`
99+
- [ ] `tkinter`
100+
- [ ] `traceback`
101+
- [ ] `types`
102+
- [ ] `unicodedata`
103+
- [ ] `unittest`
104+
- [ ] `unittest.mock`
105+
- [ ] `urllib`
106+
- [ ] `wsgiref`
107+
- [ ] `xmlrpc`
108+
- [ ] `xml.sax`
109+
- [ ] `zipfile`
110+
111+
Other module-level changes
112+
==========================
113+
- [ ] Many functions in the `mmap`, `ossaudiodev`, `socket`, `ssl`, and `codecs` modules now accept writable bytes-like objects.
114+
115+
Deprecated
116+
==========
117+
- [ ] New Keywords: `async` and `await` are not recommended to be used as variable, class, function or module names. Introduced by PEP 492 in Python 3.5, they will become proper keywords in Python 3.7.
118+
- [ ] Deprecated Python Behavior: Raising the `StopIteration` exception inside a generator will now generate a silent `PendingDeprecationWarning`, which will become a non-silent deprecation warning in Python 3.6 and will trigger a `RuntimeError` in Python 3.7. See PEP 479: Change StopIteration handling inside generators for details.
119+
120+
Deprecated Python modules, functions and methods
121+
================================================
122+
- [ ] The `formatter` module has now graduated to full deprecation and is still slated for removal in Python 3.6.
123+
- [ ] The `asyncio.async()` function is deprecated in favor of `ensure_future()`.
124+
- [ ] The `smtpd` module has in the past always decoded the DATA portion of email messages using the `utf-8` codec. This can now be controlled by the new _decode__data_ keyword to `SMTPServer`. The default value is `True`, but this default is deprecated. Specify the _decode__data_ keyword with an appropriate value to avoid the deprecation warning.
125+
- [ ] Directly assigning values to the `key`, `value` and `coded_value` of `http.cookies.Morsel` objects is deprecated. Use the `set()` method instead. In addition, the undocumented LegalChars parameter of `set()` is deprecated, and is now ignored.
126+
- [ ] Passing a format string as keyword argument _format__string_ to the `format()` method of the `string.Formatter` class has been deprecated.
127+
- [ ] The `platform.dist()` and `platform.linux_distribution()` functions are now deprecated. Linux distributions use too many different ways of describing themselves, so the functionality is left to a package.
128+
- [ ] The previously undocumented `from_function` and `from_builtin methods` of inspect.Signature are deprecated. Use the new `Signature.from_callable()` method instead.
129+
- [ ] The `inspect.getargspec()` function is deprecated and scheduled to be removed in Python 3.6.
130+
- [ ] The inspect `getfullargspec()`, `getcallargs()`, and `formatargspec()` functions are deprecated in favor of the `inspect.signature()` API.
131+
- [ ] `getargvalues()` and `formatargvalues()` functions were inadvertently marked as deprecated with the release of Python 3.5.0.
132+
- [ ] Use of `re.LOCALE` flag with str patterns or `re.ASCII` is now deprecated.
133+
- [ ] 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.
134+
- [ ] The undocumented and unofficial _use__load__tests_ default argument of the `unittest.TestLoader.loadTestsFromModule()` method now is deprecated and ignored.
135+
136+
Removed
137+
=======
138+
- [ ] The `__version__` attribute has been dropped from the email package. The email code hasn’t been shipped separately from the stdlib for a long time, and the `__version__` string was not updated in the last few releases.
139+
- [ ] The internal `Netrc` class in the ftplib module was deprecated in 3.4, and has now been removed.
140+
- [ ] The concept of .pyo files has been removed.
141+
- [ ] The `JoinableQueue` class in the provisional `asyncio` module was deprecated in 3.4.4 and is now removed.
142+
143+
[PEP 492]: https://www.python.org/dev/peps/pep-0492
144+
[PEP 465]: https://www.python.org/dev/peps/pep-0465
145+
[PEP 448]: https://www.python.org/dev/peps/pep-0448
146+
[PEP 461]: https://www.python.org/dev/peps/pep-0461
147+
[PEP 484]: https://www.python.org/dev/peps/pep-0484
148+
[PEP 471]: https://www.python.org/dev/peps/pep-0471
149+
[PEP 475]: https://www.python.org/dev/peps/pep-0475
150+
[PEP 479]: https://www.python.org/dev/peps/pep-0479
151+
[PEP 485]: https://www.python.org/dev/peps/pep-0485
152+
[PEP 486]: https://www.python.org/dev/peps/pep-0486
153+
[PEP 488]: https://www.python.org/dev/peps/pep-0488
154+
[PEP 489]: https://www.python.org/dev/peps/pep-0489

0 commit comments

Comments
 (0)