nugget / python-insteonplm

Python 3 asyncio module for interfacing with Insteon Powerline modems
MIT License
32 stars 19 forks source link

asyncio as of python 3.10, the *loop* parameter was removed from Lock() and Queue() since it is no longer necessary #301

Open twshield opened 2 years ago

twshield commented 2 years ago

Below are two of the many instances of these problems. Files involved are

insteonplm/plm.py
insteonplm/tools.py
insteonplm/devices/__init__.py
File "/ssd6/home/shield/.local/lib/python3.10/site-packages/insteonplm/tools.py", line 53, in __init__
    self.aldb_load_lock = asyncio.Lock(loop=loop)
  File "/usr/lib64/python3.10/asyncio/locks.py", line 78, in __init__
    super().__init__(loop=loop)
  File "/usr/lib64/python3.10/asyncio/mixins.py", line 17, in __init__
    raise TypeError(
TypeError: As of 3.10, the *loop* parameter was removed from Lock() since it is no longer necessary

and

` File "/ssd6/home/shield/.local/lib/python3.10/site-packages/insteonplm/plm.py", line 85, in init self._buffer = asyncio.Queue(loop=self._loop) File "/usr/lib64/python3.10/asyncio/queues.py", line 34, in init super().init(loop=loop) File "/usr/lib64/python3.10/asyncio/mixins.py", line 17, in init raise TypeError( TypeError: As of 3.10, the loop parameter was removed from Queue() since it is no longer necessary

`

teharris1 commented 1 year ago

I recommend moving to the pyinsteon module since this insteonplm module is no longer being maintained.