-
Notifications
You must be signed in to change notification settings - Fork 7
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Code review v1 #2
Conversation
Since list is a class we should use a super notation to use base methods in descendants. Also set_len may be considered as an internal method so add an underscore suffix to stress the fact that it shouldn't be considered as a public method.
…ode. Appropriate builtins should be used instead.
…erscores as words separator.
…ects of assertMessage in utils module
…ginal implementation was extremely unefficient. Since peers stored as a field used only by Bootstrap added underscore suffix to field name to stress the fact that it is an internal field (not designed to be used from outside).
…tween 'public' and 'non-public' members
Short names and abbreviations aren't good even if they're widely used in standard description.
…ween 'public' and 'non-public' members.
…een 'public' and 'non-public' members. Also changed some field names to include some semantic meaning.
…een 'public' and 'non-public' members. Also changed some field names to include some semantic meaning. Added some TODOs.
…tween 'public' and 'non-public' members.
…tween 'public' and 'non-public' members.
* Added issues list * Removed defaultlist usages (replaced with dict) * Added TODOs
…en 'public' and 'non-public' members.
…tinguish between 'public' and 'non-public' members.
… 'public' and 'non-public' members.
…een 'public' and 'non-public' members.
… 'public' and 'non-public' members.
…n 'public' and 'non-public' members.
…een 'public' and 'non-public' members.
…ltlist for decisions
…ltlist for proposals
Are you using a non-default pep8 configuration? My run of pep8 is actually reverting some changes you have made.. |
Thanks! This was really helpful, and I've cherry-picked most of it. I didn't merge the underscore-adding diffs. The rationale is that the component classes aren't user-visible anyway, so there's no benefit to making a public/private distinction clear from introspection. I'll go into more depth on this in the text. |
OK, so as promised I'm sending a PR with refactoring that I've done while I was reading 'Paxos Made Moderately Complex' and learning the Paxos implementation. This refactoring can be considered as a code review.
The main changes is:
As you can see, there is a lot of commits as I tried to make a lot of small changes so it will be easier to grasp the essence of the changes.
Additionally, there are few issues that should be considered though I haven't left any comments in code regarding them: