The Azure SDK team is pleased to announce our September 2026 client library releases.

61 packages released this month.

Stable Packages (19)

  • AI Agent Server - Core

  • AI Projects

  • Cosmos DB

  • Machine Learning

  • Resource Management - Compute

  • Resource Management - Container Service

  • Resource Management - Data Protection

  • Resource Management - Edge Zones

  • Resource Management - Enclave

  • Resource Management - Network

  • Resource Management - New Relic Observability

  • Resource Management - ProviderHub

  • Resource Management - Recovery Services

  • Resource Management - Recovery Services Backup

  • Resource Management - Resource-Deployments

  • Resource Management - Service Groups

  • Resource Management - Service Networking

  • Resource Management - Storage Sync

  • unknown

Patch Updates (8)

  • AI Evaluation

  • Azure Monitor OpenTelemetry

  • Cosmos DB

  • Key Vault - Administration

  • Key Vault - Certificates

  • Key Vault - Keys

  • Key Vault - Secrets

  • Storage - Blobs

Beta Packages (25)

  • AI Agent Server - Core

  • App Configuration

  • App Configuration Provider

  • Azure AI Search

  • Key Vault - Security Domain

  • OpenTelemetry Exporter

  • Resource Management - Chaos

  • Resource Management - Cloud Health

  • Resource Management - Cognitive Services

  • Resource Management - Compute Bulk Actions

  • Resource Management - Compute Recommender

  • Resource Management - Container Registry

  • Resource Management - Container Service

  • Resource Management - Container Service Fleet

  • Resource Management - HorizonDB

  • Resource Management - NetApp Files

  • Resource Management - Pure Storage Block

  • Resource Management - Redhatopenshifthcp

  • Resource Management - Redis Enterprise

  • Resource Management - Relay

  • Resource Management - Resource-Policy

  • Resource Management - Service Fabric Managed Clusters

  • Resource Management - Terraform

  • Service Bus

  • unknown

Release highlights

AI Agent Server - Core 2.1.0b2 Changelog

Other Changes

  • Updated the hosted task provider’s Foundry-Features opt-in header from Routines=V1Preview to Routines=V2Preview to align with the agentserver-persistence contract. #48617

AI Agent Server - Core 2.1.0 Changelog

Other Changes

  • Added compatibility bounds to runtime and development dependencies so installation cannot silently resolve to incompatible releases.

AI Agent Server - Core 2.2.0b1 Changelog

Features Added

  • Added AgentConfig.session_guid, populated from the platform-owned FOUNDRY_AGENT_SESSION_GUID environment variable for hosted session incarnation identity.

AI Evaluation 1.18.5 Changelog

Bugs Fixed

  • Made Application Insights export failures best-effort for evaluations using project managed identity authentication.

  • Fixed keyword argument routing so bare messages=[...] input, with optional top-level context, ground_truth, and tool_definitions, is normalized into the already-supported conversation path for RelevanceEvaluator, SimilarityEvaluator, FluencyEvaluator, RetrievalEvaluator, ResponseCompletenessEvaluator, ViolenceEvaluator, HateUnfairnessEvaluator, SelfHarmEvaluator, SexualEvaluator, ProtectedMaterialEvaluator, IndirectAttackEvaluator, CodeVulnerabilityEvaluator, and ECIEvaluator. Existing scalar and conversation={...} input semantics are unchanged. #48629

AI Projects 2.5.0 Changelog

Breaking Changes

All breaking changes are associated with beta features.

  • Methods .beta.routines.list and .beta.routines.list_runs replaced the before argument with after and now use the service-provided next_link for continuation.
  • Renamed class TaskGenerationDataGenerationJobOptions to SimulationSeedDataGenerationJobOptions. The corresponding DataGenerationJobType.TASK_GENERATION enum member was renamed to DataGenerationJobType.SIMULATION_SEED, and its wire value changed from task_generation to simulation_seed.
  • Renamed enum OptimizationDatasetInputType to AgentOptimizationDatasetInputType.
  • Renamed class OptimizationAgentIdentifier to OptimizedAgentIdentifier.
  • Renamed class OptimizationCandidate to AgentOptimizationCandidate.
  • Renamed class OptimizationDatasetCriterion to AgentOptimizationDatasetCriterion.
  • Renamed class OptimizationDatasetInput to AgentOptimizationDatasetInput.
  • Renamed class OptimizationDatasetItem to AgentOptimizationDatasetItem.
  • Renamed class OptimizationEvaluatorRef to AgentOptimizationEvaluatorRef.
  • Renamed class OptimizationInlineDatasetInput to AgentOptimizationInlineDatasetInput.
  • Renamed class OptimizationJob to AgentOptimizationJob.
  • Renamed class OptimizationJobInputs to AgentOptimizationJobInputs.
  • Renamed class OptimizationJobListItem to AgentOptimizationJobListItem.
  • Renamed class OptimizationJobProgress to AgentOptimizationJobProgress.
  • Renamed class OptimizationJobResult to AgentOptimizationJobResult.
  • Renamed class OptimizationOptions to AgentOptimizationOptions.
  • Renamed class OptimizationReferenceDatasetInput to AgentOptimizationReferenceDatasetInput.

Features Added

  • Added stable Agent-to-Agent (A2A) tools A2ATool and A2AToolboxTool, with the new A2AProtocolVersion enum for selecting protocol version 1.0.
  • Method .beta.agents.begin_create_optimization_job now returns a custom LRO poller named AgentOptimizationLROPoller. Its details property exposes the created job ID as job_id.
  • Method .beta.datasets.begin_create_generation_job now returns a custom LRO poller named DatasetGenerationLROPoller. Its details property exposes the created job ID as job_id.
  • Method .beta.evaluators.begin_create_generation_job now returns a custom LRO poller named EvaluatorGenerationLROPoller. Its details property exposes the created job ID as job_id.
  • Added the optional read-only state_source property to AgentDetails and the new AgentStateSource enum.
  • Added programmatic tool calling through ProgrammaticToolCallingParam and SpecificProgrammaticToolCallingParam, with new ToolType.PROGRAMMATIC_TOOL_CALLING and ToolChoiceParamType.PROGRAMMATIC_TOOL_CALLING enum members.
  • Added the optional allowed_callers property to ApplyPatchToolParam, CodeInterpreterTool, CodeInterpreterToolboxTool, CustomToolParam, FunctionShellToolParam, FunctionTool, FunctionToolParam, MCPTool, and MCPToolboxTool. Added the new CallableToolAllowedCaller enum values direct and programmatic.
  • Expanded Reasoning with optional mode and context properties. Added ReasoningModeEnum for standard and pro; effort now uses the new ReasoningEffort enum, including the new max effort.

AI Projects 2.6.0 Changelog

Features Added

  • Added supporting AgentInsight* models and enums covering monitors, runs, generated insights, proposed fixes, highlighted and linked traces, costs, token usage, severity, status, and run triggers.
  • Added Microsoft 365 agent publishing.
  • Added optional Hosted Agent session defaults through HostedAgentDefinition.session_configuration and SessionConfiguration, including idle-timeout configuration.
  • Added content-safety moderation support for custom request, response, and streaming invocation body formats.
  • Added the optional authorization argument to .beta.routines.create_or_update, with RoutineAuthorization and RoutineDispatchIdentity for selecting the agent or routine creator identity.
  • Added ShellToolboxTool and supporting container environment and network policy models, with the new ToolboxToolType.SHELL enum member.
  • Added WebIQPreviewTool and WebIQPreviewToolboxTool, with new ToolType.WEB_IQ_PREVIEW and ToolboxToolType.WEB_IQ_PREVIEW enum members.
  • Added the optional external_web_access property to WebSearchTool and WebSearchToolboxTool for disabling live internet access.

Bugs Fixed

  • Fixed Responses API instrumentation for with_raw_response streaming calls (GitHub issue 48646).

App Configuration 1.10.0b1 Changelog

Features Added

  • Added FeatureFlagClient (sync and async) for managing feature flags through a dedicated endpoint (requires API version 2026-05-01-preview or later):
  • Exposes set_feature_flag(), get_feature_flag(), list_feature_flags(), delete_feature_flag(), add_feature_flag(), list_feature_flag_revisions(), and list_labels().
  • FeatureFlagClient is available from azure.appconfiguration (sync) and azure.appconfiguration.aio (async).
  • Added the FeatureFlag model along with FeatureFlagConditions, FeatureFilter, FeatureFlagVariantDefinition, FeatureFlagAllocation, FeatureFlagTelemetryConfiguration, PercentileAllocation, UserAllocation, and GroupAllocation, plus the RequirementType and StatusOverride enums.
  • FeatureFlagClient.list_labels() always lists feature-flag labels, while AzureAppConfigurationClient.list_labels() always lists key-value labels.

App Configuration Provider 2.6.0b1 Changelog

Features Added

  • Enhanced feature flags created via the dedicated feature flag resource endpoint (FeatureFlagClient/FeatureFlag in azure-appconfiguration) are now loaded automatically alongside key-value based feature flags whenever feature_flag_enabled=True. Both kinds are merged into the same feature_management.feature_flags list, with resource-based feature flags taking precedence over key-value based ones when they share the same name. No new load() options are required to opt in, and existing feature_flag_selectors filter both kinds.

Breaking Changes

  • Raised the minimum supported Python version to 3.10, matching the minimum required by azure-appconfiguration>=1.10.0b1. Dropped support for Python 3.7, 3.8, and 3.9.

Bugs Fixed

  • Fixed a resource leak where replica clients that were no longer part of the auto-failover set were not closed during client refresh.
  • Fixed auto-failover replica discovery so that a DNS SRV lookup timeout (for either the origin or replica records) is distinguished from an empty replica list. A timeout now correctly triggers the longer fallback refresh interval, while an empty result refreshes at the normal interval.
  • Fixed a thread-safety issue by publishing refreshed secret values through a new configuration mapping instead of mutating the existing mapping while readers may be iterating.
  • Fixed refresh_on handling so that a single-string watched setting is treated as a key with the default (no) label instead of being incorrectly unpacked character-by-character.
  • Fixed a KeyError when loading with an endpoint and credential (no connection string).

Azure AI Search 12.1.0b2 Changelog

Bugs Fixed

  • Improved large document upload and merge performance by avoiding redundant serialization. #46860
  • Made SearchFieldDataType.Collection visible to static type checkers. #47929
  • Normalized SearchIndexClient.update_knowledge_source_file and its asynchronous equivalent to use the name-first signature (name, file_id, body), consistent with the other File knowledge source operations.
  • Published the synchronous and asynchronous knowledge base retrieval stream classes from their respective public namespaces.

Breaking Changes

These changes do not impact the API of stable versions such as 11.6.0. Only code written against a beta version such as 12.1.0b1 may be affected.

  • Replaced ApiVersion.V2026_05_01_PREVIEW with ApiVersion.V2026_08_01_PREVIEW and made the new version the default.
  • Replaced top, skip, and count with search, page_size, and search_type on SearchIndexClient.list_indexes, SearchIndexClient.list_index_names, and their asynchronous equivalents. list_index_stats_summary uses the same new parameters.
  • Replaced McpServerTool.inclusion_mode and McpServerToolInclusionMode with McpServerTool.results_processing and KnowledgeSourceResultsProcessing.
  • Replaced model_name with model on model query-planning, answer-synthesis, and web-summarization activity records. The new value is a KnowledgeBaseActivityRecordModel.
  • Replaced KnowledgeBaseWorkIQReference.attributions and WorkIQAttribution with search_sensitivity_label_info.
  • Renamed the Python enum members GPT_5_MINI, GPT_5_NANO, GPT_5_4_MINI, and GPT_5_4_NANO to GPT5_MINI, GPT5_NANO, GPT5_4_MINI, and GPT5_4_NANO, respectively. Wire values are unchanged.
  • Dropped Python 3.9 support. Python 3.10 or later is now required.

Features Added

  • Added ApiVersion.V2026_08_01_PREVIEW so the 2026-08-01-preview Search API version can be selected via the api_version keyword on the clients.
  • Added filtered and paged resource listing with search, page_size, and search_type parameters. File listings also support prefix.
  • Added multipart File knowledge source operations and models:
  • azure.search.documents.indexes.SearchIndexClient.update_knowledge_source_file
  • azure.search.documents.indexes.SearchIndexClient.upload_knowledge_source_file_multipart
  • azure.search.documents.indexes.models.FileUploadMetadata
  • azure.search.documents.indexes.models.UpdateKnowledgeSourceFileRequest
  • azure.search.documents.indexes.models.UploadKnowledgeSourceFileMultipartRequest
  • Added knowledge source query-hint and result-processing models:
  • azure.search.documents.indexes.models.KnowledgeSourceResultsProcessing
  • azure.search.documents.indexes.models.SearchIndexKnowledgeSourceBoost
  • azure.search.documents.indexes.models.SearchIndexKnowledgeSourceBoostKind
  • azure.search.documents.indexes.models.SearchIndexKnowledgeSourceFieldValueBoost
  • azure.search.documents.indexes.models.SearchIndexKnowledgeSourceFilterHint
  • azure.search.documents.indexes.models.SearchIndexKnowledgeSourceMultiWordExpressionBoost
  • azure.search.documents.indexes.models.SearchIndexKnowledgeSourceQueryHints
  • azure.search.documents.knowledgebases.models.KnowledgeBaseQueryHintProcessing
  • Added knowledge base retrieval streaming through azure.search.documents.knowledgebases.KnowledgeBaseRetrievalClient.retrieve_stream and its asynchronous equivalent. The methods return closeable streams of typed KnowledgeBaseRetrievalEvent instances. New stream payload models include:
  • azure.search.documents.knowledgebases.models.KnowledgeBaseActivityStartedEvent
  • azure.search.documents.knowledgebases.models.KnowledgeBaseAnswerCompletedEvent
  • azure.search.documents.knowledgebases.models.KnowledgeBaseResponseCompletedEvent
  • azure.search.documents.knowledgebases.models.KnowledgeBaseRetrievalStartedEvent
  • azure.search.documents.knowledgebases.models.KnowledgeBaseStreamErrorEvent
  • Added knowledge base configuration and retrieval features:
  • Knowledge base tags and persisted retrieve_defaults.
  • Per-source never_query_source, results_processing, and query_hint_overrides.
  • KnowledgeRetrievalAutoReasoningEffort for automatic reasoning-effort selection.
  • Activity start/completion timestamps, model metadata, query-hint processing details, and served-image metadata.
  • Citation URLs on index-backed knowledge base references.
  • Private ingestion networking through KnowledgeSourceNetworkAccessMode.
  • Added Work IQ configuration through EntraAppAuthentication and WorkIQKnowledgeSourceParameters, plus the query_work_iq_source_authorization retrieval parameter.
  • Added File knowledge source CORS, metadata, prefix, parsing-mode, and extraction-mode support.
  • Added GPT-5.5, GPT-5.6 Luna, GPT-5.6 Sol, and GPT-5.6 Terra model names.
  • Added SearchServiceLimits.max_vector_index_size_per_index_in_bytes.

Azure Monitor OpenTelemetry 1.8.10 Changelog

Features Added

  • Add support for the httpx2 OpenTelemetry instrumentation entry point (#48899)
  • Add httpx instrumentation support (#47953)

Cosmos DB 4.16.4 Changelog

Bugs Fixed

  • Fixed regression with handling of v1 legacy containers when passing {} as a partition key. {} and NonePartitionKeyValue now both resolve to the Undefined effective partition key. See PR 48422
  • Fixed the same TypeError on system key (migrated) containers, where a missing partition key value resolves to _Empty instead of Undefined. It now maps to the minimum effective partition key. See PR 48422

Cosmos DB 4.17.0 Changelog

Bugs Fixed

  • Fixed sync and async item PATCH requests to explicitly send the registered application/json-patch+json content type. See PR 48914.

Features Added

  • Added the enable_compact_utf8_item_writes client option. Set it to True to reduce item write request sizes by serializing valid Unicode as compact UTF-8 for create, upsert, replace, patch, and transactional batch operations. See PR 48914.

Key Vault - Administration 4.7.1 Changelog

Bugs Fixed

  • Fixed the challenge authentication policy to cache the authentication challenge only after the challenge resource is verified, so that a rejected challenge is not cached and reused by subsequent requests.

Key Vault - Certificates 4.11.2 Changelog

Bugs Fixed

  • Fixed the challenge authentication policy to cache the authentication challenge only after the challenge resource is verified, so that a rejected challenge is not cached and reused by subsequent requests.

Key Vault - Keys 4.11.2 Changelog

Bugs Fixed

  • Fixed the challenge authentication policy to cache the authentication challenge only after the challenge resource is verified, so that a rejected challenge is not cached and reused by subsequent requests.

Key Vault - Secrets 4.11.2 Changelog

Bugs Fixed

  • Fixed the challenge authentication policy to cache the authentication challenge only after the challenge resource is verified, so that a rejected challenge is not cached and reused by subsequent requests.

Key Vault - Security Domain 1.0.0b2 Changelog

Bugs Fixed

  • Fixed a replay bug in challenge authentication policy. The original request is now stored at the request level instead of the client level #48636.

Breaking Changes

  • Renamed internal class “Error” to “KeyVaultErrorError” to align with other KeyVault SDKs.

Features Added

  • Added support for service API version 2025-07-01 #46782

Key Vault - Security Domain 1.0.0b3 Changelog

Bugs Fixed

  • Fixed a bug in the challenge authentication policy where the authentication challenge was cached before the challenge resource was verified. The challenge is now cached only after resource verification succeeds #48710.

Machine Learning 1.35.0 Changelog

Bugs Fixed

  • Simplified schedule validation errors so invalid local job paths report the relevant file error instead of errors from every supported job schema.
  • Fixed internal pipeline Command node dropping node-level interactive services (SSH, JupyterLab, TensorBoard, VS Code, etc.) during serialization, which prevented interactive endpoints from being created for Singularity jobs. The services are now serialized into the pipeline REST request and round-tripped on deserialization, matching the public Command node behavior.
  • Fixed MLClient.jobs.create_or_update, archive, and restore failing for previously-fetched jobs across all job types by routing metadata-only edits through the RunHistory PATCH endpoint.
  • Fixed DeploymentTemplate.creation_context always being None when retrieved via get() or list(). The created/modified timestamps and identity returned by the service (as createdTime / modifiedTime / createdBy) are now populated on creation_context, making DeploymentTemplate consistent with Model and Environment.
  • Fixed DeploymentTemplate.creation_context.last_modified_by always being None even after the service began returning the modifying identity. The service sends it as a flattened modifiedBy field (top-level for get(), nested under properties for list()) alongside a present-but-null lastModifiedBy; last_modified_by is now populated from modifiedBy, matching how created_by is read.
  • Fixed deployment_templates.list(name=...) raising AttributeError: 'str' object has no attribute 'request_timeout'. In the list response, requestSettings / livenessProbe / readinessProbe arrive as stringified dicts nested under properties; these are now parsed before conversion, giving list() parity with models.list() / environments.list().
  • Fixed deployment_templates.get(name) failing with a 404 (DeploymentTemplate {name}:latest not found) when no version was supplied, because the literal string "latest" was sent as the version. The latest version is now resolved client-side (the service exposes no latest label and no server-side ordering), and get() accepts a label keyword (label="latest" resolves to the latest version) mirroring models.get(). delete(name) resolves the latest version the same way.
  • Fixed models.get(name, label="latest") returning a Model whose default_deployment_template / allowed_deployment_templates references had asset_id=None. Label resolution goes through the version list endpoint (top=1), whose items omit the deployment-template references; for registry models the resolved version is now re-fetched through the get endpoint, so the label path hydrates these references identically to the explicit version= path.
  • Added MLClient.jobs.begin_delete(name) to delete a job.
  • Fixed loading a registered MLTable data asset via mltable.load("azureml://.../data/<name>/versions/<version>") failing with AttributeError: 'DataVersionEntity' object has no attribute 'additional_properties'. When the dataset_dataplane client was migrated to the TypeSpec (hybrid) model, DataVersionEntity stopped exposing the msrest additional_properties attribute that the mltable package reads (isV2 / legacyDataflow) on the local resolution path. The attribute is now restored as a compatibility shim returning the un-modeled wire keys, so the on-the-wire contract is unchanged.

OpenTelemetry Exporter 1.0.0b57 Changelog

Features Added

  • Remove microsoft.availability.testTimestamp and use the LogRecord timestamp instead for availability data (#48841)
  • Add the required force_flush method to the log exporter to align with upstream OpenTelemetry changes in LogRecordExporter (#48823)
  • Populate measurements on telemetry from the microsoft.custom_measurements attribute (#48750)
  • Add support for availability telemetry from microsoft.availability.* log attributes (#48812)

Resource Management - Chaos 3.0.0b2 Changelog

Resource Management - Cloud Health 1.0.0b4 Changelog

Resource Management - Cognitive Services 15.0.0b5 Changelog

Resource Management - Compute 38.3.0 Changelog

Resource Management - Compute Bulk Actions 1.0.0b3 Changelog

Resource Management - Compute Recommender 1.0.0b3 Changelog

Resource Management - Container Registry 15.1.0b3 Changelog

Resource Management - Container Service 41.6.0 Changelog

Resource Management - Container Service 41.7.0b1 Changelog

Resource Management - Container Service Fleet 4.1.0b1 Changelog

Resource Management - Data Protection 2.2.0 Changelog

Resource Management - Edge Zones 1.0.0 Changelog

Resource Management - Enclave 1.0.0 Changelog

Resource Management - HorizonDB 1.0.0b2 Changelog

Resource Management - NetApp Files 18.0.0b3 Changelog

Resource Management - Network 32.0.0 Changelog

Resource Management - New Relic Observability 2.0.0 Changelog

Resource Management - ProviderHub 2.0.0 Changelog

Resource Management - Pure Storage Block 1.1.0b1 Changelog

Resource Management - Recovery Services 4.2.0 Changelog

Resource Management - Recovery Services Backup 11.0.0 Changelog

Resource Management - Recovery Services Backup 11.1.0 Changelog

Resource Management - Redhatopenshifthcp 1.0.0b1 Changelog

Resource Management - Redis Enterprise 4.0.0b3 Changelog

Resource Management - Relay 2.1.0b1 Changelog

Resource Management - Resource-Deployments 2.0.0 Changelog

Resource Management - Resource-Policy 1.0.0b4 Changelog

Resource Management - Service Fabric Managed Clusters 3.1.0b2 Changelog

Resource Management - Service Groups 1.0.0 Changelog

Resource Management - Service Networking 2.1.0 Changelog

Resource Management - Storage Sync 2.1.0 Changelog

Resource Management - Terraform 1.0.0b2 Changelog

Service Bus 7.15.0b2 Changelog

Bugs Fixed

  • Fixed a bug where messages returned by receive_deferred_messages had a lock_token of None, which prevented settling (completing, abandoning, dead-lettering, deferring) or renewing the lock on a deferred message in PEEK_LOCK mode. The lock token is now read from the lock-token field of the management-link response for deferred messages. (#42454)
  • Read com.microsoft:max-message-batch-size vendor property from the AMQP sender link to correctly limit batch size on Premium large-message entities, where max-message-size can be up to 100 MB but the batch limit is 1 MB.
  • Fixed a bug where sending a batched or multi-message payload with uamqp_transport=True raised TypeError: 'BatchMessage' object is not subscriptable (and a masked AttributeError on the list path) when the first message carried a message_id, session_id, or partition_key. The batch envelope properties are now set through the transport-appropriate code path. (regression from #42598)
  • Fixed a bug where the async receiver factory methods on azure.servicebus.aio.ServiceBusClient (get_queue_receiver, get_subscription_receiver) and the async ServiceBusReceiver annotated the auto_lock_renewer keyword with the synchronous AutoLockRenewer, causing static type checkers to reject the documented azure.servicebus.aio.AutoLockRenewer usage. The annotation now references the async AutoLockRenewer, matching the docstrings and runtime behavior. (#47948)
  • Fixed a bug where closing a PEEK_LOCK receiver did not release messages that had been prefetched into the client buffer or were still in flight, so they remained locked at the broker until lock expiry — delaying their redelivery and inflating their delivery count. On close, a non-session PEEK_LOCK receiver now drains the link (stopping the broker and flushing in-flight transfers) and releases the buffered messages (released disposition), so the broker can redeliver them immediately without incrementing the delivery count. (#42917)
  • Fixed a bug where the async pure-Python AMQP transport failed to connect with [Errno 22] Invalid argument (amqp:socket-error) inside containerized/virtualized environments such as Docker Desktop on macOS. The transport no longer reads back and re-applies platform-negotiated TCP options (e.g. TCP_MAXSEG) that some platforms reject via setsockopt. (#45394)
  • Fixed a bug where passing a fully_qualified_namespace that included a port and/or trailing path (for example the https://<namespace>.servicebus.windows.net:443/ form that Azure returns when provisioning a namespace) raised ServiceBusAuthenticationError. The namespace is now normalized to its bare host, matching the .NET and JavaScript SDKs. (#44034)
  • Fixed a bug where iterating over a ServiceBusReceiver suppressed automatic HTTP instrumentation (e.g. from opentelemetry-instrumentation-httpx/requests) while user code processed a received message, causing the user’s own outbound HTTP spans to be dropped. The receive tracing span is now closed before the message is yielded to the caller, so suppression no longer leaks into message processing. (#42755)
  • Fixed a bug in the pyAMQP transport where decoding an incoming performative whose trailing null fields were omitted by the sender (permitted by AMQP 1.0 section 1.4) raised IndexError/TypeError. The decoded field list is now padded to the performative’s full field count so omitted trailing fields read back as their AMQP-defined default, including the compact list0 encoding where every field is omitted. A field encoded as an explicit null but whose declared default is non-null (for example a max_frame_size set to null so the connection would compare None < 512) now also reads back as that default.
  • Fixed a bug where PEEK_LOCK settlements on the pure-Python AMQP transport were sent pre-settled even though the receiver link negotiates rcv-settle-mode=second, so the service’s terminal outcome (including com.microsoft:message-lock-lost rejections) was discarded and a settlement the service never applied was indistinguishable from success — surfacing only as the message being redelivered at lock expiry. Settlements now wait for the service to confirm the outcome and raise when it is rejected, matching the .NET, Java, JavaScript, and Go SDKs, which all await the disposition unconditionally. This is a behavior change: confirming costs one service round trip per settlement, so settle many messages concurrently rather than one at a time (for example await asyncio.gather(*(receiver.complete_message(m) for m in messages))). Unaffected where outcomes cannot be observed: RECEIVE_AND_DELETE mode and uamqp_transport=True.

Features Added

  • Added ServiceBusReceivedMessage.from_bytes() classmethod to construct a ServiceBusReceivedMessage from raw AMQP payload bytes without requiring the deprecated uamqp library. (#43979)
  • Added ServiceBusClient.list_queue_sessions() and ServiceBusClient.list_subscription_sessions() (sync and async) to list session IDs for entities with active messages or stored session state, with optional filtering by session-state update timestamp. The methods return an ItemPaged[str] (AsyncItemPaged[str] on the async client) so callers can iterate every session transparently or page with by_page(). Implements the com.microsoft:get-message-sessions management operation. (#46575)
  • Added sql_filter_count and correlation_filter_count properties to TopicRuntimeProperties, exposing the total number of SQL filters and correlation filters across all of a topic’s subscriptions.
  • Added API version 2024-05 and made it the default for the management client, which is required for the topic filter counts above.

Storage - Blobs 12.30.1 Changelog

Bugs Fixed

  • Fixed a bug where client-side encryption 2.0 could not detect a rearrangement of otherwise-untampered authenticated regions in blob content. This is now detected and exceptions are thrown. For data recovery purposes, this behavior can be reverted by setting the “AZURE_STORAGE_CSE_V2_ALLOW_MISORDERED_AUTH_REGIONS” environment variable.
  • Fixed a bug in client-side encryption where version downgrades, and other metadata tampering, was only detected at the start of a download.

unknown 2.1.0b2 Changelog

Bugs Fixed

  • Restored JSON-string encoding for response-level internal_metadata so resilient response checkpoints round-trip through Foundry storage.
  • Restored get_request_context() identity values while stored Responses handlers run inside durable tasks.
  • get_history_item_ids on InMemoryResponseProvider and FileResponseStore now keeps the newest item IDs when applying limit. (#48514)

unknown 2.1.0 Changelog

Other Changes

  • Constrained runtime, development, and sample dependencies to compatible release lines.
  • Updated the minimum azure-ai-agentserver-core dependency to the stable 2.1.0 release.

unknown 2.2.0b1 Changelog

Features Added

  • Added prompt caching and programmatic tool-calling models from the latest AgentServer contract.

Bugs Fixed

  • Made logprobs optional in assistant output-text content to match the OpenAI Responses API runtime behavior.
  • Added validation for prompt-cache options and tool-call caller discriminators.

Breaking Changes

  • ResponseUsageInputTokensDetails.cache_write_tokens is now required by the latest AgentServer contract.

unknown 1.1.0 Changelog

Features Added

  • Added create_asyncpg_engine for SQLAlchemy async engines using asyncpg and asynchronous Microsoft Entra credentials.

Bugs Fixed

  • Fixed SQLAlchemy connection pools failing to create subsequent connections when using Entra authentication.

unknown 1.2.0b1 Changelog

Features Added

  • Added W3C Voice connection tracing with one agentserver.connection span, content-free voice.callback dispatch spans, and aggregate duration and propagation-failure metrics.
  • Added application-declared target-turn tracing through Session.start_target_turn, TargetTurn.activate, and explicit TargetTurn.complete outcomes. The SDK does not infer response lifecycle or own application tasks.
  • Added source-aware Session.termination for classifying unfinished application work during connection cleanup.

unknown 1.1.0 Changelog

Features Added

  • Added the typed Voice event relay API under azure.ai.agentserver.invocations.voice, including VoiceAgentServerHost, typed protocol messages, session lifecycle callbacks, response cancellation and timeout handling, and a basic Voice agent sample.

unknown 1.0.0b1 Changelog

Other Changes

  • Initial version

Latest Releases

View all the latest versions of Python packages here.

Installation Instructions

To install the latest beta version of the packages, copy and paste the following commands into a terminal:

$> pip install azure-ai-agentserver-core==2.1.0b2
$> pip install azure-ai-agentserver-core==2.1.0
$> pip install azure-ai-agentserver-core==2.2.0b1
$> pip install azure-ai-agentserver-invocations==1.2.0b1
$> pip install azure-ai-agentserver-invocations==1.1.0
$> pip install azure-ai-agentserver-responses==2.1.0b2
$> pip install azure-ai-agentserver-responses==2.1.0
$> pip install azure-ai-agentserver-responses==2.2.0b1
$> pip install azure-ai-evaluation==1.18.5
$> pip install azure-ai-ml==1.35.0
$> pip install azure-ai-projects==2.5.0
$> pip install azure-ai-projects==2.6.0
$> pip install azure-appconfiguration==1.10.0b1
$> pip install azure-appconfiguration-provider==2.6.0b1
$> pip install azure-cosmos==4.16.4
$> pip install azure-cosmos==4.17.0
$> pip install azure-iot-deviceregistrysoftwareupdate==1.0.0b1
$> pip install azure-keyvault-administration==4.7.1
$> pip install azure-keyvault-certificates==4.11.2
$> pip install azure-keyvault-keys==4.11.2
$> pip install azure-keyvault-secrets==4.11.2
$> pip install azure-keyvault-securitydomain==1.0.0b2
$> pip install azure-keyvault-securitydomain==1.0.0b3
$> pip install azure-mgmt-chaos==3.0.0b2
$> pip install azure-mgmt-cloudhealth==1.0.0b4
$> pip install azure-mgmt-cognitiveservices==15.0.0b5
$> pip install azure-mgmt-compute==38.3.0
$> pip install azure-mgmt-compute-bulkaction==1.0.0b3
$> pip install azure-mgmt-computerecommender==1.0.0b3
$> pip install azure-mgmt-containerregistry==15.1.0b3
$> pip install azure-mgmt-containerservice==41.6.0
$> pip install azure-mgmt-containerservice==41.7.0b1
$> pip install azure-mgmt-containerservicefleet==4.1.0b1
$> pip install azure-mgmt-dataprotection==2.2.0
$> pip install azure-mgmt-edgezones==1.0.0
$> pip install azure-mgmt-enclave==1.0.0
$> pip install azure-mgmt-horizondb==1.0.0b2
$> pip install azure-mgmt-netapp==18.0.0b3
$> pip install azure-mgmt-network==32.0.0
$> pip install azure-mgmt-newrelicobservability==2.0.0
$> pip install azure-mgmt-providerhub==2.0.0
$> pip install azure-mgmt-purestorageblock==1.1.0b1
$> pip install azure-mgmt-recoveryservices==4.2.0
$> pip install azure-mgmt-recoveryservicesbackup==11.0.0
$> pip install azure-mgmt-recoveryservicesbackup==11.1.0
$> pip install azure-mgmt-redhatopenshifthcp==1.0.0b1
$> pip install azure-mgmt-redisenterprise==4.0.0b3
$> pip install azure-mgmt-relay==2.1.0b1
$> pip install azure-mgmt-resource-deployments==2.0.0
$> pip install azure-mgmt-resource-policy==1.0.0b4
$> pip install azure-mgmt-servicefabricmanagedclusters==3.1.0b2
$> pip install azure-mgmt-servicegroups==1.0.0
$> pip install azure-mgmt-servicenetworking==2.1.0
$> pip install azure-mgmt-storagesync==2.1.0
$> pip install azure-mgmt-terraform==1.0.0b2
$> pip install azure-monitor-opentelemetry==1.8.10
$> pip install azure-monitor-opentelemetry-exporter==1.0.0b57
$> pip install azure-postgresql-auth==1.1.0
$> pip install azure-search-documents==12.1.0b2
$> pip install azure-servicebus==7.15.0b2
$> pip install azure-storage-blob==12.30.1

Feedback

If you have a bug or feature request for one of the libraries, please post an issue to GitHub.