mirror of
https://github.com/PrefectHQ/fastmcp.git
synced 2026-08-20 20:44:17 +02:00
Add encoding parameter to FileResource (#3580)
* feat: Add encoding parameter to FileResource - Add optional encoding field (str | None, default None) to FileResource. - Pass encoding through to read_text() for cross-platform text file reading. - Preserve backward compatibility by defaulting to system encoding. * test: Add tests for FileResource encoding parameter - Test UTF-8 reading with explicit encoding for non-ASCII content. - Test backward compatibility when no encoding is specified. - Test that encoding is ignored for binary file reads. - Test Latin-1 reading with matching encoding. * docs: Document FileResource encoding parameter - Add encoding="utf-8" to FileResource example in resource classes guide. - Update FileResource description to mention encoding support. * feat: Change FileResource encoding default from None to utf-8 - Default to utf-8 instead of system encoding to prevent cross-platform footgun. - Update field description to reflect new default. - Update test to verify default encoding is utf-8 with non-ASCII content. - Remove redundant encoding="utf-8" from docs example since it is now the default.
This commit is contained in:
parent
718ed8b140
commit
2d7bc4e73d
3 changed files with 70 additions and 2 deletions
|
|
@ -349,7 +349,7 @@ if data_dir_path.is_dir():
|
|||
|
||||
- `TextResource`: For simple string content.
|
||||
- `BinaryResource`: For raw `bytes` content.
|
||||
- `FileResource`: Reads content from a local file path. Handles text/binary modes and lazy reading.
|
||||
- `FileResource`: Reads content from a local file path. Handles text/binary modes, encoding, and lazy reading.
|
||||
- `HttpResource`: Fetches content from an HTTP(S) URL (requires `httpx`).
|
||||
- `DirectoryResource`: Lists files in a local directory (returns JSON).
|
||||
- (`FunctionResource`: Internal class used by `@mcp.resource`).
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue