Development and TODOs¶
You want to help developing b2luigi
? Great! Have your github account ready and let’s go!
Local Development¶
You want to help developing b2luigi
? Great! Here are some first steps to help you dive in:
Make sure you uninstall
b2luigi
if you have installed if from pypipip3 uninstall b2luigi
Clone the repository from github
git clone https://github.com/nils-braun/b2luigi
b2luigi
is not usingsetuptools
but the newer (and better) flit as a a builder. Install it viapip3 [ --user ] install flit
You can now install
b2luigi
from the cloned git repository in development mode:flit install -s
Now you can start hacking and your changes will be immediately available to you.
We use the unittest package for testing some parts of the code. All tests reside in the
tests/
sub-directory. To run all tests, run the commandpython3 -m unittest
in the root of
b2luigi
repository. If you add some functionality, try to add some tests for it.The documentation is hosted on readthedocs and build automatically on every commit to main. You can (and should) also build the documentation locally by installing
sphinx
pip3 [ --user ] install sphinx sphinx-autobuild
And starting the automatic build process in the projects root folder
sphinx-autobuild docs build
The autobuild will rebuild the project whenever you change something. It displays a URL where to find the created docs now (most likely http://127.0.0.1:8000). Please make sure the documentation looks fine before creating a pull request.
If you are a core developer and want to release a new version:
Make sure all changes are committed and merged on main
Use the
bumpversion
package to update the version in the python fileb2luigi/__init__.py
as well as the git tag.flit
will automatically use this.bumpversion patch/minor/major
Push the new commit and the tags
git push git push --tags
Publish to pipy
flit publish
Open TODOs¶
For a list of potential features, improvements and bugfixes see the github issues. Help is
welcome, so feel free to pick one, e.g. with the good first issue
or help wanted
tags.