Description
[This is more of a question at this point and not a feature request as such, so I'm diverging from the issue template.]
I noticed that there is a ton of shared and redundant code between the sync and async client classes. From what I'm seeing, there is only one place where a coroutine gets await
ed in the async class (i.e while fetching the session token from AsyncGoTrueClient
).
Does it make sense then to attempt to converge the two classes into one? if not, what are some of the challenges in doing so?
I've attempted a converge at tinvaan#2 . It's very early days still and I haven't had a chance to test the changes completely yet. But interestingly we can get rid of a lot of redundant code in this approach and as you can see in the linked PR, the code coverage jumps up significantly as a result.
However, I'd like to hear the community's thoughts on if this was attempted before or if indeed such a change makes sense.