github.com/shrimpyuk/bor@v0.2.15-0.20220224151350-fb4ec6020bae/README.md (about) 1 Non Conflicting version of BOR 2 3 # Bor Overview 4 Bor is the Official Golang implementation of the Matic protocol. It is a fork of Go Ethereum - https://github.com/ethereum/go-ethereum and EVM compabile. 5 6 ![Forks](https://img.shields.io/github/forks/maticnetwork/bor?style=social) 7 ![Stars](https://img.shields.io/github/stars/maticnetwork/bor?style=social) 8 ![Languages](https://img.shields.io/github/languages/count/maticnetwork/bor) 9 ![Issues](https://img.shields.io/github/issues/maticnetwork/bor) 10 ![PRs](https://img.shields.io/github/issues-pr-raw/maticnetwork/bor) 11 ![MIT License](https://img.shields.io/github/license/maticnetwork/bor) 12 ![contributors](https://img.shields.io/github/contributors-anon/maticnetwork/bor) 13 ![size](https://img.shields.io/github/languages/code-size/maticnetwork/bor) 14 ![lines](https://img.shields.io/tokei/lines/github/maticnetwork/bor) 15 [![Discord](https://img.shields.io/discord/714888181740339261?color=1C1CE1&label=Polygon%20%7C%20Discord%20%F0%9F%91%8B%20&style=flat-square)](https://discord.gg/zdwkdvMNY2) 16 [![Twitter Follow](https://img.shields.io/twitter/follow/0xPolygon.svg?style=social)](https://twitter.com/0xPolygon) 17 18 ## How to contribute 19 20 ### Contribution Guidelines 21 We believe one of the things that makes Polygon special is its coherent design and we seek to retain this defining characteristic. From the outset we defined some guidelines to ensure new contributions only ever enhance the project: 22 23 * Quality: Code in the Polygon project should meet the style guidelines, with sufficient test-cases, descriptive commit messages, evidence that the contribution does not break any compatibility commitments or cause adverse feature interactions, and evidence of high-quality peer-review 24 * Size: The Polygon project’s culture is one of small pull-requests, regularly submitted. The larger a pull-request, the more likely it is that you will be asked to resubmit as a series of self-contained and individually reviewable smaller PRs 25 * Maintainability: If the feature will require ongoing maintenance (eg support for a particular brand of database), we may ask you to accept responsibility for maintaining this feature 26 ### Submit an issue 27 28 - Create a [new issue](https://github.com/maticnetwork/bor/issues/new/choose) 29 - Comment on the issue (if you'd like to be assigned to it) - that way [our team can assign the issue to you](https://github.blog/2019-06-25-assign-issues-to-issue-commenters/). 30 - If you do not have a specific contribution in mind, you can also browse the issues labelled as `help wanted` 31 - Issues that additionally have the `good first issue` label are considered ideal for first-timers 32 33 ### Fork the repository (repo) 34 35 - If you're not sure, here's how to [fork the repo](https://help.github.com/en/articles/fork-a-repo) 36 37 - If this is your first time forking our repo, this is all you need to do for this step: 38 39 ``` 40 $ git clone git@github.com:[your_github_handle]/bor 41 ``` 42 43 - If you've already forked the repo, you'll want to ensure your fork is configured and that it's up to date. This will save you the headache of potential merge conflicts. 44 45 - To [configure your fork](https://docs.github.com/en/github/collaborating-with-issues-and-pull-requests/configuring-a-remote-for-a-fork): 46 47 ``` 48 $ git remote add upstream https://github.com/maticnetwork/bor 49 ``` 50 51 - To [sync your fork with the latest changes](https://docs.github.com/en/github/collaborating-with-issues-and-pull-requests/syncing-a-fork): 52 53 ``` 54 $ git checkout master 55 $ git fetch upstream 56 $ git merge upstream/master 57 ``` 58 59 ### Building the source 60 61 - Building `bor` requires both a Go (version 1.14 or later) and a C compiler. You can install 62 them using your favourite package manager. Once the dependencies are installed, run 63 64 ```shell 65 $ make bor 66 ``` 67 68 - or, to build the full suite of utilities: 69 70 ```shell 71 $ make bor-all 72 ``` 73 74 ### Make awesome changes! 75 76 1. Create new branch for your changes 77 78 ``` 79 $ git checkout -b new_branch_name 80 ``` 81 82 2. Commit and prepare for pull request (PR). In your PR commit message, reference the issue it resolves (see [how to link a commit message to an issue using a keyword](https://docs.github.com/en/free-pro-team@latest/github/managing-your-work-on-github/linking-a-pull-request-to-an-issue#linking-a-pull-request-to-an-issue-using-a-keyword). 83 84 85 Checkout our [Git-Rules](https://docs.polygon.technology/docs/contribute/orientation#git-rules) 86 87 ``` 88 $ git commit -m "brief description of changes [Fixes #1234]" 89 ``` 90 91 3. Push to your GitHub account 92 93 ``` 94 $ git push 95 ``` 96 97 ### Submit your PR 98 99 - After your changes are commited to your GitHub fork, submit a pull request (PR) to the `master` branch of the `maticnetwork/bor` repo 100 - In your PR description, reference the issue it resolves (see [linking a pull request to an issue using a keyword](https://docs.github.com/en/free-pro-team@latest/github/managing-your-work-on-github/linking-a-pull-request-to-an-issue#linking-a-pull-request-to-an-issue-using-a-keyword)) 101 - ex. `Updates out of date content [Fixes #1234]` 102 - Why not say hi and draw attention to your PR in [our discord server](https://discord.gg/zdwkdvMNY2)? 103 104 ### Wait for review 105 106 - The team reviews every PR 107 - Acceptable PRs will be approved & merged into the `master` branch 108 109 <hr style="margin-top: 3em; margin-bottom: 3em;"> 110 111 ## Release 112 113 - You can [view the history of releases](https://github.com/maticnetwork/bor/releases), which include PR highlights 114 115 <hr style="margin-top: 3em; margin-bottom: 3em;"> 116 117 118 Build the beta client: 119 120 ```shell 121 go build -o bor-beta command/*.go 122 ``` 123 124 ## License 125 126 The go-ethereum library (i.e. all code outside of the `cmd` directory) is licensed under the 127 [GNU Lesser General Public License v3.0](https://www.gnu.org/licenses/lgpl-3.0.en.html), 128 also included in our repository in the `COPYING.LESSER` file. 129 130 The go-ethereum binaries (i.e. all code inside of the `cmd` directory) is licensed under the 131 [GNU General Public License v3.0](https://www.gnu.org/licenses/gpl-3.0.en.html), also 132 included in our repository in the `COPYING` file. 133 134 <hr style="margin-top: 3em; margin-bottom: 3em;"> 135 136 ## Join our Discord server 137 138 Join Polygon community – share your ideas or just say hi over [on Discord](https://discord.gg/zdwkdvMNY2).