mirror of
https://github.com/ChristopherA/Learning-Bitcoin-from-the-Command-Line.git
synced 2025-06-07 16:06:26 +00:00
66 lines
4.1 KiB
Markdown
66 lines
4.1 KiB
Markdown
# Contributing
|
|
|
|
We love your input! We want to make contributing to this project as easy and transparent as possible, whether it's:
|
|
|
|
- Reporting a bug
|
|
- Discussing the current state of the code
|
|
- Submitting a fix
|
|
- Proposing new features
|
|
- Becoming a maintainer
|
|
|
|
## We Develop with Github
|
|
We use GitHub to host code, to track issues and feature requests, and to accept Pull Requests.
|
|
|
|
## Report Bugs using Github's [issues](https://github.com/BlockchainCommons/Learning-Bitcoin-from-the-Command-Line/issues)
|
|
|
|
If you find bugs, mistakes, or inconsistencies in this project's code or documents, please let us know by [opening a new issue](https://github.com/BlockchainCommons/Learning-Bitcoin-from-the-Command-Line/issues/new), but consider searching through existing issues first to check and see if the problem has already been reported. If it has, it never hurts to add a quick "+1" or "I have this problem too". This helps prioritize the most common problems and requests.
|
|
|
|
### Write Bug Reports with Detail, Background, and Sample Code
|
|
|
|
[This is an example](http://stackoverflow.com/q/12488905/180626) of a good bug report by @briandk. Here's [another example from craig.hockenberry](http://www.openradar.me/11905408).
|
|
|
|
**Great Bug Reports** tend to have:
|
|
|
|
- A quick summary and/or background
|
|
- Steps to reproduce
|
|
- Be specific!
|
|
- Give sample code if you can. [The stackoverflow bug report](http://stackoverflow.com/q/12488905/180626) includes sample code that *anyone* with a base R setup can run to reproduce what I was seeing
|
|
- What you expected would happen
|
|
- What actually happens
|
|
- Notes (possibly including why you think this might be happening, or stuff you tried that didn't work)
|
|
|
|
People *love* thorough bug reports. I'm not even kidding.
|
|
|
|
## Submit Code Changes through Pull Requests
|
|
|
|
Simple Pull Requests to fix typos, to document, or to fix small bugs are always welcome.
|
|
|
|
We ask that more significant improvements to the project be first proposed before anybody starts to code as an [issue](https://github.com/BlockchainCommons/Learning-Bitcoin-from-the-Command-Line/issues) or as a [draft Pull Request](https://github.com/BlockchainCommons/Learning-Bitcoin-from-the-Command-Line/pulls), which is a [nice new feature](https://github.blog/2019-02-14-introducing-draft-pull-requests/) that gives other contributors a chance to point you in the right direction, give feedback on the design, and maybe discuss if related work is already under way.
|
|
|
|
### Use a Consistent Coding Style
|
|
|
|
* We indent using two spaces (soft tabs)
|
|
* We ALWAYS put spaces after list items and method parameters ([1, 2, 3], not [1,2,3]), around operators (x += 1, not x+=1), and around hash arrows.
|
|
* This is open-source software. Consider the people who will read your code, and make it look nice for them. It's sort of like driving a car: Perhaps you love doing donuts when you're alone, but with passengers the goal is to make the ride as smooth as possible.
|
|
|
|
### Use [Github Flow](https://guides.github.com/introduction/flow/index.html) for Pull Requests
|
|
|
|
We use [Github Flow](https://guides.github.com/introduction/flow/index.html). When you submit Pull Requests, please:
|
|
|
|
1. Fork the repo and create your branch from `master`.
|
|
2. If you've added code that should be tested, add tests.
|
|
3. If you've changed APIs, update the documentation.
|
|
4. Ensure the test suite passes.
|
|
5. Make sure your code lints.
|
|
6. Issue that Pull Request!
|
|
|
|
### Submit Under the BSD-2-Clause Plus Patent License
|
|
|
|
In short, when you submit code changes, your submissions are understood to be available under the same [CC-BY](./LICENSE-CC-BY-4.0.md) license that covers the project. We also ask all code contributors to GPG sign the [Contributor License Agreement (CLA.md)](./CLA.md) to protect future users of this project. Feel free to contact the maintainers if that's a concern.
|
|
|
|
## References
|
|
|
|
Portions of this CONTRIBUTING.md document were adopted from best practices of a number of open source projects, including:
|
|
* [Facebook's Draft](https://github.com/facebook/draft-js/blob/master/CONTRIBUTING.md)
|
|
* [IPFS Contributing](https://github.com/ipfs/community/blob/master/CONTRIBUTING.md)
|