-
Notifications
You must be signed in to change notification settings - Fork 0
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Update readme for java client #112
Changes from 1 commit
950be1c
86bc53f
ebe65e5
a8b78c2
d1f03fa
a7f333a
e5f3b81
dba37d1
087120a
bb6cecb
4e244cd
a8e232c
c51ddb7
dcdfb3a
6a03b30
01b57af
3f4b941
d2a6de7
e45a84c
14fe51e
5c32136
baf283a
4acadeb
502b54d
d84858d
2445ed4
1d39758
bbe3333
c60dbd6
88646a2
cedcad5
6ab6191
eb8a680
6d19ff6
f4443b0
afc3c5a
3249e51
53726cc
5bfc0f1
66b4916
c1a5362
d76355d
e9d249b
6a553d8
2bc8b2d
3326b4f
c99c17a
b00da22
164258f
465f650
5f42221
db414cc
86d5e23
4c0f0f7
05e6642
92c6c43
fb737e1
696fb0b
9dc8123
84aab82
80543b1
5f4dbd7
fa009cc
f619f76
dcbbfca
180f159
c088cf9
06bcd0c
1ddedc7
3bd2c66
5e59312
c04ab80
148d7d2
8ee2173
755d4e9
0e3d171
cfeaade
ac66c47
2ac14c0
b39e4e2
768e8f4
c866867
7e93d5f
e1a790f
f01535c
e03bf31
ee1dab5
551e0cd
617fe4d
017e94d
658ea77
4801beb
4914c26
8df9abe
9a9a033
740ae6a
822c96f
c049cfb
eb22044
022df39
1980147
af2eb09
0496459
c7a08a7
4ee09e6
6fc2a8f
f244c97
9f94f42
2c7b60f
0f295c2
71cd173
26809e5
926de84
756ebac
3610b1c
0cb42cf
6b5079a
2038a32
0291920
288028d
6ceb98e
6fc5948
1d05e7a
4a5d147
1d670ae
54901a3
503aab3
9765b83
8eadf06
05bee23
608f85c
d315065
646a014
eea04d7
b1500ae
41c1822
8a94c59
3a1845f
9cee2a8
8170f94
4d8ad2f
569d46f
aa3fde7
666b41e
982b66b
2273067
00a6f29
fa6c58d
242b4f1
90e7a4b
539cb55
8892296
4288f93
0d2ceb9
ffaeffd
e6a42e0
1a3e8d5
623d13b
d75ba9b
245ba70
52c02ec
76b7ec1
fbcb457
504da93
4e2e7dd
67a0ccc
d1a7098
93ff5b7
93c0455
ea06cbe
5688a3f
e29a793
995f82e
b054f4a
a193e66
9b77b77
e6b2362
2ec7aad
8fd55cf
601d42b
735b2b5
70c92a7
a4aed59
9f266a1
9e1826a
5520faf
deb018b
fc7622f
3bc4ac1
1a73cfd
296d6c4
165dcbc
1340bb1
ad9f02f
c809629
28a2be2
b524e95
00663ae
07875c4
6819223
9d39495
f89778e
e897e9d
6f16620
db9d3e5
d608d44
a1b6258
01ea5d1
3831cbc
d690c1b
f017e0a
b7b9f3b
2100a02
c2c04d9
daa3a16
01706ca
ac77a3d
9a6eb0e
4f1d102
1651287
b349ec8
5535511
87ef699
99e7256
cd63be3
e88766d
8cd7c11
6f14c63
804f7bd
9140771
066afe0
9521b0b
08a9676
064ee87
508cc75
521381c
7bea2c5
554c779
6c6eeeb
4793a18
842acb9
0f992c0
33c8817
8d9d2ab
2b1cc79
b46e528
1683663
3fb2337
dc64b00
66b7486
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change | ||||
---|---|---|---|---|---|---|
|
@@ -9,10 +9,11 @@ to develop this Java wrapper. | |||||
|
||||||
The Java client contains the following parts: | ||||||
|
||||||
1. `client`: A Java-wrapper around the rust-core client. | ||||||
2. `examples`: An examples app to test the client against a Redis localhost | ||||||
3. `benchmark`: A dedicated benchmarking tool designed to evaluate and compare the performance of GLIDE for Redis and other Java clients. | ||||||
4. `integTest`: An integration test sub-project for API and E2E testing | ||||||
1. `src`: A rust part of the Java client and corresponding tests. | ||||||
2. `client`: A Java-wrapper around the [GLIDE core rust library](../glide-core/README.md) and unit tests for it. | ||||||
3. `examples`: An examples app to test the client against a Redis localhost. | ||||||
4. `benchmark`: A dedicated benchmarking tool designed to evaluate and compare the performance of GLIDE for Redis and other Java clients. | ||||||
5. `integTest`: An integration test sub-project for API and E2E testing. | ||||||
|
||||||
## Installation and Setup | ||||||
|
||||||
|
@@ -29,27 +30,49 @@ Software Dependencies: | |||||
- protoc (protobuf compiler) | ||||||
- Rust | ||||||
|
||||||
Please also consider installing the following packages to build [GLIDE core rust library](../glide-core/README.md): | ||||||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. should we just reference the glide-core library here as a dependency? There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. We can, but the readme of core is empty. TBD to copy this block to that readme. There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. See #113 |
||||||
|
||||||
- GCC | ||||||
- pkg-config | ||||||
- openssl | ||||||
- openssl-dev | ||||||
|
||||||
#### Prerequisites | ||||||
|
||||||
**Protoc installation** | ||||||
|
||||||
Download a binary matching your system from the [official release page](https://github.com/protocolbuffers/protobuf/releases/tag/v25.1) and make it accessible in your $PATH by moving it or creating a symlink. | ||||||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
Suggested change
Note: we only support latest. And really, we want to only support https://github.com/protocolbuffers/protobuf/releases/tag/v26.0-rc2 and later because of protocolbuffers/protobuf#12639 There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I put here the same version we use in CI |
||||||
For example, on Linux you can copy it to `/usr/bin`: | ||||||
|
||||||
```bash | ||||||
sudo cp protoc /usr/bin/ | ||||||
``` | ||||||
|
||||||
**Dependencies installation for Ubuntu** | ||||||
|
||||||
```bash | ||||||
sudo apt update -y | ||||||
sudo apt install -y protobuf-compiler openjdk-11-jdk openssl gcc | ||||||
sudo apt install -y openjdk-11-jdk openssl gcc | ||||||
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh | ||||||
source "$HOME/.cargo/env" | ||||||
``` | ||||||
|
||||||
**Dependencies for MacOS** | ||||||
**Dependencies installation for MacOS** | ||||||
|
||||||
Ensure that you have a minimum Java version of JDK 11 installed on your system: | ||||||
```bash | ||||||
$ echo $JAVA_HOME | ||||||
/Library/Java/JavaVirtualMachines/adoptopenjdk-11.jdk/Contents/Home | ||||||
brew update | ||||||
brew install git gcc pkgconfig openssl openjdk@11 | ||||||
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh | ||||||
source "$HOME/.cargo/env" | ||||||
``` | ||||||
|
||||||
$ java -version | ||||||
openjdk version "11.0.1" 2018-10-16 | ||||||
OpenJDK Runtime Environment 18.9 (build 11.0.1+13) | ||||||
OpenJDK 64-Bit Server VM 18.9 (build 11.0.1+13, mixed mode) | ||||||
**Java version check** | ||||||
|
||||||
Ensure that you have a minimum Java version of JDK 11 installed on your system: | ||||||
|
||||||
```bash | ||||||
echo $JAVA_HOME | ||||||
java -version | ||||||
``` | ||||||
|
||||||
#### Building and installation steps | ||||||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Not sure this is needed.
This 'part' goes hand-in-hand with the client. We should consider moving it into the client directory, actually.