Skip to content

Conversation

@dwskoog
Copy link
Contributor

@dwskoog dwskoog commented Dec 16, 2025

  • add conda environment file for 3.13
  • add py313 to test.strategy.matrix

I noticed that there are several DeprecationWarnings around event loop uses. I can include changes for resolving those as well. It seems like they might be real problems in the 3.14+ world as there are major changes around asyncio there:

  • 3.14 turns off the creation an event loop in get_event_loop and strongly encourages just using get_running_loop
  • 3.14 deprecates event loop policies entirely which are scheduled for removal in 3.16
  • Tornado 6.5 IOLoop is basically just a wrapper for asyncio according to their docs and 6.2+ changes several behaviors of the IOLoop

Most of the changes were just in the test cases, but the API change in Tornado impacts streamz/core.py as that is eagerly trying to create an event loop in an incorrect place.

* add conda environment file for 3.13
* add py313 to test.strategy.matrix
@amotl
Copy link
Contributor

amotl commented Dec 17, 2025

3.14 deprecates event loop policies entirely which are scheduled for removal in 3.16

This patch might already include relevant adjustments?

@dwskoog
Copy link
Contributor Author

dwskoog commented Dec 17, 2025

3.14 deprecates event loop policies entirely which are scheduled for removal in 3.16

This patch might already include relevant adjustments?

The child watcher issue that you ran into is a good example. Those were deprecated in 3.12 and replaced with OS-specific "optimal" implementations and the ability to control a watcher was deprecated in favor of baking that in to the loop factory itself. More than that however, the behavior of get_event_loop changed as well. In 3.12 they deprecated the "create new loop if none" behavior and in 3.14 they made it an error. I crawled through the 3.12 and 3.13 builds to find the deprecation warnings and reconciled the Python 3.12+ changes with Tornado 6.2+ changes. I have a couple commits on another branch that resolves those. One of them looks like it is a real change that the main code base needs.

@martindurant
Copy link
Member

Pushing this is, it's a good step that can't hurt anything.

@martindurant martindurant merged commit 84e408e into python-streamz:master Dec 17, 2025
6 checks passed
@dwskoog dwskoog deleted the add_py13_to_test_matrix branch December 17, 2025 19:48
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants