diff --git a/generators/python/sdk/versions.yml b/generators/python/sdk/versions.yml index c4b4800fdcf..862b4db122a 100644 --- a/generators/python/sdk/versions.yml +++ b/generators/python/sdk/versions.yml @@ -1,4 +1,11 @@ # For unreleased changes, use unreleased.yml +- version: 4.3.2 + irVersion: 53 + changelogEntry: + - type: fix + summary: | + The generator will now correctly default to the configured global `default_bytes_stream_chunk_size` when the `request_options` parameter is not provided. + - version: 4.3.1 irVersion: 53 changelogEntry: diff --git a/generators/python/src/fern_python/generators/sdk/client_generator/endpoint_response_code_writer.py b/generators/python/src/fern_python/generators/sdk/client_generator/endpoint_response_code_writer.py index 2578fe31646..618498bf77a 100644 --- a/generators/python/src/fern_python/generators/sdk/client_generator/endpoint_response_code_writer.py +++ b/generators/python/src/fern_python/generators/sdk/client_generator/endpoint_response_code_writer.py @@ -239,9 +239,10 @@ def _handle_success_text( def _handle_success_file_download(self, *, writer: AST.NodeWriter) -> None: maybe_chunk_size_default = self._context.custom_config.default_bytes_stream_chunk_size + defaulted_chunk_size_default = maybe_chunk_size_default if maybe_chunk_size_default is not None else "None" chunk_size_variable = "_chunk_size" writer.write_line( - f'{chunk_size_variable} = request_options.get("chunk_size", {maybe_chunk_size_default if maybe_chunk_size_default is not None else "None"}) if request_options is not None else None' + f'{chunk_size_variable} = request_options.get("chunk_size", {defaulted_chunk_size_default}) if request_options is not None else {defaulted_chunk_size_default}' ) if self._is_async: writer.write("async ") diff --git a/seed/python-sdk/file-download/default-chunk-size/src/seed/service/client.py b/seed/python-sdk/file-download/default-chunk-size/src/seed/service/client.py index 5828e271585..6240d818cca 100644 --- a/seed/python-sdk/file-download/default-chunk-size/src/seed/service/client.py +++ b/seed/python-sdk/file-download/default-chunk-size/src/seed/service/client.py @@ -29,7 +29,7 @@ def download_file(self, *, request_options: typing.Optional[RequestOptions] = No ) as _response: try: if 200 <= _response.status_code < 300: - _chunk_size = request_options.get("chunk_size", 1024) if request_options is not None else None + _chunk_size = request_options.get("chunk_size", 1024) if request_options is not None else 1024 for _chunk in _response.iter_bytes(chunk_size=_chunk_size): yield _chunk return @@ -63,7 +63,7 @@ async def download_file( ) as _response: try: if 200 <= _response.status_code < 300: - _chunk_size = request_options.get("chunk_size", 1024) if request_options is not None else None + _chunk_size = request_options.get("chunk_size", 1024) if request_options is not None else 1024 async for _chunk in _response.aiter_bytes(chunk_size=_chunk_size): yield _chunk return