Skip to content

Commit 5a19ac5

Browse files
chore(release): router crates and artifacts (#588)
> [!IMPORTANT] > Merging this pull request will create these releases # router 0.0.21 (2025-11-28) ## Features - Subgraph Timeout Configuration (#541) ### Subgraph Request Timeout Feature Adds support for configurable subgraph request timeouts via the `traffic_shaping` configuration. The `request_timeout` option allows you to specify the maximum time the router will wait for a response from a subgraph before timing out the request. You can set a static timeout (e.g., `30s`) globally or per-subgraph, or use dynamic timeouts with VRL expressions to vary timeout values based on request characteristics. This helps protect your router from hanging requests and enables fine-grained control over how long requests to different subgraphs should be allowed to run. ### Rename `original_url` variable to `default` in subgraph URL override expressions. This change aligns the variable naming with other configuration expressions, such as timeout configuration. When using expressions to override subgraph URLs, use `.default` to refer to the original URL defined in the subgraph definition. Example: ```yaml url: expression: | if .request.headers."x-region" == "us-east" { "https://products-us-east.example.com/graphql" } else { .default } ``` ## Fixes - support `@include` and `@skip` in initial fetch node (#591) - Fixed an issue where `@skip` and `@include` directives were incorrectly removed from the initial Fetch of the Query Plan. # node-addon 0.0.5 (2025-11-28) ## Fixes - support `@include` and `@skip` in initial fetch node (#591) - Fixed an issue where `@skip` and `@include` directives were incorrectly removed from the initial Fetch of the Query Plan. # query-planner 2.1.1 (2025-11-28) ## Fixes - support `@include` and `@skip` in initial fetch node (#591) - Fixed an issue where `@skip` and `@include` directives were incorrectly removed from the initial Fetch of the Query Plan. # config 0.0.13 (2025-11-28) ## Features ### Subgraph Request Timeout Feature Adds support for configurable subgraph request timeouts via the `traffic_shaping` configuration. The `request_timeout` option allows you to specify the maximum time the router will wait for a response from a subgraph before timing out the request. You can set a static timeout (e.g., `30s`) globally or per-subgraph, or use dynamic timeouts with VRL expressions to vary timeout values based on request characteristics. This helps protect your router from hanging requests and enables fine-grained control over how long requests to different subgraphs should be allowed to run. ### Rename `original_url` variable to `default` in subgraph URL override expressions. This change aligns the variable naming with other configuration expressions, such as timeout configuration. When using expressions to override subgraph URLs, use `.default` to refer to the original URL defined in the subgraph definition. Example: ```yaml url: expression: | if .request.headers."x-region" == "us-east" { "https://products-us-east.example.com/graphql" } else { .default } ``` ## Fixes - support `@include` and `@skip` in initial fetch node (#591) # executor 6.2.0 (2025-11-28) ## Features ### Subgraph Request Timeout Feature Adds support for configurable subgraph request timeouts via the `traffic_shaping` configuration. The `request_timeout` option allows you to specify the maximum time the router will wait for a response from a subgraph before timing out the request. You can set a static timeout (e.g., `30s`) globally or per-subgraph, or use dynamic timeouts with VRL expressions to vary timeout values based on request characteristics. This helps protect your router from hanging requests and enables fine-grained control over how long requests to different subgraphs should be allowed to run. ### Rename `original_url` variable to `default` in subgraph URL override expressions. This change aligns the variable naming with other configuration expressions, such as timeout configuration. When using expressions to override subgraph URLs, use `.default` to refer to the original URL defined in the subgraph definition. Example: ```yaml url: expression: | if .request.headers."x-region" == "us-east" { "https://products-us-east.example.com/graphql" } else { .default } ``` ## Fixes - support `@include` and `@skip` in initial fetch node (#591) Co-authored-by: knope-bot[bot] <152252888+knope-bot[bot]@users.noreply.github.com>
1 parent 4eaf9ec commit 5a19ac5

File tree

16 files changed

+125
-57
lines changed

16 files changed

+125
-57
lines changed

.changeset/asd.md

Lines changed: 0 additions & 9 deletions
This file was deleted.

.changeset/fix-cond.md

Lines changed: 0 additions & 7 deletions
This file was deleted.

.changeset/rename_original_url_variable_to_default_in_subgraph_url_override_expressions.md

Lines changed: 0 additions & 23 deletions
This file was deleted.

Cargo.lock

Lines changed: 5 additions & 5 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

bin/router/CHANGELOG.md

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -116,6 +116,39 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
116116
### Other
117117

118118
- *(deps)* update release-plz/action action to v0.5.113 ([#389](https://github.com/graphql-hive/router/pull/389))
119+
## 0.0.21 (2025-11-28)
120+
121+
### Features
122+
123+
- Subgraph Timeout Configuration (#541)
124+
125+
#### Subgraph Request Timeout Feature
126+
127+
Adds support for configurable subgraph request timeouts via the `traffic_shaping` configuration. The `request_timeout` option allows you to specify the maximum time the router will wait for a response from a subgraph before timing out the request. You can set a static timeout (e.g., `30s`) globally or per-subgraph, or use dynamic timeouts with VRL expressions to vary timeout values based on request characteristics. This helps protect your router from hanging requests and enables fine-grained control over how long requests to different subgraphs should be allowed to run.
128+
129+
#### Rename `original_url` variable to `default` in subgraph URL override expressions.
130+
131+
This change aligns the variable naming with other configuration expressions, such as timeout configuration.
132+
133+
When using expressions to override subgraph URLs, use `.default` to refer to the original URL defined in the subgraph definition.
134+
135+
Example:
136+
137+
```yaml
138+
url:
139+
expression: |
140+
if .request.headers."x-region" == "us-east" {
141+
"https://products-us-east.example.com/graphql"
142+
} else {
143+
.default
144+
}
145+
```
146+
147+
### Fixes
148+
149+
- support `@include` and `@skip` in initial fetch node (#591)
150+
- Fixed an issue where `@skip` and `@include` directives were incorrectly removed from the initial Fetch of the Query Plan.
151+
119152
## 0.0.20 (2025-11-24)
120153

121154
### Features

bin/router/Cargo.toml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[package]
22
name = "hive-router"
3-
version = "0.0.20"
3+
version = "0.0.21"
44
edition = "2021"
55
description = "GraphQL router/gateway for Federation"
66
license = "MIT"
@@ -16,9 +16,9 @@ name = "hive_router"
1616
path = "src/main.rs"
1717

1818
[dependencies]
19-
hive-router-query-planner = { path = "../../lib/query-planner", version = "2.1.0" }
20-
hive-router-plan-executor = { path = "../../lib/executor", version = "6.1.0" }
21-
hive-router-config = { path = "../../lib/router-config", version = "0.0.12" }
19+
hive-router-query-planner = { path = "../../lib/query-planner", version = "2.1.1" }
20+
hive-router-plan-executor = { path = "../../lib/executor", version = "6.2.0" }
21+
hive-router-config = { path = "../../lib/router-config", version = "0.0.13" }
2222

2323
tokio = { workspace = true }
2424
futures = { workspace = true }

lib/executor/CHANGELOG.md

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -94,6 +94,36 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
9494
### Other
9595

9696
- *(deps)* update release-plz/action action to v0.5.113 ([#389](https://github.com/graphql-hive/router/pull/389))
97+
## 6.2.0 (2025-11-28)
98+
99+
### Features
100+
101+
#### Subgraph Request Timeout Feature
102+
103+
Adds support for configurable subgraph request timeouts via the `traffic_shaping` configuration. The `request_timeout` option allows you to specify the maximum time the router will wait for a response from a subgraph before timing out the request. You can set a static timeout (e.g., `30s`) globally or per-subgraph, or use dynamic timeouts with VRL expressions to vary timeout values based on request characteristics. This helps protect your router from hanging requests and enables fine-grained control over how long requests to different subgraphs should be allowed to run.
104+
105+
#### Rename `original_url` variable to `default` in subgraph URL override expressions.
106+
107+
This change aligns the variable naming with other configuration expressions, such as timeout configuration.
108+
109+
When using expressions to override subgraph URLs, use `.default` to refer to the original URL defined in the subgraph definition.
110+
111+
Example:
112+
113+
```yaml
114+
url:
115+
expression: |
116+
if .request.headers."x-region" == "us-east" {
117+
"https://products-us-east.example.com/graphql"
118+
} else {
119+
.default
120+
}
121+
```
122+
123+
### Fixes
124+
125+
- support `@include` and `@skip` in initial fetch node (#591)
126+
97127
## 6.1.0 (2025-11-24)
98128

99129
### Features

lib/executor/Cargo.toml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[package]
22
name = "hive-router-plan-executor"
3-
version = "6.1.0"
3+
version = "6.2.0"
44
edition = "2021"
55
description = "GraphQL query planner executor for Federation specification"
66
license = "MIT"
@@ -12,8 +12,8 @@ authors = ["The Guild"]
1212
[lib]
1313

1414
[dependencies]
15-
hive-router-query-planner = { path = "../query-planner", version = "2.1.0" }
16-
hive-router-config = { path = "../router-config", version = "0.0.12" }
15+
hive-router-query-planner = { path = "../query-planner", version = "2.1.1" }
16+
hive-router-config = { path = "../router-config", version = "0.0.13" }
1717

1818
graphql-parser = { workspace = true }
1919
graphql-tools = { workspace = true }

lib/node-addon/CHANGELOG.md

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,11 @@
11
# @graphql-hive/router-query-planner changelog
2+
## 0.0.5 (2025-11-28)
3+
4+
### Fixes
5+
6+
- support `@include` and `@skip` in initial fetch node (#591)
7+
- Fixed an issue where `@skip` and `@include` directives were incorrectly removed from the initial Fetch of the Query Plan.
8+
29
## 0.0.4 (2025-11-24)
310

411
### Fixes

lib/node-addon/Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[package]
22
edition = "2021"
3-
version = "0.0.4"
3+
version = "0.0.5"
44
name = "node-addon"
55
publish = false
66

0 commit comments

Comments
 (0)