spitch 1.5.0__py3-none-any.whl → 1.6.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of spitch might be problematic. Click here for more details.

spitch/_base_client.py CHANGED
@@ -143,6 +143,12 @@ class PageInfo:
143
143
  self.url = url
144
144
  self.params = params
145
145
 
146
+ @override
147
+ def __repr__(self) -> str:
148
+ if self.url:
149
+ return f"{self.__class__.__name__}(url={self.url})"
150
+ return f"{self.__class__.__name__}(params={self.params})"
151
+
146
152
 
147
153
  class BasePage(GenericModel, Generic[_T]):
148
154
  """
@@ -689,7 +695,8 @@ class BaseClient(Generic[_HttpxClientT, _DefaultStreamT]):
689
695
  if retry_after is not None and 0 < retry_after <= 60:
690
696
  return retry_after
691
697
 
692
- nb_retries = max_retries - remaining_retries
698
+ # Also cap retry count to 1000 to avoid any potential overflows with `pow`
699
+ nb_retries = min(max_retries - remaining_retries, 1000)
693
700
 
694
701
  # Apply exponential backoff, but not more than the max.
695
702
  sleep_seconds = min(INITIAL_RETRY_DELAY * pow(2.0, nb_retries), MAX_RETRY_DELAY)
spitch/_version.py CHANGED
@@ -1,4 +1,4 @@
1
1
  # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
2
 
3
3
  __title__ = "spitch"
4
- __version__ = "1.5.0" # x-release-please-version
4
+ __version__ = "1.6.0" # x-release-please-version
@@ -61,7 +61,7 @@ class SpeechResource(SyncAPIResource):
61
61
  *,
62
62
  language: Literal["yo", "en", "ha", "ig"],
63
63
  text: str,
64
- voice: Literal["sade", "segun", "femi", "funmi"] | NotGiven = NOT_GIVEN,
64
+ voice: Literal["sade", "segun", "femi", "funmi"],
65
65
  # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
66
66
  # The extra values given here take precedence over values defined on the client or passed to this method.
67
67
  extra_headers: Headers | None = None,
@@ -171,7 +171,7 @@ class AsyncSpeechResource(AsyncAPIResource):
171
171
  *,
172
172
  language: Literal["yo", "en", "ha", "ig"],
173
173
  text: str,
174
- voice: Literal["sade", "segun", "femi", "funmi"] | NotGiven = NOT_GIVEN,
174
+ voice: Literal["sade", "segun", "femi", "funmi"],
175
175
  # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
176
176
  # The extra values given here take precedence over values defined on the client or passed to this method.
177
177
  extra_headers: Headers | None = None,
@@ -12,4 +12,4 @@ class SpeechGenerateParams(TypedDict, total=False):
12
12
 
13
13
  text: Required[str]
14
14
 
15
- voice: Literal["sade", "segun", "femi", "funmi"]
15
+ voice: Required[Literal["sade", "segun", "femi", "funmi"]]
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: spitch
3
- Version: 1.5.0
3
+ Version: 1.6.0
4
4
  Summary: The official Python library for the spitch API
5
5
  Project-URL: Homepage, https://github.com/spi-tch/spitch-python
6
6
  Project-URL: Repository, https://github.com/spi-tch/spitch-python
@@ -69,6 +69,7 @@ client = Spitch(
69
69
  response = client.speech.generate(
70
70
  language="yo",
71
71
  text="text",
72
+ voice="sade",
72
73
  )
73
74
  ```
74
75
 
@@ -96,6 +97,7 @@ async def main() -> None:
96
97
  response = await client.speech.generate(
97
98
  language="yo",
98
99
  text="text",
100
+ voice="sade",
99
101
  )
100
102
 
101
103
 
@@ -132,6 +134,7 @@ try:
132
134
  client.speech.generate(
133
135
  language="yo",
134
136
  text="text",
137
+ voice="sade",
135
138
  )
136
139
  except spitch.APIConnectionError as e:
137
140
  print("The server could not be reached")
@@ -178,6 +181,7 @@ client = Spitch(
178
181
  client.with_options(max_retries=5).speech.generate(
179
182
  language="yo",
180
183
  text="text",
184
+ voice="sade",
181
185
  )
182
186
  ```
183
187
 
@@ -204,6 +208,7 @@ client = Spitch(
204
208
  client.with_options(timeout=5.0).speech.generate(
205
209
  language="yo",
206
210
  text="text",
211
+ voice="sade",
207
212
  )
208
213
  ```
209
214
 
@@ -246,6 +251,7 @@ client = Spitch()
246
251
  response = client.speech.with_raw_response.generate(
247
252
  language="yo",
248
253
  text="text",
254
+ voice="sade",
249
255
  )
250
256
  print(response.headers.get('X-My-Header'))
251
257
 
@@ -267,6 +273,7 @@ To stream the response body, use `.with_streaming_response` instead, which requi
267
273
  with client.speech.with_streaming_response.generate(
268
274
  language="yo",
269
275
  text="text",
276
+ voice="sade",
270
277
  ) as response:
271
278
  print(response.headers.get("X-My-Header"))
272
279
 
@@ -1,5 +1,5 @@
1
1
  spitch/__init__.py,sha256=mBQhmNu88PeR66Zmw9atnzuU8f1mpSPcW7vn-EeSikE,2399
2
- spitch/_base_client.py,sha256=d3W2i2JM-7mgoKHlcCW3uKkXuouo3hNWldLEQTmOrW8,67549
2
+ spitch/_base_client.py,sha256=PLtLHoOh2kn4Bpm-5tYKIUrVqbuD0UWr1BKuhnGwUXU,67840
3
3
  spitch/_client.py,sha256=wnexAmnaiafFtJM7PC9LyThw3aIkI6eLn7ZReCL2iLY,15446
4
4
  spitch/_compat.py,sha256=9CWnEaYK0kot7aSNW-m2W9xZb5giIdvKN9sWxvBbbSA,6488
5
5
  spitch/_constants.py,sha256=JE8kyZa2Q4NK_i4fO--8siEYTzeHnT0fYbOFDgDP4uk,464
@@ -11,7 +11,7 @@ spitch/_resource.py,sha256=TLFPcOOmtxZOQLh3XCNPB_BdrQpp0MIYoKoH52aRAu8,1100
11
11
  spitch/_response.py,sha256=aN6swtguiZ7CC_hWFrwoUa53FgSbjRfZXxYHvfDNGeo,28609
12
12
  spitch/_streaming.py,sha256=5SpId2EIfF8Ee8UUYmJxqgHUGP1ZdHCUHhHCdNJREFA,10100
13
13
  spitch/_types.py,sha256=dsJyGWdBXaYJaRBqn2V3iRsfpWw71rFaSxdSM8sPQYY,6103
14
- spitch/_version.py,sha256=UhWuVIHyisnkvhD1Rhnd0BfNX7mhovssT4wjb8pFMBM,158
14
+ spitch/_version.py,sha256=du9OwxylX7WRG8VPP97XEsjL0NX2FF6uLkflVNNHIQg,158
15
15
  spitch/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
16
16
  spitch/_utils/__init__.py,sha256=Uzq1-FIih_VUjzdNVWXks0sdC39KBKLMrZoz-_JOjJ4,1988
17
17
  spitch/_utils/_logs.py,sha256=ApRyYK_WgZfEr_ygBUBXWMlTgeMr2tdNOGlH8jE4oJc,774
@@ -24,13 +24,13 @@ spitch/_utils/_typing.py,sha256=tFbktdpdHCQliwzGsWysgn0P5H0JRdagkZdb_LegGkY,3838
24
24
  spitch/_utils/_utils.py,sha256=tYrr7IX-5NMwsVKbNggbzOM84uNw7XnAe06e2Ln8Or0,11472
25
25
  spitch/lib/.keep,sha256=wuNrz-5SXo3jJaJOJgz4vFHM41YH_g20F5cRQo0vLes,224
26
26
  spitch/resources/__init__.py,sha256=KT6rAvIlWHQk9QdM4Jp8ABziKILaBrrtiO7LCB5Wa5E,976
27
- spitch/resources/speech.py,sha256=VJxU4pP1DObPB9gP5IkMPLN4IP6jGT5fbUJXlWAT23w,11388
27
+ spitch/resources/speech.py,sha256=JUMxsdL88Sr8FBWZ7yltYV5KPX7fN7N_UW4dH5LtSzw,11342
28
28
  spitch/resources/text.py,sha256=xy7N1q5ioXVMtmcW6iOE8j8n9j4lvnpvO4jJ9FMZmsU,6071
29
29
  spitch/types/__init__.py,sha256=4aa9CgcCmGRqZb4k9F3005Q4Ok-zjiiqw5k3BXIQ3MY,364
30
- spitch/types/speech_generate_params.py,sha256=xJPVX2uBsrLBMX4gQF9ydHG2PcIgau5PbBTO1eFccZk,407
30
+ spitch/types/speech_generate_params.py,sha256=cZjZhlP9CIuwRQEnsAiBCurPEIlLgVBTYxx98hQViHg,417
31
31
  spitch/types/speech_transcibe_params.py,sha256=WvwBsSctqJDXOFJNYyjfijwCnAdJCPkJobESfmLy3aI,448
32
32
  spitch/types/text_tone_mark_params.py,sha256=63P5VElxanYkDP1ZLEuQt97JSgVpMCaAo4WRWLDvhlY,349
33
- spitch-1.5.0.dist-info/METADATA,sha256=KqwkbhgZgI49d50F-Mq4wzml_cBBKsqPw0uzNhRIePE,12511
34
- spitch-1.5.0.dist-info/WHEEL,sha256=1yFddiXMmvYK7QYTqtRNtX66WJ0Mz8PYEiEUoOUUxRY,87
35
- spitch-1.5.0.dist-info/licenses/LICENSE,sha256=529F8Amq5MfoIm33JY544oweKES9vw9_xS1CNx-ztPI,11336
36
- spitch-1.5.0.dist-info/RECORD,,
33
+ spitch-1.6.0.dist-info/METADATA,sha256=MSdm2bE2YDyuALkrzx08mdSgPKJgmgr03ZsXr7eBT_4,12645
34
+ spitch-1.6.0.dist-info/WHEEL,sha256=1yFddiXMmvYK7QYTqtRNtX66WJ0Mz8PYEiEUoOUUxRY,87
35
+ spitch-1.6.0.dist-info/licenses/LICENSE,sha256=529F8Amq5MfoIm33JY544oweKES9vw9_xS1CNx-ztPI,11336
36
+ spitch-1.6.0.dist-info/RECORD,,
File without changes