CapsuleFarmerEvolved
CapsuleFarmerEvolved copied to clipboard
[Suggestion]: Stability improvement via exception handling.
What is your idea?
Currently the exception handling within application causes a straight up failure whenever Riot API refuses to cooperate. Good example could be recent (few minutes ago actually) incident with servers being overloaded. I believe it is of a critical priority to add proper exception handling to the project, so that there is no need for restarting batch scripts nor non-intuitive messages for majority of users.
Reasoning behind that is of a multiple kind:
- Proper exception handling results in actual, tangible stability improvement. The code should be capable of running in a constant loop, utilizing log as an eventual output of issues encountered, resulting in smoother user experience and no necessity for workarounds such as restarting scripts.
- Any sort of debugging is much simpler if logs contain properly handled messages Finding and understanding which part of code has caused a failure is not always the easiest, unless proper traceback is shown - and currently it is displayed only for main thread failures.
- Current state of application cannot handle any 403 response - which is what servers seem to default to in case of any internal problems - making the login loop without meaningful messages in logs for users. Even with
debug=true
all we get is 403 and FAILED in next line. Adding handling that would point to possible meaning of this error code would greatly decrease influx of users reporting "it dies" without ability to elaborate.
What should happen?
- The application has multitude of exception types that are all properly handled.
- Main thread is never crashing. If any errors occur, they should be thrown into log instead of breaking main loop.
- Without debugging turned on, users should get a message pointer to what could be an issue.
- With debugging turned on, in case of any exception logs should contain proper traceback to cause of the issue.
My request is not a question
- [X] I acknowledge that this issue is not a question or a bug request.