Skip to content

Commit b80e896

Browse files
authored
New shared cargo package: hive-console-sdk (#7143)
1 parent 0c62149 commit b80e896

29 files changed

+1613
-1789
lines changed

.cargo/config.toml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
# The following are aliases you can use with "cargo command_name"
2+
[alias]
3+
"clippy:fix" = "clippy --all --fix --allow-dirty --allow-staged"

.changeset/funny-rockets-speak.md

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
---
2+
'hive-console-sdk-rs': patch
3+
'hive-apollo-router-plugin': minor
4+
---
5+
6+
Extract Hive Console integration implementation into a new package `hive-console-sdk` which can
7+
be used by any Rust library for Hive Console integration
8+
9+
It also includes a refactor to use less Mutexes like replacing `lru` + `Mutex` with the thread-safe `moka` package.
10+
Only one place that handles queueing uses `Mutex` now.

.changeset/six-teeth-attack.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
---
2+
'hive-apollo-router-plugin': patch
3+
---
4+
5+
Fixes a bug when Persisted Operations are enabled by default which should be explicitly enabled

.github/workflows/apollo-router-release.yaml

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@ on:
66
- main
77
paths:
88
- 'packages/libraries/router/**'
9+
- 'packages/libraries/sdk-rs/**'
910
- 'docker/router.dockerfile'
1011
- 'scripts/compress/**'
1112
- 'configs/cargo/Cargo.lock'
@@ -16,6 +17,7 @@ on:
1617
push:
1718
paths:
1819
- 'packages/libraries/router/**'
20+
- 'packages/libraries/sdk-rs/**'
1921
- 'docker/router.dockerfile'
2022
- 'scripts/compress/**'
2123
- 'configs/cargo/Cargo.lock'
@@ -60,7 +62,7 @@ jobs:
6062
github_org="graphql-hive"
6163
router_version=$(cargo tree -i apollo-router --quiet | head -n 1 | awk -F" v" '{print $2}')
6264
plugin_version=$(jq -r '.version' packages/libraries/router/package.json)
63-
has_changes=$(git diff HEAD~ HEAD --name-only -- 'packages/libraries/router/Cargo.toml' 'Cargo.lock' 'configs/cargo/Cargo.lock' 'packages/libraries/router/package.json')
65+
has_changes=$(git diff HEAD~ HEAD --name-only -- 'packages/libraries/router/Cargo.toml' 'packages/libraries/router/package.json' 'packages/libraries/sdk-rs/Cargo.toml' 'packages/libraries/sdk-rs/package.json' 'Cargo.lock' 'configs/cargo/Cargo.lock')
6466
6567
if [ "$has_changes" ]; then
6668
image_tag_version="router${router_version}-plugin${plugin_version}"

.github/workflows/publish-rust.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ jobs:
2727
- name: Look for changes
2828
id: rust_changed
2929
run: |
30-
lines=$( git diff HEAD~ HEAD --name-only -- 'packages/libraries/router' 'Cargo.toml' 'configs/cargo/Cargo.lock' | wc -l )
30+
lines=$( git diff HEAD~ HEAD --name-only -- 'packages/libraries/router' 'packages/libraries/sdk-rs' 'Cargo.toml' 'configs/cargo/Cargo.lock' | wc -l )
3131
if [ $lines -gt 0 ]; then
3232
echo 'rust_changed=true' >> $GITHUB_OUTPUT
3333
fi

.github/workflows/release-stable.yaml

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -123,9 +123,8 @@ jobs:
123123
echo "crate_version=$VERSION" >> $GITHUB_OUTPUT
124124
echo "crate_publish=true" >> $GITHUB_OUTPUT
125125
126-
- name: release hive-apollo-router-plugin to Crates.io
126+
- name: release to Crates.io
127127
if: steps.rust-crate.outputs.crate_publish == 'true'
128128
run: |
129-
cd packages/libraries/router
130129
cargo login ${{ secrets.CARGO_REGISTRY_TOKEN }}
131130
cargo publish --allow-dirty --no-verify

.vscode/settings.json

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -39,5 +39,11 @@
3939
],
4040
"[typescript]": {
4141
"editor.defaultFormatter": "esbenp.prettier-vscode"
42+
},
43+
"[yaml]": {
44+
"editor.defaultFormatter": "esbenp.prettier-vscode"
45+
},
46+
"[rust]": {
47+
"editor.defaultFormatter": "rust-lang.rust-analyzer"
4248
}
4349
}

Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
11
[workspace]
22
resolver = "2"
3-
members = ["packages/libraries/router", "scripts/compress"]
3+
members = ["packages/libraries/router", "scripts/compress", "packages/libraries/sdk-rs"]

0 commit comments

Comments
 (0)