diff --git a/.speakeasy/gen.lock b/.speakeasy/gen.lock index 5442da87..cb69c76d 100644 --- a/.speakeasy/gen.lock +++ b/.speakeasy/gen.lock @@ -1,24 +1,24 @@ lockVersion: 2.0.0 id: 833c6a67-4a4a-4ef1-ba24-165a29264e4a management: - docChecksum: 3a13ee635448973551a554dab5c911ac + docChecksum: 3d44114b274fa4f6b89d33846615b155 docVersion: 1.0.0 - speakeasyVersion: 1.806.0 - generationVersion: 2.956.1 - releaseVersion: 2.4.34 - configChecksum: b962a5536b01397f30d73237e93f72e4 + speakeasyVersion: 1.808.1 + generationVersion: 2.960.8 + releaseVersion: 2.4.35 + configChecksum: 375e5aabdca00852effda9c4f7500fa6 repoURL: https://github.com/gr4vy/gr4vy-python.git installationURL: https://github.com/gr4vy/gr4vy-python.git published: true persistentEdits: - generation_id: 9985989a-5847-40fc-8631-0421fb9c5b95 - pristine_commit_hash: 15bc822a1acd8a64fbab44baedf33366c9cfe857 - pristine_tree_hash: 8e7b6e3b48273ea745acafbf53d425c272bcc1a4 + generation_id: 19c14392-b470-4df7-a678-7e8215737777 + pristine_commit_hash: 7ba8d27b0d982c8edea828a3fda7d6f5e1822408 + pristine_tree_hash: 017f7d7e96388bd52d459e5a648ee5a793205fc6 features: python: additionalDependencies: 1.1.0 constsAndDefaults: 1.0.8 - core: 6.1.13 + core: 6.1.14 defaultEnabledRetries: 0.2.0 deprecations: 3.0.2 enumUnions: 0.1.1 @@ -41,7 +41,7 @@ features: retries: 3.1.2 sdkHooks: 1.3.0 serverIDs: 3.0.0 - unions: 3.1.15 + unions: 3.1.16 trackedFiles: .gitattributes: id: 24139dae6567 @@ -2921,8 +2921,8 @@ trackedFiles: pristine_git_object: 3e38f1a929f7d6b1d6de74604aa87e3d8f010544 pyproject.toml: id: 5d07e7d72637 - last_write_checksum: sha1:bc18425f2645aa55fbfc7dd5f5c78e5a3ac93f88 - pristine_git_object: 397bc2927334c4fcd7000dab0ecd4407aa6a459a + last_write_checksum: sha1:9202090ea08ef2d6e466385c54ade863f73dd99f + pristine_git_object: 828f18379e7f13cc035b8d55009176b8d50492f8 scripts/prepare_readme.py: id: e0c5957a6035 last_write_checksum: sha1:63a92abbd1de3323613f0d4c1ae4412076577710 @@ -2949,8 +2949,8 @@ trackedFiles: pristine_git_object: f8ef109bb6a9dbe37d0a7092606176a0738986fd src/gr4vy/_version.py: id: 1b5ad1da47aa - last_write_checksum: sha1:276369597629bedda9cd2d545e1af85d370be9c0 - pristine_git_object: 307c9710b0196773f128feb14f92c9d6c2f3e4d2 + last_write_checksum: sha1:6ab4d5eeb66ae9ad5a4aa13fe79461b86e6dae56 + pristine_git_object: 698089b7ea950813c18f92a7635712a3fb778374 src/gr4vy/account_updater.py: id: 6dc8f39e2fb9 last_write_checksum: sha1:fabc79a59dd06fb927ce2d834fbafbcad5836a4b @@ -5153,8 +5153,8 @@ trackedFiles: pristine_git_object: e115709b0c3b707de93b00ecf707f85fb1abf1d1 src/gr4vy/utils/annotations.py: id: 4e6f3048ab03 - last_write_checksum: sha1:a4824ad65f730303e4e1e3ec1febf87b4eb46dbc - pristine_git_object: 12e0aa4f1151bb52474cc02e88397329b90703f6 + last_write_checksum: sha1:2dd01678125b08184a96e28bb4f3692381bf04cc + pristine_git_object: 3af322f22ea3253fd1b6cdbb889af11c8b20dc3f src/gr4vy/utils/datetimes.py: id: f636feaea32c last_write_checksum: sha1:8d08dfebf00458efa19e0c19455eddcc9f14b8ca @@ -5181,8 +5181,8 @@ trackedFiles: pristine_git_object: 37864cbbbc40d1a47112bbfdd3ba79568fc8818a src/gr4vy/utils/logger.py: id: 03be6c543a80 - last_write_checksum: sha1:68da2ad9a90697afbddb36cabb45100628e4566e - pristine_git_object: 3decb45d9a7fdb5df70ea7cd7ccc24b822676a2f + last_write_checksum: sha1:8b3f41721cd29ae61a315e35de0701ea64905d19 + pristine_git_object: d32c48bed65f1f972392884f5823540d6a6ddf1a src/gr4vy/utils/metadata.py: id: 3cd24adb750a last_write_checksum: sha1:e703e5cbb5255144aacf86898d1420529afaaff8 @@ -9529,9 +9529,6 @@ examples: application/json: {"type": "error", "code": "gateway_timeout", "status": 504, "message": "Request could not be processed"} examplesVersion: 1.0.2 generatedTests: {} -releaseNotes: | - ## Python SDK Changes: - * `gr4vy.payment_options.list()`: `response.items[]` **Changed** (Breaking ⚠️) generatedFiles: - .gitattributes - .vscode/settings.json diff --git a/.speakeasy/gen.yaml b/.speakeasy/gen.yaml index 5e76df81..d8244a35 100644 --- a/.speakeasy/gen.yaml +++ b/.speakeasy/gen.yaml @@ -30,7 +30,7 @@ generation: generateNewTests: false skipResponseBodyAssertions: false python: - version: 2.4.34 + version: 2.4.35 additionalDependencies: dev: freezegun: ^1.5.1 diff --git a/.speakeasy/workflow.lock b/.speakeasy/workflow.lock index b51ebb0c..eb1b61ed 100644 --- a/.speakeasy/workflow.lock +++ b/.speakeasy/workflow.lock @@ -1,9 +1,9 @@ -speakeasyVersion: 1.806.0 +speakeasyVersion: 1.808.1 sources: openapi: sourceNamespace: openapi - sourceRevisionDigest: sha256:46960229a6445b684c148d058cc21349a23d3554984f569534170397e4e18707 - sourceBlobDigest: sha256:9cbc4cbf04a73dabfde466549871e7ea8f3948b622ba606cb4468e495dea71a5 + sourceRevisionDigest: sha256:9ae687ba371bd9b4d6a858aa32a537f4e823860370e6489e910f2e2b0241719f + sourceBlobDigest: sha256:817dc730700f9bb3596743b462456d5d5dae3b2af0a1aecc823a6ee05ec4a742 tags: - latest - 1.0.0 @@ -11,10 +11,10 @@ targets: python: source: openapi sourceNamespace: openapi - sourceRevisionDigest: sha256:46960229a6445b684c148d058cc21349a23d3554984f569534170397e4e18707 - sourceBlobDigest: sha256:9cbc4cbf04a73dabfde466549871e7ea8f3948b622ba606cb4468e495dea71a5 + sourceRevisionDigest: sha256:9ae687ba371bd9b4d6a858aa32a537f4e823860370e6489e910f2e2b0241719f + sourceBlobDigest: sha256:817dc730700f9bb3596743b462456d5d5dae3b2af0a1aecc823a6ee05ec4a742 codeSamplesNamespace: openapi-python-code-samples - codeSamplesRevisionDigest: sha256:d78920cab87d53298fd8fa13c70dc28f45ea003adc5d1f57a3c7f54301edbd9c + codeSamplesRevisionDigest: sha256:a1d8a3f4000ca9ca4299560943c3ae98c17829ff2f8a710cbaf61f6ac5b0163c workflow: workflowVersion: 1.0.0 speakeasyVersion: latest diff --git a/README.md b/README.md index c422c7d0..eb75d04e 100644 --- a/README.md +++ b/README.md @@ -1000,7 +1000,7 @@ logging.basicConfig(level=logging.DEBUG) s = Gr4vy(debug_logger=logging.getLogger("gr4vy")) ``` -You can also enable a default debug logger by setting an environment variable `GR4VY_DEBUG` to true. +You can also enable a default debug logger by setting an environment variable `GR4VY_DEBUG` to `true`, `1`, `yes` or `on` (case-insensitive). Any other value leaves it off. diff --git a/RELEASES.md b/RELEASES.md index 6a2b53f1..a40cd970 100644 --- a/RELEASES.md +++ b/RELEASES.md @@ -2808,4 +2808,14 @@ Based on: ### Generated - [python v2.4.34] . ### Releases -- [PyPI v2.4.34] https://pypi.org/project/gr4vy/2.4.34 - . \ No newline at end of file +- [PyPI v2.4.34] https://pypi.org/project/gr4vy/2.4.34 - . + +## 2026-11-11 09:10:58 +### Changes +Based on: +- OpenAPI Doc +- Speakeasy CLI 1.808.1 (2.960.8) https://github.com/speakeasy-api/speakeasy +### Generated +- [python v2.4.35] . +### Releases +- [PyPI v2.4.35] https://pypi.org/project/gr4vy/2.4.35 - . \ No newline at end of file diff --git a/pyproject.toml b/pyproject.toml index 397bc292..828f1837 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,7 +1,7 @@ [project] name = "gr4vy" -version = "2.4.34" +version = "2.4.35" description = "Python Client SDK Generated by Speakeasy." authors = [{ name = "Gr4vy" },] readme = "README-PYPI.md" diff --git a/src/gr4vy/_version.py b/src/gr4vy/_version.py index 307c9710..698089b7 100644 --- a/src/gr4vy/_version.py +++ b/src/gr4vy/_version.py @@ -3,10 +3,10 @@ import importlib.metadata __title__: str = "gr4vy" -__version__: str = "2.4.34" +__version__: str = "2.4.35" __openapi_doc_version__: str = "1.0.0" -__gen_version__: str = "2.956.1" -__user_agent__: str = "speakeasy-sdk/python 2.4.34 2.956.1 1.0.0 gr4vy" +__gen_version__: str = "2.960.8" +__user_agent__: str = "speakeasy-sdk/python 2.4.35 2.960.8 1.0.0 gr4vy" try: if __package__ is not None: diff --git a/src/gr4vy/utils/annotations.py b/src/gr4vy/utils/annotations.py index 12e0aa4f..3af322f2 100644 --- a/src/gr4vy/utils/annotations.py +++ b/src/gr4vy/utils/annotations.py @@ -21,24 +21,24 @@ def get_discriminator(model: Any, fieldname: str, key: str) -> str: """ upper_fieldname = fieldname.upper() + def to_discriminator(value: Any) -> str: + """Convert a discriminator value to a string, using the value of enum members.""" + if isinstance(value, Enum): + return f"{value.value}" + return f"{value}" + def get_field_discriminator(field: Any) -> Optional[str]: """Search for the discriminator attribute in a given field.""" if isinstance(field, dict): if key in field: - return f"{field[key]}" + return to_discriminator(field[key]) if hasattr(field, fieldname): - attr = getattr(field, fieldname) - if isinstance(attr, Enum): - return f"{attr.value}" - return f"{attr}" + return to_discriminator(getattr(field, fieldname)) if hasattr(field, upper_fieldname): - attr = getattr(field, upper_fieldname) - if isinstance(attr, Enum): - return f"{attr.value}" - return f"{attr}" + return to_discriminator(getattr(field, upper_fieldname)) return None diff --git a/src/gr4vy/utils/logger.py b/src/gr4vy/utils/logger.py index 3decb45d..d32c48be 100644 --- a/src/gr4vy/utils/logger.py +++ b/src/gr4vy/utils/logger.py @@ -21,7 +21,7 @@ def get_body_content(req: httpx.Request) -> str: def get_default_logger() -> Logger: - if os.getenv("GR4VY_DEBUG"): + if os.getenv("GR4VY_DEBUG", "").strip().lower() in ("true", "1", "yes", "on"): logging.basicConfig(level=logging.DEBUG) return logging.getLogger("gr4vy") return NoOpLogger()