Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/workflows/python-lab-tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -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:
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/python-tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -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.
Expand All @@ -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
Expand Down
2 changes: 1 addition & 1 deletion TRANSPARENCY_FAQ.md
Original file line number Diff line number Diff line change
Expand Up @@ -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.
Expand Down
26 changes: 15 additions & 11 deletions python/DEV_SETUP.md
Original file line number Diff line number Diff line change
Expand Up @@ -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
Expand All @@ -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
Expand Down
12 changes: 6 additions & 6 deletions python/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -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
Comment thread
eavanvalkenburg marked this conversation as resolved.
- 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

Expand Down
1 change: 0 additions & 1 deletion python/packages/a2a/pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -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",
Expand Down
5 changes: 4 additions & 1 deletion python/packages/ag-ui/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -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]"
Expand Down
2 changes: 1 addition & 1 deletion python/packages/ag-ui/getting_started/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -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
Expand Down
1 change: 0 additions & 1 deletion python/packages/ag-ui/pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -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",
Expand Down
1 change: 0 additions & 1 deletion python/packages/anthropic/pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -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",
Expand Down
3 changes: 2 additions & 1 deletion python/packages/azure-ai-search/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -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
Expand Down
1 change: 0 additions & 1 deletion python/packages/azure-ai-search/pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -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",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -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",
Expand Down
5 changes: 4 additions & 1 deletion python/packages/azure-cosmos/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -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.
Expand Down
1 change: 0 additions & 1 deletion python/packages/azure-cosmos/pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -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",
Expand Down
5 changes: 4 additions & 1 deletion python/packages/azure-documentdb/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -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.
Expand Down
1 change: 0 additions & 1 deletion python/packages/azure-documentdb/pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -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",
Expand Down
1 change: 0 additions & 1 deletion python/packages/bedrock/pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -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",
Expand Down
1 change: 0 additions & 1 deletion python/packages/chatkit/pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -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",
Expand Down
1 change: 0 additions & 1 deletion python/packages/claude/pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -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",
Expand Down
1 change: 0 additions & 1 deletion python/packages/copilotstudio/pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -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",
Expand Down
12 changes: 7 additions & 5 deletions python/packages/core/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -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

Expand Down
1 change: 0 additions & 1 deletion python/packages/core/pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -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",
Expand Down
3 changes: 2 additions & 1 deletion python/packages/declarative/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -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.
Expand Down
1 change: 0 additions & 1 deletion python/packages/declarative/pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -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",
Expand Down
1 change: 0 additions & 1 deletion python/packages/devui/pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -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",
Expand Down
3 changes: 2 additions & 1 deletion python/packages/duckdb/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -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
Expand Down
1 change: 0 additions & 1 deletion python/packages/duckdb/pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -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",
Expand Down
1 change: 0 additions & 1 deletion python/packages/foundry/pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -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",
Expand Down
1 change: 0 additions & 1 deletion python/packages/foundry_hosting/pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -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",
Expand Down
1 change: 0 additions & 1 deletion python/packages/foundry_local/pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -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",
Expand Down
1 change: 0 additions & 1 deletion python/packages/gemini/pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -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",
Expand Down
1 change: 0 additions & 1 deletion python/packages/hosting-a2a/pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -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",
Expand Down
1 change: 0 additions & 1 deletion python/packages/hosting-mcp/pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -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",
Expand Down
1 change: 0 additions & 1 deletion python/packages/hosting-responses/pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -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",
Expand Down
1 change: 0 additions & 1 deletion python/packages/hosting-telegram/pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -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",
Expand Down
1 change: 0 additions & 1 deletion python/packages/hosting/pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -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",
Expand Down
1 change: 0 additions & 1 deletion python/packages/hyperlight/pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -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",
Expand Down
Loading
Loading