Skip to content

Latest commit

 

History

History
55 lines (44 loc) · 1.79 KB

CONTRIBUTING.md

File metadata and controls

55 lines (44 loc) · 1.79 KB

How to contribute to this project

Casual contributors

Create issues

  1. mention the version number of the package
  2. write at least one sentence describing the issue
  3. share the output of versioninfo()
  4. indicate if it is a bug report or feature request

Regular contributors

  1. become member of the Telegram channel
  2. ask for write access

Creating pull requests

  1. create a new branch
  2. push your changes to the branch
  3. create a draft pull request
  4. when you think it is ready, mark it as "ready for review" and invite a reviewer
  5. address the remarks of the reviewer
  6. check that all tests passed
  7. merge the pull request, choosing the squash option

It is OK to merge your own pull request without review if you are very sure it will not cause any problems. If in doubt, ask on Telegram.

It is OK to push directly to the main branch for small changes for example fixing a typo in the documentation.

Commit messages

  1. shall start with capital letter
  2. imperative form

Examples

  • Fix division-by-zero error
  • Improve docstrings
  • Implement feature #23
  • Add function cool_feature()

Coding style

  1. use verbs for the names of functions, nouns for types and structs
  2. for variable and function names use lower case, underscore if needed
  3. use CamelCase for types and structs
  4. indent with four spaces
  5. max 120 char per line
  6. do NOT use an automated code formatter

File formats

  1. input files: preferably .yamlformat
  2. CAD geometries: .obj files
  3. multi-dimensional arrays: .mat files
  4. CSV files can be used for polars for example, but if the polars are part of wing description better have one .yaml file that describes all aspects of the wing

Open questions

  • what are .dat files?
  • shall we use .bin files?
  • shall we use .JLD2 files?