Fixes #210 and some refactoring #214
Closed
+93
−84
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Fixes Bug #210 by not crashing, and spits out a message "Not a utf-8 string"
Took the liberty to generally refactor
protocols.pyin two ways.I noticed one for loop that used the
for key, value in dict.items():, which I then applied to all for loops where applicable.dict['key'] if key in dict else Nonepattern has been changed todict.get('key')and ifNoneis something else like0then you will seedict.get('key', 0)Edit: Would also like to mention that this should improve performance slightly since it'll only do a lookup in the dict once instead of twice.
I also changed handleMessages to use a dict instead of a series of if/elif/else. It takes a more EAFP approach and makes it a little easier to read in my opinion. Let me know if you like or dislike the change.
Tested it working in a Python 3.6 environment (server + 2 clients)