Skip to content

Commit aaabd61

Browse files
authored
Merge pull request #1727 from pquentin/release-0.17.0
2 parents c69944f + c37aa8c commit aaabd61

13 files changed

Lines changed: 63 additions & 35 deletions

docs/source/history.rst

Lines changed: 62 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,68 @@ Release history
55

66
.. towncrier release notes start
77
8+
Trio 0.17.0 (2020-09-15)
9+
------------------------
10+
11+
Headline features
12+
~~~~~~~~~~~~~~~~~
13+
14+
- Trio now supports automatic :ref:`async generator finalization
15+
<async-generators>`, so more async generators will work even if you
16+
don't wrap them in ``async with async_generator.aclosing():``
17+
blocks. Please see the documentation for important caveats; in
18+
particular, yielding within a nursery or cancel scope remains
19+
unsupported. (`#265 <https://github.com/python-trio/trio/issues/265>`__)
20+
21+
22+
Features
23+
~~~~~~~~
24+
25+
- `trio.open_tcp_stream` has a new ``local_address=`` keyword argument
26+
that can be used on machines with multiple IP addresses to control
27+
which IP is used for the outgoing connection. (`#275 <https://github.com/python-trio/trio/issues/275>`__)
28+
- If you pass a raw IP address into ``sendto``, it no longer spends any
29+
time trying to resolve the hostname. If you're using UDP, this should
30+
substantially reduce your per-packet overhead. (`#1595 <https://github.com/python-trio/trio/issues/1595>`__)
31+
- `trio.lowlevel.checkpoint` is now much faster. (`#1613 <https://github.com/python-trio/trio/issues/1613>`__)
32+
- We switched to a new, lower-overhead data structure to track upcoming
33+
timeouts, which should make your programs faster. (`#1629 <https://github.com/python-trio/trio/issues/1629>`__)
34+
35+
36+
Bugfixes
37+
~~~~~~~~
38+
39+
- On macOS and BSDs, explicitly close our wakeup socketpair when we're
40+
done with it. (`#1621 <https://github.com/python-trio/trio/issues/1621>`__)
41+
- Trio can now be imported when `sys.excepthook` is a `functools.partial` instance, which might occur in a
42+
``pytest-qt`` test function. (`#1630 <https://github.com/python-trio/trio/issues/1630>`__)
43+
- The thread cache didn't release its reference to the previous job. (`#1638 <https://github.com/python-trio/trio/issues/1638>`__)
44+
- On Windows, Trio now works around the buggy behavior of certain
45+
Layered Service Providers (system components that can intercept
46+
network activity) that are built on top of a commercially available
47+
library called Komodia Redirector. This benefits users of products
48+
such as Astrill VPN and Qustodio parental controls. Previously, Trio
49+
would crash on startup when run on a system where such a product was
50+
installed. (`#1659 <https://github.com/python-trio/trio/issues/1659>`__)
51+
52+
53+
Deprecations and removals
54+
~~~~~~~~~~~~~~~~~~~~~~~~~
55+
56+
- Remove ``wait_socket_*``, ``notify_socket_closing``, ``notify_fd_closing``, ``run_sync_in_worker_thread`` and ``current_default_worker_thread_limiter``. They were deprecated in 0.12.0. (`#1596 <https://github.com/python-trio/trio/issues/1596>`__)
57+
58+
59+
Miscellaneous internal changes
60+
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
61+
62+
- When using :ref:`instruments <instrumentation>`, you now only "pay for what you use":
63+
if there are no instruments installed that override a particular hook such as
64+
:meth:`~trio.abc.Instrument.before_task_step`, then Trio doesn't waste any effort
65+
on checking its instruments when the event corresponding to that hook occurs.
66+
Previously, installing any instrument would incur all the instrumentation overhead,
67+
even for hooks no one was interested in. (`#1340 <https://github.com/python-trio/trio/issues/1340>`__)
68+
69+
870
Trio 0.16.0 (2020-06-10)
971
------------------------
1072

newsfragments/1340.misc.rst

Lines changed: 0 additions & 6 deletions
This file was deleted.

newsfragments/1595.feature.rst

Lines changed: 0 additions & 3 deletions
This file was deleted.

newsfragments/1596.deprecated.rst

Lines changed: 0 additions & 1 deletion
This file was deleted.

newsfragments/1613.feature.rst

Lines changed: 0 additions & 1 deletion
This file was deleted.

newsfragments/1621.bugfix.rst

Lines changed: 0 additions & 2 deletions
This file was deleted.

newsfragments/1629.feature.rst

Lines changed: 0 additions & 2 deletions
This file was deleted.

newsfragments/1630.bugfix.rst

Lines changed: 0 additions & 2 deletions
This file was deleted.

newsfragments/1638.bugfix.rst

Lines changed: 0 additions & 1 deletion
This file was deleted.

newsfragments/1659.bugfix.rst

Lines changed: 0 additions & 7 deletions
This file was deleted.

0 commit comments

Comments
 (0)