Use deprecated asyncio function depending on Python version #45
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Description
Select which function in the
asyncio
library is being used in theWriter
class based on the Python version callingduologsync/writer.py
.Motivation and Context
asyncio.get_event_loop()
was added in 3.7 and then deprecated in 3.12. Currently it still works but it will cause an error message barking about the deprecation. According to the docs, the replacement isasyncio.run()
. In other to avoid breaking it while running in an old version of Python (I was testing against3.6
and later), I propose to make it useasyncio.get_event_loop()
as before while Python < 3.12, andasyncio.run()
for Python >= 3.12.References
How Has This Been Tested?
First tested in a separated script (see below) in a Python virtual environment in Rocky Linux 8.10 against
Have not tested against Python 3.13 yet.
Then tested in the duo_log_sync code, also running inside Python virtual environment against the same Python releases.
Types of Changes