Skip to content

Commit 3251060

Browse files
authored
chore: Add CONTRIBUTING.md (#142)
## What's Changed This is based on Apache Arrow Swift's one: apache/arrow-swift#30 * Use [Conventional Commits](https://www.conventionalcommits.org/en/v1.0.0/) * But use only `fix` (for patch release) , `feat` (for minor release) and `chore` (other changes) for easy to maintain * Need a GitHub issue for any change except "minor changes" Closes #5.
1 parent a745991 commit 3251060

File tree

1 file changed

+121
-0
lines changed

1 file changed

+121
-0
lines changed

CONTRIBUTING.md

Lines changed: 121 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,121 @@
1+
<!---
2+
Licensed to the Apache Software Foundation (ASF) under one
3+
or more contributor license agreements. See the NOTICE file
4+
distributed with this work for additional information
5+
regarding copyright ownership. The ASF licenses this file
6+
to you under the Apache License, Version 2.0 (the
7+
"License"); you may not use this file except in compliance
8+
with the License. You may obtain a copy of the License at
9+
10+
http://www.apache.org/licenses/LICENSE-2.0
11+
12+
Unless required by applicable law or agreed to in writing,
13+
software distributed under the License is distributed on an
14+
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
15+
KIND, either express or implied. See the License for the
16+
specific language governing permissions and limitations
17+
under the License.
18+
-->
19+
20+
# How to contribute to Apache Arrow JavaScript
21+
22+
We utilize [Conventional
23+
Commits](https://www.conventionalcommits.org/en/v1.0.0/) for our
24+
commit messages. This helps maintain the semantic versioning of this
25+
module.
26+
27+
Please use the following commit types: `chore`, `feat`, `fix`.
28+
29+
If a PR includes any breaking change, please add `!` such as `feat!`
30+
and `fix!`.
31+
32+
We will use these commit types to determine the next version. If we
33+
have only `fix` (and `chore`) changes, we will increase the patch
34+
version. If we have any `feat` change, we will increase the minor
35+
version. If we have any `feat!` or `fix!` change, we will increase the
36+
major version.
37+
38+
For example:
39+
40+
```
41+
fix: Handle empty structs in C data interface
42+
43+
fix!: Fix performance regression with API change
44+
45+
chore: Update CI environment
46+
47+
feat: Support new encoding type
48+
49+
feat!: Reconstruct API
50+
```
51+
52+
## Did you find a bug?
53+
54+
The Arrow JavaScript project uses GitHub as a bug tracker. To report a
55+
bug, sign in to your GitHub account, navigate to [GitHub
56+
issues](https://github.com/apache/arrow-js/issues) and click on **New
57+
issue** .
58+
59+
Before you create a new bug entry, we recommend you first search among
60+
existing issues in [GitHub](https://github.com/apache/arrow-js/issues).
61+
62+
## Did you write a patch that fixes a bug or brings an improvement?
63+
64+
- Create a GitHub issue and submit your changes as a GitHub Pull Request.
65+
- [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.
66+
- Add the PR title. The PR title will be used as the eventual commit message, so please make it descriptive but succinct.
67+
68+
Example #1:
69+
70+
```
71+
chore: Document the pull request process
72+
73+
## What's Changed
74+
75+
Explain how to open a pull request and what the title, body, and labels should be.
76+
77+
Closes #12345.
78+
```
79+
80+
Example #2:
81+
82+
```
83+
feat: Expose Netty server builder in Flight
84+
85+
## What's Changed
86+
87+
Allow direct usage of gRPC APIs for low-level control.
88+
89+
Closes #42424.
90+
```
91+
92+
### Minor fixes
93+
94+
Any functionality change should have a GitHub issue opened. For minor
95+
changes that affect documentation, you do not need to open up a GitHub
96+
issue. If your changes meet one of the following, they're minor
97+
changes:
98+
99+
* Grammar, usage and spelling fixes that affect no more than 2 files
100+
* Documentation updates affecting no more than 2 files and not more
101+
than 500 words.
102+
103+
## Do you want to propose a significant new feature or an important refactoring?
104+
105+
We ask that all discussions about major changes in the codebase happen
106+
publicly on the GitHub issues or [arrow-dev
107+
mailing-list](https://lists.apache.org/[email protected]).
108+
109+
## Do you have questions about the source code, the build procedure or the development process?
110+
111+
You can also ask on the [arrow-dev
112+
mailing-list](https://lists.apache.org/[email protected])
113+
or [GitHub
114+
Discussions](https://github.com/apache/arrow-js/discussions).
115+
116+
## Further information
117+
118+
Please read our [development
119+
documentation](https://arrow.apache.org/docs/developers/index.html) or
120+
look through the [New Contributor's
121+
Guide](https://arrow.apache.org/docs/developers/guide/index.html).

0 commit comments

Comments
 (0)