prelude-python-sdk 0.1.0a7__tar.gz → 0.1.0b1__tar.gz

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.
Files changed (81) hide show
  1. prelude_python_sdk-0.1.0b1/.release-please-manifest.json +3 -0
  2. {prelude_python_sdk-0.1.0a7 → prelude_python_sdk-0.1.0b1}/CHANGELOG.md +18 -0
  3. {prelude_python_sdk-0.1.0a7 → prelude_python_sdk-0.1.0b1}/PKG-INFO +1 -1
  4. {prelude_python_sdk-0.1.0a7 → prelude_python_sdk-0.1.0b1}/mypy.ini +1 -1
  5. {prelude_python_sdk-0.1.0a7 → prelude_python_sdk-0.1.0b1}/pyproject.toml +1 -1
  6. {prelude_python_sdk-0.1.0a7 → prelude_python_sdk-0.1.0b1}/requirements-dev.lock +2 -2
  7. {prelude_python_sdk-0.1.0a7 → prelude_python_sdk-0.1.0b1}/src/prelude_python_sdk/_models.py +4 -4
  8. {prelude_python_sdk-0.1.0a7 → prelude_python_sdk-0.1.0b1}/src/prelude_python_sdk/_version.py +1 -1
  9. {prelude_python_sdk-0.1.0a7 → prelude_python_sdk-0.1.0b1}/src/prelude_python_sdk/resources/verification.py +8 -0
  10. {prelude_python_sdk-0.1.0a7 → prelude_python_sdk-0.1.0b1}/src/prelude_python_sdk/types/verification_create_params.py +3 -0
  11. {prelude_python_sdk-0.1.0a7 → prelude_python_sdk-0.1.0b1}/tests/api_resources/test_verification.py +2 -0
  12. {prelude_python_sdk-0.1.0a7 → prelude_python_sdk-0.1.0b1}/tests/test_models.py +10 -0
  13. prelude_python_sdk-0.1.0a7/.release-please-manifest.json +0 -3
  14. {prelude_python_sdk-0.1.0a7 → prelude_python_sdk-0.1.0b1}/.gitignore +0 -0
  15. {prelude_python_sdk-0.1.0a7 → prelude_python_sdk-0.1.0b1}/CONTRIBUTING.md +0 -0
  16. {prelude_python_sdk-0.1.0a7 → prelude_python_sdk-0.1.0b1}/LICENSE +0 -0
  17. {prelude_python_sdk-0.1.0a7 → prelude_python_sdk-0.1.0b1}/README.md +0 -0
  18. {prelude_python_sdk-0.1.0a7 → prelude_python_sdk-0.1.0b1}/SECURITY.md +0 -0
  19. {prelude_python_sdk-0.1.0a7 → prelude_python_sdk-0.1.0b1}/api.md +0 -0
  20. {prelude_python_sdk-0.1.0a7 → prelude_python_sdk-0.1.0b1}/bin/check-release-environment +0 -0
  21. {prelude_python_sdk-0.1.0a7 → prelude_python_sdk-0.1.0b1}/bin/publish-pypi +0 -0
  22. {prelude_python_sdk-0.1.0a7 → prelude_python_sdk-0.1.0b1}/examples/.keep +0 -0
  23. {prelude_python_sdk-0.1.0a7 → prelude_python_sdk-0.1.0b1}/noxfile.py +0 -0
  24. {prelude_python_sdk-0.1.0a7 → prelude_python_sdk-0.1.0b1}/release-please-config.json +0 -0
  25. {prelude_python_sdk-0.1.0a7 → prelude_python_sdk-0.1.0b1}/requirements.lock +0 -0
  26. {prelude_python_sdk-0.1.0a7 → prelude_python_sdk-0.1.0b1}/src/prelude/lib/.keep +0 -0
  27. {prelude_python_sdk-0.1.0a7 → prelude_python_sdk-0.1.0b1}/src/prelude_python_sdk/__init__.py +0 -0
  28. {prelude_python_sdk-0.1.0a7 → prelude_python_sdk-0.1.0b1}/src/prelude_python_sdk/_base_client.py +0 -0
  29. {prelude_python_sdk-0.1.0a7 → prelude_python_sdk-0.1.0b1}/src/prelude_python_sdk/_client.py +0 -0
  30. {prelude_python_sdk-0.1.0a7 → prelude_python_sdk-0.1.0b1}/src/prelude_python_sdk/_compat.py +0 -0
  31. {prelude_python_sdk-0.1.0a7 → prelude_python_sdk-0.1.0b1}/src/prelude_python_sdk/_constants.py +0 -0
  32. {prelude_python_sdk-0.1.0a7 → prelude_python_sdk-0.1.0b1}/src/prelude_python_sdk/_exceptions.py +0 -0
  33. {prelude_python_sdk-0.1.0a7 → prelude_python_sdk-0.1.0b1}/src/prelude_python_sdk/_files.py +0 -0
  34. {prelude_python_sdk-0.1.0a7 → prelude_python_sdk-0.1.0b1}/src/prelude_python_sdk/_qs.py +0 -0
  35. {prelude_python_sdk-0.1.0a7 → prelude_python_sdk-0.1.0b1}/src/prelude_python_sdk/_resource.py +0 -0
  36. {prelude_python_sdk-0.1.0a7 → prelude_python_sdk-0.1.0b1}/src/prelude_python_sdk/_response.py +0 -0
  37. {prelude_python_sdk-0.1.0a7 → prelude_python_sdk-0.1.0b1}/src/prelude_python_sdk/_streaming.py +0 -0
  38. {prelude_python_sdk-0.1.0a7 → prelude_python_sdk-0.1.0b1}/src/prelude_python_sdk/_types.py +0 -0
  39. {prelude_python_sdk-0.1.0a7 → prelude_python_sdk-0.1.0b1}/src/prelude_python_sdk/_utils/__init__.py +0 -0
  40. {prelude_python_sdk-0.1.0a7 → prelude_python_sdk-0.1.0b1}/src/prelude_python_sdk/_utils/_logs.py +0 -0
  41. {prelude_python_sdk-0.1.0a7 → prelude_python_sdk-0.1.0b1}/src/prelude_python_sdk/_utils/_proxy.py +0 -0
  42. {prelude_python_sdk-0.1.0a7 → prelude_python_sdk-0.1.0b1}/src/prelude_python_sdk/_utils/_reflection.py +0 -0
  43. {prelude_python_sdk-0.1.0a7 → prelude_python_sdk-0.1.0b1}/src/prelude_python_sdk/_utils/_streams.py +0 -0
  44. {prelude_python_sdk-0.1.0a7 → prelude_python_sdk-0.1.0b1}/src/prelude_python_sdk/_utils/_sync.py +0 -0
  45. {prelude_python_sdk-0.1.0a7 → prelude_python_sdk-0.1.0b1}/src/prelude_python_sdk/_utils/_transform.py +0 -0
  46. {prelude_python_sdk-0.1.0a7 → prelude_python_sdk-0.1.0b1}/src/prelude_python_sdk/_utils/_typing.py +0 -0
  47. {prelude_python_sdk-0.1.0a7 → prelude_python_sdk-0.1.0b1}/src/prelude_python_sdk/_utils/_utils.py +0 -0
  48. {prelude_python_sdk-0.1.0a7 → prelude_python_sdk-0.1.0b1}/src/prelude_python_sdk/lib/.keep +0 -0
  49. {prelude_python_sdk-0.1.0a7 → prelude_python_sdk-0.1.0b1}/src/prelude_python_sdk/py.typed +0 -0
  50. {prelude_python_sdk-0.1.0a7 → prelude_python_sdk-0.1.0b1}/src/prelude_python_sdk/resources/__init__.py +0 -0
  51. {prelude_python_sdk-0.1.0a7 → prelude_python_sdk-0.1.0b1}/src/prelude_python_sdk/resources/transactional.py +0 -0
  52. {prelude_python_sdk-0.1.0a7 → prelude_python_sdk-0.1.0b1}/src/prelude_python_sdk/resources/watch.py +0 -0
  53. {prelude_python_sdk-0.1.0a7 → prelude_python_sdk-0.1.0b1}/src/prelude_python_sdk/types/__init__.py +0 -0
  54. {prelude_python_sdk-0.1.0a7 → prelude_python_sdk-0.1.0b1}/src/prelude_python_sdk/types/transactional_send_params.py +0 -0
  55. {prelude_python_sdk-0.1.0a7 → prelude_python_sdk-0.1.0b1}/src/prelude_python_sdk/types/transactional_send_response.py +0 -0
  56. {prelude_python_sdk-0.1.0a7 → prelude_python_sdk-0.1.0b1}/src/prelude_python_sdk/types/verification_check_params.py +0 -0
  57. {prelude_python_sdk-0.1.0a7 → prelude_python_sdk-0.1.0b1}/src/prelude_python_sdk/types/verification_check_response.py +0 -0
  58. {prelude_python_sdk-0.1.0a7 → prelude_python_sdk-0.1.0b1}/src/prelude_python_sdk/types/verification_create_response.py +0 -0
  59. {prelude_python_sdk-0.1.0a7 → prelude_python_sdk-0.1.0b1}/src/prelude_python_sdk/types/watch_feed_back_params.py +0 -0
  60. {prelude_python_sdk-0.1.0a7 → prelude_python_sdk-0.1.0b1}/src/prelude_python_sdk/types/watch_feed_back_response.py +0 -0
  61. {prelude_python_sdk-0.1.0a7 → prelude_python_sdk-0.1.0b1}/src/prelude_python_sdk/types/watch_predict_params.py +0 -0
  62. {prelude_python_sdk-0.1.0a7 → prelude_python_sdk-0.1.0b1}/src/prelude_python_sdk/types/watch_predict_response.py +0 -0
  63. {prelude_python_sdk-0.1.0a7 → prelude_python_sdk-0.1.0b1}/src/prelude_sdk/lib/.keep +0 -0
  64. {prelude_python_sdk-0.1.0a7 → prelude_python_sdk-0.1.0b1}/tests/__init__.py +0 -0
  65. {prelude_python_sdk-0.1.0a7 → prelude_python_sdk-0.1.0b1}/tests/api_resources/__init__.py +0 -0
  66. {prelude_python_sdk-0.1.0a7 → prelude_python_sdk-0.1.0b1}/tests/api_resources/test_transactional.py +0 -0
  67. {prelude_python_sdk-0.1.0a7 → prelude_python_sdk-0.1.0b1}/tests/api_resources/test_watch.py +0 -0
  68. {prelude_python_sdk-0.1.0a7 → prelude_python_sdk-0.1.0b1}/tests/conftest.py +0 -0
  69. {prelude_python_sdk-0.1.0a7 → prelude_python_sdk-0.1.0b1}/tests/sample_file.txt +0 -0
  70. {prelude_python_sdk-0.1.0a7 → prelude_python_sdk-0.1.0b1}/tests/test_client.py +0 -0
  71. {prelude_python_sdk-0.1.0a7 → prelude_python_sdk-0.1.0b1}/tests/test_deepcopy.py +0 -0
  72. {prelude_python_sdk-0.1.0a7 → prelude_python_sdk-0.1.0b1}/tests/test_extract_files.py +0 -0
  73. {prelude_python_sdk-0.1.0a7 → prelude_python_sdk-0.1.0b1}/tests/test_files.py +0 -0
  74. {prelude_python_sdk-0.1.0a7 → prelude_python_sdk-0.1.0b1}/tests/test_qs.py +0 -0
  75. {prelude_python_sdk-0.1.0a7 → prelude_python_sdk-0.1.0b1}/tests/test_required_args.py +0 -0
  76. {prelude_python_sdk-0.1.0a7 → prelude_python_sdk-0.1.0b1}/tests/test_response.py +0 -0
  77. {prelude_python_sdk-0.1.0a7 → prelude_python_sdk-0.1.0b1}/tests/test_streaming.py +0 -0
  78. {prelude_python_sdk-0.1.0a7 → prelude_python_sdk-0.1.0b1}/tests/test_transform.py +0 -0
  79. {prelude_python_sdk-0.1.0a7 → prelude_python_sdk-0.1.0b1}/tests/test_utils/test_proxy.py +0 -0
  80. {prelude_python_sdk-0.1.0a7 → prelude_python_sdk-0.1.0b1}/tests/test_utils/test_typing.py +0 -0
  81. {prelude_python_sdk-0.1.0a7 → prelude_python_sdk-0.1.0b1}/tests/utils.py +0 -0
@@ -0,0 +1,3 @@
1
+ {
2
+ ".": "0.1.0-beta.1"
3
+ }
@@ -1,5 +1,23 @@
1
1
  # Changelog
2
2
 
3
+ ## 0.1.0-beta.1 (2025-01-14)
4
+
5
+ Full Changelog: [v0.1.0-alpha.7...v0.1.0-beta.1](https://github.com/prelude-so/python-sdk/compare/v0.1.0-alpha.7...v0.1.0-beta.1)
6
+
7
+ ### Features
8
+
9
+ * **api:** update via SDK Studio ([#45](https://github.com/prelude-so/python-sdk/issues/45)) ([214aa99](https://github.com/prelude-so/python-sdk/commit/214aa996f4ffea2c40030b938f205562d608c144))
10
+
11
+
12
+ ### Bug Fixes
13
+
14
+ * correctly handle deserialising `cls` fields ([#42](https://github.com/prelude-so/python-sdk/issues/42)) ([6511235](https://github.com/prelude-so/python-sdk/commit/65112351b9c6767bbd3447b17ebab220bf04e34d))
15
+
16
+
17
+ ### Chores
18
+
19
+ * **internal:** update deps ([#44](https://github.com/prelude-so/python-sdk/issues/44)) ([3c88900](https://github.com/prelude-so/python-sdk/commit/3c8890016b22448529967e11b9082721f8c5954c))
20
+
3
21
  ## 0.1.0-alpha.7 (2025-01-08)
4
22
 
5
23
  Full Changelog: [v0.1.0-alpha.6...v0.1.0-alpha.7](https://github.com/prelude-so/python-sdk/compare/v0.1.0-alpha.6...v0.1.0-alpha.7)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: prelude-python-sdk
3
- Version: 0.1.0a7
3
+ Version: 0.1.0b1
4
4
  Summary: The official Python library for the Prelude API
5
5
  Project-URL: Homepage, https://github.com/prelude-so/python-sdk
6
6
  Project-URL: Repository, https://github.com/prelude-so/python-sdk
@@ -41,7 +41,7 @@ cache_fine_grained = True
41
41
  # ```
42
42
  # Changing this codegen to make mypy happy would increase complexity
43
43
  # and would not be worth it.
44
- disable_error_code = func-returns-value
44
+ disable_error_code = func-returns-value,overload-cannot-match
45
45
 
46
46
  # https://github.com/python/mypy/issues/12162
47
47
  [mypy.overrides]
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "prelude-python-sdk"
3
- version = "0.1.0-alpha.7"
3
+ version = "0.1.0-beta.1"
4
4
  description = "The official Python library for the Prelude API"
5
5
  dynamic = ["readme"]
6
6
  license = "Apache-2.0"
@@ -48,7 +48,7 @@ markdown-it-py==3.0.0
48
48
  # via rich
49
49
  mdurl==0.1.2
50
50
  # via markdown-it-py
51
- mypy==1.13.0
51
+ mypy==1.14.1
52
52
  mypy-extensions==1.0.0
53
53
  # via mypy
54
54
  nest-asyncio==1.6.0
@@ -68,7 +68,7 @@ pydantic-core==2.27.1
68
68
  # via pydantic
69
69
  pygments==2.18.0
70
70
  # via rich
71
- pyright==1.1.390
71
+ pyright==1.1.391
72
72
  pytest==8.3.3
73
73
  # via pytest-asyncio
74
74
  pytest-asyncio==0.24.0
@@ -179,14 +179,14 @@ class BaseModel(pydantic.BaseModel):
179
179
  @classmethod
180
180
  @override
181
181
  def construct( # pyright: ignore[reportIncompatibleMethodOverride]
182
- cls: Type[ModelT],
182
+ __cls: Type[ModelT],
183
183
  _fields_set: set[str] | None = None,
184
184
  **values: object,
185
185
  ) -> ModelT:
186
- m = cls.__new__(cls)
186
+ m = __cls.__new__(__cls)
187
187
  fields_values: dict[str, object] = {}
188
188
 
189
- config = get_model_config(cls)
189
+ config = get_model_config(__cls)
190
190
  populate_by_name = (
191
191
  config.allow_population_by_field_name
192
192
  if isinstance(config, _ConfigProtocol)
@@ -196,7 +196,7 @@ class BaseModel(pydantic.BaseModel):
196
196
  if _fields_set is None:
197
197
  _fields_set = set()
198
198
 
199
- model_fields = get_model_fields(cls)
199
+ model_fields = get_model_fields(__cls)
200
200
  for name, field in model_fields.items():
201
201
  key = field.alias
202
202
  if key is None or (key not in values and populate_by_name):
@@ -1,4 +1,4 @@
1
1
  # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
2
 
3
3
  __title__ = "prelude_python_sdk"
4
- __version__ = "0.1.0-alpha.7" # x-release-please-version
4
+ __version__ = "0.1.0-beta.1" # x-release-please-version
@@ -49,6 +49,7 @@ class VerificationResource(SyncAPIResource):
49
49
  self,
50
50
  *,
51
51
  target: verification_create_params.Target,
52
+ dispatch_id: str | NotGiven = NOT_GIVEN,
52
53
  metadata: verification_create_params.Metadata | NotGiven = NOT_GIVEN,
53
54
  options: verification_create_params.Options | NotGiven = NOT_GIVEN,
54
55
  signals: verification_create_params.Signals | NotGiven = NOT_GIVEN,
@@ -68,6 +69,8 @@ class VerificationResource(SyncAPIResource):
68
69
  Args:
69
70
  target: The target. Currently this can only be an E.164 formatted phone number.
70
71
 
72
+ dispatch_id: The identifier of the dispatch that came from the front-end SDK.
73
+
71
74
  metadata: The metadata for this verification. This object will be returned with every
72
75
  response or webhook sent that refers to this verification.
73
76
 
@@ -88,6 +91,7 @@ class VerificationResource(SyncAPIResource):
88
91
  body=maybe_transform(
89
92
  {
90
93
  "target": target,
94
+ "dispatch_id": dispatch_id,
91
95
  "metadata": metadata,
92
96
  "options": options,
93
97
  "signals": signals,
@@ -168,6 +172,7 @@ class AsyncVerificationResource(AsyncAPIResource):
168
172
  self,
169
173
  *,
170
174
  target: verification_create_params.Target,
175
+ dispatch_id: str | NotGiven = NOT_GIVEN,
171
176
  metadata: verification_create_params.Metadata | NotGiven = NOT_GIVEN,
172
177
  options: verification_create_params.Options | NotGiven = NOT_GIVEN,
173
178
  signals: verification_create_params.Signals | NotGiven = NOT_GIVEN,
@@ -187,6 +192,8 @@ class AsyncVerificationResource(AsyncAPIResource):
187
192
  Args:
188
193
  target: The target. Currently this can only be an E.164 formatted phone number.
189
194
 
195
+ dispatch_id: The identifier of the dispatch that came from the front-end SDK.
196
+
190
197
  metadata: The metadata for this verification. This object will be returned with every
191
198
  response or webhook sent that refers to this verification.
192
199
 
@@ -207,6 +214,7 @@ class AsyncVerificationResource(AsyncAPIResource):
207
214
  body=await async_maybe_transform(
208
215
  {
209
216
  "target": target,
217
+ "dispatch_id": dispatch_id,
210
218
  "metadata": metadata,
211
219
  "options": options,
212
220
  "signals": signals,
@@ -11,6 +11,9 @@ class VerificationCreateParams(TypedDict, total=False):
11
11
  target: Required[Target]
12
12
  """The target. Currently this can only be an E.164 formatted phone number."""
13
13
 
14
+ dispatch_id: str
15
+ """The identifier of the dispatch that came from the front-end SDK."""
16
+
14
17
  metadata: Metadata
15
18
  """The metadata for this verification.
16
19
 
@@ -37,6 +37,7 @@ class TestVerification:
37
37
  "type": "phone_number",
38
38
  "value": "+30123456789",
39
39
  },
40
+ dispatch_id="dispatch_id",
40
41
  metadata={"correlation_id": "correlation_id"},
41
42
  options={
42
43
  "app_realm": {
@@ -155,6 +156,7 @@ class TestAsyncVerification:
155
156
  "type": "phone_number",
156
157
  "value": "+30123456789",
157
158
  },
159
+ dispatch_id="dispatch_id",
158
160
  metadata={"correlation_id": "correlation_id"},
159
161
  options={
160
162
  "app_realm": {
@@ -844,3 +844,13 @@ def test_type_alias_type() -> None:
844
844
  assert m.alias == "foo"
845
845
  assert isinstance(m.union, str)
846
846
  assert m.union == "bar"
847
+
848
+
849
+ @pytest.mark.skipif(not PYDANTIC_V2, reason="TypeAliasType is not supported in Pydantic v1")
850
+ def test_field_named_cls() -> None:
851
+ class Model(BaseModel):
852
+ cls: str
853
+
854
+ m = construct_type(value={"cls": "foo"}, type_=Model)
855
+ assert isinstance(m, Model)
856
+ assert isinstance(m.cls, str)
@@ -1,3 +0,0 @@
1
- {
2
- ".": "0.1.0-alpha.7"
3
- }