Skip to content

Commit 508d24f

Browse files
committed
Patch the generated code for backwards compat
We need to allow positional args for consistency.
1 parent e81f7ac commit 508d24f

File tree

5 files changed

+46
-1
lines changed

5 files changed

+46
-1
lines changed

.github/workflows/speakeasy_sdk_generation.yml

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,3 +24,11 @@ jobs:
2424
github_access_token: ${{ secrets.GITHUB_TOKEN }}
2525
pypi_token: ${{ secrets.PYPI_TOKEN }}
2626
speakeasy_api_key: ${{ secrets.SPEAKEASY_API_KEY }}
27+
# We don't need this unless we're modifying the generated code
28+
patch-custom-code:
29+
runs-on: ubuntu-latest
30+
needs: [generate]
31+
steps:
32+
- name: Patch in custom code after regenerating
33+
run: make patch-custom-code
34+

Makefile

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -67,6 +67,10 @@ client-generate-local:
6767
speakeasy overlay apply -s ./openapi.json -o ./overlay_client.yaml > ./openapi_client.json
6868
speakeasy generate sdk -s ./openapi_client.json -o ./ -l python
6969

70+
.PHONY: patch-custom-code
71+
patch-custom-code:
72+
git apply _custom_code.patch
73+
7074
.PHONY: publish
7175
publish:
7276
./scripts/publish.sh

_custom_code.patch

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
diff --git a/src/unstructured_client/general.py b/src/unstructured_client/general.py
2+
index 3b8af5f..05f0962 100644
3+
--- a/src/unstructured_client/general.py
4+
+++ b/src/unstructured_client/general.py
5+
@@ -11,8 +11,9 @@ class General(BaseSDK):
6+
7+
8+
def partition(
9+
- self, *,
10+
+ self,
11+
request: Union[operations.PartitionRequest, operations.PartitionRequestTypedDict],
12+
+ *,
13+
retries: OptionalNullable[utils.RetryConfig] = UNSET,
14+
server_url: Optional[str] = None,
15+
timeout_ms: Optional[int] = None,
16+
diff --git a/src/unstructured_client/models/operations/partition.py b/src/unstructured_client/models/operations/partition.py
17+
index 465bc3a..a537a13 100644
18+
--- a/src/unstructured_client/models/operations/partition.py
19+
+++ b/src/unstructured_client/models/operations/partition.py
20+
@@ -19,6 +19,9 @@ class PartitionRequestTypedDict(TypedDict):
21+
class PartitionRequest(BaseModel):
22+
partition_parameters: Annotated[shared_partition_parameters.PartitionParameters, FieldMetadata(request=RequestMetadata(media_type="multipart/form-data"))]
23+
unstructured_api_key: Annotated[OptionalNullable[str], pydantic.Field(alias="unstructured-api-key"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] = UNSET
24+
+
25+
+ def __init__(self, partition_parameters, **kwargs):
26+
+ BaseModel.__init__(self, partition_parameters=partition_parameters, **kwargs)
27+
28+
@model_serializer(mode="wrap")
29+
def serialize_model(self, handler):

src/unstructured_client/general.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,8 +11,9 @@ class General(BaseSDK):
1111

1212

1313
def partition(
14-
self, *,
14+
self,
1515
request: Union[operations.PartitionRequest, operations.PartitionRequestTypedDict],
16+
*,
1617
retries: OptionalNullable[utils.RetryConfig] = UNSET,
1718
server_url: Optional[str] = None,
1819
timeout_ms: Optional[int] = None,

src/unstructured_client/models/operations/partition.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,9 @@ class PartitionRequestTypedDict(TypedDict):
1919
class PartitionRequest(BaseModel):
2020
partition_parameters: Annotated[shared_partition_parameters.PartitionParameters, FieldMetadata(request=RequestMetadata(media_type="multipart/form-data"))]
2121
unstructured_api_key: Annotated[OptionalNullable[str], pydantic.Field(alias="unstructured-api-key"), FieldMetadata(header=HeaderMetadata(style="simple", explode=False))] = UNSET
22+
23+
def __init__(self, partition_parameters, **kwargs):
24+
BaseModel.__init__(self, partition_parameters=partition_parameters, **kwargs)
2225

2326
@model_serializer(mode="wrap")
2427
def serialize_model(self, handler):

0 commit comments

Comments
 (0)