|
| 1 | +# Arduino Language Server |
| 2 | + |
| 3 | +**Arduino Language Server** is the the tool that powers the autocompletion of the new [Arduino IDE 2][arduino-ide-repo]. |
| 4 | + |
| 5 | +## Build |
| 6 | + |
| 7 | +To build the Arduino Language Server you need: |
| 8 | + |
| 9 | +- [Go][go-install] version 1.12 or later |
| 10 | + |
| 11 | +The project doesn't require `CGO` so it can be easily crosscompiled if necessary. To build for you machine just run: |
| 12 | + |
| 13 | +``` |
| 14 | +go build |
| 15 | +``` |
| 16 | + |
| 17 | +To run tests: |
| 18 | + |
| 19 | +``` |
| 20 | +go test -v ./... |
| 21 | +``` |
| 22 | + |
| 23 | +## How to contribute |
| 24 | + |
| 25 | +Contributions are welcome! Here are all the way you can contribute to the project. |
| 26 | + |
| 27 | +### Issue Reports |
| 28 | + |
| 29 | +High quality bug reports and feature requests are valuable contributions to the project. |
| 30 | + |
| 31 | +Before reporting an issue search existing pull requests and issues to see if it was already reported. If you have additional information to provide about an existing issue, please comment there. You can use the Reactions feature if you only want to express support. |
| 32 | + |
| 33 | +Qualities of an excellent report |
| 34 | + |
| 35 | +- The issue title should be descriptive. Vague titles make it difficult to understand the purpose of the issue, which might cause your issue to be overlooked. |
| 36 | +- Provide a full set of steps necessary to reproduce the issue. Demonstration code or commands should be complete and simplified to the minimum necessary to reproduce the issue. |
| 37 | +- Be responsive. We may need you to provide additional information in order to investigate and resolve the issue. |
| 38 | +- If you find a solution to your problem, please comment on your issue report with an explanation of how you were able to fix it and close the issue. |
| 39 | + |
| 40 | +### Pull Requests |
| 41 | + |
| 42 | +To propose improvements or fix a bug, feel free to submit a PR. |
| 43 | + |
| 44 | +### Legal requirements |
| 45 | + |
| 46 | +Before we can accept your contributions you have to sign the Contributor License Agreement |
| 47 | +Pull request checklist |
| 48 | + |
| 49 | +### Pull request checklist |
| 50 | + |
| 51 | +In order to ease code reviews and have your contributions merged faster, here is a list of items you can check before submitting a PR: |
| 52 | + |
| 53 | +- Create small PRs that are narrowly focused on addressing a single concern. |
| 54 | +- Write tests for the code you wrote. |
| 55 | +- Open your PR against the master branch. |
| 56 | +- Maintain clean commit history and use meaningful commit messages. PRs with messy commit history are difficult to review and require a lot of work to be merged. |
| 57 | +- Your PR must pass all CI tests before we will merge it. If you're seeing an error and don't think it's your fault, it may not be! The reviewer will help you if there are test failures that seem not related to the change you are making. |
| 58 | + |
| 59 | +[arduino-ide-repo]: https://github.com/arduino/arduino-ide |
| 60 | +[go-install]: https://golang.org/doc/install |
0 commit comments