If you are interested in contributing to delira
, you will either
- implement a new feature
or
- fix a bug.
For both types of contribution, the process is roughly the same:
-
File an issue at this repo and discuss the issue with us! Maybe we can give you some hints towards implementation/fixing.
-
Create your own fork of
delira
-
In your own fork, start a new branch for the implementation of your issue. Make sure to include basic unittests (We know, that the current code is not that well tested so far, but we want to change this in future).
Note: To improve readability and maintainability, PEP8 Style should always be followed (no exceptions).
Note: To ensure our CI/CD running correctly, you should never use relative imports but absolute ones.
Note: If you added a feature, you should also add it to the documentation
-
After finishing the coding part, send a pull request to this repo
-
Afterwards, have a look at your pull request since we might suggest some changes.
If you are not familiar with creating a Pull Request, here are some guides:
- http://stackoverflow.com/questions/14680711/how-to-do-a-github-pull-request
- https://help.github.com/articles/creating-a-pull-request/
To develop delira
on your machine, here are some tips:
- Uninstall all existing installs of
delira
:
conda uninstall delira
pip uninstall delira
pip uninstall delira # run this command twice
- Clone a copy of
delira
from source:
git clone https://github.com/justusschock/delira.git
cd delira
- Install
delira
inbuild develop
mode:
Install it via
python setup.py build develop
or
pip install -e .
This mode will symlink the python files from the current local source tree into the python install.
Hence, if you modify a python file, you do not need to reinstall delira
again and again
In case you want to reinstall, make sure that you uninstall delira
first by running pip uninstall delira
and python setup.py clean
. Then you can install in build develop
mode again.
Unittests are located under test/
. Run the entire test suite with
python test/run_test.py
or run individual test files, like python test/test_dummy.py
, for individual test suites.
Testing is done with a unittest
suite
delira
uses numpy style
for formatting docstrings. Length of line inside docstrings block must be limited to 80 characters to
fit into Jupyter documentation popups.