Skip to content

Commit 3fdc2e1

Browse files
committed
Cleanup changelog
1 parent 99a0a7e commit 3fdc2e1

File tree

1 file changed

+3
-2
lines changed

1 file changed

+3
-2
lines changed

CHANGELOG.md

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
1111

1212
### New features
1313

14-
* Tool functions now support `typing.Annotated` with `pydantic.Field` for parameter descriptions, matching the FastMCP annotation pattern. For example: `def add(x: Annotated[int, Field(description="First number")]) -> int`. (#236)
14+
1515
* `ChatOpenAI()`, `ChatAnthropic()`, and `ChatGoogle()` gain a new `reasoning` parameter to easily opt-into, and fully customize, reasoning capabilities. (#202)
1616
* A new `ContentThinking` content type was added and captures the "thinking" portion of a reasoning model. (#192)
1717
* Added support for built-in provider tools via a new `ToolBuiltIn` class. This enables provider-specific functionality like OpenAI's image generation to be registered and used as tools. Built-in tools pass raw provider definitions directly to the API rather than wrapping Python functions. (#214)
@@ -23,15 +23,16 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
2323

2424
* `repr()` now generally gives the same result as `str()` for many classes (`Chat`, `Turn`, `Content`, etc). This leads to a more human-readable result (and is closer to the result that gets `echo`ed by `.chat()`). (#245)
2525
* The `Chat.get_cost()` method's `options` parameter was renamed to `include`. (#244)
26+
* When supplying a `model` to `.register_tool(tool_func, model=ToolModel)`, the defaults for the `model` must match the `tool_func` defaults. Previously, if `tool_func` had defaults, but `ToolModel` didn't, those defaults would get silently ignored. (#253)
2627

2728
### Improvements
2829

2930
* `ChatSnowflake()` now sets the `application` config parameter for partner identification. Defaults to `"py_chatlas"` but can be overridden via the `SF_PARTNER` environment variable. (#209)
3031

3132
### Bug fixes
3233

33-
* `Tool.from_func()` now validates that function parameter defaults match model field defaults when a custom `BaseModel` is provided. Previously, defaults in the function signature were silently ignored if the model didn't include them, leading to schemas that didn't reflect the function's actual defaults. (#253)
3434
* Fixed structured data extraction with `ChatAnthropic()` failing for Pydantic models containing nested types (e.g., `list[NestedModel]`). The issue was that `$defs` (containing nested type definitions) was incorrectly placed inside the schema, breaking JSON `$ref` pointer references. (#100)
35+
* Tool functions parameters that are `typing.Annotated` with a `pydantic.Field` (e.g., `def add(x: Annotated[int, Field(description="First number")])`) are now handled correctly. (#251)
3536

3637
## [0.14.0] - 2025-12-09
3738

0 commit comments

Comments
 (0)