Skip to content

Commit

Permalink
fix: python retry wrapper leverages the right types (#3204)
Browse files Browse the repository at this point in the history
  • Loading branch information
armandobelardo authored Mar 18, 2024
1 parent 2124c66 commit 331279b
Show file tree
Hide file tree
Showing 100 changed files with 446 additions and 197 deletions.
11 changes: 8 additions & 3 deletions generators/python/core_utilities/sdk/http_client.py
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@
import re
import time
import typing
from contextlib import asynccontextmanager, contextmanager
from functools import wraps
from random import random

Expand Down Expand Up @@ -96,8 +97,10 @@ def request(
return response

@wraps(httpx.Client.stream)
@contextmanager
def stream(self, *args: typing.Any, max_retries: int = 0, retries: int = 0, **kwargs: typing.Any) -> typing.Any:
return self.httpx_client.stream(*args, **kwargs)
with self.httpx_client.stream(*args, **kwargs) as stream:
yield stream


class AsyncHttpClient:
Expand All @@ -116,8 +119,10 @@ async def request(
return await self.request(max_retries=max_retries, retries=retries + 1, *args, **kwargs)
return response

@wraps(httpx.AsyncClient.request)
@wraps(httpx.AsyncClient.stream)
@asynccontextmanager
async def stream(
self, *args: typing.Any, max_retries: int = 0, retries: int = 0, **kwargs: typing.Any
) -> typing.Any:
return self.httpx_client.stream(*args, **kwargs)
async with self.httpx_client.stream(*args, **kwargs) as stream:
yield stream
4 changes: 4 additions & 0 deletions generators/python/sdk/CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,10 @@ All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).

## [0.12.1] - 2024-03-18

- Fix: Fix the returned type and value contained within the retrying wrapper for the HTTPX client (http_client.py).

## [0.12.1] - 2024-03-14

- Improves example generation and snippets for union types, as well as multi-url environments.
Expand Down
2 changes: 1 addition & 1 deletion generators/python/sdk/VERSION
Original file line number Diff line number Diff line change
@@ -1 +1 @@
0.12.2-rc1
0.12.2
11 changes: 8 additions & 3 deletions seed/python-sdk/alias/src/seed/core/http_client.py

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion seed/python-sdk/alias/tests/utilities.py

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

11 changes: 8 additions & 3 deletions seed/python-sdk/api-wide-base-path/src/seed/core/http_client.py

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion seed/python-sdk/api-wide-base-path/tests/utilities.py

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

11 changes: 8 additions & 3 deletions seed/python-sdk/audiences/src/seed/core/http_client.py

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion seed/python-sdk/audiences/tests/utilities.py

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

11 changes: 8 additions & 3 deletions seed/python-sdk/basic-auth/src/seed/core/http_client.py

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion seed/python-sdk/basic-auth/tests/utilities.py

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

11 changes: 8 additions & 3 deletions seed/python-sdk/bytes/src/seed/core/http_client.py

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion seed/python-sdk/bytes/tests/utilities.py

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

11 changes: 8 additions & 3 deletions seed/python-sdk/circular-references/src/seed/core/http_client.py

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion seed/python-sdk/circular-references/tests/utilities.py

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Loading

0 comments on commit 331279b

Please sign in to comment.