Skip to content

Python: [BREAKING] update to v1.0.0#5062

Merged
eavanvalkenburg merged 3 commits intomicrosoft:mainfrom
eavanvalkenburg:v1
Apr 2, 2026
Merged

Python: [BREAKING] update to v1.0.0#5062
eavanvalkenburg merged 3 commits intomicrosoft:mainfrom
eavanvalkenburg:v1

Conversation

@eavanvalkenburg
Copy link
Copy Markdown
Member

Motivation and Context

Updates Agent Framework to v1.0.0, for core, openai, foundry and the meta package.

Adds a package status md to the root to track status
Updated readme's with or without --pre in the install command
Also removed last deprecated pieces
Final fixes on samples

Closes: #5031

Description

Contribution Checklist

  • The code builds clean without any errors or warnings
  • The PR follows the Contribution Guidelines
  • All unit tests pass, and I have added new tests where possible
  • Is this a breaking change? If yes, add "[BREAKING]" prefix to the title of the PR.

@eavanvalkenburg eavanvalkenburg requested a review from a team as a code owner April 2, 2026 14:23
Copilot AI review requested due to automatic review settings April 2, 2026 14:23
@markwallace-microsoft markwallace-microsoft added documentation Improvements or additions to documentation python lab Agent Framework Lab labels Apr 2, 2026
@markwallace-microsoft
Copy link
Copy Markdown
Contributor

markwallace-microsoft commented Apr 2, 2026

Python Test Coverage

Python Test Coverage Report •
FileStmtsMissCoverMissing
packages/azure-ai-search/agent_framework_azure_ai_search
   _context_provider.py3561097%120–121, 524, 575–576, 701–702, 880–881, 928
packages/azurefunctions/agent_framework_azurefunctions
   _workflow.py32722132%154, 159, 161, 168, 217–219, 289–291, 293–295, 317, 323, 325–327, 350–351, 353–360, 362, 369, 394, 397–406, 409–410, 412, 439–440, 443–444, 447–453, 456–457, 460–465, 468–471, 474, 476–480, 495–497, 499, 502–503, 506–511, 513–514, 516–517, 519–520, 523, 541–545, 552, 577, 584–586, 589–590, 592, 640, 643–644, 647, 652, 654–656, 659, 664–668, 671–674, 676–677, 680–684, 686–687, 690–691, 694–695, 698, 700, 703–704, 707, 723–724, 727–728, 730, 732, 734, 737–738, 746–751, 754, 757, 764–766, 771, 773, 776, 803–805, 808, 811–813, 815–817, 820–823, 833–835, 837–840, 850, 852, 866–867, 905, 908–910, 913, 916, 919, 921–922, 928, 932, 941, 945, 958, 964–965, 970–972, 975–977, 980–987, 992–993
packages/chatkit/agent_framework_chatkit
   _converter.py1344665%117, 122, 170, 172, 340, 393, 395, 414–416, 418, 436, 438, 440, 443, 455, 465, 483, 503–527, 529–531
packages/core/agent_framework
   _clients.py137794%325, 376, 532–535, 650
   _compaction.py6346889%104, 150–162, 169–171, 177–178, 193–196, 203–205, 229, 243, 250, 265–266, 320, 327, 343, 393, 417, 447, 494, 500, 502, 521, 565–570, 582, 654, 656, 671, 715, 777, 899, 960, 962, 978, 985, 990, 1005, 1013, 1107, 1110, 1128, 1144, 1240, 1267, 1272
   _middleware.py3661695%61, 64, 69, 798, 814, 816, 818, 951, 954, 981, 983, 1114, 1118, 1300, 1304, 1372
   _serialization.py119595%388, 515, 532, 542, 610
   _sessions.py2733089%82–84, 86–89, 106–107, 109–113, 190–191, 281, 542–546, 588, 591, 625, 674, 678, 688, 821, 837
   _types.py10809091%58, 67–68, 122, 127, 146, 148, 152, 156, 158, 160, 162, 180, 184, 210, 232, 237, 242, 246, 276, 687–688, 847–848, 1233, 1305, 1340, 1360, 1370, 1422, 1554–1556, 1738, 1841–1846, 1871, 1959, 1965–1967, 1972, 2063, 2075, 2098, 2353, 2377, 2472, 2721, 2927, 2996, 3007, 3009–3013, 3015, 3018–3026, 3036, 3240–3242, 3245–3247, 3251, 3256, 3260, 3344–3346, 3375, 3452–3456
packages/core/agent_framework/_workflows
   _message_utils.py19478%21, 27, 35, 39
packages/declarative/agent_framework_declarative/_workflows
   _executors_agents.py4388480%95–96, 113–115, 156–157, 164, 192, 195–196, 204–205, 215, 226–231, 497, 535–537, 540, 556, 572–576, 600, 605, 695, 701–706, 713, 737–738, 747–749, 798–799, 807, 826, 933–936, 943–944, 953–954, 966–971, 975–976, 978, 983, 985, 989–992, 995, 997–998, 1001, 1009–1011, 1013, 1016–1017, 1019
   _executors_tools.py196398%227, 570–571
packages/foundry/agent_framework_foundry
   _memory_provider.py920100% 
packages/mem0/agent_framework_mem0
   _context_provider.py77198%128
packages/orchestrations/agent_framework_orchestrations
   _base_group_chat_orchestrator.py1661292%109, 277, 292, 326–328, 332, 351, 412, 458–460
   _group_chat.py3287078%173, 336, 343, 372, 383–384, 390, 395, 416, 420, 433–434, 447, 462–463, 465, 481, 508–513, 515, 548–551, 553, 558–562, 650, 653, 692, 695, 698, 701, 709, 721–722, 724–725, 727–728, 730, 735, 738, 747, 753, 797–798, 802–803, 817–818, 820–821, 852–853, 919, 938, 946, 951–953, 960, 970
   _handoff.py3845785%106–107, 109, 162–172, 174, 176, 178, 183, 277, 283, 315, 338, 397, 422, 479, 511, 569–570, 600, 608, 612–613, 651–653, 658–660, 778, 781, 794, 856, 861, 868, 878, 880, 899, 901, 983–984, 1016–1017, 1099, 1106, 1178–1179, 1181
   _magentic.py5919184%64–73, 78, 82–93, 258, 269, 273, 293, 354, 363, 365, 407, 424, 433–434, 436–438, 440, 451, 594, 596, 636, 686, 722–724, 726, 736, 744–745, 812–815, 906, 912, 918, 960, 998, 1030, 1047, 1058, 1113–1114, 1118–1120, 1144, 1168–1169, 1182, 1198, 1220, 1268–1269, 1307–1308, 1471, 1474, 1483, 1486, 1491, 1542–1543, 1584–1585, 1633, 1663, 1721, 1735, 1746
   _orchestration_request_info.py560100% 
   _orchestrator_helpers.py15286%66–67
packages/purview/agent_framework_purview
   _middleware.py1190100% 
packages/redis/agent_framework_redis
   _context_provider.py1785171%239, 242, 248–249, 251–252, 254–256, 258–260, 262–264, 266–277, 279–280, 282, 285–290, 318, 320, 324–325, 328–331, 352, 363, 408, 410–411, 415–416
TOTAL27030318588% 

Python Unit Test Overview

Tests Skipped Failures Errors Time
5368 20 💤 0 ❌ 0 🔥 1m 28s ⏱️

Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR finalizes the Python v1.0.0 release by updating package versions/metadata, completing the Message API migration (from text= to contents=), removing deprecated aliases, and aligning docs/samples/scripts with the GA surface.

Changes:

  • Promote core/openai/foundry/meta packages to 1.0.0 and update other connectors’ dependency bounds to agent-framework-core>=1.0.0,<2.
  • Migrate samples/tests/scripts from Message(text=...) to Message(contents=[...]) and remove deprecated provider aliases.
  • Update installation docs to drop --pre for released packages and add python/PACKAGE_STATUS.md.

Reviewed changes

Copilot reviewed 169 out of 170 changed files in this pull request and generated 3 comments.

Show a summary per file
File Description
python/scripts/sample_validation/create_dynamic_workflow_executor.py Update Message construction to contents=[...].
python/scripts/dependencies/upgrade_dev_dependencies.py Add verbose logging support for dev-dependency pin upgrades.
python/scripts/dependencies/_dependency_bounds_upper_impl.py Adjust dev-pin refresh to prefer configured version source (PyPI/lock) and add debug logs.
python/samples/semantic-kernel-migration/orchestrations/handoff.py Update Message creation to contents=[...].
python/samples/README.md Remove --pre from released package install instructions.
python/samples/AGENTS.md Remove --pre guidance for released packages and update wording.
python/samples/05-end-to-end/workflow_evaluation/create_workflow.py Convert prompts to contents=[...].
python/samples/05-end-to-end/purview_agent/sample_purview_agent.py Convert user messages to contents=[...].
python/samples/05-end-to-end/hosted_agents/agent_with_text_search_rag/main.py Convert context-injected message to contents=[...].
python/samples/05-end-to-end/evaluation/red_teaming/red_team_agent_sample.py Convert message mapping to contents=[...].
python/samples/05-end-to-end/chatkit-integration/app.py Convert prompts to contents=[...] for agent messaging.
python/samples/04-hosting/azure_functions/12_workflow_hitl/function_app.py Convert request messages to contents=[...].
python/samples/04-hosting/azure_functions/09_workflow_shared_state/function_app.py Convert workflow forwarded messages to contents=[...].
python/samples/03-workflows/visualization/concurrent_with_visualization.py Convert message initialization to contents=[...].
python/samples/03-workflows/state-management/state_with_agents.py Convert workflow messages to contents=[...].
python/samples/03-workflows/parallelism/fan_out_fan_in_edges.py Convert message initialization to contents=[...].
python/samples/03-workflows/orchestrations/concurrent_custom_aggregator.py Convert system/user messages to contents=[...].
python/samples/03-workflows/human-in-the-loop/guessing_game_with_human_input.py Convert HITL prompt messages to contents=[...].
python/samples/03-workflows/human-in-the-loop/concurrent_request_info.py Convert system/user messages to contents=[...].
python/samples/03-workflows/human-in-the-loop/agents_with_HITL.py Convert appended feedback messages to contents=[...].
python/samples/03-workflows/control-flow/switch_case_edge_group.py Convert forwarded email messages to contents=[...].
python/samples/03-workflows/control-flow/simple_loop.py Convert loop prompt message to contents=[...].
python/samples/03-workflows/control-flow/multi_selection_edge_group.py Convert forwarded email messages to contents=[...].
python/samples/03-workflows/control-flow/edge_condition.py Convert bridge and start messages to contents=[...].
python/samples/03-workflows/checkpoint/checkpoint_with_human_in_the_loop.py Convert checkpointed workflow messages to contents=[...].
python/samples/03-workflows/agents/workflow_as_agent_reflection_pattern.py Convert system prompt to contents=[...].
python/samples/03-workflows/agents/azure_chat_agents_tool_calls_with_feedback.py Convert feedback messages to contents=[...].
python/samples/02-agents/typed_options.py Convert demo prompts to contents=[...].
python/samples/02-agents/response_stream.py Convert constructed response messages to contents=[...].
python/samples/02-agents/providers/ollama/ollama_chat_client.py Convert user prompt to contents=[...].
python/samples/02-agents/providers/foundry/foundry_chat_client_code_interpreter_files.py Update to Foundry client OpenAI accessor + wrap agent tool usage and cleanup in finally.
python/samples/02-agents/providers/foundry/foundry_agent_with_function_tools.py Switch to env-based config and implicit tool wrapping; update typing to Annotated[..., \"...\"].
python/samples/02-agents/providers/foundry/foundry_agent_with_env_vars.py Remove redundant env-var sample (deleted).
python/samples/02-agents/providers/foundry/foundry_agent_hosted.py Move Foundry config to env vars; load .env.
python/samples/02-agents/providers/foundry/foundry_agent_custom_client.py Move Foundry config to env vars; load .env.
python/samples/02-agents/providers/azure/openai_client_with_session.py Update Agent.run() store control to options={\"store\": ...}.
python/samples/02-agents/providers/anthropic/anthropic_advanced.py Update client construction pattern and document env vars.
python/samples/02-agents/observability/configure_otel_providers_with_parameters.py Convert prompts to contents=[...].
python/samples/02-agents/observability/configure_otel_providers_with_env_var.py Convert prompts to contents=[...].
python/samples/02-agents/observability/advanced_zero_code.py Convert prompts to contents=[...].
python/samples/02-agents/observability/advanced_manual_setup_console_output.py Convert prompt to contents=[...].
python/samples/02-agents/middleware/override_result_with_middleware.py Convert constructed messages to contents=[...].
python/samples/02-agents/middleware/middleware_termination.py Convert termination message to contents=[...].
python/samples/02-agents/middleware/chat_middleware.py Convert middleware rejection message to contents=[...].
python/samples/02-agents/devui/agent_weather/agent.py Convert blocked response messages to contents=[...].
python/samples/02-agents/declarative/README.md Remove --pre from released connector install instructions.
python/samples/02-agents/declarative/openai_agent.py Reformat YAML path for readability.
python/samples/02-agents/declarative/microsoft_learn_agent.py Reformat YAML path for readability.
python/samples/02-agents/declarative/get_weather_agent.py Reformat YAML path for readability.
python/samples/02-agents/declarative/azure_openai_responses_agent.py Reformat YAML path for readability.
python/samples/02-agents/conversations/README.md Update provider base type naming in docs.
python/samples/02-agents/context_providers/README.md Update provider base type naming in docs.
python/samples/02-agents/compaction/tiktoken_tokenizer.py Convert sample conversation to contents=[...].
python/samples/02-agents/compaction/custom.py Convert sample conversation to contents=[...].
python/samples/02-agents/compaction/basics.py Convert sample conversation and summary message to contents=[...].
python/samples/02-agents/compaction/agent_client_overrides.py Convert sample conversation and responses to contents=[...].
python/samples/02-agents/compaction/advanced.py Convert sample history and summary message to contents=[...].
python/samples/02-agents/chat_client/custom_chat_client.py Convert user/assistant messages to contents=[...].
python/samples/02-agents/chat_client/chat_response_cancellation.py Convert prompt message to contents=[...].
python/samples/02-agents/chat_client/built_in_chat_clients.py Convert prompt message to contents=[...].
python/samples/01-get-started/README.md Remove --pre from released package install instructions.
python/README.md Update install guidance: drop --pre for released packages; keep it for preview connectors.
python/pyproject.toml Set meta package to 1.0.0, update dev tooling pins, and adjust upgrade-dev-dependencies sequence.
python/packages/redis/pyproject.toml Update version and core dependency bounds for beta release.
python/packages/redis/agent_framework_redis/_context_provider.py Convert injected message to contents=[...].
python/packages/purview/tests/purview/test_processor.py Update tests to use Message(contents=[...]).
python/packages/purview/pyproject.toml Update version, classifier, and core dependency bounds.
python/packages/purview/agent_framework_purview/_middleware.py Convert blocked-policy messages to contents=[...] and reduce duplication.
python/packages/orchestrations/tests/test_orchestration_request_info.py Update tests to contents=[...].
python/packages/orchestrations/tests/test_magentic.py Update captured messages to contents=[...].
python/packages/orchestrations/tests/test_handoff.py Update HITL response messages to contents=[...].
python/packages/orchestrations/tests/test_group_chat.py Update messages in tests to contents=[...].
python/packages/orchestrations/tests/test_concurrent.py Update test executor responses to contents=[...].
python/packages/orchestrations/pyproject.toml Update version and core dependency bounds.
python/packages/orchestrations/agent_framework_orchestrations/_orchestrator_helpers.py Convert cleaned/utility messages to contents=[...].
python/packages/orchestrations/agent_framework_orchestrations/_orchestration_request_info.py Convert factory messages to contents=[...].
python/packages/orchestrations/agent_framework_orchestrations/_magentic.py Convert internal prompts and emitted messages to contents=[...].
python/packages/orchestrations/agent_framework_orchestrations/_handoff.py Convert generated user messages to contents=[...].
python/packages/orchestrations/agent_framework_orchestrations/_group_chat.py Convert instruction/error messages to contents=[...].
python/packages/orchestrations/agent_framework_orchestrations/_base_group_chat_orchestrator.py Convert task and completion messages to contents=[...].
python/packages/openai/tests/openai/test_openai_chat_completion_client.py Update tests to contents=[...].
python/packages/openai/tests/openai/test_openai_chat_completion_client_base.py Update tests to contents=[...].
python/packages/openai/tests/openai/test_openai_chat_completion_client_azure.py Update tests to contents=[...].
python/packages/openai/tests/openai/test_openai_chat_client_azure.py Update tests to contents=[...].
python/packages/openai/README.md Remove --pre from released package install instructions.
python/packages/openai/pyproject.toml Promote to 1.0.0 and stable classifier; update core bounds.
python/packages/ollama/tests/test_ollama_chat_client.py Update tests to contents=[...].
python/packages/ollama/pyproject.toml Update version and core dependency bounds for beta release.
python/packages/mem0/pyproject.toml Update version and core dependency bounds for beta release.
python/packages/mem0/agent_framework_mem0/_context_provider.py Convert injected message to contents=[...].
python/packages/lab/tau2/agent_framework_lab_tau2/runner.py Convert hardcoded greeting messages to contents=[...].
python/packages/lab/pyproject.toml Update version, core bounds, and dev tooling pins.
python/packages/github_copilot/pyproject.toml Update version and core dependency bounds for beta release.
python/packages/foundry/tests/foundry/test_foundry_memory_provider.py Update tests to contents=[...].
python/packages/foundry/tests/foundry/test_foundry_chat_client.py Update tests to contents=[...].
python/packages/foundry/pyproject.toml Promote to 1.0.0 and stable classifier; update dependency bounds.
python/packages/foundry/agent_framework_foundry/_memory_provider.py Convert injected message to contents=[...].
python/packages/foundry_local/pyproject.toml Update version and dependency bounds for beta release.
python/packages/durabletask/tests/test_shim.py Update tests to contents=[...].
python/packages/durabletask/tests/test_durable_entities.py Update test helper messages to contents=[...].
python/packages/durabletask/pyproject.toml Update version, core bounds, and types dependency pin.
python/packages/devui/samples/README.md Remove relocated samples README (deleted).
python/packages/devui/samples/init.py Remove relocated samples package init (deleted).
python/packages/devui/pyproject.toml Update version, core bounds, and orchestrations beta pin.
python/packages/devui/agent_framework_devui/_utils.py Add legacy payload parsing to map {role,text} into Message(contents=...).
python/packages/devui/agent_framework_devui/_conversations.py Convert stored messages to contents=[...].
python/packages/declarative/pyproject.toml Update version and core dependency bounds for beta release.
python/packages/declarative/agent_framework_declarative/_workflows/_executors_tools.py Convert rejection message to contents=[...].
python/packages/declarative/agent_framework_declarative/_workflows/_executors_agents.py Convert user/assistant message construction to contents=[...].
python/packages/core/tests/workflow/test_workflow_kwargs.py Update tests to contents=[...].
python/packages/core/tests/workflow/test_workflow_builder.py Update tests to contents=[...].
python/packages/core/tests/workflow/test_workflow_agent.py Update tests to contents=[...].
python/packages/core/tests/workflow/test_full_conversation.py Update tests to contents=[...].
python/packages/core/tests/workflow/test_executor.py Update tests to contents=[...].
python/packages/core/tests/workflow/test_agent_run_event_typing.py Update tests to contents=[...].
python/packages/core/tests/workflow/test_agent_executor.py Update tests to contents=[...].
python/packages/core/tests/core/test_types.py Update tests to reflect Message(contents=[...]) construction.
python/packages/core/tests/core/test_sessions.py Remove deprecated alias tests; drop deprecated imports.
python/packages/core/tests/core/test_middleware_with_chat.py Update tests/middleware message mutations to contents=[...].
python/packages/core/tests/core/test_middleware_context_result.py Update tests to contents=[...].
python/packages/core/tests/core/test_clients.py Update tests to contents=[...].
python/packages/core/tests/core/test_as_tool_kwargs_propagation.py Update tests to contents=[...].
python/packages/core/tests/core/conftest.py Update mock default messages to contents=[...].
python/packages/core/README.md Remove --pre from released package install instructions.
python/packages/core/pyproject.toml Promote to 1.0.0 and stable classifier.
python/packages/core/AGENTS.md Update examples to Message(contents=[...]).
python/packages/core/agent_framework/_workflows/_message_utils.py Normalize strings/Content into Message(contents=[...]).
python/packages/core/agent_framework/_types.py Remove Message(text=...) ctor arg; rely on contents and keep .text property.
python/packages/core/agent_framework/_sessions.py Remove deprecated Base*Provider aliases.
python/packages/core/agent_framework/_serialization.py Update serialization example to contents=[...].
python/packages/core/agent_framework/_middleware.py Update system prompt injection to contents=[...].
python/packages/core/agent_framework/_compaction.py Update summarization prompt messages to contents=[...].
python/packages/core/agent_framework/_clients.py Update docs/examples and response message creation to contents=[...].
python/packages/core/agent_framework/init.py Stop exporting deprecated Base*Provider aliases.
python/packages/copilotstudio/pyproject.toml Update version and core dependency bounds for beta release.
python/packages/claude/pyproject.toml Update version and core dependency bounds for beta release.
python/packages/chatkit/pyproject.toml Update version and core dependency bounds for beta release.
python/packages/chatkit/agent_framework_chatkit/_converter.py Convert built messages to contents=[...] and update comments.
python/packages/bedrock/pyproject.toml Update version and core dependency bounds for beta release.
python/packages/azurefunctions/tests/test_workflow.py Update tests to contents=[...].
python/packages/azurefunctions/tests/test_orchestration.py Update tests to contents=[...].
python/packages/azurefunctions/tests/test_func_utils.py Update serialization roundtrip tests to contents=[...].
python/packages/azurefunctions/tests/test_entities.py Update helper messages to contents=[...].
python/packages/azurefunctions/tests/test_app.py Update mocked responses to contents=[...].
python/packages/azurefunctions/pyproject.toml Update version and core dependency bounds for beta release.
python/packages/azurefunctions/agent_framework_azurefunctions/_workflow.py Ensure response text is non-null and convert messages to contents=[...].
python/packages/azure-cosmos/pyproject.toml Update version and core dependency bounds for beta release.
python/packages/azure-ai-search/tests/test_aisearch_context_provider.py Update tests to contents=[...].
python/packages/azure-ai-search/pyproject.toml Update version and core dependency bounds for beta release.
python/packages/azure-ai-search/agent_framework_azure_ai_search/_context_provider.py Convert emitted/context messages to contents=[...].
python/packages/anthropic/pyproject.toml Update version and core dependency bounds for beta release.
python/packages/ag-ui/tests/ag_ui/test_ag_ui_client.py Update tests to contents=[...].
python/packages/ag-ui/pyproject.toml Update version and core dependency bounds for beta release.
python/packages/ag-ui/getting_started/client.py Convert prompt message to contents=[...].
python/packages/ag-ui/getting_started/client_advanced.py Convert prompts to contents=[...] and reformat call sites.
python/packages/a2a/pyproject.toml Update version and core dependency bounds for beta release.
python/PACKAGE_STATUS.md Add workspace-wide package lifecycle/status tracking.
python/.github/skills/python-package-management/SKILL.md Document package lifecycle stages, promotion path, and update requirements.

@eavanvalkenburg eavanvalkenburg added this pull request to the merge queue Apr 2, 2026
@github-merge-queue github-merge-queue bot removed this pull request from the merge queue due to failed status checks Apr 2, 2026
@westey-m westey-m added this pull request to the merge queue Apr 2, 2026
@github-merge-queue github-merge-queue bot removed this pull request from the merge queue due to failed status checks Apr 2, 2026
@eavanvalkenburg eavanvalkenburg added this pull request to the merge queue Apr 2, 2026
Merged via the queue into microsoft:main with commit 3446eb8 Apr 2, 2026
43 of 45 checks passed
alliscode pushed a commit to alliscode/agent-framework that referenced this pull request Apr 3, 2026
* updates to final deprecated pieces and versions

* fix mypy

* fix readme links
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

documentation Improvements or additions to documentation lab Agent Framework Lab python

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Python: final prep for v1.0

6 participants