dirigent-block-http 0.17.2__tar.gz → 0.18.0__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,13 +1,13 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: dirigent-block-http
3
- Version: 0.17.2
3
+ Version: 0.18.0
4
4
  Summary: The HTTP block family for dirigent: http.request, http.ready, webhook.post, and the http connection kind.
5
5
  License-Expression: LicenseRef-Proprietary
6
6
  License-File: LICENSE
7
7
  Classifier: Programming Language :: Python :: 3
8
8
  Classifier: Programming Language :: Python :: 3.13
9
- Requires-Dist: dirigent-common==0.17.2
10
- Requires-Dist: dirigent-plugin==0.17.2
9
+ Requires-Dist: dirigent-common==0.18.0
10
+ Requires-Dist: dirigent-plugin==0.18.0
11
11
  Requires-Dist: httpx2>=2.12.0
12
12
  Requires-Python: >=3.13
13
13
  Description-Content-Type: text/markdown
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "dirigent-block-http"
3
- version = "0.17.2"
3
+ version = "0.18.0"
4
4
  description = "The HTTP block family for dirigent: http.request, http.ready, webhook.post, and the http connection kind."
5
5
  readme = "README.md"
6
6
  requires-python = ">=3.13"
@@ -11,8 +11,8 @@ classifiers = [
11
11
  "Programming Language :: Python :: 3.13",
12
12
  ]
13
13
  dependencies = [
14
- "dirigent-common==0.17.2",
15
- "dirigent-plugin==0.17.2",
14
+ "dirigent-common==0.18.0",
15
+ "dirigent-plugin==0.18.0",
16
16
  "httpx2>=2.12.0",
17
17
  ]
18
18
 
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "dirigent-block-http"
3
- version = "0.17.2"
3
+ version = "0.18.0"
4
4
  description = "The HTTP block family for dirigent: http.request, http.ready, webhook.post, and the http connection kind."
5
5
  readme = "README.md"
6
6
  requires-python = ">=3.13"
@@ -11,8 +11,8 @@ classifiers = [
11
11
  "Programming Language :: Python :: 3.13",
12
12
  ]
13
13
  dependencies = [
14
- "dirigent-common==0.17.2",
15
- "dirigent-plugin==0.17.2",
14
+ "dirigent-common==0.18.0",
15
+ "dirigent-plugin==0.18.0",
16
16
  "httpx2>=2.12.0",
17
17
  ]
18
18
 
@@ -133,8 +133,14 @@ class HttpRequestConfig(HttpTarget):
133
133
  """What one HTTP call sends, and which responses count as success."""
134
134
 
135
135
  method: HttpMethod = "GET"
136
+ """The method the request is sent with."""
137
+
136
138
  query: dict[str, str | int | float | bool] = Field(default_factory=dict[str, str | int | float | bool])
139
+ """Query parameters appended to the URL, each value written as text."""
140
+
137
141
  headers: dict[str, str] = Field(default_factory=dict[str, str])
142
+ """Headers sent with the request."""
143
+
138
144
  body: JsonValue | None = None
139
145
  """What the request sends, usually a reference to what an earlier step produced.
140
146
 
@@ -187,7 +193,11 @@ class HttpRequestOutput(BlockModel):
187
193
  """What one HTTP call observed, which downstream steps reference by field."""
188
194
 
189
195
  status: int
196
+ """The status code the service answered with."""
197
+
190
198
  headers: dict[str, str]
199
+ """The response headers, keyed by lowercase name."""
200
+
191
201
  body: JsonValue = None
192
202
  """What the service answered: the parsed document when it is JSON, else the text."""
193
203
 
@@ -195,6 +205,7 @@ class HttpRequestOutput(BlockModel):
195
205
  """How many bytes the answer was."""
196
206
 
197
207
  duration_ms: int
208
+ """How long the call took."""
198
209
 
199
210
 
200
211
  class HttpRequestOperator(Operator[HttpRequestConfig, HttpRequestOutput]):
@@ -270,8 +281,13 @@ class HttpReadyOutput(BlockModel):
270
281
  """The observation that a service is up, passed downstream like any output."""
271
282
 
272
283
  status: int
284
+ """The status code the poke that succeeded was answered with."""
285
+
273
286
  duration_ms: int
287
+ """How long that poke took."""
288
+
274
289
  matched: bool
290
+ """Whether a ``contains`` matcher was part of readiness, which a ready answer satisfied."""
275
291
 
276
292
 
277
293
  class HttpReadySensor(Sensor[HttpReadyConfig, HttpReadyOutput]):
@@ -71,10 +71,19 @@ class WebhookPostOutput(BlockModel):
71
71
  """What the receiver said, which downstream steps reference by field."""
72
72
 
73
73
  status: int
74
+ """The status code the receiver answered with."""
75
+
74
76
  signed: bool
77
+ """Whether the request carried an HMAC signature."""
78
+
75
79
  duration_ms: int
80
+ """How long the delivery took."""
81
+
76
82
  json_body: JsonValue | None = None
83
+ """The answer parsed as JSON, set when the receiver answered with JSON."""
84
+
77
85
  text: str | None = None
86
+ """The answer as text, set when it was not JSON."""
78
87
 
79
88
 
80
89
  class WebhookPostOperator(Operator[WebhookPostConfig, WebhookPostOutput]):