Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package azure-cli-core for openSUSE:Factory checked in at 2026-06-08 14:17:37 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/azure-cli-core (Old) and /work/SRC/openSUSE:Factory/.azure-cli-core.new.2375 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "azure-cli-core" Mon Jun 8 14:17:37 2026 rev:96 rq:1357647 version:2.87.0 Changes: -------- --- /work/SRC/openSUSE:Factory/azure-cli-core/azure-cli-core.changes 2026-05-05 17:58:19.627109098 +0200 +++ /work/SRC/openSUSE:Factory/.azure-cli-core.new.2375/azure-cli-core.changes 2026-06-08 14:24:05.754011336 +0200 @@ -1,0 +2,9 @@ +Thu Jun 4 06:54:10 UTC 2026 - John Paul Adrian Glaubitz <[email protected]> + +- New upstream release + + Version 2.87.0 + + For detailed information about changes see the + HISTORY.rst file provided with this package +- Update Requires from setup.py + +------------------------------------------------------------------- Old: ---- azure_cli_core-2.86.0.tar.gz New: ---- azure_cli_core-2.87.0.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ azure-cli-core.spec ++++++ --- /var/tmp/diff_new_pack.tVtug6/_old 2026-06-08 14:24:06.566045009 +0200 +++ /var/tmp/diff_new_pack.tVtug6/_new 2026-06-08 14:24:06.578045506 +0200 @@ -24,7 +24,7 @@ %global _sitelibdir %{%{pythons}_sitelib} Name: azure-cli-core -Version: 2.86.0 +Version: 2.87.0 Release: 0 Summary: Microsoft Azure CLI Core Module License: MIT @@ -51,10 +51,10 @@ Requires: %{pythons}-humanfriendly >= 10.0 Requires: %{pythons}-jmespath Requires: %{pythons}-knack < 1.0.0 -Requires: %{pythons}-knack >= 0.11.0 +Requires: %{pythons}-knack >= 0.14.0 Requires: %{pythons}-microsoft-security-utilities-secret-masker >= 1.0.0~b4 Requires: %{pythons}-msal < 2.0.0 -Requires: %{pythons}-msal >= 1.35.1 +Requires: %{pythons}-msal >= 1.36.0 Requires: %{pythons}-msal-extensions < 2.0.0 Requires: %{pythons}-msal-extensions >= 1.3.1 Requires: %{pythons}-packaging >= 20.9 ++++++ azure_cli_core-2.86.0.tar.gz -> azure_cli_core-2.87.0.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/azure_cli_core-2.86.0/HISTORY.rst new/azure_cli_core-2.87.0/HISTORY.rst --- old/azure_cli_core-2.86.0/HISTORY.rst 2026-05-01 02:40:32.000000000 +0200 +++ new/azure_cli_core-2.87.0/HISTORY.rst 2026-05-26 08:38:40.000000000 +0200 @@ -3,6 +3,13 @@ Release History =============== +2.87.0 +++++++ +* Resolve CVE-2026-44431 (#33351) +* Resolve CVE-2026-44432 (#33351) +* `az login`: Support Entra agentic session differentiation for Copilot agent requests (#33309) +* Resolve CVE-2026-45409 (#33401) + 2.86.0 ++++++ * Resolve CVE-2025-15467 (#33201) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/azure_cli_core-2.86.0/PKG-INFO new/azure_cli_core-2.87.0/PKG-INFO --- old/azure_cli_core-2.86.0/PKG-INFO 2026-05-01 02:41:23.844106700 +0200 +++ new/azure_cli_core-2.87.0/PKG-INFO 2026-05-26 08:39:29.832620900 +0200 @@ -1,6 +1,6 @@ Metadata-Version: 2.4 Name: azure-cli-core -Version: 2.86.0 +Version: 2.87.0 Summary: Microsoft Azure Command-Line Tools Core Module Home-page: https://github.com/Azure/azure-cli Author: Microsoft Corporation @@ -26,11 +26,11 @@ Requires-Dist: distro; sys_platform == "linux" Requires-Dist: humanfriendly~=10.0 Requires-Dist: jmespath -Requires-Dist: knack~=0.11.0 +Requires-Dist: knack~=0.14.0 Requires-Dist: microsoft-security-utilities-secret-masker~=1.0.0b4 Requires-Dist: msal-extensions==1.3.1 -Requires-Dist: msal[broker]==1.35.1; sys_platform == "win32" -Requires-Dist: msal==1.35.1; sys_platform != "win32" +Requires-Dist: msal[broker]==1.36.0; sys_platform == "win32" +Requires-Dist: msal==1.36.0; sys_platform != "win32" Requires-Dist: packaging>=20.9 Requires-Dist: pkginfo>=1.5.0.1 Requires-Dist: psutil>=5.9; sys_platform != "cygwin" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/azure_cli_core-2.86.0/azure/cli/core/__init__.py new/azure_cli_core-2.87.0/azure/cli/core/__init__.py --- old/azure_cli_core-2.86.0/azure/cli/core/__init__.py 2026-05-01 02:40:32.000000000 +0200 +++ new/azure_cli_core-2.87.0/azure/cli/core/__init__.py 2026-05-26 08:38:40.000000000 +0200 @@ -4,7 +4,7 @@ # -------------------------------------------------------------------------------------------- # pylint: disable=line-too-long -__version__ = "2.86.0" +__version__ = "2.87.0" import os import sys diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/azure_cli_core-2.86.0/azure/cli/core/auth/agentic_session.py new/azure_cli_core-2.87.0/azure/cli/core/auth/agentic_session.py --- old/azure_cli_core-2.86.0/azure/cli/core/auth/agentic_session.py 1970-01-01 01:00:00.000000000 +0100 +++ new/azure_cli_core-2.87.0/azure/cli/core/auth/agentic_session.py 2026-05-26 08:38:40.000000000 +0200 @@ -0,0 +1,67 @@ +# -------------------------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# -------------------------------------------------------------------------------------------- + +""" +Support for Entra Agentic Sessions. + +When CLI runs inside an agent context (e.g., Copilot, Azure MCP), the orchestrator sets the +COPILOT_AGENT_SESSION_ID environment variable. CLI reads it and passes it to MSAL as both: + - A query parameter (`client_session`) so ESTS can identify the agentic session + - A claims challenge so ESTS embeds an agentic marker claim in the token (and MSAL bypasses + the access token cache to ensure a fresh, agent-tagged token is always fetched) + +This enables downstream systems (RBAC, Defender, Purview) to enforce differentiated policies +for agent-driven vs. human-driven operations. +""" + +import json +import os + +from knack.log import get_logger + +logger = get_logger(__name__) + +COPILOT_AGENT_SESSION_ID = "COPILOT_AGENT_SESSION_ID" + + +def build_agentic_session_params(): + """Read COPILOT_AGENT_SESSION_ID and build the agentic claims challenge. + + :returns: (session_id, claims_challenge) — both None when env var is not set. + """ + session_id = os.environ.get(COPILOT_AGENT_SESSION_ID) or None + if not session_id: + return None, None + + logger.debug("Agentic session detected (COPILOT_AGENT_SESSION_ID is set)") + + claims_challenge = json.dumps({ + "access_token": { + "xms_cli_sid": {"values": [session_id]} + } + }) + return session_id, claims_challenge + + +def merge_access_token_claims(existing_claims, new_claims): + """Merge new claims into an existing claims_challenge JSON string. + + :param existing_claims: Existing claims_challenge JSON string (or None). + :param new_claims: New claims_challenge JSON string to merge in. Must not be None or empty, + and must contain a non-empty ``access_token`` object. + :returns: Merged claims_challenge JSON string. + :raises ValueError: If ``new_claims`` is None, empty, or does not contain a non-empty + ``access_token`` object. + """ + if not new_claims: + raise ValueError("new_claims must not be None or empty") + new_access_token = json.loads(new_claims).get("access_token") + if not new_access_token: + raise ValueError("new_claims must contain a non-empty access_token") + + claims_dict = json.loads(existing_claims) if existing_claims else {} + claims_dict["access_token"] = claims_dict.get("access_token") or {} + claims_dict["access_token"].update(new_access_token) + return json.dumps(claims_dict) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/azure_cli_core-2.86.0/azure/cli/core/auth/msal_credentials.py new/azure_cli_core-2.87.0/azure/cli/core/auth/msal_credentials.py --- old/azure_cli_core-2.86.0/azure/cli/core/auth/msal_credentials.py 2026-05-01 02:40:32.000000000 +0200 +++ new/azure_cli_core-2.87.0/azure/cli/core/auth/msal_credentials.py 2026-05-26 08:38:40.000000000 +0200 @@ -50,6 +50,27 @@ logger.debug("UserCredential.acquire_token: scopes=%r, claims_challenge=%r, kwargs=%r", scopes, claims_challenge, kwargs) + # Apply agentic session parameters for user identity flows + from .agentic_session import build_agentic_session_params, merge_access_token_claims + agentic_session_id, agentic_claims = build_agentic_session_params() + if agentic_session_id: + # Both paths: client_session in data and params so eSTS can identify the agentic session + kwargs["data"] = kwargs.get("data") or {} + kwargs["data"]["client_session"] = agentic_session_id + kwargs["params"] = kwargs.get("params") or {} + kwargs["params"]["client_session"] = agentic_session_id + + if getattr(self._msal_app, '_enable_broker', False): + # Broker path: claims_challenge flows to MSALRuntime cache key via set_decoded_claims. + # This causes MSAL to skip its local AT cache and forward claims to the broker, + # where requestedClaims becomes part of the C++ cache key. + claims_challenge = merge_access_token_claims(claims_challenge, agentic_claims) + # Non-broker path: client_session in data flows into ext_cache_key (SHA256 hash), + # which partitions the MSAL Python token cache. No claims_challenge needed. + + from azure.cli.core.telemetry import set_agentic_session + set_agentic_session(True) + if claims_challenge: logger.info('Acquiring new access token silently with claims challenge: %s', claims_challenge) result = self._msal_app.acquire_token_silent_with_error( diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/azure_cli_core-2.86.0/azure/cli/core/azlogging.py new/azure_cli_core-2.87.0/azure/cli/core/azlogging.py --- old/azure_cli_core-2.86.0/azure/cli/core/azlogging.py 2026-05-01 02:40:32.000000000 +0200 +++ new/azure_cli_core-2.87.0/azure/cli/core/azlogging.py 2026-05-26 08:38:40.000000000 +0200 @@ -26,6 +26,7 @@ import os import logging import datetime +from logging.handlers import RotatingFileHandler from azure.cli.core.commands.events import EVENT_INVOKER_PRE_CMD_TBL_TRUNCATE @@ -38,6 +39,20 @@ _CMD_LOG_LINE_PREFIX = "CMD-LOG-LINE-BEGIN" +class SecureFileHandler(logging.FileHandler): + """A FileHandler that creates the log file with 600 permissions (owner read/write only).""" + def _open(self): + fd = os.open(self.baseFilename, os.O_WRONLY | os.O_CREAT | os.O_APPEND, 0o600) + return os.fdopen(fd, self.mode, encoding=self.encoding) + + +class SecureRotatingFileHandler(RotatingFileHandler): + """A RotatingFileHandler that creates log files with 600 permissions (owner read/write only).""" + def _open(self): + fd = os.open(self.baseFilename, os.O_WRONLY | os.O_CREAT | os.O_APPEND, 0o600) + return os.fdopen(fd, self.mode, encoding=self.encoding) + + class AzCliLogging(CLILogging): COMMAND_METADATA_LOGGER = 'az_command_data_logger' @@ -58,6 +73,20 @@ # when debug log is shown. logging.getLogger("azure.core.pipeline.policies.http_logging_policy").setLevel(logging.CRITICAL) + def _init_logfile_handlers(self, root_logger, cli_loggers): + # Override knack's CLILogging._init_logfile_handlers() (called by CLILogging.configure()) + # to use SecureRotatingFileHandler, ensuring log files are created with 0o600 permissions. + ensure_dir(self.log_dir) + log_file_path = os.path.join(self.log_dir, self.logfile_name) + logfile_handler = SecureRotatingFileHandler(log_file_path, maxBytes=10 * 1024 * 1024, backupCount=5, + encoding=LOG_FILE_ENCODING) + lfmt = logging.Formatter('%(process)d : %(asctime)s : %(levelname)s : %(name)s : %(message)s') + logfile_handler.setFormatter(lfmt) + logfile_handler.setLevel(logging.DEBUG) + root_logger.addHandler(logfile_handler) + for cli_logger in cli_loggers: + cli_logger.addHandler(logfile_handler) + def get_command_log_dir(self): return self.command_log_dir @@ -112,7 +141,7 @@ log_file_path = os.path.join(self.command_log_dir, log_name) get_logger(__name__).debug("metadata file logging enabled - writing logs to '%s'.", log_file_path) - logfile_handler = logging.FileHandler(log_file_path, encoding=LOG_FILE_ENCODING) + logfile_handler = SecureFileHandler(log_file_path, encoding=LOG_FILE_ENCODING) lfmt = logging.Formatter(_CMD_LOG_LINE_PREFIX + ' %(process)d | %(asctime)s | %(levelname)s | %(name)s | %(message)s') # pylint: disable=line-too-long logfile_handler.setFormatter(lfmt) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/azure_cli_core-2.86.0/azure/cli/core/breaking_change.py new/azure_cli_core-2.87.0/azure/cli/core/breaking_change.py --- old/azure_cli_core-2.86.0/azure/cli/core/breaking_change.py 2026-05-01 02:40:32.000000000 +0200 +++ new/azure_cli_core-2.87.0/azure/cli/core/breaking_change.py 2026-05-26 08:38:40.000000000 +0200 @@ -15,8 +15,8 @@ logger = get_logger() -NEXT_BREAKING_CHANGE_RELEASE = '2.87.0' -NEXT_BREAKING_CHANGE_DATE = 'June 2026' +NEXT_BREAKING_CHANGE_RELEASE = '2.92.0' +NEXT_BREAKING_CHANGE_DATE = 'Nov 2026' DEFAULT_BREAKING_CHANGE_TAG = '[Breaking Change]' diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/azure_cli_core-2.86.0/azure/cli/core/cloud.py new/azure_cli_core-2.87.0/azure/cli/core/cloud.py --- old/azure_cli_core-2.86.0/azure/cli/core/cloud.py 2026-05-01 02:40:32.000000000 +0200 +++ new/azure_cli_core-2.87.0/azure/cli/core/cloud.py 2026-05-26 08:38:40.000000000 +0200 @@ -502,7 +502,7 @@ active_directory_resource_id='https://management.sovcloud-api.fr/', active_directory_graph_resource_id='https://graph.svc.sovcloud.fr/', microsoft_graph_resource_id='https://graph.svc.sovcloud.fr', - vm_image_alias_doc='https://raw.githubusercontent.com/Azure/azure-rest-api-specs/master/arm-compute/quickstart-templates/aliases.json', + vm_image_alias_doc='https://azcliprod.blob.core.windows.net/cli/vm/aliases_master.json', media_resource_id='https://rest.media.sovcloud-api.fr', ossrdbms_resource_id='https://ossrdbms-aad.database.sovcloud-api.fr', portal='https://portal.sovcloud-azure.fr'), diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/azure_cli_core-2.86.0/azure/cli/core/commandIndex.latest.json new/azure_cli_core-2.87.0/azure/cli/core/commandIndex.latest.json --- old/azure_cli_core-2.86.0/azure/cli/core/commandIndex.latest.json 2026-05-01 02:40:32.000000000 +0200 +++ new/azure_cli_core-2.87.0/azure/cli/core/commandIndex.latest.json 2026-05-26 08:38:40.000000000 +0200 @@ -1,5 +1,5 @@ { - "version": "2.86.0", + "version": "2.87.0", "cloudProfile": "latest", "commandIndex": { "account": [ @@ -104,9 +104,6 @@ "databoxedge": [ "azure.cli.command_modules.databoxedge" ], - "demo": [ - "azure.cli.command_modules.util" - ], "deployment": [ "azure.cli.command_modules.resource" ], diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/azure_cli_core-2.86.0/azure/cli/core/helpIndex.latest.json new/azure_cli_core-2.87.0/azure/cli/core/helpIndex.latest.json --- old/azure_cli_core-2.86.0/azure/cli/core/helpIndex.latest.json 2026-05-01 02:40:32.000000000 +0200 +++ new/azure_cli_core-2.87.0/azure/cli/core/helpIndex.latest.json 2026-05-26 08:38:40.000000000 +0200 @@ -1,5 +1,5 @@ { - "version": "2.86.0", + "version": "2.87.0", "cloudProfile": "latest", "helpIndex": { "groups": { @@ -292,7 +292,7 @@ "tags": "" }, "search": { - "summary": "Manage Search.", + "summary": "Manage Azure AI Search.", "tags": "" }, "security": { diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/azure_cli_core-2.86.0/azure/cli/core/profiles/_shared.py new/azure_cli_core-2.87.0/azure/cli/core/profiles/_shared.py --- old/azure_cli_core-2.86.0/azure/cli/core/profiles/_shared.py 2026-05-01 02:40:32.000000000 +0200 +++ new/azure_cli_core-2.87.0/azure/cli/core/profiles/_shared.py 2026-05-26 08:38:40.000000000 +0200 @@ -208,7 +208,7 @@ ResourceType.MGMT_EVENTHUB: None, ResourceType.MGMT_MONITOR: None, ResourceType.MGMT_MSI: '2024-11-30', - ResourceType.MGMT_APPSERVICE: '2024-11-01', + ResourceType.MGMT_APPSERVICE: None, ResourceType.MGMT_IOTHUB: None, ResourceType.MGMT_IOTDPS: None, ResourceType.MGMT_IOTCENTRAL: None, diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/azure_cli_core-2.86.0/azure/cli/core/style.py new/azure_cli_core-2.87.0/azure/cli/core/style.py --- old/azure_cli_core-2.86.0/azure/cli/core/style.py 2026-05-01 02:40:32.000000000 +0200 +++ new/azure_cli_core-2.87.0/azure/cli/core/style.py 2026-05-26 08:38:40.000000000 +0200 @@ -13,8 +13,6 @@ Console Virtual Terminal Sequences: https://learn.microsoft.com/en-us/windows/console/console-virtual-terminal-sequences#text-formatting - -For a complete demo, see `src/azure-cli/azure/cli/command_modules/util/custom.py` and run `az demo style`. """ import sys diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/azure_cli_core-2.86.0/azure/cli/core/telemetry.py new/azure_cli_core-2.87.0/azure/cli/core/telemetry.py --- old/azure_cli_core-2.86.0/azure/cli/core/telemetry.py 2026-05-01 02:40:32.000000000 +0200 +++ new/azure_cli_core-2.87.0/azure/cli/core/telemetry.py 2026-05-26 08:38:40.000000000 +0200 @@ -79,6 +79,7 @@ self.enable_broker_on_windows = None self.msal_telemetry = None self.login_experience_v2 = None + self.agentic_session = False def add_event(self, name, properties): for key in self.instrumentation_key: @@ -239,6 +240,7 @@ set_custom_properties(result, 'EnableBrokerOnWindows', str(self.enable_broker_on_windows)) set_custom_properties(result, 'MsalTelemetry', self.msal_telemetry) set_custom_properties(result, 'LoginExperienceV2', str(self.login_experience_v2)) + set_custom_properties(result, 'AgenticSession', str(self.agentic_session)) return result @@ -497,6 +499,11 @@ @decorators.suppress_all_exceptions() def set_login_experience_v2(login_experience_v2): _session.login_experience_v2 = login_experience_v2 + + [email protected]_all_exceptions() +def set_agentic_session(agentic_session): + _session.agentic_session = agentic_session # endregion diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/azure_cli_core-2.86.0/azure/cli/core/util.py new/azure_cli_core-2.87.0/azure/cli/core/util.py --- old/azure_cli_core-2.86.0/azure/cli/core/util.py 2026-05-01 02:40:32.000000000 +0200 +++ new/azure_cli_core-2.87.0/azure/cli/core/util.py 2026-05-26 08:38:40.000000000 +0200 @@ -576,11 +576,10 @@ def read_file_content(file_path, allow_binary=False): - from codecs import open as codecs_open # Note, always put 'utf-8-sig' first, so that BOM in WinOS won't cause trouble. for encoding in ['utf-8-sig', 'utf-8', 'utf-16', 'utf-16le', 'utf-16be']: try: - with codecs_open(file_path, encoding=encoding) as f: + with open(file_path, mode='r', encoding=encoding) as f: logger.debug("attempting to read file %s as %s", file_path, encoding) return f.read() except (UnicodeError, UnicodeDecodeError): diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/azure_cli_core-2.86.0/azure_cli_core.egg-info/PKG-INFO new/azure_cli_core-2.87.0/azure_cli_core.egg-info/PKG-INFO --- old/azure_cli_core-2.86.0/azure_cli_core.egg-info/PKG-INFO 2026-05-01 02:41:23.000000000 +0200 +++ new/azure_cli_core-2.87.0/azure_cli_core.egg-info/PKG-INFO 2026-05-26 08:39:29.000000000 +0200 @@ -1,6 +1,6 @@ Metadata-Version: 2.4 Name: azure-cli-core -Version: 2.86.0 +Version: 2.87.0 Summary: Microsoft Azure Command-Line Tools Core Module Home-page: https://github.com/Azure/azure-cli Author: Microsoft Corporation @@ -26,11 +26,11 @@ Requires-Dist: distro; sys_platform == "linux" Requires-Dist: humanfriendly~=10.0 Requires-Dist: jmespath -Requires-Dist: knack~=0.11.0 +Requires-Dist: knack~=0.14.0 Requires-Dist: microsoft-security-utilities-secret-masker~=1.0.0b4 Requires-Dist: msal-extensions==1.3.1 -Requires-Dist: msal[broker]==1.35.1; sys_platform == "win32" -Requires-Dist: msal==1.35.1; sys_platform != "win32" +Requires-Dist: msal[broker]==1.36.0; sys_platform == "win32" +Requires-Dist: msal==1.36.0; sys_platform != "win32" Requires-Dist: packaging>=20.9 Requires-Dist: pkginfo>=1.5.0.1 Requires-Dist: psutil>=5.9; sys_platform != "cygwin" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/azure_cli_core-2.86.0/azure_cli_core.egg-info/SOURCES.txt new/azure_cli_core-2.87.0/azure_cli_core.egg-info/SOURCES.txt --- old/azure_cli_core-2.86.0/azure_cli_core.egg-info/SOURCES.txt 2026-05-01 02:41:23.000000000 +0200 +++ new/azure_cli_core-2.87.0/azure_cli_core.egg-info/SOURCES.txt 2026-05-26 08:39:29.000000000 +0200 @@ -60,6 +60,7 @@ azure/cli/core/aaz/exceptions.py azure/cli/core/aaz/utils.py azure/cli/core/auth/__init__.py +azure/cli/core/auth/agentic_session.py azure/cli/core/auth/binary_cache.py azure/cli/core/auth/constants.py azure/cli/core/auth/credential_adaptor.py diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/azure_cli_core-2.86.0/azure_cli_core.egg-info/requires.txt new/azure_cli_core-2.87.0/azure_cli_core.egg-info/requires.txt --- old/azure_cli_core-2.86.0/azure_cli_core.egg-info/requires.txt 2026-05-01 02:41:23.000000000 +0200 +++ new/azure_cli_core-2.87.0/azure_cli_core.egg-info/requires.txt 2026-05-26 08:39:29.000000000 +0200 @@ -5,7 +5,7 @@ cryptography humanfriendly~=10.0 jmespath -knack~=0.11.0 +knack~=0.14.0 microsoft-security-utilities-secret-masker~=1.0.0b4 msal-extensions==1.3.1 packaging>=20.9 @@ -19,10 +19,10 @@ psutil>=5.9 [:sys_platform != "win32"] -msal==1.35.1 +msal==1.36.0 [:sys_platform == "linux"] distro [:sys_platform == "win32"] -msal[broker]==1.35.1 +msal[broker]==1.36.0 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/azure_cli_core-2.86.0/setup.py new/azure_cli_core-2.87.0/setup.py --- old/azure_cli_core-2.86.0/setup.py 2026-05-01 02:40:32.000000000 +0200 +++ new/azure_cli_core-2.87.0/setup.py 2026-05-26 08:38:40.000000000 +0200 @@ -8,7 +8,7 @@ from codecs import open from setuptools import setup, find_packages -VERSION = "2.86.0" +VERSION = "2.87.0" # If we have source, validate that our version numbers match # This should prevent uploading releases with mismatched versions. @@ -52,11 +52,11 @@ 'distro; sys_platform == "linux"', 'humanfriendly~=10.0', 'jmespath', - 'knack~=0.11.0', + 'knack~=0.14.0', 'microsoft-security-utilities-secret-masker~=1.0.0b4', 'msal-extensions==1.3.1', - 'msal[broker]==1.35.1; sys_platform == "win32"', - 'msal==1.35.1; sys_platform != "win32"', + 'msal[broker]==1.36.0; sys_platform == "win32"', + 'msal==1.36.0; sys_platform != "win32"', 'packaging>=20.9', 'pkginfo>=1.5.0.1', # psutil can't install on cygwin: https://github.com/Azure/azure-cli/issues/9399
