runapi-core 0.8.1__tar.gz → 0.8.2__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.
- {runapi_core-0.8.1 → runapi_core-0.8.2}/PKG-INFO +2 -2
- {runapi_core-0.8.1 → runapi_core-0.8.2}/pyproject.toml +1 -1
- {runapi_core-0.8.1 → runapi_core-0.8.2}/src/runapi/core/contract_gen.py +42 -0
- runapi_core-0.8.2/src/runapi/core/version.py +1 -0
- {runapi_core-0.8.1 → runapi_core-0.8.2}/tests/test_errors.py +5 -2
- runapi_core-0.8.1/src/runapi/core/version.py +0 -1
- {runapi_core-0.8.1 → runapi_core-0.8.2}/README.md +0 -0
- {runapi_core-0.8.1 → runapi_core-0.8.2}/src/runapi/core/__init__.py +0 -0
- {runapi_core-0.8.1 → runapi_core-0.8.2}/src/runapi/core/account.py +0 -0
- {runapi_core-0.8.1 → runapi_core-0.8.2}/src/runapi/core/auth.py +0 -0
- {runapi_core-0.8.1 → runapi_core-0.8.2}/src/runapi/core/config.py +0 -0
- {runapi_core-0.8.1 → runapi_core-0.8.2}/src/runapi/core/constants.py +0 -0
- {runapi_core-0.8.1 → runapi_core-0.8.2}/src/runapi/core/errors.py +0 -0
- {runapi_core-0.8.1 → runapi_core-0.8.2}/src/runapi/core/files.py +0 -0
- {runapi_core-0.8.1 → runapi_core-0.8.2}/src/runapi/core/http_client.py +0 -0
- {runapi_core-0.8.1 → runapi_core-0.8.2}/src/runapi/core/models.py +0 -0
- {runapi_core-0.8.1 → runapi_core-0.8.2}/src/runapi/core/multipart.py +0 -0
- {runapi_core-0.8.1 → runapi_core-0.8.2}/src/runapi/core/options.py +0 -0
- {runapi_core-0.8.1 → runapi_core-0.8.2}/src/runapi/core/polling.py +0 -0
- {runapi_core-0.8.1 → runapi_core-0.8.2}/src/runapi/core/pricing.py +0 -0
- {runapi_core-0.8.1 → runapi_core-0.8.2}/src/runapi/core/provider_client.py +0 -0
- {runapi_core-0.8.1 → runapi_core-0.8.2}/src/runapi/core/py.typed +0 -0
- {runapi_core-0.8.1 → runapi_core-0.8.2}/src/runapi/core/resource.py +0 -0
- {runapi_core-0.8.1 → runapi_core-0.8.2}/src/runapi/core/response.py +0 -0
- {runapi_core-0.8.1 → runapi_core-0.8.2}/src/runapi/core/uploads.py +0 -0
- {runapi_core-0.8.1 → runapi_core-0.8.2}/tests/test_account.py +0 -0
- {runapi_core-0.8.1 → runapi_core-0.8.2}/tests/test_auth.py +0 -0
- {runapi_core-0.8.1 → runapi_core-0.8.2}/tests/test_config.py +0 -0
- {runapi_core-0.8.1 → runapi_core-0.8.2}/tests/test_files.py +0 -0
- {runapi_core-0.8.1 → runapi_core-0.8.2}/tests/test_http_client.py +0 -0
- {runapi_core-0.8.1 → runapi_core-0.8.2}/tests/test_models.py +0 -0
- {runapi_core-0.8.1 → runapi_core-0.8.2}/tests/test_polling.py +0 -0
- {runapi_core-0.8.1 → runapi_core-0.8.2}/tests/test_pricing.py +0 -0
- {runapi_core-0.8.1 → runapi_core-0.8.2}/tests/test_resource.py +0 -0
- {runapi_core-0.8.1 → runapi_core-0.8.2}/tests/test_uploads.py +0 -0
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
Metadata-Version: 2.5
|
|
2
2
|
Name: runapi-core
|
|
3
|
-
Version: 0.8.
|
|
3
|
+
Version: 0.8.2
|
|
4
4
|
Summary: RunAPI core SDK for JavaScript, Python, Ruby, Go, Java, and PHP
|
|
5
5
|
Project-URL: Homepage, https://runapi.ai/models
|
|
6
6
|
Project-URL: Documentation, https://runapi.ai/docs/resources/sdks
|
|
7
7
|
Project-URL: Source, https://github.com/runapi-ai/core-sdk
|
|
8
8
|
Project-URL: Issues, https://github.com/runapi-ai/core-sdk/issues
|
|
9
9
|
Project-URL: Changelog, https://github.com/runapi-ai/core-sdk/blob/main/CHANGELOG.md
|
|
10
|
-
Project-URL: Release Notes, https://github.com/runapi-ai/core-sdk/releases/tag/python%2Fv0.8.
|
|
10
|
+
Project-URL: Release Notes, https://github.com/runapi-ai/core-sdk/releases/tag/python%2Fv0.8.2
|
|
11
11
|
Author-email: RunAPI <contact@runapi.ai>
|
|
12
12
|
License-Expression: Apache-2.0
|
|
13
13
|
Keywords: api,core,golang,gradle,java,maven,pypi,python,ruby,runapi,runapi-ai,sdk,typescript
|
|
@@ -19,7 +19,7 @@ Documentation = "https://runapi.ai/docs/resources/sdks"
|
|
|
19
19
|
Source = "https://github.com/runapi-ai/core-sdk"
|
|
20
20
|
Issues = "https://github.com/runapi-ai/core-sdk/issues"
|
|
21
21
|
Changelog = "https://github.com/runapi-ai/core-sdk/blob/main/CHANGELOG.md"
|
|
22
|
-
"Release Notes" = "https://github.com/runapi-ai/core-sdk/releases/tag/python%2Fv0.8.
|
|
22
|
+
"Release Notes" = "https://github.com/runapi-ai/core-sdk/releases/tag/python%2Fv0.8.2"
|
|
23
23
|
|
|
24
24
|
[tool.hatch.version]
|
|
25
25
|
path = "src/runapi/core/version.py"
|
|
@@ -296,6 +296,48 @@ CONTRACT = {
|
|
|
296
296
|
}
|
|
297
297
|
}
|
|
298
298
|
},
|
|
299
|
+
"gpt-image-2.5/edit-image": {
|
|
300
|
+
"models": ["gpt-image-2.5-flare", "gpt-image-2.5-sunburst"],
|
|
301
|
+
"fields_by_model": {
|
|
302
|
+
"gpt-image-2.5-flare": {
|
|
303
|
+
"aspect_ratio": {
|
|
304
|
+
"enum": ["auto", "1:1", "3:2", "2:3", "4:3", "3:4", "5:4", "4:5", "16:9", "9:16", "2:1", "1:2", "3:1", "1:3", "21:9", "9:21"]
|
|
305
|
+
},
|
|
306
|
+
"output_resolution": {
|
|
307
|
+
"enum": ["1k", "2k", "4k"]
|
|
308
|
+
}
|
|
309
|
+
},
|
|
310
|
+
"gpt-image-2.5-sunburst": {
|
|
311
|
+
"aspect_ratio": {
|
|
312
|
+
"enum": ["auto", "1:1", "3:2", "2:3", "4:3", "3:4", "5:4", "4:5", "16:9", "9:16", "2:1", "1:2", "3:1", "1:3", "21:9", "9:21"]
|
|
313
|
+
},
|
|
314
|
+
"output_resolution": {
|
|
315
|
+
"enum": ["1k", "2k", "4k"]
|
|
316
|
+
}
|
|
317
|
+
}
|
|
318
|
+
}
|
|
319
|
+
},
|
|
320
|
+
"gpt-image-2.5/text-to-image": {
|
|
321
|
+
"models": ["gpt-image-2.5-flare", "gpt-image-2.5-sunburst"],
|
|
322
|
+
"fields_by_model": {
|
|
323
|
+
"gpt-image-2.5-flare": {
|
|
324
|
+
"aspect_ratio": {
|
|
325
|
+
"enum": ["auto", "1:1", "3:2", "2:3", "4:3", "3:4", "5:4", "4:5", "16:9", "9:16", "2:1", "1:2", "3:1", "1:3", "21:9", "9:21"]
|
|
326
|
+
},
|
|
327
|
+
"output_resolution": {
|
|
328
|
+
"enum": ["1k", "2k", "4k"]
|
|
329
|
+
}
|
|
330
|
+
},
|
|
331
|
+
"gpt-image-2.5-sunburst": {
|
|
332
|
+
"aspect_ratio": {
|
|
333
|
+
"enum": ["auto", "1:1", "3:2", "2:3", "4:3", "3:4", "5:4", "4:5", "16:9", "9:16", "2:1", "1:2", "3:1", "1:3", "21:9", "9:21"]
|
|
334
|
+
},
|
|
335
|
+
"output_resolution": {
|
|
336
|
+
"enum": ["1k", "2k", "4k"]
|
|
337
|
+
}
|
|
338
|
+
}
|
|
339
|
+
}
|
|
340
|
+
},
|
|
299
341
|
"gpt-image-2/edit-image": {
|
|
300
342
|
"models": ["gpt-image-2"],
|
|
301
343
|
"fields_by_model": {
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
__version__ = "0.8.2"
|
|
@@ -144,9 +144,12 @@ def test_service_unavailable_defaults_to_503():
|
|
|
144
144
|
assert errors.ServiceUnavailableError().status == 503
|
|
145
145
|
|
|
146
146
|
|
|
147
|
-
def
|
|
147
|
+
def test_resource_validation_reads_summary_and_preserves_field_errors():
|
|
148
148
|
error = errors.error_from_response(
|
|
149
|
-
response(
|
|
149
|
+
response(
|
|
150
|
+
422,
|
|
151
|
+
body='{"error":"Validation failed","errors":{"prompt":["too long"]}}',
|
|
152
|
+
)
|
|
150
153
|
)
|
|
151
154
|
assert error.message == "Validation failed"
|
|
152
155
|
assert error.details["errors"] == {"prompt": ["too long"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
__version__ = "0.8.1"
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|