Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package python-azure-identity for 
openSUSE:Factory checked in at 2023-10-11 23:56:37
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-azure-identity (Old)
 and      /work/SRC/openSUSE:Factory/.python-azure-identity.new.1807 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "python-azure-identity"

Wed Oct 11 23:56:37 2023 rev:20 rq:1116973 version:1.14.1

Changes:
--------
--- 
/work/SRC/openSUSE:Factory/python-azure-identity/python-azure-identity.changes  
    2023-08-14 22:36:20.632638990 +0200
+++ 
/work/SRC/openSUSE:Factory/.python-azure-identity.new.1807/python-azure-identity.changes
    2023-10-12 11:51:58.142504026 +0200
@@ -1,0 +2,8 @@
+Tue Oct 10 08:36:14 UTC 2023 - John Paul Adrian Glaubitz 
<adrian.glaub...@suse.com>
+
+- New upstream release
+  + Version 1.14.1
+  + For detailed information about changes see the
+    CHANGELOG.md file provided with this package
+
+-------------------------------------------------------------------

Old:
----
  azure-identity-1.14.0.zip

New:
----
  azure-identity-1.14.1.zip

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ python-azure-identity.spec ++++++
--- /var/tmp/diff_new_pack.Gy6ZZw/_old  2023-10-12 11:51:58.722524692 +0200
+++ /var/tmp/diff_new_pack.Gy6ZZw/_new  2023-10-12 11:51:58.726524834 +0200
@@ -21,7 +21,7 @@
 %define skip_python2 1
 %endif
 Name:           python-azure-identity
-Version:        1.14.0
+Version:        1.14.1
 Release:        0
 Summary:        Azure Identity client library for Python
 License:        MIT

++++++ azure-identity-1.14.0.zip -> azure-identity-1.14.1.zip ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/azure-identity-1.14.0/CHANGELOG.md 
new/azure-identity-1.14.1/CHANGELOG.md
--- old/azure-identity-1.14.0/CHANGELOG.md      2023-08-08 23:43:26.000000000 
+0200
+++ new/azure-identity-1.14.1/CHANGELOG.md      2023-10-09 21:39:44.000000000 
+0200
@@ -1,5 +1,33 @@
 # Release History
 
+## 1.14.1 (2023-10-09)
+
+### Bugs Fixed
+
+- Bug fixes for developer credentials
+
+## 1.15.0b1 (2023-09-12)
+
+### Features Added
+
+- Added Windows Web Account Manager (WAM) Brokered Authentication support.
+- Added `enable_msa_passthrough` suppport for `InteractiveBrowserCredential`. 
By default `InteractiveBrowserCredential` only lists AAD accounts. If you set 
`enable_msa_passthrough` to `True`, it lists both AAD accounts and MSA 
outlook.com accounts that are logged in to Windows.
+
+### Bugs Fixed
+
+- Ensure `AzurePowershellCredential` calls PowerShell with the `-NoProfile` 
flag to avoid loading user profiles for more consistent behavior.  
([#31682](https://github.com/Azure/azure-sdk-for-python/pull/31682))
+- Fixed an issue with subprocess-based developer credentials (such as 
AzureCliCredential) where the process would sometimes hang waiting for user 
input.  ([#31534](https://github.com/Azure/azure-sdk-for-python/pull/31534))
+- Fixed an issue with `ClientAssertionCredential` not properly checking if CAE 
should be enabled.  
([#31544](https://github.com/Azure/azure-sdk-for-python/pull/31544))
+- `ManagedIdentityCredential` will fall through to the next credential in the 
chain in the case that Docker Desktop returns a 403 response when attempting to 
access the IMDS endpoint.  
([#31824](https://github.com/Azure/azure-sdk-for-python/pull/31824))
+
+### Other Changes
+
+- Update typing of async credentials to match the `AsyncTokenCredential` 
protocol.
+- If within `DefaultAzureCredential`, `EnvironmentCredential` will now use log 
level INFO instead of WARNING to inform users of an incomplete environment 
configuration.  
([#31814](https://github.com/Azure/azure-sdk-for-python/pull/31814))
+- Strengthened `AzureCliCredential` and `AzureDeveloperCliCredential` error 
checking when determining if a user is logged in or not. Now, if an AADSTS 
error exists in the error, the full error message is propagated instead of a 
canned error message. 
([#30047](https://github.com/Azure/azure-sdk-for-python/pull/30047))
+- `ManagedIdentityCredential` instances using IMDS will now be allowed to 
continue sending requests to the IMDS endpoint even after previous attempts 
failed. This is to prevent credential instances from potentially being 
permanently disabled after a temporary network failure.
+- IMDS endpoint probes in `ManagedIdentityCredential` will now only occur when 
inside a credential chain such as `DefaultAzureCredential`. This probe request 
timeout has been increased to 1 second from 0.3 seconds to reduce the 
likelihood of false negatives.
+
 ## 1.14.0 (2023-08-08)
 
 ### Features Added
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/azure-identity-1.14.0/PKG-INFO 
new/azure-identity-1.14.1/PKG-INFO
--- old/azure-identity-1.14.0/PKG-INFO  2023-08-08 23:44:22.000000000 +0200
+++ new/azure-identity-1.14.1/PKG-INFO  2023-10-09 21:40:38.000000000 +0200
@@ -1,6 +1,6 @@
 Metadata-Version: 2.1
 Name: azure-identity
-Version: 1.14.0
+Version: 1.14.1
 Summary: Microsoft Azure Identity Library for Python
 Home-page: 
https://github.com/Azure/azure-sdk-for-python/tree/main/sdk/identity/azure-identity
 Author: Microsoft Corporation
@@ -19,6 +19,10 @@
 Requires-Python: >=3.7
 Description-Content-Type: text/markdown
 License-File: LICENSE
+Requires-Dist: azure-core<2.0.0,>=1.11.0
+Requires-Dist: cryptography>=2.5
+Requires-Dist: msal<2.0.0,>=1.20.0
+Requires-Dist: msal-extensions<2.0.0,>=0.3.0
 
 # Azure Identity client library for Python
 
@@ -413,6 +417,34 @@
 
 # Release History
 
+## 1.14.1 (2023-10-09)
+
+### Bugs Fixed
+
+- Bug fixes for developer credentials
+
+## 1.15.0b1 (2023-09-12)
+
+### Features Added
+
+- Added Windows Web Account Manager (WAM) Brokered Authentication support.
+- Added `enable_msa_passthrough` suppport for `InteractiveBrowserCredential`. 
By default `InteractiveBrowserCredential` only lists AAD accounts. If you set 
`enable_msa_passthrough` to `True`, it lists both AAD accounts and MSA 
outlook.com accounts that are logged in to Windows.
+
+### Bugs Fixed
+
+- Ensure `AzurePowershellCredential` calls PowerShell with the `-NoProfile` 
flag to avoid loading user profiles for more consistent behavior.  
([#31682](https://github.com/Azure/azure-sdk-for-python/pull/31682))
+- Fixed an issue with subprocess-based developer credentials (such as 
AzureCliCredential) where the process would sometimes hang waiting for user 
input.  ([#31534](https://github.com/Azure/azure-sdk-for-python/pull/31534))
+- Fixed an issue with `ClientAssertionCredential` not properly checking if CAE 
should be enabled.  
([#31544](https://github.com/Azure/azure-sdk-for-python/pull/31544))
+- `ManagedIdentityCredential` will fall through to the next credential in the 
chain in the case that Docker Desktop returns a 403 response when attempting to 
access the IMDS endpoint.  
([#31824](https://github.com/Azure/azure-sdk-for-python/pull/31824))
+
+### Other Changes
+
+- Update typing of async credentials to match the `AsyncTokenCredential` 
protocol.
+- If within `DefaultAzureCredential`, `EnvironmentCredential` will now use log 
level INFO instead of WARNING to inform users of an incomplete environment 
configuration.  
([#31814](https://github.com/Azure/azure-sdk-for-python/pull/31814))
+- Strengthened `AzureCliCredential` and `AzureDeveloperCliCredential` error 
checking when determining if a user is logged in or not. Now, if an AADSTS 
error exists in the error, the full error message is propagated instead of a 
canned error message. 
([#30047](https://github.com/Azure/azure-sdk-for-python/pull/30047))
+- `ManagedIdentityCredential` instances using IMDS will now be allowed to 
continue sending requests to the IMDS endpoint even after previous attempts 
failed. This is to prevent credential instances from potentially being 
permanently disabled after a temporary network failure.
+- IMDS endpoint probes in `ManagedIdentityCredential` will now only occur when 
inside a credential chain such as `DefaultAzureCredential`. This probe request 
timeout has been increased to 1 second from 0.3 seconds to reduce the 
likelihood of false negatives.
+
 ## 1.14.0 (2023-08-08)
 
 ### Features Added
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/azure-identity-1.14.0/azure/identity/_credentials/azd_cli.py 
new/azure-identity-1.14.1/azure/identity/_credentials/azd_cli.py
--- old/azure-identity-1.14.0/azure/identity/_credentials/azd_cli.py    
2023-08-08 23:43:26.000000000 +0200
+++ new/azure-identity-1.14.1/azure/identity/_credentials/azd_cli.py    
2023-10-09 21:39:44.000000000 +0200
@@ -16,7 +16,7 @@
 from azure.core.exceptions import ClientAuthenticationError
 
 from .. import CredentialUnavailableError
-from .._internal import resolve_tenant, within_dac
+from .._internal import resolve_tenant, within_dac, validate_tenant_id, 
validate_scope
 from .._internal.decorators import log_get_token
 
 CLI_NOT_FOUND = (
@@ -76,7 +76,8 @@
         additionally_allowed_tenants: Optional[List[str]] = None,
         process_timeout: int = 10,
     ) -> None:
-
+        if tenant_id:
+            validate_tenant_id(tenant_id)
         self.tenant_id = tenant_id
         self._additionally_allowed_tenants = additionally_allowed_tenants or []
         self._process_timeout = process_timeout
@@ -121,6 +122,11 @@
         if not scopes:
             raise ValueError("Missing scope in request. \n")
 
+        if tenant_id:
+            validate_tenant_id(tenant_id)
+        for scope in scopes:
+            validate_scope(scope)
+
         commandString = " --scope ".join(scopes)
         command = COMMAND_LINE.format(commandString)
         tenant = resolve_tenant(
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/azure-identity-1.14.0/azure/identity/_credentials/azure_cli.py 
new/azure-identity-1.14.1/azure/identity/_credentials/azure_cli.py
--- old/azure-identity-1.14.0/azure/identity/_credentials/azure_cli.py  
2023-08-08 23:43:26.000000000 +0200
+++ new/azure-identity-1.14.1/azure/identity/_credentials/azure_cli.py  
2023-10-09 21:39:44.000000000 +0200
@@ -16,7 +16,7 @@
 from azure.core.exceptions import ClientAuthenticationError
 
 from .. import CredentialUnavailableError
-from .._internal import _scopes_to_resource, resolve_tenant, within_dac
+from .._internal import _scopes_to_resource, resolve_tenant, within_dac, 
validate_tenant_id, validate_scope
 from .._internal.decorators import log_get_token
 
 
@@ -54,7 +54,8 @@
         additionally_allowed_tenants: Optional[List[str]] = None,
         process_timeout: int = 10,
     ) -> None:
-
+        if tenant_id:
+            validate_tenant_id(tenant_id)
         self.tenant_id = tenant_id
         self._additionally_allowed_tenants = additionally_allowed_tenants or []
         self._process_timeout = process_timeout
@@ -94,6 +95,10 @@
         :raises ~azure.core.exceptions.ClientAuthenticationError: the 
credential invoked the Azure CLI but didn't
           receive an access token.
         """
+        if tenant_id:
+            validate_tenant_id(tenant_id)
+        for scope in scopes:
+            validate_scope(scope)
 
         resource = _scopes_to_resource(*scopes)
         command = COMMAND_LINE.format(resource)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/azure-identity-1.14.0/azure/identity/_credentials/azure_powershell.py 
new/azure-identity-1.14.1/azure/identity/_credentials/azure_powershell.py
--- old/azure-identity-1.14.0/azure/identity/_credentials/azure_powershell.py   
2023-08-08 23:43:26.000000000 +0200
+++ new/azure-identity-1.14.1/azure/identity/_credentials/azure_powershell.py   
2023-10-09 21:39:44.000000000 +0200
@@ -13,7 +13,7 @@
 
 from .azure_cli import get_safe_working_dir
 from .. import CredentialUnavailableError
-from .._internal import _scopes_to_resource, resolve_tenant, within_dac
+from .._internal import _scopes_to_resource, resolve_tenant, within_dac, 
validate_tenant_id, validate_scope
 from .._internal.decorators import log_get_token
 
 
@@ -68,7 +68,8 @@
         additionally_allowed_tenants: Optional[List[str]] = None,
         process_timeout: int = 10,
     ) -> None:
-
+        if tenant_id:
+            validate_tenant_id(tenant_id)
         self.tenant_id = tenant_id
         self._additionally_allowed_tenants = additionally_allowed_tenants or []
         self._process_timeout = process_timeout
@@ -109,6 +110,11 @@
         :raises ~azure.core.exceptions.ClientAuthenticationError: the 
credential invoked Azure PowerShell but didn't
           receive an access token
         """
+        if tenant_id:
+            validate_tenant_id(tenant_id)
+        for scope in scopes:
+            validate_scope(scope)
+
         tenant_id = resolve_tenant(
             default_tenant=self.tenant_id,
             tenant_id=tenant_id,
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/azure-identity-1.14.0/azure/identity/_internal/__init__.py 
new/azure-identity-1.14.1/azure/identity/_internal/__init__.py
--- old/azure-identity-1.14.0/azure/identity/_internal/__init__.py      
2023-08-08 23:43:26.000000000 +0200
+++ new/azure-identity-1.14.1/azure/identity/_internal/__init__.py      
2023-10-09 21:39:44.000000000 +0200
@@ -12,6 +12,7 @@
     get_default_authority,
     normalize_authority,
     resolve_tenant,
+    validate_scope,
     validate_tenant_id,
     within_credential_chain,
     within_dac,
@@ -47,6 +48,7 @@
     "InteractiveCredential",
     "normalize_authority",
     "resolve_tenant",
+    "validate_scope",
     "within_credential_chain",
     "within_dac",
     "wrap_exceptions",
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/azure-identity-1.14.0/azure/identity/_internal/utils.py 
new/azure-identity-1.14.1/azure/identity/_internal/utils.py
--- old/azure-identity-1.14.0/azure/identity/_internal/utils.py 2023-08-08 
23:43:26.000000000 +0200
+++ new/azure-identity-1.14.1/azure/identity/_internal/utils.py 2023-10-09 
21:39:44.000000000 +0200
@@ -5,6 +5,7 @@
 import os
 import logging
 from contextvars import ContextVar
+from string import ascii_letters, digits
 from typing import List, Optional
 
 from urllib.parse import urlparse
@@ -17,6 +18,9 @@
 
 _LOGGER = logging.getLogger(__name__)
 
+VALID_TENANT_ID_CHARACTERS = frozenset(ascii_letters + digits + "-.")
+VALID_SCOPE_CHARACTERS = frozenset(ascii_letters + digits + "_-.:/")
+
 
 def normalize_authority(authority: str) -> str:
     """Ensure authority uses https, strip trailing spaces and /.
@@ -43,19 +47,28 @@
     return normalize_authority(authority)
 
 
-VALID_TENANT_ID_CHARACTERS = 
frozenset("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz" + "0123456789" 
+ "-.")
+def validate_scope(scope: str) -> None:
+    """Raise ValueError if scope is empty or contains a character invalid for 
a scope
+
+    :param str scope: scope to validate
+    :raises: ValueError if scope is empty or contains a character invalid for 
a scope.
+    """
+    if not scope or any(c not in VALID_SCOPE_CHARACTERS for c in scope):
+        raise ValueError(
+            "An invalid scope was provided. Only alphanumeric characters, '.', 
'-', '_', ':', and '/' are allowed."
+        )
 
 
 def validate_tenant_id(tenant_id: str) -> None:
     """Raise ValueError if tenant_id is empty or contains a character invalid 
for a tenant ID.
 
-    :param str tenant_id: tenant id to validate
+    :param str tenant_id: tenant ID to validate
     :raises: ValueError if tenant_id is empty or contains a character invalid 
for a tenant ID.
     """
     if not tenant_id or any(c not in VALID_TENANT_ID_CHARACTERS for c in 
tenant_id):
         raise ValueError(
-            "Invalid tenant id provided. You can locate your tenant id by 
following the instructions here: "
-            + 
"https://docs.microsoft.com/partner-center/find-ids-and-domain-names";
+            "Invalid tenant ID provided. You can locate your tenant ID by 
following the instructions here: "
+            + 
"https://learn.microsoft.com/partner-center/find-ids-and-domain-names";
         )
 
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/azure-identity-1.14.0/azure/identity/_version.py 
new/azure-identity-1.14.1/azure/identity/_version.py
--- old/azure-identity-1.14.0/azure/identity/_version.py        2023-08-08 
23:43:26.000000000 +0200
+++ new/azure-identity-1.14.1/azure/identity/_version.py        2023-10-09 
21:39:44.000000000 +0200
@@ -2,4 +2,4 @@
 # Copyright (c) Microsoft Corporation.
 # Licensed under the MIT License.
 # ------------------------------------
-VERSION = "1.14.0"
+VERSION = "1.14.1"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/azure-identity-1.14.0/azure/identity/aio/_credentials/azd_cli.py 
new/azure-identity-1.14.1/azure/identity/aio/_credentials/azd_cli.py
--- old/azure-identity-1.14.0/azure/identity/aio/_credentials/azd_cli.py        
2023-08-08 23:43:26.000000000 +0200
+++ new/azure-identity-1.14.1/azure/identity/aio/_credentials/azd_cli.py        
2023-10-09 21:39:44.000000000 +0200
@@ -23,7 +23,7 @@
     parse_token,
     sanitize_output,
 )
-from ..._internal import resolve_tenant, within_dac
+from ..._internal import resolve_tenant, within_dac, validate_tenant_id, 
validate_scope
 
 
 class AzureDeveloperCliCredential(AsyncContextManager):
@@ -73,7 +73,8 @@
         additionally_allowed_tenants: Optional[List[str]] = None,
         process_timeout: int = 10,
     ) -> None:
-
+        if tenant_id:
+            validate_tenant_id(tenant_id)
         self.tenant_id = tenant_id
         self._additionally_allowed_tenants = additionally_allowed_tenants or []
         self._process_timeout = process_timeout
@@ -110,6 +111,11 @@
         if not scopes:
             raise ValueError("Missing scope in request. \n")
 
+        if tenant_id:
+            validate_tenant_id(tenant_id)
+        for scope in scopes:
+            validate_scope(scope)
+
         commandString = " --scope ".join(scopes)
         command = COMMAND_LINE.format(commandString)
         tenant = resolve_tenant(
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/azure-identity-1.14.0/azure/identity/aio/_credentials/azure_cli.py 
new/azure-identity-1.14.1/azure/identity/aio/_credentials/azure_cli.py
--- old/azure-identity-1.14.0/azure/identity/aio/_credentials/azure_cli.py      
2023-08-08 23:43:26.000000000 +0200
+++ new/azure-identity-1.14.1/azure/identity/aio/_credentials/azure_cli.py      
2023-10-09 21:39:44.000000000 +0200
@@ -23,7 +23,7 @@
     parse_token,
     sanitize_output,
 )
-from ..._internal import _scopes_to_resource, resolve_tenant, within_dac
+from ..._internal import _scopes_to_resource, resolve_tenant, within_dac, 
validate_tenant_id, validate_scope
 
 
 class AzureCliCredential(AsyncContextManager):
@@ -54,7 +54,8 @@
         additionally_allowed_tenants: Optional[List[str]] = None,
         process_timeout: int = 10,
     ) -> None:
-
+        if tenant_id:
+            validate_tenant_id(tenant_id)
         self.tenant_id = tenant_id
         self._additionally_allowed_tenants = additionally_allowed_tenants or []
         self._process_timeout = process_timeout
@@ -88,6 +89,11 @@
         if sys.platform.startswith("win") and not 
isinstance(asyncio.get_event_loop(), asyncio.ProactorEventLoop):
             return _SyncAzureCliCredential().get_token(*scopes, 
tenant_id=tenant_id, **kwargs)
 
+        if tenant_id:
+            validate_tenant_id(tenant_id)
+        for scope in scopes:
+            validate_scope(scope)
+
         resource = _scopes_to_resource(*scopes)
         command = COMMAND_LINE.format(resource)
         tenant = resolve_tenant(
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/azure-identity-1.14.0/azure/identity/aio/_credentials/azure_powershell.py 
new/azure-identity-1.14.1/azure/identity/aio/_credentials/azure_powershell.py
--- 
old/azure-identity-1.14.0/azure/identity/aio/_credentials/azure_powershell.py   
    2023-08-08 23:43:26.000000000 +0200
+++ 
new/azure-identity-1.14.1/azure/identity/aio/_credentials/azure_powershell.py   
    2023-10-09 21:39:44.000000000 +0200
@@ -17,7 +17,7 @@
     raise_for_error,
     parse_token,
 )
-from ..._internal import resolve_tenant
+from ..._internal import resolve_tenant, validate_tenant_id, validate_scope
 
 
 class AzurePowerShellCredential(AsyncContextManager):
@@ -48,7 +48,8 @@
         additionally_allowed_tenants: Optional[List[str]] = None,
         process_timeout: int = 10,
     ) -> None:
-
+        if tenant_id:
+            validate_tenant_id(tenant_id)
         self.tenant_id = tenant_id
         self._additionally_allowed_tenants = additionally_allowed_tenants or []
         self._process_timeout = process_timeout
@@ -83,6 +84,11 @@
         if sys.platform.startswith("win") and not 
isinstance(asyncio.get_event_loop(), asyncio.ProactorEventLoop):
             return _SyncCredential().get_token(*scopes, tenant_id=tenant_id, 
**kwargs)
 
+        if tenant_id:
+            validate_tenant_id(tenant_id)
+        for scope in scopes:
+            validate_scope(scope)
+
         tenant_id = resolve_tenant(
             default_tenant=self.tenant_id,
             tenant_id=tenant_id,
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/azure-identity-1.14.0/azure_identity.egg-info/PKG-INFO 
new/azure-identity-1.14.1/azure_identity.egg-info/PKG-INFO
--- old/azure-identity-1.14.0/azure_identity.egg-info/PKG-INFO  2023-08-08 
23:44:22.000000000 +0200
+++ new/azure-identity-1.14.1/azure_identity.egg-info/PKG-INFO  2023-10-09 
21:40:38.000000000 +0200
@@ -1,6 +1,6 @@
 Metadata-Version: 2.1
 Name: azure-identity
-Version: 1.14.0
+Version: 1.14.1
 Summary: Microsoft Azure Identity Library for Python
 Home-page: 
https://github.com/Azure/azure-sdk-for-python/tree/main/sdk/identity/azure-identity
 Author: Microsoft Corporation
@@ -19,6 +19,10 @@
 Requires-Python: >=3.7
 Description-Content-Type: text/markdown
 License-File: LICENSE
+Requires-Dist: azure-core<2.0.0,>=1.11.0
+Requires-Dist: cryptography>=2.5
+Requires-Dist: msal<2.0.0,>=1.20.0
+Requires-Dist: msal-extensions<2.0.0,>=0.3.0
 
 # Azure Identity client library for Python
 
@@ -413,6 +417,34 @@
 
 # Release History
 
+## 1.14.1 (2023-10-09)
+
+### Bugs Fixed
+
+- Bug fixes for developer credentials
+
+## 1.15.0b1 (2023-09-12)
+
+### Features Added
+
+- Added Windows Web Account Manager (WAM) Brokered Authentication support.
+- Added `enable_msa_passthrough` suppport for `InteractiveBrowserCredential`. 
By default `InteractiveBrowserCredential` only lists AAD accounts. If you set 
`enable_msa_passthrough` to `True`, it lists both AAD accounts and MSA 
outlook.com accounts that are logged in to Windows.
+
+### Bugs Fixed
+
+- Ensure `AzurePowershellCredential` calls PowerShell with the `-NoProfile` 
flag to avoid loading user profiles for more consistent behavior.  
([#31682](https://github.com/Azure/azure-sdk-for-python/pull/31682))
+- Fixed an issue with subprocess-based developer credentials (such as 
AzureCliCredential) where the process would sometimes hang waiting for user 
input.  ([#31534](https://github.com/Azure/azure-sdk-for-python/pull/31534))
+- Fixed an issue with `ClientAssertionCredential` not properly checking if CAE 
should be enabled.  
([#31544](https://github.com/Azure/azure-sdk-for-python/pull/31544))
+- `ManagedIdentityCredential` will fall through to the next credential in the 
chain in the case that Docker Desktop returns a 403 response when attempting to 
access the IMDS endpoint.  
([#31824](https://github.com/Azure/azure-sdk-for-python/pull/31824))
+
+### Other Changes
+
+- Update typing of async credentials to match the `AsyncTokenCredential` 
protocol.
+- If within `DefaultAzureCredential`, `EnvironmentCredential` will now use log 
level INFO instead of WARNING to inform users of an incomplete environment 
configuration.  
([#31814](https://github.com/Azure/azure-sdk-for-python/pull/31814))
+- Strengthened `AzureCliCredential` and `AzureDeveloperCliCredential` error 
checking when determining if a user is logged in or not. Now, if an AADSTS 
error exists in the error, the full error message is propagated instead of a 
canned error message. 
([#30047](https://github.com/Azure/azure-sdk-for-python/pull/30047))
+- `ManagedIdentityCredential` instances using IMDS will now be allowed to 
continue sending requests to the IMDS endpoint even after previous attempts 
failed. This is to prevent credential instances from potentially being 
permanently disabled after a temporary network failure.
+- IMDS endpoint probes in `ManagedIdentityCredential` will now only occur when 
inside a credential chain such as `DefaultAzureCredential`. This probe request 
timeout has been increased to 1 second from 0.3 seconds to reduce the 
likelihood of false negatives.
+
 ## 1.14.0 (2023-08-08)
 
 ### Features Added
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/azure-identity-1.14.0/tests/test_powershell_credential.py 
new/azure-identity-1.14.1/tests/test_powershell_credential.py
--- old/azure-identity-1.14.0/tests/test_powershell_credential.py       
2023-08-08 23:43:26.000000000 +0200
+++ new/azure-identity-1.14.1/tests/test_powershell_credential.py       
2023-10-09 21:39:44.000000000 +0200
@@ -110,7 +110,7 @@
 
     Popen = get_mock_Popen(stdout=stdout, stderr=stderr)
     with patch(POPEN, Popen):
-        token = AzurePowerShellCredential().get_token(scope, 
tenant_id="tenant_id")
+        token = AzurePowerShellCredential().get_token(scope, 
tenant_id="tenant-id")
 
     assert token.token == expected_access_token
     assert token.expires_on == expected_expires_on
@@ -315,5 +315,5 @@
         assert token.token == expected_token
 
         with patch.dict("os.environ", 
{EnvironmentVariables.AZURE_IDENTITY_DISABLE_MULTITENANTAUTH: "true"}):
-            token = credential.get_token("scope", tenant_id="some tenant")
+            token = credential.get_token("scope", tenant_id="some-tenant")
             assert token.token == expected_token
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/azure-identity-1.14.0/tests/test_powershell_credential_async.py 
new/azure-identity-1.14.1/tests/test_powershell_credential_async.py
--- old/azure-identity-1.14.0/tests/test_powershell_credential_async.py 
2023-08-08 23:43:26.000000000 +0200
+++ new/azure-identity-1.14.1/tests/test_powershell_credential_async.py 
2023-10-09 21:39:44.000000000 +0200
@@ -97,7 +97,7 @@
 
     mock_exec = get_mock_exec(stdout=stdout, stderr=stderr)
     with patch(CREATE_SUBPROCESS_EXEC, mock_exec):
-        token = await AzurePowerShellCredential().get_token(scope, 
tenant_id="tenant_id")
+        token = await AzurePowerShellCredential().get_token(scope, 
tenant_id="tenant-id")
 
     assert token.token == expected_access_token
     assert token.expires_on == expected_expires_on
@@ -313,5 +313,5 @@
         assert token.token == expected_token
 
         with patch.dict("os.environ", 
{EnvironmentVariables.AZURE_IDENTITY_DISABLE_MULTITENANTAUTH: "true"}):
-            token = await credential.get_token("scope", tenant_id="some 
tenant")
+            token = await credential.get_token("scope", 
tenant_id="some-tenant")
             assert token.token == expected_token

Reply via email to