diff --git a/.github/workflows/python-lab-tests.yml b/.github/workflows/python-lab-tests.yml index 896341821c6..1b9b55df2a4 100644 --- a/.github/workflows/python-lab-tests.yml +++ b/.github/workflows/python-lab-tests.yml @@ -45,7 +45,7 @@ jobs: strategy: fail-fast: true matrix: - python-version: ["3.10", "3.11", "3.12", "3.13", "3.14"] + python-version: ["3.11", "3.12", "3.13", "3.14"] # TODO(ekzhu): re-enable macos-latest when this is fixed: https://github.com/actions/runner-images/issues/11881 os: [ubuntu-latest, windows-latest] env: diff --git a/.github/workflows/python-tests.yml b/.github/workflows/python-tests.yml index 27637a3897f..b6730911333 100644 --- a/.github/workflows/python-tests.yml +++ b/.github/workflows/python-tests.yml @@ -66,7 +66,7 @@ jobs: strategy: fail-fast: true matrix: - python-version: ["3.10", "3.11", "3.12", "3.13", "3.14", "3.15"] + python-version: ["3.11", "3.12", "3.13", "3.14", "3.15"] # todo: add macos-latest when problems are resolved os: [ubuntu-latest, windows-latest] # Full workspace setup still builds native packages slowly on Windows 3.15. @@ -90,7 +90,7 @@ jobs: python-version: ${{ matrix.python-version }} os: ${{ runner.os }} # RedisVL still declares Python <3.15. - exclude-packages: ${{ matrix.python-version == '3.10' && 'agent-framework-github-copilot agent-framework-azure-cosmos-memory' || matrix.python-version == '3.15' && 'agent-framework-redis' || '' }} + exclude-packages: ${{ matrix.python-version == '3.15' && 'agent-framework-redis' || '' }} env: # Configure a constant location for the uv cache UV_CACHE_DIR: /tmp/.uv-cache diff --git a/TRANSPARENCY_FAQ.md b/TRANSPARENCY_FAQ.md index 3ec22fd18fc..e0e94713160 100644 --- a/TRANSPARENCY_FAQ.md +++ b/TRANSPARENCY_FAQ.md @@ -42,7 +42,7 @@ Microsoft Agent Framework relies on existing LLMs. Using the framework retains c **Framework-Specific Limitations**: -- **Platform Requirements**: Python 3.10+ required, specific .NET versions (.NET 8.0, 9.0, 10.0, netstandard2.0, net472) +- **Platform Requirements**: Python 3.11–3.15 supported, subject to [integration-specific limits](python/README.md#python-315-limitations); Python 3.10 installation remains permitted, but compatibility is not guaranteed. Specific .NET versions (.NET 8.0, 9.0, 10.0, netstandard2.0, net472) - **API Dependencies**: Requires proper configuration of LLM provider keys and endpoints - **Orchestration Features**: Advanced orchestration patterns including GroupChat, Sequential, and Concurrent workflows are now available in both Python and .NET implementations. See the respective language documentation for examples. - **Privacy and Data Protection**: The framework allows for human participation in conversations between agents. It is important to ensure that user data and conversations are protected and that developers use appropriate measures to safeguard privacy. diff --git a/python/DEV_SETUP.md b/python/DEV_SETUP.md index 3420185f149..e9c26ebe538 100644 --- a/python/DEV_SETUP.md +++ b/python/DEV_SETUP.md @@ -64,8 +64,8 @@ version does not match. You can then run the following commands manually: ```bash -# Install every Python version covered by package or CI compatibility checks -uv python install 3.10 3.11 3.12 3.13 3.14 3.15 +# Install every Python version covered by CI +uv python install 3.11 3.12 3.13 3.14 3.15 # Use Python 3.11 through 3.14 for a normal full-workspace development environment PYTHON_VERSION="3.13" uv venv --python $PYTHON_VERSION @@ -75,17 +75,21 @@ uv run poe install uv run poe prek-install ``` -Python 3.10 remains supported and tested for this release, but it is deprecated -because upstream Python 3.10 has reached end of life. Prefer Python 3.11 or -later for new development environments. +Python 3.10 is no longer supported because it has reached upstream end of life. +Package metadata still permits Python 3.10 installation, but CI no longer runs +unit or integration tests on it and compatibility is not guaranteed. Use +Python 3.11–3.15 for supported development environments, subject to the +workspace and integration-specific limits below. The checked-in root workspace lock supports the common Python 3.11–3.14 -development range. CI validates the Python 3.10 and 3.15 boundaries by -temporarily excluding workspace packages whose own Python constraints do not -cover those versions; see `.github/actions/python-setup/action.yml`. For local -work specifically targeting a boundary version, use an isolated -package-scoped environment or the corresponding CI lane rather than expecting -the frozen full-workspace install above to resolve unchanged. +development range. CI validates the Python 3.15 boundary by temporarily +excluding workspace packages whose own Python constraints do not cover that +version; see `.github/actions/python-setup/action.yml`. For local work +specifically targeting Python 3.15, use an isolated package-scoped environment +or the corresponding CI lane rather than expecting the frozen full-workspace +install above to resolve unchanged. Python 3.10 unit and integration tests no +longer run in CI; use an isolated package-scoped environment for unsupported +compatibility work. Alternatively, you can reinstall the venv, packages, dependencies and prek hooks with a single command. Poe is part of the cross-version development diff --git a/python/README.md b/python/README.md index d6fbd768d2c..bf8e432ead4 100644 --- a/python/README.md +++ b/python/README.md @@ -39,14 +39,14 @@ This selective approach is useful when you know which integrations you need, and Supported Platforms: -- Python: 3.10–3.15 +- Python: 3.11–3.15 - OS: Windows, macOS, Linux -Python 3.10 remains supported and tested for this release, but it is deprecated -because upstream Python 3.10 has reached end of life. New environments should -use Python 3.11 or later. A future Agent Framework release will raise the -minimum version separately; this release does not remove Python 3.10 from -package metadata or CI. +Python 3.10 is no longer supported because it has reached upstream end of life. +Package metadata still permits Python 3.10 installation, but CI no longer runs +unit or integration tests on it and compatibility is not guaranteed. Use +Python 3.11–3.15 for supported environments, subject to integration-specific +limits below. Raising the installation minimum will be handled separately. ### Python 3.15 limitations diff --git a/python/packages/a2a/pyproject.toml b/python/packages/a2a/pyproject.toml index 3779355bdd3..0c6f36a0b01 100644 --- a/python/packages/a2a/pyproject.toml +++ b/python/packages/a2a/pyproject.toml @@ -15,7 +15,6 @@ classifiers = [ "Development Status :: 4 - Beta", "Intended Audience :: Developers", "Programming Language :: Python :: 3", - "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", "Programming Language :: Python :: 3.13", diff --git a/python/packages/ag-ui/README.md b/python/packages/ag-ui/README.md index 6b7769c9fc8..c383319d614 100644 --- a/python/packages/ag-ui/README.md +++ b/python/packages/ag-ui/README.md @@ -8,7 +8,10 @@ AG-UI protocol integration for Agent Framework, enabling seamless integration wi pip install agent-framework-ag-ui ``` -The base package and optional A2UI integration support Python 3.10–3.15: +The base package and optional A2UI integration support Python 3.11–3.15. +Python 3.10 installation remains permitted, but compatibility is not guaranteed. + +Install the optional A2UI integration with: ```bash pip install "agent-framework-ag-ui[a2ui]" diff --git a/python/packages/ag-ui/getting_started/README.md b/python/packages/ag-ui/getting_started/README.md index aa8cd3e9e7c..654220a9920 100644 --- a/python/packages/ag-ui/getting_started/README.md +++ b/python/packages/ag-ui/getting_started/README.md @@ -170,7 +170,7 @@ AG-UI is a protocol that enables: Before you begin, ensure you have the following: -- Python 3.10 or later +- Python 3.11–3.15 - Azure OpenAI service endpoint and deployment configured - Azure CLI installed and authenticated (for DefaultAzureCredential) - User has the `Cognitive Services OpenAI Contributor` role for the Azure OpenAI resource diff --git a/python/packages/ag-ui/pyproject.toml b/python/packages/ag-ui/pyproject.toml index 2c229e05565..bf2d7608581 100644 --- a/python/packages/ag-ui/pyproject.toml +++ b/python/packages/ag-ui/pyproject.toml @@ -15,7 +15,6 @@ classifiers = [ "Development Status :: 5 - Production/Stable", "Intended Audience :: Developers", "Programming Language :: Python :: 3", - "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", "Programming Language :: Python :: 3.13", diff --git a/python/packages/anthropic/pyproject.toml b/python/packages/anthropic/pyproject.toml index 008e0d53b3b..428994de2a2 100644 --- a/python/packages/anthropic/pyproject.toml +++ b/python/packages/anthropic/pyproject.toml @@ -15,7 +15,6 @@ classifiers = [ "Development Status :: 4 - Beta", "Intended Audience :: Developers", "Programming Language :: Python :: 3", - "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", "Programming Language :: Python :: 3.13", diff --git a/python/packages/azure-ai-search/README.md b/python/packages/azure-ai-search/README.md index 75f3059a8a0..4a8635f7ec7 100644 --- a/python/packages/azure-ai-search/README.md +++ b/python/packages/azure-ai-search/README.md @@ -14,7 +14,8 @@ All three classes are available from `agent_framework.azure` or ## Installation -Requires Python 3.10 or later. +Supports Python 3.11–3.15. Python 3.10 installation remains permitted, +but compatibility is not guaranteed. ```bash pip install agent-framework-azure-ai-search --pre diff --git a/python/packages/azure-ai-search/pyproject.toml b/python/packages/azure-ai-search/pyproject.toml index f051c76faca..7b488ea32d4 100644 --- a/python/packages/azure-ai-search/pyproject.toml +++ b/python/packages/azure-ai-search/pyproject.toml @@ -15,7 +15,6 @@ classifiers = [ "Development Status :: 4 - Beta", "Intended Audience :: Developers", "Programming Language :: Python :: 3", - "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", "Programming Language :: Python :: 3.13", diff --git a/python/packages/azure-contentunderstanding/pyproject.toml b/python/packages/azure-contentunderstanding/pyproject.toml index 418b4a59267..3220355fe1d 100644 --- a/python/packages/azure-contentunderstanding/pyproject.toml +++ b/python/packages/azure-contentunderstanding/pyproject.toml @@ -15,7 +15,6 @@ classifiers = [ "Development Status :: 4 - Beta", "Intended Audience :: Developers", "Programming Language :: Python :: 3", - "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", "Programming Language :: Python :: 3.13", diff --git a/python/packages/azure-cosmos/README.md b/python/packages/azure-cosmos/README.md index 72b29774506..487c4c5ec71 100644 --- a/python/packages/azure-cosmos/README.md +++ b/python/packages/azure-cosmos/README.md @@ -15,7 +15,10 @@ provider, or workflow checkpoint store. pip install agent-framework-azure-cosmos --pre ``` -The package requires Python 3.10 or later, an Azure Cosmos DB for NoSQL account, +The package supports Python 3.11–3.15. Python 3.10 installation remains +permitted, but compatibility is not guaranteed. + +The package requires an Azure Cosmos DB for NoSQL account and `azure-cosmos` 4.7 or later. Vector collections also require the account's [NoSQL vector search capability](https://learn.microsoft.com/azure/cosmos-db/vector-search) to be enabled before use. diff --git a/python/packages/azure-cosmos/pyproject.toml b/python/packages/azure-cosmos/pyproject.toml index a8b69d7e46b..e82f699ef04 100644 --- a/python/packages/azure-cosmos/pyproject.toml +++ b/python/packages/azure-cosmos/pyproject.toml @@ -15,7 +15,6 @@ classifiers = [ "Development Status :: 4 - Beta", "Intended Audience :: Developers", "Programming Language :: Python :: 3", - "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", "Programming Language :: Python :: 3.13", diff --git a/python/packages/azure-documentdb/README.md b/python/packages/azure-documentdb/README.md index 76dcf86116b..e568ac41cca 100644 --- a/python/packages/azure-documentdb/README.md +++ b/python/packages/azure-documentdb/README.md @@ -17,7 +17,10 @@ Mongo-compatible `$search.cosmosSearch` dialect. pip install agent-framework-azure-documentdb --pre ``` -Requires Python 3.10+, PyMongo 4.13+, and an Azure DocumentDB cluster. IVF +Supports Python 3.11–3.15. Python 3.10 installation remains permitted, but +compatibility is not guaranteed. + +Requires PyMongo 4.13+ and an Azure DocumentDB cluster. IVF indexes are intended for smaller datasets and M10/M20 tiers. HNSW and DiskANN require M30 or higher; consult the current service documentation before choosing a production tier. diff --git a/python/packages/azure-documentdb/pyproject.toml b/python/packages/azure-documentdb/pyproject.toml index 9083b70b778..5d567876d53 100644 --- a/python/packages/azure-documentdb/pyproject.toml +++ b/python/packages/azure-documentdb/pyproject.toml @@ -14,7 +14,6 @@ classifiers = [ "Development Status :: 3 - Alpha", "Intended Audience :: Developers", "Programming Language :: Python :: 3", - "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", "Programming Language :: Python :: 3.13", diff --git a/python/packages/bedrock/pyproject.toml b/python/packages/bedrock/pyproject.toml index fe817b3d2d6..07d628ab034 100644 --- a/python/packages/bedrock/pyproject.toml +++ b/python/packages/bedrock/pyproject.toml @@ -15,7 +15,6 @@ classifiers = [ "Development Status :: 4 - Beta", "Intended Audience :: Developers", "Programming Language :: Python :: 3", - "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", "Programming Language :: Python :: 3.13", diff --git a/python/packages/chatkit/pyproject.toml b/python/packages/chatkit/pyproject.toml index 98556d13974..81cb52b623f 100644 --- a/python/packages/chatkit/pyproject.toml +++ b/python/packages/chatkit/pyproject.toml @@ -15,7 +15,6 @@ classifiers = [ "Development Status :: 4 - Beta", "Intended Audience :: Developers", "Programming Language :: Python :: 3", - "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", "Programming Language :: Python :: 3.13", diff --git a/python/packages/claude/pyproject.toml b/python/packages/claude/pyproject.toml index 43ff62900e2..ce1792ef057 100644 --- a/python/packages/claude/pyproject.toml +++ b/python/packages/claude/pyproject.toml @@ -15,7 +15,6 @@ classifiers = [ "Development Status :: 4 - Beta", "Intended Audience :: Developers", "Programming Language :: Python :: 3", - "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", "Programming Language :: Python :: 3.13", diff --git a/python/packages/copilotstudio/pyproject.toml b/python/packages/copilotstudio/pyproject.toml index ea58c7fabd9..edd24f551dd 100644 --- a/python/packages/copilotstudio/pyproject.toml +++ b/python/packages/copilotstudio/pyproject.toml @@ -15,7 +15,6 @@ classifiers = [ "Development Status :: 4 - Beta", "Intended Audience :: Developers", "Programming Language :: Python :: 3", - "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", "Programming Language :: Python :: 3.13", diff --git a/python/packages/core/README.md b/python/packages/core/README.md index da095301470..73239bf920c 100644 --- a/python/packages/core/README.md +++ b/python/packages/core/README.md @@ -22,13 +22,15 @@ pip install agent-framework-openai Supported Platforms: -- Python: 3.10–3.15 +- Python: 3.11–3.15 - OS: Windows, macOS, Linux -Python 3.10 remains supported and tested for this release, but it is deprecated -because upstream Python 3.10 has reached end of life. New environments should -use Python 3.11 or later. Removing Python 3.10 support will be handled in a -future release rather than by this compatibility update. +Python 3.10 is no longer supported because it has reached upstream end of life. +Package metadata still permits Python 3.10 installation, but CI no longer runs +unit or integration tests on it and compatibility is not guaranteed. Use +Python 3.11–3.15 for supported environments, subject to +[integration-specific limits](../../README.md#python-315-limitations). Raising +the installation minimum will be handled separately. ## 1. Setup API Keys diff --git a/python/packages/core/pyproject.toml b/python/packages/core/pyproject.toml index bbcdc3c84a8..66c895f6213 100644 --- a/python/packages/core/pyproject.toml +++ b/python/packages/core/pyproject.toml @@ -15,7 +15,6 @@ classifiers = [ "Development Status :: 5 - Production/Stable", "Intended Audience :: Developers", "Programming Language :: Python :: 3", - "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", "Programming Language :: Python :: 3.13", diff --git a/python/packages/declarative/README.md b/python/packages/declarative/README.md index 0f502ccd003..0f1ebf83b3c 100644 --- a/python/packages/declarative/README.md +++ b/python/packages/declarative/README.md @@ -6,7 +6,8 @@ Please install this package via pip: pip install agent-framework-declarative ``` -The package currently advertises Python 3.10–3.13 support. Python 3.14 and +The package currently advertises Python 3.11–3.13 support. Python 3.10 +installation remains permitted, but compatibility is not guaranteed. Python 3.14 and 3.15 can install the package, but Power Fx expressions are unavailable because the `powerfx` dependency requires a `pythonnet` build that does not support those Python versions. diff --git a/python/packages/declarative/pyproject.toml b/python/packages/declarative/pyproject.toml index 3572fe3249a..a49ad2322cc 100644 --- a/python/packages/declarative/pyproject.toml +++ b/python/packages/declarative/pyproject.toml @@ -15,7 +15,6 @@ classifiers = [ "Development Status :: 5 - Production/Stable", "Intended Audience :: Developers", "Programming Language :: Python :: 3", - "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", "Programming Language :: Python :: 3.13", diff --git a/python/packages/devui/pyproject.toml b/python/packages/devui/pyproject.toml index 6746c00be0f..bc6f0997bfb 100644 --- a/python/packages/devui/pyproject.toml +++ b/python/packages/devui/pyproject.toml @@ -15,7 +15,6 @@ classifiers = [ "Development Status :: 4 - Beta", "Intended Audience :: Developers", "Programming Language :: Python :: 3", - "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", "Programming Language :: Python :: 3.13", diff --git a/python/packages/duckdb/README.md b/python/packages/duckdb/README.md index 0b739a1075f..a9d0271dc40 100644 --- a/python/packages/duckdb/README.md +++ b/python/packages/duckdb/README.md @@ -12,7 +12,8 @@ caller-provided `duckdb.DuckDBPyConnection` objects use the same implementation. pip install agent-framework-duckdb --pre ``` -Python 3.10–3.15 is officially supported. Python 3.10–3.14 uses DuckDB +Python 3.11–3.15 is officially supported. Python 3.10 installation remains +permitted, but compatibility is not guaranteed. Python 3.10–3.14 uses DuckDB 1.4.1–1.5.x, while Python 3.15 uses DuckDB 2.x, whose stable-ABI wheels support Python 3.15. The package also installs `pytz`, which DuckDB uses when returning timezone-aware timestamps. Import `DuckDBStore` and `DuckDBCollection` directly diff --git a/python/packages/duckdb/pyproject.toml b/python/packages/duckdb/pyproject.toml index c44325573f4..23d5a6f9fb7 100644 --- a/python/packages/duckdb/pyproject.toml +++ b/python/packages/duckdb/pyproject.toml @@ -14,7 +14,6 @@ classifiers = [ "Development Status :: 3 - Alpha", "Intended Audience :: Developers", "Programming Language :: Python :: 3", - "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", "Programming Language :: Python :: 3.13", diff --git a/python/packages/foundry/pyproject.toml b/python/packages/foundry/pyproject.toml index a0f6cb486e5..ebd77d0e73f 100644 --- a/python/packages/foundry/pyproject.toml +++ b/python/packages/foundry/pyproject.toml @@ -15,7 +15,6 @@ classifiers = [ "Development Status :: 5 - Production/Stable", "Intended Audience :: Developers", "Programming Language :: Python :: 3", - "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", "Programming Language :: Python :: 3.13", diff --git a/python/packages/foundry_hosting/pyproject.toml b/python/packages/foundry_hosting/pyproject.toml index f4f41a0b262..ecb1aa57f98 100644 --- a/python/packages/foundry_hosting/pyproject.toml +++ b/python/packages/foundry_hosting/pyproject.toml @@ -15,7 +15,6 @@ classifiers = [ "Development Status :: 4 - Beta", "Intended Audience :: Developers", "Programming Language :: Python :: 3", - "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", "Programming Language :: Python :: 3.13", diff --git a/python/packages/foundry_local/pyproject.toml b/python/packages/foundry_local/pyproject.toml index 43b56795cfd..e2fe0c51748 100644 --- a/python/packages/foundry_local/pyproject.toml +++ b/python/packages/foundry_local/pyproject.toml @@ -15,7 +15,6 @@ classifiers = [ "Development Status :: 4 - Beta", "Intended Audience :: Developers", "Programming Language :: Python :: 3", - "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", "Programming Language :: Python :: 3.13", diff --git a/python/packages/gemini/pyproject.toml b/python/packages/gemini/pyproject.toml index 509782d2766..879dc001584 100644 --- a/python/packages/gemini/pyproject.toml +++ b/python/packages/gemini/pyproject.toml @@ -15,7 +15,6 @@ classifiers = [ "Development Status :: 4 - Beta", "Intended Audience :: Developers", "Programming Language :: Python :: 3", - "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", "Programming Language :: Python :: 3.13", diff --git a/python/packages/hosting-a2a/pyproject.toml b/python/packages/hosting-a2a/pyproject.toml index e07b2fcc5e2..69b535e9d9d 100644 --- a/python/packages/hosting-a2a/pyproject.toml +++ b/python/packages/hosting-a2a/pyproject.toml @@ -15,7 +15,6 @@ classifiers = [ "Development Status :: 3 - Alpha", "Intended Audience :: Developers", "Programming Language :: Python :: 3", - "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", "Programming Language :: Python :: 3.13", diff --git a/python/packages/hosting-mcp/pyproject.toml b/python/packages/hosting-mcp/pyproject.toml index f372af7b0a0..aa1d108830e 100644 --- a/python/packages/hosting-mcp/pyproject.toml +++ b/python/packages/hosting-mcp/pyproject.toml @@ -15,7 +15,6 @@ classifiers = [ "Development Status :: 3 - Alpha", "Intended Audience :: Developers", "Programming Language :: Python :: 3", - "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", "Programming Language :: Python :: 3.13", diff --git a/python/packages/hosting-responses/pyproject.toml b/python/packages/hosting-responses/pyproject.toml index 52b72237da9..f985b82cd1f 100644 --- a/python/packages/hosting-responses/pyproject.toml +++ b/python/packages/hosting-responses/pyproject.toml @@ -15,7 +15,6 @@ classifiers = [ "Development Status :: 3 - Alpha", "Intended Audience :: Developers", "Programming Language :: Python :: 3", - "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", "Programming Language :: Python :: 3.13", diff --git a/python/packages/hosting-telegram/pyproject.toml b/python/packages/hosting-telegram/pyproject.toml index 81d6771c2a0..193da69fb02 100644 --- a/python/packages/hosting-telegram/pyproject.toml +++ b/python/packages/hosting-telegram/pyproject.toml @@ -15,7 +15,6 @@ classifiers = [ "Development Status :: 3 - Alpha", "Intended Audience :: Developers", "Programming Language :: Python :: 3", - "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", "Programming Language :: Python :: 3.13", diff --git a/python/packages/hosting/pyproject.toml b/python/packages/hosting/pyproject.toml index a334ede2b7d..37a231196ff 100644 --- a/python/packages/hosting/pyproject.toml +++ b/python/packages/hosting/pyproject.toml @@ -15,7 +15,6 @@ classifiers = [ "Development Status :: 3 - Alpha", "Intended Audience :: Developers", "Programming Language :: Python :: 3", - "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", "Programming Language :: Python :: 3.13", diff --git a/python/packages/hyperlight/pyproject.toml b/python/packages/hyperlight/pyproject.toml index 107fcd4b301..20b919430a8 100644 --- a/python/packages/hyperlight/pyproject.toml +++ b/python/packages/hyperlight/pyproject.toml @@ -15,7 +15,6 @@ classifiers = [ "Development Status :: 4 - Beta", "Intended Audience :: Developers", "Programming Language :: Python :: 3", - "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", "Programming Language :: Python :: 3.13", diff --git a/python/packages/lab/README.md b/python/packages/lab/README.md index fe76e9dbf22..03b0578aca8 100644 --- a/python/packages/lab/README.md +++ b/python/packages/lab/README.md @@ -53,7 +53,8 @@ pip install "agent-framework-lab[tau2]" pip install "agent-framework-lab[lightning]" ``` -Lab currently supports Python 3.10–3.14. PyArrow 26 now provides Python 3.15 +Lab currently supports Python 3.11–3.14. Python 3.10 installation remains +permitted, but compatibility is not guaranteed. PyArrow 26 now provides Python 3.15 wheels for the GAIA extra, but the Tau2 dependency chain still includes DeepDiff with `cachebox` 5.x, whose PyO3 version rejects Python 3.15 builds. diff --git a/python/packages/lab/pyproject.toml b/python/packages/lab/pyproject.toml index faeecb2b4b8..496f00d91d3 100644 --- a/python/packages/lab/pyproject.toml +++ b/python/packages/lab/pyproject.toml @@ -15,7 +15,6 @@ classifiers = [ "Development Status :: 4 - Beta", "Intended Audience :: Developers", "Programming Language :: Python :: 3", - "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", "Programming Language :: Python :: 3.13", diff --git a/python/packages/mem0/pyproject.toml b/python/packages/mem0/pyproject.toml index bde33cc199f..0394f829a92 100644 --- a/python/packages/mem0/pyproject.toml +++ b/python/packages/mem0/pyproject.toml @@ -15,7 +15,6 @@ classifiers = [ "Development Status :: 4 - Beta", "Intended Audience :: Developers", "Programming Language :: Python :: 3", - "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", "Programming Language :: Python :: 3.13", diff --git a/python/packages/mistral/pyproject.toml b/python/packages/mistral/pyproject.toml index 055d2af00c3..28812c9e258 100644 --- a/python/packages/mistral/pyproject.toml +++ b/python/packages/mistral/pyproject.toml @@ -15,7 +15,6 @@ classifiers = [ "Development Status :: 4 - Beta", "Intended Audience :: Developers", "Programming Language :: Python :: 3", - "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", "Programming Language :: Python :: 3.13", diff --git a/python/packages/mongodb/README.md b/python/packages/mongodb/README.md index b9d8c768faf..676685a9e99 100644 --- a/python/packages/mongodb/README.md +++ b/python/packages/mongodb/README.md @@ -11,7 +11,10 @@ An alpha MongoDB integration for [Microsoft Agent Framework](https://learn.micro pip install agent-framework-mongodb --pre ``` -Requires Python 3.10+, PyMongo 4.13.2+, and a MongoDB deployment with +Supports Python 3.11–3.15. Python 3.10 installation remains permitted, but +compatibility is not guaranteed. + +Requires PyMongo 4.13.2+ and a MongoDB deployment with [MongoDB Vector Search](https://www.mongodb.com/docs/vector-search/). Search-index creation requires the corresponding database permissions. diff --git a/python/packages/mongodb/pyproject.toml b/python/packages/mongodb/pyproject.toml index 5ac540cec7b..1ad2e8e88c6 100644 --- a/python/packages/mongodb/pyproject.toml +++ b/python/packages/mongodb/pyproject.toml @@ -14,7 +14,6 @@ classifiers = [ "Development Status :: 3 - Alpha", "Intended Audience :: Developers", "Programming Language :: Python :: 3", - "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", "Programming Language :: Python :: 3.13", diff --git a/python/packages/monty/pyproject.toml b/python/packages/monty/pyproject.toml index 013db6979dc..4bd5a17db75 100644 --- a/python/packages/monty/pyproject.toml +++ b/python/packages/monty/pyproject.toml @@ -15,7 +15,6 @@ classifiers = [ "Development Status :: 4 - Beta", "Intended Audience :: Developers", "Programming Language :: Python :: 3", - "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", "Programming Language :: Python :: 3.13", diff --git a/python/packages/nvidia/pyproject.toml b/python/packages/nvidia/pyproject.toml index 8d582dd3615..cc791be3b09 100644 --- a/python/packages/nvidia/pyproject.toml +++ b/python/packages/nvidia/pyproject.toml @@ -14,7 +14,6 @@ classifiers = [ "Development Status :: 3 - Alpha", "Intended Audience :: Developers", "Programming Language :: Python :: 3", - "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", "Programming Language :: Python :: 3.13", diff --git a/python/packages/ollama/pyproject.toml b/python/packages/ollama/pyproject.toml index c55542533e4..ad7614cb92b 100644 --- a/python/packages/ollama/pyproject.toml +++ b/python/packages/ollama/pyproject.toml @@ -15,7 +15,6 @@ classifiers = [ "Development Status :: 4 - Beta", "Intended Audience :: Developers", "Programming Language :: Python :: 3", - "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", "Programming Language :: Python :: 3.13", diff --git a/python/packages/openai/pyproject.toml b/python/packages/openai/pyproject.toml index 09625125544..8afa5f3a872 100644 --- a/python/packages/openai/pyproject.toml +++ b/python/packages/openai/pyproject.toml @@ -15,7 +15,6 @@ classifiers = [ "Development Status :: 5 - Production/Stable", "Intended Audience :: Developers", "Programming Language :: Python :: 3", - "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", "Programming Language :: Python :: 3.13", diff --git a/python/packages/oracle/README.md b/python/packages/oracle/README.md index 6560a078fbe..184ed5cc726 100644 --- a/python/packages/oracle/README.md +++ b/python/packages/oracle/README.md @@ -11,7 +11,10 @@ describes the connection and pool settings resolved through Agent Framework. pip install agent-framework-oracle --pre ``` -Requires Python 3.10+, Oracle AI Database 26ai with `COMPATIBLE` set to +Supports Python 3.11–3.15. Python 3.10 installation remains permitted, but +compatibility is not guaranteed. + +Requires Oracle AI Database 26ai with `COMPATIBLE` set to **23.4.0 or higher**, `python-oracledb` 2.2.x or 3.x, and permission to create/drop tables in the connected user's schema. The connector uses the driver's async Thin-mode API; it does not initialize the Thick client or diff --git a/python/packages/oracle/pyproject.toml b/python/packages/oracle/pyproject.toml index f6c39d5a2c3..1492131767c 100644 --- a/python/packages/oracle/pyproject.toml +++ b/python/packages/oracle/pyproject.toml @@ -14,7 +14,6 @@ classifiers = [ "Development Status :: 3 - Alpha", "Intended Audience :: Developers", "Programming Language :: Python :: 3", - "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", "Programming Language :: Python :: 3.13", diff --git a/python/packages/orchestrations/pyproject.toml b/python/packages/orchestrations/pyproject.toml index d8a3270d7e8..0cbd36a98a0 100644 --- a/python/packages/orchestrations/pyproject.toml +++ b/python/packages/orchestrations/pyproject.toml @@ -15,7 +15,6 @@ classifiers = [ "Development Status :: 5 - Production/Stable", "Intended Audience :: Developers", "Programming Language :: Python :: 3", - "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", "Programming Language :: Python :: 3.13", diff --git a/python/packages/postgres/README.md b/python/packages/postgres/README.md index 2db7240b46c..5858da32866 100644 --- a/python/packages/postgres/README.md +++ b/python/packages/postgres/README.md @@ -14,7 +14,10 @@ The package uses Psycopg 3 and the official pgvector Python adapter. pip install agent-framework-postgres --pre ``` -Requires Python 3.10+, PostgreSQL 13+, and pgvector 0.8.0+. +Supports Python 3.11–3.15. Python 3.10 installation remains permitted, but +compatibility is not guaranteed. + +Requires PostgreSQL 13+ and pgvector 0.8.0+. Import the connector directly from `agent_framework_postgres`. Python 3.10 through 3.14 install Psycopg's binary distribution. Python 3.15+ uses the pure-Python implementation because binary wheels are not yet diff --git a/python/packages/postgres/pyproject.toml b/python/packages/postgres/pyproject.toml index 1f022226b10..c6ba69d8232 100644 --- a/python/packages/postgres/pyproject.toml +++ b/python/packages/postgres/pyproject.toml @@ -14,7 +14,6 @@ classifiers = [ "Development Status :: 3 - Alpha", "Intended Audience :: Developers", "Programming Language :: Python :: 3", - "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", "Programming Language :: Python :: 3.13", diff --git a/python/packages/purview/pyproject.toml b/python/packages/purview/pyproject.toml index 8a78f0b5769..43714d823ac 100644 --- a/python/packages/purview/pyproject.toml +++ b/python/packages/purview/pyproject.toml @@ -15,7 +15,6 @@ classifiers = [ "Development Status :: 4 - Beta", "Intended Audience :: Developers", "Programming Language :: Python :: 3", - "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", "Programming Language :: Python :: 3.13", diff --git a/python/packages/qdrant/README.md b/python/packages/qdrant/README.md index faea8292e79..636eb99b000 100644 --- a/python/packages/qdrant/README.md +++ b/python/packages/qdrant/README.md @@ -10,7 +10,10 @@ collection clients, and `QdrantSettings` handles connection configuration. pip install agent-framework-qdrant --pre ``` -Requires Python 3.10+ and Qdrant server 1.16.2+. The official async +Supports Python 3.11–3.15. Python 3.10 installation remains permitted, but +compatibility is not guaranteed. + +Requires Qdrant server 1.16.2+. The official async `qdrant-client` SDK is installed automatically. ## Connection settings diff --git a/python/packages/qdrant/pyproject.toml b/python/packages/qdrant/pyproject.toml index aefc15f6f45..7efc862bc3d 100644 --- a/python/packages/qdrant/pyproject.toml +++ b/python/packages/qdrant/pyproject.toml @@ -14,7 +14,6 @@ classifiers = [ "Development Status :: 3 - Alpha", "Intended Audience :: Developers", "Programming Language :: Python :: 3", - "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", "Programming Language :: Python :: 3.13", diff --git a/python/packages/redis/README.md b/python/packages/redis/README.md index a71506d8a49..c3aa80b6ab0 100644 --- a/python/packages/redis/README.md +++ b/python/packages/redis/README.md @@ -18,7 +18,8 @@ records. Import them from `agent_framework.redis` or `agent_framework_redis`. ## Install -Requires Python 3.10–3.14. RedisVL currently declares `Requires-Python <3.15`, +Supports Python 3.11–3.14. Python 3.10 installation remains permitted, but +compatibility is not guaranteed. RedisVL currently declares `Requires-Python <3.15`, so pip cannot install this connector on Python 3.15 yet: ```bash diff --git a/python/packages/redis/pyproject.toml b/python/packages/redis/pyproject.toml index df6da793b97..2ca5dfcf4da 100644 --- a/python/packages/redis/pyproject.toml +++ b/python/packages/redis/pyproject.toml @@ -15,7 +15,6 @@ classifiers = [ "Development Status :: 4 - Beta", "Intended Audience :: Developers", "Programming Language :: Python :: 3", - "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", "Programming Language :: Python :: 3.13", diff --git a/python/packages/sql-server/README.md b/python/packages/sql-server/README.md index 17c0064a4d2..8d0fd475954 100644 --- a/python/packages/sql-server/README.md +++ b/python/packages/sql-server/README.md @@ -11,7 +11,10 @@ columns, with exact, database-side similarity search. This alpha package exports pip install agent-framework-sql-server --pre ``` -Requires Python 3.10 or later and a vector-enabled database: SQL Server 2025 +Supports Python 3.11–3.15. Python 3.10 installation remains permitted, +but compatibility is not guaranteed. + +Requires a vector-enabled database: SQL Server 2025 (17.x), Azure SQL Database, Azure SQL Managed Instance on the SQL Server 2025 or Always-up-to-date update policy, or SQL database in Microsoft Fabric. Older SQL Server releases do not support `VECTOR`/`VECTOR_DISTANCE`. diff --git a/python/packages/sql-server/pyproject.toml b/python/packages/sql-server/pyproject.toml index c15ed3a6697..0a0afa6ffc5 100644 --- a/python/packages/sql-server/pyproject.toml +++ b/python/packages/sql-server/pyproject.toml @@ -14,7 +14,6 @@ classifiers = [ "Development Status :: 3 - Alpha", "Intended Audience :: Developers", "Programming Language :: Python :: 3", - "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", "Programming Language :: Python :: 3.13", diff --git a/python/packages/tools/pyproject.toml b/python/packages/tools/pyproject.toml index b4c307d8c77..80e4a3ef603 100644 --- a/python/packages/tools/pyproject.toml +++ b/python/packages/tools/pyproject.toml @@ -15,7 +15,6 @@ classifiers = [ "Development Status :: 4 - Beta", "Intended Audience :: Developers", "Programming Language :: Python :: 3", - "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", "Programming Language :: Python :: 3.13", diff --git a/python/packages/typesafe/pyproject.toml b/python/packages/typesafe/pyproject.toml index 6a7a8f94a4e..ed658a9c754 100644 --- a/python/packages/typesafe/pyproject.toml +++ b/python/packages/typesafe/pyproject.toml @@ -15,7 +15,6 @@ classifiers = [ "Development Status :: 3 - Alpha", "Intended Audience :: Developers", "Programming Language :: Python :: 3", - "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", "Programming Language :: Python :: 3.13", diff --git a/python/pyproject.toml b/python/pyproject.toml index 5f81f44adb4..fe902d5f8e8 100644 --- a/python/pyproject.toml +++ b/python/pyproject.toml @@ -15,7 +15,6 @@ classifiers = [ "Development Status :: 5 - Production/Stable", "Intended Audience :: Developers", "Programming Language :: Python :: 3", - "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", "Programming Language :: Python :: 3.13", diff --git a/python/samples/02-agents/skills/mcp_based_skill/README.md b/python/samples/02-agents/skills/mcp_based_skill/README.md index 02b0e7a75a1..f161e54b125 100644 --- a/python/samples/02-agents/skills/mcp_based_skill/README.md +++ b/python/samples/02-agents/skills/mcp_based_skill/README.md @@ -22,7 +22,7 @@ This sample demonstrates how to discover **Agent Skills served over MCP** with a ### Prerequisites -- Python 3.10+ +- Python 3.11–3.15 - A [Microsoft Foundry](https://ai.azure.com/) project with a deployed model - Azure CLI authentication (`az login`) - A running MCP server that hosts SEP-2640 skill resources (see "Providing diff --git a/python/samples/04-hosting/foundry-hosted-agents/README.md b/python/samples/04-hosting/foundry-hosted-agents/README.md index 1c91b59bfea..a7d0bb8446d 100644 --- a/python/samples/04-hosting/foundry-hosted-agents/README.md +++ b/python/samples/04-hosting/foundry-hosted-agents/README.md @@ -187,7 +187,7 @@ Or in PowerShell: 1. An existing Foundry project 2. A deployed model in your Foundry project 3. Azure CLI installed and authenticated -4. Python 3.10 or later +4. Python 3.11–3.15, subject to the selected sample's dependency requirements #### Running the Agent Host with Python diff --git a/python/samples/05-end-to-end/ag_ui_single_agent/README.md b/python/samples/05-end-to-end/ag_ui_single_agent/README.md index b1d2bfb1ff6..d063ad29ae0 100644 --- a/python/samples/05-end-to-end/ag_ui_single_agent/README.md +++ b/python/samples/05-end-to-end/ag_ui_single_agent/README.md @@ -13,7 +13,7 @@ and human-in-the-loop resumes, see [`../ag_ui_workflow_handoff`](../ag_ui_workfl ## Prerequisites -- Python 3.10+ +- Python 3.11–3.15 - Node.js 20.19+ or 22.12+ - npm 9+ - Azure AI project + model deployment configured in environment variables: diff --git a/python/samples/05-end-to-end/ag_ui_workflow_handoff/README.md b/python/samples/05-end-to-end/ag_ui_workflow_handoff/README.md index d0ab934ea37..748c65ff4e4 100644 --- a/python/samples/05-end-to-end/ag_ui_workflow_handoff/README.md +++ b/python/samples/05-end-to-end/ag_ui_workflow_handoff/README.md @@ -27,7 +27,7 @@ terminated workflow. ## Prerequisites -- Python 3.10+ +- Python 3.11–3.15 - Node.js 18+ - npm 9+ - Azure AI project + model deployment configured in environment variables: diff --git a/python/samples/05-end-to-end/chatkit-integration/README.md b/python/samples/05-end-to-end/chatkit-integration/README.md index 5a8639fa519..6551d95acf0 100644 --- a/python/samples/05-end-to-end/chatkit-integration/README.md +++ b/python/samples/05-end-to-end/chatkit-integration/README.md @@ -133,7 +133,7 @@ async for event in stream_widget(thread_id=thread.id, widget=widget): ### Prerequisites -- Python 3.10+ +- Python 3.11–3.15 - Node.js 18.18+ and npm 9+ - Azure OpenAI service configured - Azure CLI for authentication (`az login`) diff --git a/python/samples/autogen-migration/README.md b/python/samples/autogen-migration/README.md index 30f03e3feaa..39e51b952c7 100644 --- a/python/samples/autogen-migration/README.md +++ b/python/samples/autogen-migration/README.md @@ -22,7 +22,7 @@ Each script is fully async and the `main()` routine runs both implementations ba ## Prerequisites -- Python 3.10 or later. +- Python 3.11–3.15, subject to AutoGen's dependency requirements. - Access to the necessary model endpoints (Azure OpenAI, OpenAI, etc.). - Installed SDKs: Install AutoGen and the Microsoft Agent Framework with: ```bash diff --git a/python/samples/semantic-kernel-migration/README.md b/python/samples/semantic-kernel-migration/README.md index f971c4c34ce..ed11a276f89 100644 --- a/python/samples/semantic-kernel-migration/README.md +++ b/python/samples/semantic-kernel-migration/README.md @@ -41,7 +41,7 @@ part of this migration gallery. Each script is fully async and the `main()` routine runs both implementations back to back so you can observe their outputs in a single execution. ## Prerequisites -- Python 3.10 or later. +- Python 3.11–3.15, subject to Semantic Kernel's dependency requirements. - Access to the necessary model endpoints (Azure OpenAI, OpenAI, Azure AI, Copilot Studio, etc.). - Installed SDKs: `semantic-kernel` and the Microsoft Agent Framework (`pip install semantic-kernel agent-framework`), or the repo’s editable packages if you are developing locally. - Service credentials exposed through environment variables (for example `OPENAI_API_KEY`, `AZURE_OPENAI_ENDPOINT`, `AZURE_OPENAI_API_KEY`, or Copilot Studio auth settings). @@ -57,7 +57,7 @@ Every script accepts no CLI arguments and will first call the SK implementation, Advanced comparisons are split between `samantic-kernel-migration/orchestrations` (Sequential, Concurrent, Magentic) and `samantic-kernel-migration/processes` (fan-out/fan-in, nested). You can run them directly, or isolate dependencies in a throwaway virtual environment: ``` cd samples/semantic-kernel-migration -uv venv --python 3.10 .venv-migration +uv venv --python 3.11 .venv-migration source .venv-migration/bin/activate uv pip install semantic-kernel agent-framework uv run python orchestrations/sequential.py