fix: manual disconnect not preventing reconnection
This pull request fixes the issue where calling disconnect() on the client does not prevent the client from automatically reconnecting, as mentioned in #374
I noticed that the asynchronous client behaves differently since the DisconnectReason enum was introduced via #400. I have reimplemented this functionality for the synchronous client. During the process, I encountered issues such as "invoking disconnect after the client lost connection to the server still tries to reconnect," but I have fixed and tested every edge case I could think of, and all should be properly handled now.
Why this hasn't been merged? Was this fixed?
This seems to be a critical bug. Is this library being maintained?