Contributing¶
Filing an Issue¶
This is the way to report non-security related issues and also to request features.
Go to bitcash’s GitHub Issues.
Look through open and closed issues to see if there has already been a similar bug report or feature request. GitHub’s search feature may aid you as well.
If your issue doesn’t appear to be a duplicate, file an issue.
Please be as descriptive as possible!
Pull Request¶
Fork the repository on GitHub.
Create a new branch for your work.
Make your changes (see below).
Send a GitHub Pull Request to the
master
branch ofpybitcash/bitcash
.
Step 3 is different depending on if you are contributing to the code base or documentation.
Code¶
Install
pytest
andcoverage
if you don’t have them already.Run run_tests.py which is located in the project directory. If any tests fail, and you are unable to diagnose the reason, please refer to Filing an Issue. If you are working on
regtest
, run a local regtest node with a REST API and run tests using theregtest
flag:run_tests.py --regtest
.Complete your patch and write tests to verify your fix or feature is working. Please try to reduce the size and scope of your patch to make the review process go smoothly.
Run the tests again and make any necessary changes to ensure all tests pass.
Add any changes to the Unreleased section of HISTORY.rst.
Documentation¶
Enter the docs directory.
Make your changes to any files in
source/
.Run
make clean && make html
. This will generate html files in a newbuild/html/
directory.Open the generated pages and make any necessary changes to the
.rst
files until the documentation looks properly formatted.
TODO¶
Add optional caching with LMDB
Implement future payments
Implement HD wallets
Support getting unspents with confirmation limit
Add CLI using Click
direct network connection (ughh sockets)
Add GUI using Kivy
Implement SLP