mirror of
https://github.com/wassname/openrouter-python-sdk-retry-errors.git
synced 2026-08-01 12:40:23 +08:00
ci: regenerated with OpenAPI Doc , Speakeasy CLI 1.617.1
This commit is contained in:
@@ -1,3 +1,4 @@
|
||||
.env.local
|
||||
.venv/
|
||||
venv/
|
||||
src/*.egg-info/
|
||||
|
||||
+7
-7
@@ -3,10 +3,10 @@ id: 232c6d4f-b0fd-4172-8f1b-e2421566e9b4
|
||||
management:
|
||||
docChecksum: f629b0ca18ec064975608b5eea7aebfd
|
||||
docVersion: 1.0.0
|
||||
speakeasyVersion: 1.612.0
|
||||
generationVersion: 2.695.0
|
||||
releaseVersion: 0.6.2
|
||||
configChecksum: f369a2bbdc8e34f44647641a40369e29
|
||||
speakeasyVersion: 1.617.1
|
||||
generationVersion: 2.701.8
|
||||
releaseVersion: 0.6.3
|
||||
configChecksum: c3dd5d0094a141e47c41e765753d73c6
|
||||
repoURL: https://github.com/speakeasy-sdks/openrouter-python-sdk.git
|
||||
installationURL: https://github.com/speakeasy-sdks/openrouter-python-sdk.git
|
||||
features:
|
||||
@@ -14,14 +14,14 @@ features:
|
||||
acceptHeaders: 3.0.0
|
||||
additionalDependencies: 1.0.0
|
||||
constsAndDefaults: 1.0.5
|
||||
core: 5.20.3
|
||||
core: 5.20.4
|
||||
customCodeRegions: 0.1.1
|
||||
defaultEnabledRetries: 0.2.0
|
||||
devContainers: 3.0.0
|
||||
enumUnions: 0.1.0
|
||||
envVarSecurityUsage: 0.3.2
|
||||
flatRequests: 1.0.1
|
||||
globalSecurity: 3.0.3
|
||||
globalSecurity: 3.0.4
|
||||
globalSecurityCallbacks: 1.0.0
|
||||
globalSecurityFlattening: 1.0.0
|
||||
globalServerURLs: 3.1.1
|
||||
@@ -32,7 +32,7 @@ features:
|
||||
responseFormat: 1.0.1
|
||||
retries: 3.0.2
|
||||
sdkHooks: 1.1.0
|
||||
serverEvents: 1.0.8
|
||||
serverEvents: 1.0.9
|
||||
serverEventsSentinels: 0.1.0
|
||||
unions: 3.0.4
|
||||
generatedFiles:
|
||||
|
||||
+3
-1
@@ -19,6 +19,7 @@ generation:
|
||||
auth:
|
||||
oAuth2ClientCredentialsEnabled: true
|
||||
oAuth2PasswordEnabled: true
|
||||
hoistGlobalSecurity: true
|
||||
inferSSEOverload: true
|
||||
sdkHooksConfigAccess: true
|
||||
tests:
|
||||
@@ -26,7 +27,7 @@ generation:
|
||||
generateNewTests: true
|
||||
skipResponseBodyAssertions: false
|
||||
python:
|
||||
version: 0.6.2
|
||||
version: 0.6.3
|
||||
additionalDependencies:
|
||||
dev: {}
|
||||
main: {}
|
||||
@@ -65,4 +66,5 @@ python:
|
||||
pytestFilterWarnings: []
|
||||
pytestTimeout: 0
|
||||
responseFormat: flat
|
||||
sseFlatResponse: false
|
||||
templateVersion: v2
|
||||
|
||||
@@ -1,19 +1,21 @@
|
||||
speakeasyVersion: 1.612.0
|
||||
speakeasyVersion: 1.617.1
|
||||
sources:
|
||||
OpenRouter Chat Completions API:
|
||||
sourceNamespace: open-router-chat-completions-api
|
||||
sourceRevisionDigest: sha256:30b19a8759608792fb4d27f6bf28d5982d7e2a8cf5b3faf34ba3507a62f9f106
|
||||
sourceBlobDigest: sha256:454f1b880a0882a70f78eacccb2c33e3d9d19134a0738b0e21487984a7bf2e63
|
||||
sourceRevisionDigest: sha256:a7746404e672bbb6dcd8354532d0c627d24522844c39d58011d4cd9c7e8ebd20
|
||||
sourceBlobDigest: sha256:67c793fef9c039a2c351fc6ba7ed9a6119059023fe3fbd1022645d7494c2c63c
|
||||
tags:
|
||||
- latest
|
||||
- speakeasy-sdk-regen-1755878373
|
||||
- speakeasy-sdk-regen-1757290070
|
||||
- 1.0.0
|
||||
targets:
|
||||
open-router:
|
||||
source: OpenRouter Chat Completions API
|
||||
sourceNamespace: open-router-chat-completions-api
|
||||
sourceRevisionDigest: sha256:30b19a8759608792fb4d27f6bf28d5982d7e2a8cf5b3faf34ba3507a62f9f106
|
||||
sourceBlobDigest: sha256:454f1b880a0882a70f78eacccb2c33e3d9d19134a0738b0e21487984a7bf2e63
|
||||
sourceRevisionDigest: sha256:a7746404e672bbb6dcd8354532d0c627d24522844c39d58011d4cd9c7e8ebd20
|
||||
sourceBlobDigest: sha256:67c793fef9c039a2c351fc6ba7ed9a6119059023fe3fbd1022645d7494c2c63c
|
||||
codeSamplesNamespace: open-router-chat-completions-api-python-code-samples
|
||||
codeSamplesRevisionDigest: sha256:fb054934c4d0de58a48ca8cdfde7b4210f71c425fb9dfad02e8824b8a1848774
|
||||
workflow:
|
||||
workflowVersion: 1.0.0
|
||||
speakeasyVersion: latest
|
||||
|
||||
+9
-1
@@ -6,4 +6,12 @@ Based on:
|
||||
- OpenAPI Doc
|
||||
- Speakeasy CLI 1.606.2 (2.687.1) https://github.com/speakeasy-api/speakeasy
|
||||
### Generated
|
||||
- [python v0.1.3] .
|
||||
- [python v0.1.3] .
|
||||
|
||||
## 2025-09-17 00:07:51
|
||||
### Changes
|
||||
Based on:
|
||||
- OpenAPI Doc
|
||||
- Speakeasy CLI 1.617.1 (2.701.8) https://github.com/speakeasy-api/speakeasy
|
||||
### Generated
|
||||
- [python v0.6.3] .
|
||||
+1
-2
@@ -1,6 +1,6 @@
|
||||
[project]
|
||||
name = "openrouter"
|
||||
version = "0.6.2"
|
||||
version = "0.6.3"
|
||||
description = "Python Client SDK Generated by Speakeasy."
|
||||
authors = [{ name = "Speakeasy" },]
|
||||
readme = "README-PYPI.md"
|
||||
@@ -30,7 +30,6 @@ build-backend = "setuptools.build_meta"
|
||||
|
||||
[tool.pytest.ini_options]
|
||||
asyncio_default_fixture_loop_scope = "function"
|
||||
asyncio_mode = "auto"
|
||||
pythonpath = ["src"]
|
||||
|
||||
[tool.mypy]
|
||||
|
||||
@@ -3,10 +3,10 @@
|
||||
import importlib.metadata
|
||||
|
||||
__title__: str = "openrouter"
|
||||
__version__: str = "0.6.2"
|
||||
__version__: str = "0.6.3"
|
||||
__openapi_doc_version__: str = "1.0.0"
|
||||
__gen_version__: str = "2.695.0"
|
||||
__user_agent__: str = "speakeasy-sdk/python 0.6.2 2.695.0 1.0.0 openrouter"
|
||||
__gen_version__: str = "2.701.8"
|
||||
__user_agent__: str = "speakeasy-sdk/python 0.6.3 2.701.8 1.0.0 openrouter"
|
||||
|
||||
try:
|
||||
if __package__ is not None:
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
|
||||
|
||||
from __future__ import annotations
|
||||
from dataclasses import dataclass, field
|
||||
import httpx
|
||||
from openrouter.errors import OpenRouterError
|
||||
from openrouter.models import chatcompletionerror as models_chatcompletionerror
|
||||
@@ -13,10 +14,11 @@ class ChatCompletionErrorData(BaseModel):
|
||||
r"""Error object structure"""
|
||||
|
||||
|
||||
@dataclass(frozen=True)
|
||||
class ChatCompletionError(OpenRouterError):
|
||||
r"""Chat completion error response"""
|
||||
|
||||
data: ChatCompletionErrorData
|
||||
data: ChatCompletionErrorData = field(hash=False)
|
||||
|
||||
def __init__(
|
||||
self,
|
||||
@@ -27,4 +29,4 @@ class ChatCompletionError(OpenRouterError):
|
||||
fallback = body or raw_response.text
|
||||
message = str(data.error.message) or fallback
|
||||
super().__init__(message, raw_response, body)
|
||||
self.data = data
|
||||
object.__setattr__(self, "data", data)
|
||||
|
||||
@@ -1,12 +1,16 @@
|
||||
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
|
||||
|
||||
from dataclasses import dataclass
|
||||
|
||||
|
||||
@dataclass(frozen=True)
|
||||
class NoResponseError(Exception):
|
||||
"""Error raised when no HTTP response is received from the server."""
|
||||
|
||||
message: str
|
||||
|
||||
def __init__(self, message: str = "No response received"):
|
||||
self.message = message
|
||||
object.__setattr__(self, "message", message)
|
||||
super().__init__(message)
|
||||
|
||||
def __str__(self):
|
||||
|
||||
@@ -2,12 +2,14 @@
|
||||
|
||||
import httpx
|
||||
from typing import Optional
|
||||
from dataclasses import dataclass
|
||||
|
||||
from openrouter.errors import OpenRouterError
|
||||
|
||||
MAX_MESSAGE_LEN = 10_000
|
||||
|
||||
|
||||
@dataclass(frozen=True)
|
||||
class OpenRouterDefaultError(OpenRouterError):
|
||||
"""The fallback error class if no more specific error class is matched."""
|
||||
|
||||
|
||||
@@ -2,25 +2,29 @@
|
||||
|
||||
import httpx
|
||||
from typing import Optional
|
||||
from dataclasses import dataclass, field
|
||||
|
||||
|
||||
@dataclass(frozen=True)
|
||||
class OpenRouterError(Exception):
|
||||
"""The base class for all HTTP error responses."""
|
||||
|
||||
message: str
|
||||
status_code: int
|
||||
body: str
|
||||
headers: httpx.Headers
|
||||
raw_response: httpx.Response
|
||||
headers: httpx.Headers = field(hash=False)
|
||||
raw_response: httpx.Response = field(hash=False)
|
||||
|
||||
def __init__(
|
||||
self, message: str, raw_response: httpx.Response, body: Optional[str] = None
|
||||
):
|
||||
self.message = message
|
||||
self.status_code = raw_response.status_code
|
||||
self.body = body if body is not None else raw_response.text
|
||||
self.headers = raw_response.headers
|
||||
self.raw_response = raw_response
|
||||
object.__setattr__(self, "message", message)
|
||||
object.__setattr__(self, "status_code", raw_response.status_code)
|
||||
object.__setattr__(
|
||||
self, "body", body if body is not None else raw_response.text
|
||||
)
|
||||
object.__setattr__(self, "headers", raw_response.headers)
|
||||
object.__setattr__(self, "raw_response", raw_response)
|
||||
|
||||
def __str__(self):
|
||||
return self.message
|
||||
|
||||
@@ -2,10 +2,12 @@
|
||||
|
||||
import httpx
|
||||
from typing import Optional
|
||||
from dataclasses import dataclass
|
||||
|
||||
from openrouter.errors import OpenRouterError
|
||||
|
||||
|
||||
@dataclass(frozen=True)
|
||||
class ResponseValidationError(OpenRouterError):
|
||||
"""Error raised when there is a type mismatch between the response data and the expected Pydantic model."""
|
||||
|
||||
|
||||
Reference in New Issue
Block a user