-
Notifications
You must be signed in to change notification settings - Fork 65
Open
Description
Responses having 1000+ lines result in errors due to the default recursion depth limit being exceeded, these errors are logged but not raised, similar to what's reported in #91:
Fatal error on SSL protocol
protocol: <asyncio.sslproto.SSLProtocol object at 0x7fcffeee0ec0>
transport: <_SelectorSocketTransport closing fd=6 read=idle write=<idle, bufsize=0>>
Traceback (most recent call last):
File "/usr/local/lib/python3.13/asyncio/sslproto.py", line 740, in _do_read
self._do_read__copied()
~~~~~~~~~~~~~~~~~~~~~^^
File "/usr/local/lib/python3.13/asyncio/sslproto.py", line 802, in _do_read__copied
self._app_protocol.data_received(b''.join(data))
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^
File "/path/to/venv/lib/python3.13/site-packages/aioimaplib/aioimaplib.py", line 346, in data_received
self._handle_responses(self.incomplete_line + d, self._handle_line, self.current_command)
~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/path/to/venv/lib/python3.13/site-packages/aioimaplib/aioimaplib.py", line 387, in _handle_responses
self._handle_responses(tail, line_handler)
~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^
File "/path/to/venv/lib/python3.13/site-packages/aioimaplib/aioimaplib.py", line 387, in _handle_responses
self._handle_responses(tail, line_handler)
~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^
File "/path/to/venv/lib/python3.13/site-packages/aioimaplib/aioimaplib.py", line 387, in _handle_responses
self._handle_responses(tail, line_handler)
~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^
[Previous line repeated 972 more times]
File "/path/to/venv/lib/python3.13/site-packages/aioimaplib/aioimaplib.py", line 375, in _handle_responses
cmd = line_handler(line, current_cmd)
File "/path/to/venv/lib/python3.13/site-packages/aioimaplib/aioimaplib.py", line 403, in _handle_line
return self._untagged_response(line)
~~~~~~~~~~~~~~~~~~~~~~~^^^^^^
File "/path/to/venv/lib/python3.13/site-packages/aioimaplib/aioimaplib.py", line 644, in _untagged_response
command.append_to_resp(text)
~~~~~~~~~~~~~~~~~~~~~~^^^^^^
File "/path/to/venv/lib/python3.13/site-packages/aioimaplib/aioimaplib.py", line 205, in append_to_resp
self._reset_timer()
~~~~~~~~~~~~~~~~~^^
File "/path/to/venv/lib/python3.13/site-packages/aioimaplib/aioimaplib.py", line 229, in _reset_timer
self._set_timer()
~~~~~~~~~~~~~~~^^
File "/path/to/venv/lib/python3.13/site-packages/aioimaplib/aioimaplib.py", line 221, in _set_timer
self._timer = self._loop.call_later(self._timeout, self._timeout_callback)
~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.13/asyncio/base_events.py", line 794, in call_later
timer = self.call_at(self.time() + delay, callback, *args,
context=context)
File "/usr/local/lib/python3.13/asyncio/base_events.py", line 811, in call_at
timer = events.TimerHandle(when, callback, args, self, context)
File "/usr/local/lib/python3.13/asyncio/events.py", line 114, in __init__
super().__init__(callback, args, loop, context)
~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.13/asyncio/events.py", line 45, in __init__
if self._loop.get_debug():
~~~~~~~~~~~~~~~~~~~~^^
RecursionError: maximum recursion depth exceeded
Metadata
Metadata
Assignees
Labels
No labels