| |
| <!-- |
| Licensed to the Apache Software Foundation (ASF) under one |
| or more contributor license agreements. See the NOTICE file |
| distributed with this work for additional information |
| regarding copyright ownership. The ASF licenses this file |
| to you under the Apache License, Version 2.0 (the |
| "License"); you may not use this file except in compliance |
| with the License. You may obtain a copy of the License at |
| |
| http://www.apache.org/licenses/LICENSE-2.0 |
| |
| Unless required by applicable law or agreed to in writing, |
| software distributed under the License is distributed on an |
| "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
| KIND, either express or implied. See the License for the |
| specific language governing permissions and limitations |
| under the License. |
| --> |
| |
| # Guidance on how to contribute |
| |
| > All contributions to this project will be released under the [Apache 2.0 License](LICENSE). . |
| > By submitting a pull request or filing a bug, issue, or |
| > feature request, you are agreeing to comply with this waiver of copyright interest. |
| > You're also agreeing to abide by the ASF Code of Conduct (https://www.apache.org/foundation/policies/conduct.html) |
| |
| |
| There are two primary ways to help: |
| - Using the issue tracker, and |
| - Changing the code-base. |
| |
| |
| ## Using the issue tracker |
| |
| Use the issue tracker to suggest feature requests, report bugs, and ask questions. |
| This is also a great way to connect with the developers of the project as well |
| as others who are interested in this solution. |
| |
| Use the issue tracker to find ways to contribute. Find a bug or a feature, mention in |
| the issue that you will take on that effort, then follow the _Changing the code-base_ |
| guidance below. |
| |
| |
| ## Changing the code-base |
| |
| Generally speaking, you should fork this repository, make changes in your |
| own fork, and then submit a pull request. All new code should have associated |
| unit tests that validate implemented features and the presence or lack of defects. |
| Additionally, the code should follow any stylistic and architectural guidelines |
| prescribed by the project. For us here, this means you install a pre-commit hook and use |
| the given style files. Basically, you should mimic the styles and patterns in the Apache Hamilton code-base. |
| |
| In terms of getting setup to develop, we invite you to read our [developer setup guide](developer_setup.md). |
| |
| ## Using circleci CLI to run tests locally |
| |
| 1. Install the [circleci CLI](https://circleci.com/docs/2.0/local-cli/). |
| 2. To run a circleci job locally, you should then, from the root of the repository, do |
| > circleci local execute --job=JOB_NAME |
| 3. This assumes you have docker installed, it will pull the images, but otherwise will run the circleci job. |