latest
Contents:
Installation
Operation
Developer Guide
Architecture Documents
How to build MetalK8s
How to run components locally
Deploy new MetalK8s image
Development
Developing Tests
Development Best Practices
Commit Best Practices
Python best practices
Integrating with MetalK8s
Shared Tooling
Glossary
MetalK8s
»
Developer Guide
»
Development
»
Development Best Practices
Edit on GitHub
Development Best Practices
¶
Commit Best Practices
Pre-commit hooks
How to split a change into commits
Why do we need to split changes into commits
Examples
Cosmetic changes
Refactoring
Mixing unrelated changes
How to write a commit message
Why do we need commit messages
Anatomy of a good commit message
Subject
Body
Footer
Examples
Bad commit message
Good commit message
Commit b531290c04c4
Commit 82d92836d4ff
Commit f66ac0be1c19
Conclusion
Python best practices
Import
Avoid
from
module_foo
import
symbol_bar
Rationale
Example
References
Naming
Predicate functions
Rationale
Example
Patterns and idioms
Don’t write code vulnerable to “Time of check to time of use”
Rationale
Examples
References
Minimize the amount of code in a
try
block
Rationale
Don’t use
hasattr
in Python 2
Rationale
Examples
References