Skip to content

Commit 84c4fb3

Browse files
Dan PlyukhinDan Plyukhin
authored andcommitted
Improve instructions in CONTRIBUTING.md
Add missing gradle toolchain dependencies to the list of Java version requirements, both in CONTRIBUTING.md and mise.toml. Fix test instructions in CONTRIBUTING.md, which incorrectly state that a temporal server needs to be running during tests. Explain how to run the tests that *do* require a temporal server.
1 parent 5a765b1 commit 84c4fb3

2 files changed

Lines changed: 16 additions & 25 deletions

File tree

CONTRIBUTING.md

Lines changed: 15 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -8,8 +8,14 @@ before we can merge in any of your changes
88

99
## Development Environment
1010

11-
- Java 23+
12-
- Docker to run Temporal Server
11+
- **Java 23+** is required to run Gradle and to compile the project.
12+
- Some tests assume you also have **Java 17 and 21** installed.
13+
- Some optional tests also require the [Temporal CLI](https://docs.temporal.io/cli#installation).
14+
15+
You can install the Java dependencies all in one go with [mise](https://mise.jdx.dev/), which reads from [mise.toml](./mise.toml). If you're using mise and Gradle isn't automatically picking up the older JDKs as toolchains, try [this workaround](https://mise.jdx.dev/lang/java.html#gradle-toolchains-detection).
16+
17+
If you're using Apple Silicon, see the [note on Rosetta](#note-on-rosetta).
18+
1319

1420
## Build
1521

@@ -41,26 +47,24 @@ fatal: No names found, cannot describe anything.
4147
This can be done resolved by running `git fetch --tags` on your branch. Note, make sure your fork has tags copied from
4248
the main repo.
4349

44-
## Test and Build
50+
## Testing
4551

46-
Run a local temporal server with the [temporal CLI](https://docs.temporal.io/cli#installation):
52+
Some tests assume you have the temporal server running, and others don't. By default, Gradle only runs the tests that don't require a server:
4753

4854
```bash
49-
temporal server start-dev
55+
./gradlew test
5056
```
5157

52-
(If this does not work, see instructions for running the Temporal Server at https://github.com/temporalio/temporal/blob/master/README.md.)
53-
54-
Then run all the tests with:
58+
You can run a local temporal server with the [temporal CLI](https://docs.temporal.io/cli#installation):
5559

5660
```bash
57-
./gradlew test
61+
temporal server start-dev
5862
```
5963

60-
Build with:
64+
Run the tests that require a temporal server:
6165

6266
```bash
63-
./gradlew build
67+
USE_DOCKER_SERVICE=true ./gradlew test
6468
```
6569

6670
## Note on Rosetta

mise.toml

Lines changed: 1 addition & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,2 @@
1-
# TIP
2-
#
3-
# For the best SDK development experience, make to hava all of the following
4-
# JDKs installed on your machine (`mise install java@[version]`):
5-
# - `java@temurin-11`
6-
# - `java@temurin-17`
7-
# - `java@temurin-23`
8-
#
9-
# Java 21+ is required for anything that requires gradle.
10-
#
11-
# If you find out that gradle isn't automatically picking it up older JDKs as
12-
# toolchains, see https://mise.jdx.dev/lang/java.html#gradle-toolchains-detection.
13-
141
[tools]
15-
java = "temurin-23"
2+
java = ["temurin-23", "temurin-21", "temurin-17"]

0 commit comments

Comments
 (0)