@@ -21,6 +21,11 @@ Bugfixes
21
21
- Calling ``loop.stop `` manually no longer causes a deadlock when
22
22
exiting the context of ``trio_asyncio.open_loop `` (`#58 <https://github.com/python-trio/trio-asyncio/issues/58 >`__)
23
23
24
+ - :func: `trio_asyncio.run ` now properly returns whatever was returned by
25
+ the async function it ran, like :func: `trio.run ` does. (`#57 <https://github.com/python-trio/trio-asyncio/issues/57 >`__)
26
+
27
+ - Replace uses of deprecated ``trio.open_cancel_scope() `` with `trio.CancelScope `.
28
+
24
29
Deprecations and Removals
25
30
~~~~~~~~~~~~~~~~~~~~~~~~~
26
31
@@ -50,18 +55,21 @@ Bugfixes
50
55
trio-asyncio 0.9.1 (2018-09-06)
51
56
-------------------------------
52
57
58
+ Bugfixes
59
+ ~~~~~~~~
60
+
61
+ - Defer creating an asyncio coroutine until asyncio mode is actually entered. (`#40 <https://github.com/python-trio/trio-asyncio/issues/40 >`__)
62
+
63
+ trio-asyncio 0.9.0 (2018-08-31)
64
+ -------------------------------
65
+
53
66
Features
54
67
~~~~~~~~
55
68
56
69
- **Major reorganization: ** The main entry point for calling asyncio
57
70
from trio is now the :func: `trio_asyncio.aio_as_trio ` adapter.
58
71
Instead of calling :func: `asyncio.get_event_loop `, directly access the
59
- contextvar ``trio_aio_loop `` (aka :var: `trio_asyncio.adapter.current_loop `). (`#36 <https://github.com/python-trio/trio-asyncio/issues/36 >`__)
60
-
61
- Bugfixes
62
- ~~~~~~~~
63
-
64
- - Defer creating an asyncio coroutine until asyncio mode is actually entered. (`#40 <https://github.com/python-trio/trio-asyncio/issues/40 >`__)
72
+ contextvar ``trio_aio_loop `` (aka :data: `trio_asyncio.current_loop `). (`#36 <https://github.com/python-trio/trio-asyncio/issues/36 >`__)
65
73
66
74
Deprecations and Removals
67
75
~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -83,28 +91,22 @@ Deprecations and Removals
83
91
:func: `aio_as_trio `. (`#36
84
92
<https://github.com/python-trio/trio-asyncio/issues/36> `__)
85
93
86
- trio-asyncio 0.8.4 (2018-08-25)
87
- -------------------------------
88
-
89
- trio-asyncio 0.8.3 (2018-08-25)
90
- -------------------------------
91
-
92
94
trio-asyncio 0.8.2 (2018-08-25)
93
95
-------------------------------
94
96
95
- trio-asyncio 0.8.1 (2018-08-25)
96
- -------------------------------
97
+ Features
98
+ ~~~~~~~~
97
99
98
- trio-asyncio 0.8.0 (2018-08-03)
99
- -------------------------------
100
+ - :func: ` sniffio.current_async_library ` in a trio-asyncio program now returns
101
+ the correct value for the current mode (`` "trio" `` or `` "asyncio" ``).
100
102
101
103
trio-asyncio 0.8.1 (2018-08-25)
102
104
-------------------------------
103
105
104
106
Features
105
107
~~~~~~~~
106
108
107
- - `trio_asyncio ` now contains an `allow_asyncio ` wrapper which allows you to
109
+ - `trio_asyncio ` now contains an :func: `allow_asyncio ` wrapper which allows you to
108
110
seamlessly mix asyncio and trio semantics::
109
111
110
112
import asyncio
@@ -122,10 +124,86 @@ Features
122
124
code. This may or may not be an issue for your code. (`#30
123
125
<https://github.com/python-trio/trio-asyncio/issues/30> `__)
124
126
127
+ - While the test suite still requires Python 3.6, :mod: `trio_asyncio ` itself
128
+ now works on Python 3.5.3 and later. (`#33
129
+ <https://github.com/python-trio/trio-asyncio/issues/33> `__)
125
130
126
- Bugfixes
127
- ~~~~~~~~
131
+ - ``TrioEventLoop.run_asyncio() `` now supports wrapping async iterators
132
+ and async context managers, in addition to its existing support for async
133
+ functions.
134
+
135
+ trio-asyncio 0.8.0 (2018-08-03)
136
+ -------------------------------
137
+
138
+ * Add ``TrioEventLoop.run_iterator() `` as an alias for ``run_generator() ``.
139
+
140
+ * Add support for Python 3.7 via a monkey-patch to
141
+ :func: `asyncio.set_event_loop_policy `. (`#23
142
+ <https://github.com/python-trio/trio-asyncio/issues/23> `__)
143
+
144
+ * Deprecate the use of "compatibility mode" / "sync event loops", except
145
+ as a tool for running the test suites of existing asyncio projects.
146
+
147
+ trio-asyncio 0.7.5 (2018-07-23)
148
+ -------------------------------
149
+
150
+ * Use a contextvar to represent the current trio-asyncio loop, rather
151
+ than the deprecated ``trio.TaskLocal ``.
152
+
153
+ * Use the ``outcome `` library rather than the deprecated ``trio.hazmat.Result ``.
154
+
155
+ * Better handle errors in wrapped async generators.
156
+
157
+ trio-asyncio 0.7.0 (2018-03-27)
158
+ -------------------------------
159
+
160
+ * The ``@trio2aio `` and ``@aio2trio `` decorators now can be used to decorate
161
+ both async generator functions and async functions that take keyword
162
+ arguments.
163
+
164
+ * :func: `open_loop ` now takes an optional ``queue_len= `` parameter to specify
165
+ the length of the internal callback queue (for performance tuning).
166
+
167
+ * Add :meth: `BaseTrioEventLoop.synchronize `.
168
+
169
+ * Monkey-patch :func: `asyncio.get_event_loop_policy ` and
170
+ :func: `asyncio.get_event_loop ` so trio-asyncio works correctly in
171
+ multithreaded programs that use a different asyncio event loop in
172
+ other threads.
173
+
174
+ * Add ``wrap_generator() `` and ``run_generator() `` which adapt an asyncio-flavored
175
+ async generator to be used from Trio code.
176
+
177
+ trio-asyncio 0.5.0 (2018-02-20)
178
+ -------------------------------
179
+
180
+ * Support contextvars on Python 3.7 and later.
181
+
182
+ * Support waiting for child processes even though Trio doesn't (yet).
183
+
184
+ trio-asyncio 0.4.2 (2018-02-12)
185
+ -------------------------------
186
+
187
+ * Add :func: `trio_asyncio.run `.
188
+
189
+ * Fix a deadlock in ``SyncTrioEventLoop ``. Encourage people to use the
190
+ async ``TrioEventLoop `` instead.
191
+
192
+ trio-asyncio 0.4.1 (2018-02-08)
193
+ -------------------------------
194
+
195
+ * Add ``TrioEventLoop.run_task() `` as an entry point for running Trio code
196
+ in a context that allows asyncio calls, for use when neither a Trio nor
197
+ an asyncio event loop is running.
198
+
199
+ trio-asyncio 0.4.0 (2018-02-07)
200
+ -------------------------------
201
+
202
+ * Add support for async loops (:func: `open_loop `) and encourage their use.
203
+ Numerous functions renamed.
204
+
205
+ trio-asyncio 0.3.0 (2017-10-17)
206
+ -------------------------------
207
+
208
+ * Initial release.
128
209
129
- - The test suite requires Python 3.6. :mod: `trio_asyncio ` itself requires
130
- Python 3.5.3. (`#33
131
- <https://github.com/python-trio/trio-asyncio/issues/33> `__)
0 commit comments