Project

General

Profile

Actions

OpenAtlas is developed with some standards in mind.

Open source

To guaranty that the OpenAtlas application can be shared as open source (GPL 2) make sure that:
  • Only open source software is used and required
  • Non-code files are open data, e.g. a CC BY 4.0 license for images
  • When including 3rd party software or media it is important to:
    • Make sure that the license is compatible
    • Add a license file if available
    • Place them in openatlas/static/vendor

Bugs

Of course we do our best to avoid them in the first place but if bugs get apparent they always have the highest priority.

HTML

  • Standard: HTML 5. Exceptions may be acceptable if invalid but harmless HTML 5 is produced by 3rd party libraries.
  • Indentation: 2 spaces

JavaScript

  • Indentation: 2 spaces

Python

  • Indentation: 4 spaces
  • Listed below are used standards and tests
Version PyCharm Configuration
PEP 8 integrated Style guide for Python code
nose tests 1.3.7 integrated tests/.coveragerc, tests/.noserc Should cover all Python code using assertions
Mypy 0.812 plugin Mypy mypy.ini Optional static type checker for Python
Pylint 2.7.2 plugin Pylint .pylintrc Checks for errors, coding standards and code smells

Nose tests

Some parts (e.g. a mail function) may be excluded with the # pragma: no cover comment.

Run tests

nosetest3

Run tests with coverage

nosetests3 -c tests/.noserc

Further reading

Software packages (Debian)

Although pip offers some advantages (e.g more current packages and usable for different installation environments) we prefer packages from the Debian repository for the OpenAtlas backend.
Main reasons concern security, reliability and stability.

Updated by Alexander Watzinger 13 days ago · 53 revisions

Also available in: PDF HTML TXT