Skip to content

Commit 0d85ca0

Browse files
release: 1.108.0 (#2635)
* chore(internal): update pydantic dependency * feat(api): type updates for conversations, reasoning_effort and results for evals * release: 1.108.0 --------- Co-authored-by: stainless-app[bot] <142633134+stainless-app[bot]@users.noreply.github.com>
1 parent 0b4bc50 commit 0d85ca0

37 files changed

+301
-248
lines changed

.release-please-manifest.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
11
{
2-
".": "1.107.3"
2+
".": "1.108.0"
33
}

.stats.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
11
configured_endpoints: 118
2-
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/openai%2Fopenai-d30ff992a48873c1466c49f3c01f2ec8933faebff23424748f8d056065b1bcef.yml
3-
openapi_spec_hash: e933ec43b46f45c348adb78840e5808d
4-
config_hash: bf45940f0a7805b4ec2017eecdd36893
2+
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/openai%2Fopenai-380330a93b5d010391ca3b36ea193c5353b0dfdf2ddd02789ef84a84ce427e82.yml
3+
openapi_spec_hash: 859703234259ecdd2a3c6f4de88eb504
4+
config_hash: b619b45c1e7facf819f902dee8fa4f97

CHANGELOG.md

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,18 @@
11
# Changelog
22

3+
## 1.108.0 (2025-09-17)
4+
5+
Full Changelog: [v1.107.3...v1.108.0](https://github.com/openai/openai-python/compare/v1.107.3...v1.108.0)
6+
7+
### Features
8+
9+
* **api:** type updates for conversations, reasoning_effort and results for evals ([c2ee28c](https://github.com/openai/openai-python/commit/c2ee28c1b77eed98766fbb01cf1ad2ee240f412e))
10+
11+
12+
### Chores
13+
14+
* **internal:** update pydantic dependency ([369d10a](https://github.com/openai/openai-python/commit/369d10a40dfe744f6bfc10c99eb1f58176500120))
15+
316
## 1.107.3 (2025-09-15)
417

518
Full Changelog: [v1.107.2...v1.107.3](https://github.com/openai/openai-python/compare/v1.107.2...v1.107.3)

api.md

Lines changed: 5 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -991,22 +991,17 @@ Types:
991991
```python
992992
from openai.types.conversations import (
993993
ComputerScreenshotContent,
994-
ContainerFileCitationBody,
995994
Conversation,
996995
ConversationDeleted,
997996
ConversationDeletedResource,
998-
FileCitationBody,
999-
InputFileContent,
1000-
InputImageContent,
1001-
InputTextContent,
1002-
LobProb,
1003997
Message,
1004-
OutputTextContent,
1005-
RefusalContent,
1006998
SummaryTextContent,
1007999
TextContent,
1008-
TopLogProb,
1009-
URLCitationBody,
1000+
InputTextContent,
1001+
OutputTextContent,
1002+
RefusalContent,
1003+
InputImageContent,
1004+
InputFileContent,
10101005
)
10111006
```
10121007

pyproject.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[project]
22
name = "openai"
3-
version = "1.107.3"
3+
version = "1.108.0"
44
description = "The official Python library for the openai API"
55
dynamic = ["readme"]
66
license = "Apache-2.0"

requirements-dev.lock

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -108,6 +108,7 @@ multidict==6.5.0
108108
mypy==1.14.1
109109
mypy-extensions==1.0.0
110110
# via mypy
111+
nest-asyncio==1.6.0
111112
nodeenv==1.8.0
112113
# via pyright
113114
nox==2023.4.22
@@ -133,11 +134,11 @@ portalocker==2.10.1
133134
propcache==0.3.2
134135
# via aiohttp
135136
# via yarl
136-
pycparser==2.22
137+
pycparser==2.23
137138
# via cffi
138-
pydantic==2.10.3
139+
pydantic==2.11.9
139140
# via openai
140-
pydantic-core==2.27.1
141+
pydantic-core==2.33.2
141142
# via pydantic
142143
pygments==2.18.0
143144
# via pytest
@@ -199,6 +200,9 @@ typing-extensions==4.12.2
199200
# via pydantic
200201
# via pydantic-core
201202
# via pyright
203+
# via typing-inspection
204+
typing-inspection==0.4.1
205+
# via pydantic
202206
tzdata==2024.1
203207
# via pandas
204208
urllib3==2.2.1

requirements.lock

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -67,11 +67,11 @@ pandas-stubs==2.2.2.240807
6767
propcache==0.3.2
6868
# via aiohttp
6969
# via yarl
70-
pycparser==2.22
70+
pycparser==2.23
7171
# via cffi
72-
pydantic==2.10.3
72+
pydantic==2.11.9
7373
# via openai
74-
pydantic-core==2.27.1
74+
pydantic-core==2.33.2
7575
# via pydantic
7676
python-dateutil==2.9.0.post0
7777
# via pandas
@@ -93,7 +93,10 @@ typing-extensions==4.12.2
9393
# via openai
9494
# via pydantic
9595
# via pydantic-core
96-
tzdata==2024.1
96+
# via typing-inspection
97+
typing-inspection==0.4.1
98+
# via pydantic
99+
tzdata==2025.2
97100
# via pandas
98101
websockets==15.0.1
99102
# via openai

src/openai/_models.py

Lines changed: 10 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -281,14 +281,15 @@ def model_dump(
281281
mode: Literal["json", "python"] | str = "python",
282282
include: IncEx | None = None,
283283
exclude: IncEx | None = None,
284-
by_alias: bool = False,
284+
by_alias: bool | None = None,
285285
exclude_unset: bool = False,
286286
exclude_defaults: bool = False,
287287
exclude_none: bool = False,
288288
round_trip: bool = False,
289289
warnings: bool | Literal["none", "warn", "error"] = True,
290290
context: dict[str, Any] | None = None,
291291
serialize_as_any: bool = False,
292+
fallback: Callable[[Any], Any] | None = None,
292293
) -> dict[str, Any]:
293294
"""Usage docs: https://docs.pydantic.dev/2.4/concepts/serialization/#modelmodel_dump
294295
@@ -320,10 +321,12 @@ def model_dump(
320321
raise ValueError("context is only supported in Pydantic v2")
321322
if serialize_as_any != False:
322323
raise ValueError("serialize_as_any is only supported in Pydantic v2")
324+
if fallback is not None:
325+
raise ValueError("fallback is only supported in Pydantic v2")
323326
dumped = super().dict( # pyright: ignore[reportDeprecated]
324327
include=include,
325328
exclude=exclude,
326-
by_alias=by_alias,
329+
by_alias=by_alias if by_alias is not None else False,
327330
exclude_unset=exclude_unset,
328331
exclude_defaults=exclude_defaults,
329332
exclude_none=exclude_none,
@@ -338,13 +341,14 @@ def model_dump_json(
338341
indent: int | None = None,
339342
include: IncEx | None = None,
340343
exclude: IncEx | None = None,
341-
by_alias: bool = False,
344+
by_alias: bool | None = None,
342345
exclude_unset: bool = False,
343346
exclude_defaults: bool = False,
344347
exclude_none: bool = False,
345348
round_trip: bool = False,
346349
warnings: bool | Literal["none", "warn", "error"] = True,
347350
context: dict[str, Any] | None = None,
351+
fallback: Callable[[Any], Any] | None = None,
348352
serialize_as_any: bool = False,
349353
) -> str:
350354
"""Usage docs: https://docs.pydantic.dev/2.4/concepts/serialization/#modelmodel_dump_json
@@ -373,11 +377,13 @@ def model_dump_json(
373377
raise ValueError("context is only supported in Pydantic v2")
374378
if serialize_as_any != False:
375379
raise ValueError("serialize_as_any is only supported in Pydantic v2")
380+
if fallback is not None:
381+
raise ValueError("fallback is only supported in Pydantic v2")
376382
return super().json( # type: ignore[reportDeprecated]
377383
indent=indent,
378384
include=include,
379385
exclude=exclude,
380-
by_alias=by_alias,
386+
by_alias=by_alias if by_alias is not None else False,
381387
exclude_unset=exclude_unset,
382388
exclude_defaults=exclude_defaults,
383389
exclude_none=exclude_none,

src/openai/_version.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
11
# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
22

33
__title__ = "openai"
4-
__version__ = "1.107.3" # x-release-please-version
4+
__version__ = "1.108.0" # x-release-please-version

src/openai/types/conversations/__init__.py

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -3,25 +3,25 @@
33
from __future__ import annotations
44

55
from .message import Message as Message
6-
from .lob_prob import LobProb as LobProb
76
from .conversation import Conversation as Conversation
87
from .text_content import TextContent as TextContent
9-
from .top_log_prob import TopLogProb as TopLogProb
108
from .refusal_content import RefusalContent as RefusalContent
119
from .item_list_params import ItemListParams as ItemListParams
1210
from .conversation_item import ConversationItem as ConversationItem
13-
from .url_citation_body import URLCitationBody as URLCitationBody
14-
from .file_citation_body import FileCitationBody as FileCitationBody
1511
from .input_file_content import InputFileContent as InputFileContent
1612
from .input_text_content import InputTextContent as InputTextContent
1713
from .item_create_params import ItemCreateParams as ItemCreateParams
1814
from .input_image_content import InputImageContent as InputImageContent
1915
from .output_text_content import OutputTextContent as OutputTextContent
2016
from .item_retrieve_params import ItemRetrieveParams as ItemRetrieveParams
2117
from .summary_text_content import SummaryTextContent as SummaryTextContent
18+
from .refusal_content_param import RefusalContentParam as RefusalContentParam
2219
from .conversation_item_list import ConversationItemList as ConversationItemList
20+
from .input_file_content_param import InputFileContentParam as InputFileContentParam
21+
from .input_text_content_param import InputTextContentParam as InputTextContentParam
22+
from .input_image_content_param import InputImageContentParam as InputImageContentParam
23+
from .output_text_content_param import OutputTextContentParam as OutputTextContentParam
2324
from .conversation_create_params import ConversationCreateParams as ConversationCreateParams
2425
from .conversation_update_params import ConversationUpdateParams as ConversationUpdateParams
2526
from .computer_screenshot_content import ComputerScreenshotContent as ComputerScreenshotContent
26-
from .container_file_citation_body import ContainerFileCitationBody as ContainerFileCitationBody
2727
from .conversation_deleted_resource import ConversationDeletedResource as ConversationDeletedResource

0 commit comments

Comments
 (0)