You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Site/contributing: add recommendations for working with PRs (#1625)
This change updates the PR guidelines on the "Contributing" web page after [this discussion](https://lists.apache.org/thread/kfxo3cqmw3pgrpgtgqvqpwvn46yw8q7h).
Also adopt `gradlew test` to `gradlew check` in README, following the intent (all tests, incl ITs)
Copy file name to clipboardExpand all lines: CONTRIBUTING.md
+51-23Lines changed: 51 additions & 23 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -64,32 +64,60 @@ Before starting on a large code change, please describe the concept/design of wh
64
64
65
65
The best way to provide changes is to fork Apache Polaris repository on GitHub and provide a Pull Request with your changes. To make it easy to apply your changes please use the following conventions:
66
66
67
-
* Every Pull Request should have a matching GitHub Issue.
* Work on the changes of your pull requests locally.
79
+
* Recommended checks:
80
+
```bash
81
+
# Ensure the code is properly formatted and compiles:
82
+
./gradlew format compileAll
83
+
# Ensure the code is passing the checks (including formatting checks & tests):
84
+
./gradlew check
85
+
```
86
+
* You may want to push your changes to your personal Polaris fork. Git will emit a URL that you can use to create the Pull Request. Do not create the Pull Request yet.
87
+
```bash
88
+
git push --set-upstream your-github-accout
89
+
```
90
+
91
+
#### Opening a Pull Request
92
+
93
+
* The Pull Request summary should provide a concise summary of the change, get inspired by [Conventional Commits](https://www.conventionalcommits.org/en/v1.0.0/).
94
+
* The Pull Request description should provide the background (rationale) of the change and describe the changes in way that someone who has no prior knowledge can understand the rationale of the change and the change itself.
95
+
* If there is a matching GitHub Issue, add a separate line at the end of the commit message of the issue that the PR fixes. Do not add the issue number into the subject.
96
+
```
97
+
Fixes #123456
98
+
```
99
+
If the PR does not fully fix the issue, use `Related to #123456` instead of `Fixes #123456`.
100
+
101
+
Tips:
102
+
* If the branch for your Pull Request contains only one (squashed) commit, GitHub will populate the PR summary and description from that single commit.
103
+
* When opening a PR consider whether the PR is "draft" or already "ready for review". "Draft" means work in progress, things will change, but comments are welcome. "Ready for review" means that the PR is requested to be merged as is (pending review feedback).
104
+
105
+
#### Working on a Pull Request
106
+
107
+
* Don't forget to periodically rebase your branch:
108
+
```bash
109
+
git pull --rebase
110
+
git push your-github-accout my-branch --force
111
+
```
112
+
* Test that your changes work by adapting or adding tests. Verify the build passes (see `README.md` for build instructions).
92
113
* If your Pull Request has conflicts with the `main` branch, please rebase and fix the conflicts.
114
+
* If your PR requires more work or time or bigger changes, please put the PR to "draft" state to indicate that it is not meant to be "thoroughly" reviewed at this point.
115
+
116
+
#### Merging a Pull Request
117
+
118
+
* When a PR is about to be merged, cross-check the commit summary and message for the merged Git commit.
119
+
* Keep in mind that the Git commit subject and message is going to be read by other people, potentially even after years. The Git commit subject and message will appear "as is" in release notes.
120
+
* Make sure the subject and message are properly formatted and contains a concise description of the changes in way that someone who has no prior knowledge can understand the rationale of the change and the change itself. Remove information that's of no use for someone reading the Git commit log, for example single intermediate commit messages like `formatting` or `fix test`.
Copy file name to clipboardExpand all lines: README.md
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -67,7 +67,7 @@ Apache Polaris is built using Gradle with Java 21+ and Docker 27+.
67
67
68
68
-`./gradlew build` - To build and run tests. Make sure Docker is running, as the integration tests depend on it.
69
69
-`./gradlew assemble` - To skip tests.
70
-
-`./gradlew test` - To run unit tests and integration tests.
70
+
-`./gradlew check` - To run all checks, including unit tests and integration tests.
71
71
-`./gradlew run` - To run the Polaris server locally; the server is reachable at localhost:8181. This is also suitable for running regression tests, or for connecting with Spark. Set your own credentials by specifying system property `./gradlew run -Dpolaris.bootstrap.credentials=POLARIS,root,secret` where:
0 commit comments