Skip to content

Latest commit

 

History

History
22 lines (20 loc) · 2.34 KB

CONTRIBUTING.md

File metadata and controls

22 lines (20 loc) · 2.34 KB

Contribution guidelines for writing actors

In addition to the Leapp project contribution guidelines, please follow also these rules:

  1. Description of all PRs must clearly state what is being changed and the rationale for the change.
  2. Description in the docstring of actors, models and/or phases must conform to their implementation. Description of an actor should include the expected behaviour, inputs and outputs, so that one is able to write component tests for the actor without looking at the actor's code.
  3. Actors must have component tests covering the behaviour mentioned in the actor's description.
  4. Bug fix PRs must include component tests covering the fixed issue.
  5. Writing unit tests for the actor's code is optional but encouraged.
  6. Follow PEP 8 - Style Guide for Python Code
    • with the exception of line length which can be up to 120 characters
    • use of linters (PyLint, pep8, flake8) is encouraged to be sure to follow the PEP 8
  7. Follow PEP 257 - Docstring Conventions
  8. All Python code must be Python 2.7+/3.6+ compatible.
  9. New folders and/or Python files must use lowercase without underscores.
    • with the exception of test file names, which need to be named test_*.py or *_test.py
  10. Do not use actor in the actor's name, neither model/topic/tag/phase in the model/topic/tag/phase name, as these things are implicit.
  11. The actor's main file must be named actor.py.
  12. Use of Python language for the actor's logic is preferred, even though you can call a script in any language from the actor's Python skeleton.
  13. The code should follow these documents as much as feasible: