Skip to content

sas229/geopyv

Repository files navigation

geopyv

Python/C++ based PIV/DIC package.

Development instructions

Setup

Use pipenv in root folder of project:

  • pip install pipenv
  • pipenv shell
  • cd external
  • git submodule update --init
  • cd ..
  • pipenv install .
  • pipenv uninstall geopyv

Docs using sphinx

Using sphinx and 'Read the Docs' theme:

pip install sphinx spinx-rtd-theme

In the /docs folder:

  • make clean html

Open index.html in build to view the contents.

Use numpy docstrings formatting (via napoleon extension to sphinx, which is installed in conf.py).

Tests using pytest

Use pytests to execute tests in the /tests folder: pipenv install pytest

Version control

Basics

  • git status - checks status of local repo
  • git add . - adds all files to staging area
  • git commit -m "Message..." - commits staged files with the message outlined
  • git push - Pushes commit to GitHub

To fork and write a feature

Follow this guide: http://blog.davidecoppola.com/2016/11/howto-contribute-to-open-source-project-on-github/

Code style

Please check code style before commits...

Formatting

Use black: https://black.readthedocs.io/en/stable/the_black_code_style.html

If using pipenv install via: pipenv install black --pre

Don't forget the --pre or it will cause problems!

PEP8 compliance

Check PEP8 compliance using flake8: pipenv install flake8