| <!--- |
| 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. |
| --> |
| |
| # How to contribute to Apache Arrow Java |
| |
| ## Did you find a bug? |
| |
| The Arrow Java project uses GitHub as a bug tracker. To report a bug, sign in |
| to your GitHub account, navigate to [GitHub issues](https://github.com/apache/arrow-java/issues) |
| and click on **New issue** . |
| |
| Before you create a new bug entry, we recommend you first search among |
| existing Arrow issues in [GitHub](https://github.com/apache/arrow-java/issues). |
| |
| ## Did you write a patch that fixes a bug or brings an improvement? |
| |
| - Create a GitHub issue and submit your changes as a GitHub Pull Request. |
| - [Reference the issue](https://docs.github.com/en/issues/tracking-your-work-with-issues/using-issues/linking-a-pull-request-to-an-issue#linking-a-pull-request-to-an-issue-using-a-keyword) in your PR description. |
| - Add one or more of the labels "bug-fix", "chore", "dependencies", "documentation", and "enhancement" to your PR as appropriate. |
| - "bug-fix" is for PRs that fix a bug. |
| - "chore" is for other administrative work (build system, release process, etc.). |
| - "dependencies" is for PRs that upgrade a dependency. (Usually only used by dependabot.) |
| - "documentation" is for documentation updates. |
| - "enhancement" is for PRs that add new features. |
| - Add the "breaking-change" label to your PR if there are breaking API changes. |
| - Add the PR title. The PR title will be used as the eventual commit message, so please make it descriptive but succinct. |
| |
| Example #1: |
| |
| ``` |
| GH-12345: Document the pull request process |
| |
| Explain how to open a pull request and what the title, body, and labels should be. |
| |
| Closes #12345. |
| ``` |
| |
| Example #2: |
| |
| ``` |
| GH-42424: Expose Netty server builder in Flight |
| |
| Allow direct usage of gRPC APIs for low-level control. |
| |
| Closes #42424. |
| ``` |
| |
| ### Minor Fixes |
| |
| Any functionality change should have a GitHub issue opened. For minor changes that |
| affect documentation, you do not need to open up a GitHub issue. Instead you can |
| prefix the title of your PR with "MINOR: " if it meets one of the following: |
| |
| * Grammar, usage and spelling fixes that affect no more than 2 files |
| * Documentation updates affecting no more than 2 files and not more |
| than 500 words. |
| |
| ## Do you want to propose a significant new feature or an important refactoring? |
| |
| We ask that all discussions about major changes in the codebase happen |
| publicly on the [arrow-dev mailing-list](https://mail-archives.apache.org/mod_mbox/arrow-dev/). |
| |
| ## Do you have questions about the source code, the build procedure or the development process? |
| |
| You can also ask on the mailing-list, see above. |
| |
| ## Further information |
| |
| Please read our [development documentation](https://arrow.apache.org/docs/developers/index.html) |
| or look through the [New Contributor's Guide](https://arrow.apache.org/docs/developers/guide/index.html). |