forked from valkey-io/valkey-glide
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge branch 'main' into design-async-client-raw-ffi
Signed-off-by: Andrew Carbonetto <[email protected]>
- Loading branch information
Showing
80 changed files
with
253,532 additions
and
1,037 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,96 @@ | ||
--- | ||
name: "🐛 Bug Report" | ||
description: Report a bug | ||
title: "(topic): (short issue description)" | ||
labels: [bug, needs-triage] | ||
assignees: [] | ||
body: | ||
- type: textarea | ||
id: description | ||
attributes: | ||
label: Describe the bug | ||
description: What is the problem? A clear and concise description of the bug. | ||
validations: | ||
required: true | ||
- type: textarea | ||
id: expected | ||
attributes: | ||
label: Expected Behavior | ||
description: | | ||
What did you expect to happen? | ||
validations: | ||
required: true | ||
- type: textarea | ||
id: current | ||
attributes: | ||
label: Current Behavior | ||
description: | | ||
What actually happened? | ||
Please include full errors, uncaught exceptions, stack traces, and relevant logs. | ||
If service responses are relevant, please include wire logs. | ||
validations: | ||
required: true | ||
- type: textarea | ||
id: reproduction | ||
attributes: | ||
label: Reproduction Steps | ||
description: | | ||
Provide a self-contained, concise snippet of code that can be used to reproduce the issue. | ||
For more complex issues provide a repo with the smallest sample that reproduces the bug. | ||
Avoid including business logic or unrelated code, it makes diagnosis more difficult. | ||
The code sample should be an SSCCE. See http://sscce.org/ for details. In short, please provide a code sample that we can copy/paste, run and reproduce. | ||
validations: | ||
required: true | ||
- type: textarea | ||
id: solution | ||
attributes: | ||
label: Possible Solution | ||
description: | | ||
Suggest a fix/reason for the bug | ||
validations: | ||
required: false | ||
- type: textarea | ||
id: context | ||
attributes: | ||
label: Additional Information/Context | ||
description: | | ||
Anything else that might be relevant for troubleshooting this bug. Providing context helps us come up with a solution that is most useful in the real world. | ||
validations: | ||
required: false | ||
|
||
- type: input | ||
id: operating-system | ||
attributes: | ||
label: OS | ||
validations: | ||
required: true | ||
|
||
- type: dropdown | ||
id: language | ||
attributes: | ||
label: Language | ||
multiple: true | ||
options: | ||
- TypeScript | ||
- Python | ||
validations: | ||
required: true | ||
|
||
- type: input | ||
id: language-version | ||
attributes: | ||
label: Language Version | ||
description: E.g. TypeScript (5.2.2) | Python (3.9) | ||
validations: | ||
required: false | ||
|
||
- type: textarea | ||
id: other | ||
attributes: | ||
label: Other information | ||
description: | | ||
e.g. detailed explanation, stacktraces, related issues, suggestions how to fix, links for us to have context, eg. associated pull-request, stackoverflow, etc | ||
validations: | ||
required: false |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,59 @@ | ||
--- | ||
name: 🚀 Feature Request | ||
description: Suggest an idea for this project | ||
title: "(topic): (short issue description)" | ||
labels: [feature-request, needs-triage] | ||
assignees: [] | ||
body: | ||
- type: textarea | ||
id: description | ||
attributes: | ||
label: Describe the feature | ||
description: A clear and concise description of the feature you are proposing. | ||
validations: | ||
required: true | ||
- type: textarea | ||
id: use-case | ||
attributes: | ||
label: Use Case | ||
description: | | ||
Why do you need this feature? | ||
validations: | ||
required: true | ||
- type: textarea | ||
id: solution | ||
attributes: | ||
label: Proposed Solution | ||
description: | | ||
Suggest how to implement the addition or change. Please include prototype/workaround/sketch/reference implementation. | ||
validations: | ||
required: false | ||
- type: textarea | ||
id: other | ||
attributes: | ||
label: Other Information | ||
description: | | ||
Any alternative solutions or features you considered, a more detailed explanation, stack traces, related issues, links for context, etc. | ||
validations: | ||
required: false | ||
- type: checkboxes | ||
id: ack | ||
attributes: | ||
label: Acknowledgements | ||
options: | ||
- label: I may be able to implement this feature request | ||
required: false | ||
- label: This feature might incur a breaking change | ||
required: false | ||
- type: input | ||
id: client-version | ||
attributes: | ||
label: Client version used | ||
validations: | ||
required: true | ||
- type: input | ||
id: environment | ||
attributes: | ||
label: Environment details (OS name and version, etc.) | ||
validations: | ||
required: true |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,42 @@ | ||
name: Build Node wrapper | ||
|
||
inputs: | ||
os: | ||
description: "The current operating system" | ||
required: true | ||
type: string | ||
options: | ||
- macOS | ||
- ubuntu | ||
- amazon-linux | ||
release_mode: | ||
description: "Enable building the wrapper in release mode" | ||
required: false | ||
type: boolean | ||
default: 'false' | ||
|
||
env: | ||
CARGO_TERM_COLOR: always | ||
|
||
runs: | ||
using: "composite" | ||
steps: | ||
- name: Install software dependencies | ||
uses: ./.github/workflows/install-shared-dependencies | ||
with: | ||
os: ${{ inputs.os }} | ||
|
||
- name: npm install | ||
shell: bash | ||
working-directory: ./node/rust-client | ||
run: | | ||
rm -rf node_modules && npm install --frozen-lockfile | ||
npm install | ||
- name: Build | ||
shell: bash | ||
run: | | ||
source "$HOME/.cargo/env" | ||
rm -rf node_modules && npm install --frozen-lockfile | ||
npm run build | ||
working-directory: ./node |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,54 @@ | ||
name: Build Python wrapper | ||
|
||
inputs: | ||
os: | ||
description: "The current operating system" | ||
required: true | ||
type: string | ||
options: | ||
- macOS | ||
- ubuntu | ||
- amazon-linux | ||
release_mode: | ||
description: "Enable building the wrapper in release mode" | ||
required: false | ||
type: boolean | ||
default: 'false' | ||
|
||
env: | ||
CARGO_TERM_COLOR: always | ||
|
||
runs: | ||
using: "composite" | ||
steps: | ||
- name: Install software dependencies | ||
uses: ./.github/workflows/install-shared-dependencies | ||
with: | ||
os: ${{ inputs.os }} | ||
|
||
- name: Install Python software dependencies | ||
shell: bash | ||
run: | | ||
python3 -m ensurepip --upgrade | ||
python3 -m pip install --upgrade pip | ||
python3 -m pip install virtualenv mypy-protobuf | ||
- name: Generate protobuf files | ||
shell: bash | ||
working-directory: . | ||
run: | | ||
export PATH="$PATH:$HOME/.local/bin" | ||
MYPY_PROTOC_PATH=`which protoc-gen-mypy` | ||
protoc --plugin=protoc-gen-mypy=${MYPY_PROTOC_PATH} -Iprotobuf=./babushka-core/src/protobuf/ --python_out=./python/python/pybushka --mypy_out=./python/python/pybushka ./babushka-core/src/protobuf/*.proto | ||
- name: Build Pybushka | ||
shell: bash | ||
working-directory: ./python | ||
run: | | ||
source "$HOME/.cargo/env" | ||
python3 -m venv .env | ||
source .env/bin/activate | ||
python3 -m pip install --upgrade pip | ||
python3 -m pip install -r requirements.txt | ||
RELEASE_FLAG=`if [ ${{ inputs.release_mode }} = 'true' ]; then echo --release; fi` | ||
maturin develop ${RELEASE_FLAG} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,38 @@ | ||
name: Install shared software dependencies | ||
|
||
inputs: | ||
os: | ||
description: "The current operating system" | ||
required: true | ||
type: string | ||
options: | ||
- macOS | ||
- ubuntu | ||
- amazon-linux | ||
|
||
runs: | ||
using: "composite" | ||
steps: | ||
- name: Install software dependencies for macOS | ||
shell: bash | ||
if: "${{ inputs.os == 'macOS' }}" | ||
run: | | ||
brew install git gcc pkgconfig protobuf openssl redis | ||
- name: Install software dependencies for Ubuntu | ||
shell: bash | ||
if: "${{ inputs.os == 'ubuntu' }}" | ||
run: | | ||
sudo apt update | ||
sudo apt install protobuf-compiler | ||
- name: Install software dependencies for Amazon-Linux | ||
shell: bash | ||
if: "${{ inputs.os == 'amazon-linux' }}" | ||
run: | | ||
yum install -y gcc pkgconfig protobuf-compiler openssl openssl-devel which curl redis6 --allowerasing | ||
- name: Install Rust | ||
shell: bash | ||
run: | | ||
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,46 +1,46 @@ | ||
name: Java client benchmarks | ||
|
||
on: | ||
workflow_dispatch: | ||
inputs: | ||
name: | ||
required: false | ||
type: string | ||
workflow_dispatch: | ||
inputs: | ||
name: | ||
required: false | ||
type: string | ||
|
||
run-name: ${{ inputs.name == '' && format('{0} @ {1}', github.ref_name, github.sha) || inputs.name }} | ||
|
||
jobs: | ||
java-benchmark: | ||
strategy: | ||
matrix: | ||
java: | ||
- 11 | ||
- 17 | ||
runs-on: ubuntu-latest | ||
|
||
steps: | ||
- uses: actions/checkout@v4 | ||
with: | ||
submodules: recursive | ||
|
||
- name: Set up JDK ${{ matrix.java }} | ||
uses: actions/setup-java@v3 | ||
with: | ||
distribution: "temurin" | ||
java-version: ${{ matrix.java }} | ||
|
||
- name: Start Redis | ||
run: docker run -p 6379:6379 -p 8001:8001 -d redis/redis-stack | ||
|
||
- name: Run benchmarks | ||
working-directory: java | ||
run: ./gradlew :benchmark:run | ||
|
||
- name: Upload test reports | ||
if: always() | ||
continue-on-error: true | ||
uses: actions/upload-artifact@v3 | ||
with: | ||
name: test-reports-${{ matrix.java }} | ||
path: | | ||
java/benchmarks/build/reports/** | ||
java-benchmark: | ||
strategy: | ||
matrix: | ||
java: | ||
- 11 | ||
- 17 | ||
runs-on: ubuntu-latest | ||
|
||
steps: | ||
- uses: actions/checkout@v4 | ||
with: | ||
submodules: recursive | ||
|
||
- name: Set up JDK ${{ matrix.java }} | ||
uses: actions/setup-java@v3 | ||
with: | ||
distribution: "temurin" | ||
java-version: ${{ matrix.java }} | ||
|
||
- name: Start Redis | ||
run: docker run -p 6379:6379 -p 8001:8001 -d redis/redis-stack | ||
|
||
- name: Run benchmarks | ||
working-directory: java | ||
run: ./gradlew :benchmark:run | ||
|
||
- name: Upload test reports | ||
if: always() | ||
continue-on-error: true | ||
uses: actions/upload-artifact@v3 | ||
with: | ||
name: test-reports-${{ matrix.java }} | ||
path: | | ||
java/benchmarks/build/reports/** |
Oops, something went wrong.