On Sun, Oct 1, 2023 at 03:15 PM, David Armour wrote:
I agree with everything you said although I am not entirely happy with my
final solution. I do not feel that destroying the EReader object is the
correct way to disconnect. It is certainly not intuitive which means I cannot
be the only person finding this problem. Is everybody using C++ just ignoring
this error?
You may see this as a wart but I, personally, won't comment with regard to how intuitive things are or any design aesthetic. I will say that consideration should be given to backward compatibility and just how much existing code would break (and therefore need to change) if the disconnect where removed from the destructor.
Just some food for thought... since there's usually ripple effects, unintended consequences, and API stability is actually very important. Also, I don't think it's wise to hold off fixing some simple, obvious, and existing issue merely because there's an intention of addressing it in a more significant re-design. As they say, there is no time like the present and I appreciate small and tractable, incremental changes.
However, this may come down to a judgment call. Since, I guess, people have indeed been ignoring it or working around it (or it's simply gone unnoticed). After all, it only happens late in the game when there usually isn't much network activity expected or necessarily happening.
Anyway, I will sleep on it one more night before submitting a bug report.
Is there a special place to report API bugs or do we just raise ticket as
usual?
A pull request is probably the best way to go about this: