{"diffoscope-json-version": 1, "source1": "/srv/reproducible-results/rbuild-debian/r-b-build.rU5Ms08r/b1/python-keystoneauth1_5.12.0-3_amd64.changes", "source2": "/srv/reproducible-results/rbuild-debian/r-b-build.rU5Ms08r/b2/python-keystoneauth1_5.12.0-3_amd64.changes", "unified_diff": null, "details": [{"source1": "Files", "source2": "Files", "unified_diff": "@@ -1,3 +1,3 @@\n \n- f155f9c438296d11ac8f405f8ef45fb4 1245544 doc optional python-keystoneauth1-doc_5.12.0-3_all.deb\n+ 44d867857c6dcdf83fe6de5c15a418be 1245568 doc optional python-keystoneauth1-doc_5.12.0-3_all.deb\n bfd6a8bd241953740c146fc9c8b85a5b 170420 python optional python3-keystoneauth1_5.12.0-3_all.deb\n"}, {"source1": "python-keystoneauth1-doc_5.12.0-3_all.deb", "source2": "python-keystoneauth1-doc_5.12.0-3_all.deb", "unified_diff": null, "details": [{"source1": "file list", "source2": "file list", "unified_diff": "@@ -1,3 +1,3 @@\n -rw-r--r-- 0 0 0 4 2025-09-28 16:18:08.000000 debian-binary\n -rw-r--r-- 0 0 0 6072 2025-09-28 16:18:08.000000 control.tar.xz\n--rw-r--r-- 0 0 0 1239280 2025-09-28 16:18:08.000000 data.tar.xz\n+-rw-r--r-- 0 0 0 1239304 2025-09-28 16:18:08.000000 data.tar.xz\n"}, {"source1": "control.tar.xz", "source2": "control.tar.xz", "unified_diff": null, "details": [{"source1": "control.tar", "source2": "control.tar", "unified_diff": null, "details": [{"source1": "./md5sums", "source2": "./md5sums", "unified_diff": null, "details": [{"source1": "./md5sums", "source2": "./md5sums", "comments": ["Files differ"], "unified_diff": null}]}]}]}, {"source1": "data.tar.xz", "source2": "data.tar.xz", "unified_diff": null, "details": [{"source1": "data.tar", "source2": "data.tar", "unified_diff": null, "details": [{"source1": "./usr/share/doc/python-keystoneauth1-doc/html/api/keystoneauth1.access.service_catalog.html", "source2": "./usr/share/doc/python-keystoneauth1-doc/html/api/keystoneauth1.access.service_catalog.html", "unified_diff": "@@ -104,15 +104,15 @@\n
\n
\n __abstractmethods__ = frozenset({'from_token', 'is_interface_match'})\u00b6
\n
\n \n
\n
\n-__dict__ = mappingproxy({'__module__': 'keystoneauth1.access.service_catalog', '__firstlineno__': 31, '__doc__': 'Helper methods for dealing with a Keystone Service Catalog.', '__init__': <function ServiceCatalog.__init__>, 'from_token': <classmethod(<function ServiceCatalog.from_token>)>, '_get_endpoint_region': <function ServiceCatalog._get_endpoint_region>, 'catalog': <property object>, 'is_interface_match': <function ServiceCatalog.is_interface_match>, 'normalize_interface': <staticmethod(<function ServiceCatalog.normalize_interface>)>, '_normalize_endpoints': <function ServiceCatalog._normalize_endpoints>, '_denormalize_endpoints': <function ServiceCatalog._denormalize_endpoints>, 'normalize_catalog': <function ServiceCatalog.normalize_catalog>, '_get_interface_list': <function ServiceCatalog._get_interface_list>, 'get_endpoints_data': <function ServiceCatalog.get_endpoints_data>, '_endpoints_by_type': <function ServiceCatalog._endpoints_by_type>, 'get_endpoints': <function ServiceCatalog.get_endpoints>, 'get_endpoint_data_list': <function ServiceCatalog.get_endpoint_data_list>, 'get_urls': <function ServiceCatalog.get_urls>, 'url_for': <function ServiceCatalog.url_for>, 'endpoint_data_for': <function ServiceCatalog.endpoint_data_for>, '__static_attributes__': ('_catalog',), '__dict__': <attribute '__dict__' of 'ServiceCatalog' objects>, '__weakref__': <attribute '__weakref__' of 'ServiceCatalog' objects>, '__abstractmethods__': frozenset({'from_token', 'is_interface_match'}), '_abc_impl': <_abc._abc_data object>, '__annotations__': {}})\u00b6
\n+__dict__ = mappingproxy({'__module__': 'keystoneauth1.access.service_catalog', '__firstlineno__': 31, '__doc__': 'Helper methods for dealing with a Keystone Service Catalog.', '__init__': <function ServiceCatalog.__init__>, 'from_token': <classmethod(<function ServiceCatalog.from_token>)>, '_get_endpoint_region': <function ServiceCatalog._get_endpoint_region>, 'catalog': <property object>, 'is_interface_match': <function ServiceCatalog.is_interface_match>, 'normalize_interface': <staticmethod(<function ServiceCatalog.normalize_interface>)>, '_normalize_endpoints': <function ServiceCatalog._normalize_endpoints>, '_denormalize_endpoints': <function ServiceCatalog._denormalize_endpoints>, 'normalize_catalog': <function ServiceCatalog.normalize_catalog>, '_get_interface_list': <function ServiceCatalog._get_interface_list>, 'get_endpoints_data': <function ServiceCatalog.get_endpoints_data>, '_endpoints_by_type': <function ServiceCatalog._endpoints_by_type>, 'get_endpoints': <function ServiceCatalog.get_endpoints>, 'get_endpoint_data_list': <function ServiceCatalog.get_endpoint_data_list>, 'get_urls': <function ServiceCatalog.get_urls>, 'url_for': <function ServiceCatalog.url_for>, 'endpoint_data_for': <function ServiceCatalog.endpoint_data_for>, '__static_attributes__': ('_catalog',), '__dict__': <attribute '__dict__' of 'ServiceCatalog' objects>, '__weakref__': <attribute '__weakref__' of 'ServiceCatalog' objects>, '__abstractmethods__': frozenset({'is_interface_match', 'from_token'}), '_abc_impl': <_abc._abc_data object>, '__annotations__': {}})\u00b6\n
\n \n
\n
\n __doc__ = 'Helper methods for dealing with a Keystone Service Catalog.'\u00b6
\n
\n \n", "details": [{"source1": "html2text {}", "source2": "html2text {}", "unified_diff": "@@ -25,17 +25,17 @@\n endpoints': , 'get_endpoint_\n data_list': , 'get_\n urls': , 'url_for': , 'endpoint_data_for': , '__static_attributes__': ('_\n catalog',), '__dict__': , '__weakref__': , '__abstractmethods__': frozenset({'from_token', 'is_\n- interface_match'}), '_abc_impl': <_abc._abc_data object>, '__\n- annotations__': {}})\u00b6\n+ objects>, '__abstractmethods__': frozenset({'is_interface_match',\n+ 'from_token'}), '_abc_impl': <_abc._abc_data object>, '__annotations__\n+ ': {}})\u00b6\n __doc__ = 'Helper methods for dealing with a Keystone Service\n Catalog.'\u00b6\n __firstlineno__ = 31\u00b6\n __init__(catalog: list[dict[str, Any]])\u00b6\n __module__ = 'keystoneauth1.access.service_catalog'\u00b6\n __static_attributes__ = ('_catalog',)\u00b6\n __weakref__\u00b6\n"}]}, {"source1": "./usr/share/doc/python-keystoneauth1-doc/html/api/keystoneauth1.access.types.html", "source2": "./usr/share/doc/python-keystoneauth1-doc/html/api/keystoneauth1.access.types.html", "unified_diff": "@@ -103,15 +103,15 @@\n
\n
\n __annotations__ = {'metadata': typing.NotRequired[keystoneauth1.access.types.MetadataV2], 'serviceCatalog': typing.NotRequired[list[keystoneauth1.access.types.CatalogServiceV2]], 'token': <class 'keystoneauth1.access.types.TokenV2'>, 'trust': typing.NotRequired[keystoneauth1.access.types.TrustV2], 'user': <class 'keystoneauth1.access.types.UserV2'>}\u00b6
\n
\n \n
\n
\n-__dict__ = mappingproxy({'__module__': 'keystoneauth1.access.types', '__firstlineno__': 77, '__annotations__': {'token': <class 'keystoneauth1.access.types.TokenV2'>, 'serviceCatalog': typing.NotRequired[list[keystoneauth1.access.types.CatalogServiceV2]], 'user': <class 'keystoneauth1.access.types.UserV2'>, 'metadata': typing.NotRequired[keystoneauth1.access.types.MetadataV2], 'trust': typing.NotRequired[keystoneauth1.access.types.TrustV2]}, '__static_attributes__': (), '__orig_bases__': (<function TypedDict>,), '__dict__': <attribute '__dict__' of 'AccessV2' objects>, '__weakref__': <attribute '__weakref__' of 'AccessV2' objects>, '__doc__': None, '__required_keys__': frozenset({'user', 'token'}), '__optional_keys__': frozenset({'metadata', 'serviceCatalog', 'trust'}), '__readonly_keys__': frozenset(), '__mutable_keys__': frozenset({'user', 'metadata', 'token', 'serviceCatalog', 'trust'}), '__total__': True})\u00b6
\n+__dict__ = mappingproxy({'__module__': 'keystoneauth1.access.types', '__firstlineno__': 77, '__annotations__': {'token': <class 'keystoneauth1.access.types.TokenV2'>, 'serviceCatalog': typing.NotRequired[list[keystoneauth1.access.types.CatalogServiceV2]], 'user': <class 'keystoneauth1.access.types.UserV2'>, 'metadata': typing.NotRequired[keystoneauth1.access.types.MetadataV2], 'trust': typing.NotRequired[keystoneauth1.access.types.TrustV2]}, '__static_attributes__': (), '__orig_bases__': (<function TypedDict>,), '__dict__': <attribute '__dict__' of 'AccessV2' objects>, '__weakref__': <attribute '__weakref__' of 'AccessV2' objects>, '__doc__': None, '__required_keys__': frozenset({'token', 'user'}), '__optional_keys__': frozenset({'trust', 'metadata', 'serviceCatalog'}), '__readonly_keys__': frozenset(), '__mutable_keys__': frozenset({'serviceCatalog', 'metadata', 'user', 'token', 'trust'}), '__total__': True})\u00b6\n
\n \n
\n
\n __doc__ = None\u00b6
\n
\n \n@@ -277,15 +277,15 @@\n
\n
\n __annotations__ = {'access_rules': typing.NotRequired[list[keystoneauth1.access.types.ApplicationCredentialAccessRuleV3]], 'id': <class 'str'>, 'name': <class 'str'>, 'restricted': <class 'bool'>}\u00b6
\n
\n \n
\n
\n-__dict__ = mappingproxy({'__module__': 'keystoneauth1.access.types', '__firstlineno__': 167, '__annotations__': {'access_rules': typing.NotRequired[list[keystoneauth1.access.types.ApplicationCredentialAccessRuleV3]], 'id': <class 'str'>, 'name': <class 'str'>, 'restricted': <class 'bool'>}, '__static_attributes__': (), '__orig_bases__': (<function TypedDict>,), '__dict__': <attribute '__dict__' of 'ApplicationCredentialV3' objects>, '__weakref__': <attribute '__weakref__' of 'ApplicationCredentialV3' objects>, '__doc__': None, '__required_keys__': frozenset({'id', 'name', 'restricted'}), '__optional_keys__': frozenset({'access_rules'}), '__readonly_keys__': frozenset(), '__mutable_keys__': frozenset({'id', 'access_rules', 'name', 'restricted'}), '__total__': True})\u00b6
\n+__dict__ = mappingproxy({'__module__': 'keystoneauth1.access.types', '__firstlineno__': 167, '__annotations__': {'access_rules': typing.NotRequired[list[keystoneauth1.access.types.ApplicationCredentialAccessRuleV3]], 'id': <class 'str'>, 'name': <class 'str'>, 'restricted': <class 'bool'>}, '__static_attributes__': (), '__orig_bases__': (<function TypedDict>,), '__dict__': <attribute '__dict__' of 'ApplicationCredentialV3' objects>, '__weakref__': <attribute '__weakref__' of 'ApplicationCredentialV3' objects>, '__doc__': None, '__required_keys__': frozenset({'name', 'restricted', 'id'}), '__optional_keys__': frozenset({'access_rules'}), '__readonly_keys__': frozenset(), '__mutable_keys__': frozenset({'restricted', 'name', 'access_rules', 'id'}), '__total__': True})\u00b6\n
\n \n
\n
\n __doc__ = None\u00b6
\n
\n \n@@ -369,15 +369,15 @@\n
\n
\n __annotations__ = {'endpoints': list[keystoneauth1.access.types.EndpointV2], 'endpoints_links': list[typing.Any], 'name': <class 'str'>, 'type': <class 'str'>}\u00b6
\n
\n \n
\n
\n-__dict__ = mappingproxy({'__module__': 'keystoneauth1.access.types', '__firstlineno__': 44, '__annotations__': {'endpoints': list[keystoneauth1.access.types.EndpointV2], 'endpoints_links': list[typing.Any], 'type': <class 'str'>, 'name': <class 'str'>}, '__static_attributes__': (), '__orig_bases__': (<function TypedDict>,), '__dict__': <attribute '__dict__' of 'CatalogServiceV2' objects>, '__weakref__': <attribute '__weakref__' of 'CatalogServiceV2' objects>, '__doc__': None, '__required_keys__': frozenset({'type', 'name', 'endpoints_links', 'endpoints'}), '__optional_keys__': frozenset(), '__readonly_keys__': frozenset(), '__mutable_keys__': frozenset({'type', 'name', 'endpoints_links', 'endpoints'}), '__total__': True})\u00b6
\n+__dict__ = mappingproxy({'__module__': 'keystoneauth1.access.types', '__firstlineno__': 44, '__annotations__': {'endpoints': list[keystoneauth1.access.types.EndpointV2], 'endpoints_links': list[typing.Any], 'type': <class 'str'>, 'name': <class 'str'>}, '__static_attributes__': (), '__orig_bases__': (<function TypedDict>,), '__dict__': <attribute '__dict__' of 'CatalogServiceV2' objects>, '__weakref__': <attribute '__weakref__' of 'CatalogServiceV2' objects>, '__doc__': None, '__required_keys__': frozenset({'type', 'endpoints', 'name', 'endpoints_links'}), '__optional_keys__': frozenset(), '__readonly_keys__': frozenset(), '__mutable_keys__': frozenset({'type', 'endpoints', 'name', 'endpoints_links'}), '__total__': True})\u00b6\n
\n \n
\n
\n __doc__ = None\u00b6
\n
\n \n@@ -461,15 +461,15 @@\n
\n
\n __annotations__ = {'id': <class 'str'>, 'name': <class 'str'>}\u00b6
\n
\n \n
\n
\n-__dict__ = mappingproxy({'__module__': 'keystoneauth1.access.types', '__firstlineno__': 118, '__annotations__': {'id': <class 'str'>, 'name': <class 'str'>}, '__static_attributes__': (), '__orig_bases__': (<function TypedDict>,), '__dict__': <attribute '__dict__' of 'DomainV3' objects>, '__weakref__': <attribute '__weakref__' of 'DomainV3' objects>, '__doc__': None, '__required_keys__': frozenset({'id', 'name'}), '__optional_keys__': frozenset(), '__readonly_keys__': frozenset(), '__mutable_keys__': frozenset({'id', 'name'}), '__total__': True})\u00b6
\n+__dict__ = mappingproxy({'__module__': 'keystoneauth1.access.types', '__firstlineno__': 118, '__annotations__': {'id': <class 'str'>, 'name': <class 'str'>}, '__static_attributes__': (), '__orig_bases__': (<function TypedDict>,), '__dict__': <attribute '__dict__' of 'DomainV3' objects>, '__weakref__': <attribute '__weakref__' of 'DomainV3' objects>, '__doc__': None, '__required_keys__': frozenset({'name', 'id'}), '__optional_keys__': frozenset(), '__readonly_keys__': frozenset(), '__mutable_keys__': frozenset({'name', 'id'}), '__total__': True})\u00b6\n
\n \n
\n
\n __doc__ = None\u00b6
\n
\n \n@@ -543,15 +543,15 @@\n
\n
\n __annotations__ = {'adminURL': <class 'str'>, 'id': <class 'str'>, 'internalURL': <class 'str'>, 'publicURL': <class 'str'>, 'region': <class 'str'>}\u00b6
\n
\n \n
\n
\n-__dict__ = mappingproxy({'__module__': 'keystoneauth1.access.types', '__firstlineno__': 36, '__annotations__': {'adminURL': <class 'str'>, 'region': <class 'str'>, 'internalURL': <class 'str'>, 'id': <class 'str'>, 'publicURL': <class 'str'>}, '__static_attributes__': (), '__orig_bases__': (<function TypedDict>,), '__dict__': <attribute '__dict__' of 'EndpointV2' objects>, '__weakref__': <attribute '__weakref__' of 'EndpointV2' objects>, '__doc__': None, '__required_keys__': frozenset({'id', 'publicURL', 'region', 'internalURL', 'adminURL'}), '__optional_keys__': frozenset(), '__readonly_keys__': frozenset(), '__mutable_keys__': frozenset({'id', 'publicURL', 'region', 'internalURL', 'adminURL'}), '__total__': True})\u00b6
\n+__dict__ = mappingproxy({'__module__': 'keystoneauth1.access.types', '__firstlineno__': 36, '__annotations__': {'adminURL': <class 'str'>, 'region': <class 'str'>, 'internalURL': <class 'str'>, 'id': <class 'str'>, 'publicURL': <class 'str'>}, '__static_attributes__': (), '__orig_bases__': (<function TypedDict>,), '__dict__': <attribute '__dict__' of 'EndpointV2' objects>, '__weakref__': <attribute '__weakref__' of 'EndpointV2' objects>, '__doc__': None, '__required_keys__': frozenset({'publicURL', 'id', 'region', 'adminURL', 'internalURL'}), '__optional_keys__': frozenset(), '__readonly_keys__': frozenset(), '__mutable_keys__': frozenset({'publicURL', 'id', 'region', 'adminURL', 'internalURL'}), '__total__': True})\u00b6\n
\n \n
\n
\n __doc__ = None\u00b6
\n
\n \n@@ -640,15 +640,15 @@\n
\n
\n __annotations__ = {'id': <class 'str'>, 'interface': <class 'str'>, 'region': <class 'str'>, 'region_id': <class 'str'>, 'url': <class 'str'>}\u00b6
\n
\n \n
\n
\n-__dict__ = mappingproxy({'__module__': 'keystoneauth1.access.types', '__firstlineno__': 92, '__annotations__': {'id': <class 'str'>, 'interface': <class 'str'>, 'region': <class 'str'>, 'region_id': <class 'str'>, 'url': <class 'str'>}, '__static_attributes__': (), '__orig_bases__': (<function TypedDict>,), '__dict__': <attribute '__dict__' of 'EndpointV3' objects>, '__weakref__': <attribute '__weakref__' of 'EndpointV3' objects>, '__doc__': None, '__required_keys__': frozenset({'id', 'interface', 'region', 'region_id', 'url'}), '__optional_keys__': frozenset(), '__readonly_keys__': frozenset(), '__mutable_keys__': frozenset({'id', 'interface', 'region', 'region_id', 'url'}), '__total__': True})\u00b6
\n+__dict__ = mappingproxy({'__module__': 'keystoneauth1.access.types', '__firstlineno__': 92, '__annotations__': {'id': <class 'str'>, 'interface': <class 'str'>, 'region': <class 'str'>, 'region_id': <class 'str'>, 'url': <class 'str'>}, '__static_attributes__': (), '__orig_bases__': (<function TypedDict>,), '__dict__': <attribute '__dict__' of 'EndpointV3' objects>, '__weakref__': <attribute '__weakref__' of 'EndpointV3' objects>, '__doc__': None, '__required_keys__': frozenset({'region_id', 'interface', 'id', 'url', 'region'}), '__optional_keys__': frozenset(), '__readonly_keys__': frozenset(), '__mutable_keys__': frozenset({'region_id', 'interface', 'id', 'url', 'region'}), '__total__': True})\u00b6\n
\n \n
\n
\n __doc__ = None\u00b6
\n
\n \n@@ -1137,15 +1137,15 @@\n
\n
\n __annotations__ = {'access_token_id': <class 'str'>, 'consumer_id': <class 'str'>}\u00b6
\n
\n \n
\n
\n-__dict__ = mappingproxy({'__module__': 'keystoneauth1.access.types', '__firstlineno__': 195, '__annotations__': {'access_token_id': <class 'str'>, 'consumer_id': <class 'str'>}, '__static_attributes__': (), '__orig_bases__': (<function TypedDict>,), '__dict__': <attribute '__dict__' of 'OAuth1V3' objects>, '__weakref__': <attribute '__weakref__' of 'OAuth1V3' objects>, '__doc__': None, '__required_keys__': frozenset({'consumer_id', 'access_token_id'}), '__optional_keys__': frozenset(), '__readonly_keys__': frozenset(), '__mutable_keys__': frozenset({'consumer_id', 'access_token_id'}), '__total__': True})\u00b6
\n+__dict__ = mappingproxy({'__module__': 'keystoneauth1.access.types', '__firstlineno__': 195, '__annotations__': {'access_token_id': <class 'str'>, 'consumer_id': <class 'str'>}, '__static_attributes__': (), '__orig_bases__': (<function TypedDict>,), '__dict__': <attribute '__dict__' of 'OAuth1V3' objects>, '__weakref__': <attribute '__weakref__' of 'OAuth1V3' objects>, '__doc__': None, '__required_keys__': frozenset({'access_token_id', 'consumer_id'}), '__optional_keys__': frozenset(), '__readonly_keys__': frozenset(), '__mutable_keys__': frozenset({'access_token_id', 'consumer_id'}), '__total__': True})\u00b6\n
\n \n
\n
\n __doc__ = None\u00b6
\n
\n \n@@ -1281,15 +1281,15 @@\n
\n
\n __annotations__ = {'id': <class 'str'>, 'name': <class 'str'>}\u00b6
\n
\n \n
\n
\n-__dict__ = mappingproxy({'__module__': 'keystoneauth1.access.types', '__firstlineno__': 107, '__annotations__': {'id': <class 'str'>, 'name': <class 'str'>}, '__static_attributes__': (), '__orig_bases__': (<function TypedDict>,), '__dict__': <attribute '__dict__' of 'ProjectDomainV3' objects>, '__weakref__': <attribute '__weakref__' of 'ProjectDomainV3' objects>, '__doc__': None, '__required_keys__': frozenset({'id', 'name'}), '__optional_keys__': frozenset(), '__readonly_keys__': frozenset(), '__mutable_keys__': frozenset({'id', 'name'}), '__total__': True})\u00b6
\n+__dict__ = mappingproxy({'__module__': 'keystoneauth1.access.types', '__firstlineno__': 107, '__annotations__': {'id': <class 'str'>, 'name': <class 'str'>}, '__static_attributes__': (), '__orig_bases__': (<function TypedDict>,), '__dict__': <attribute '__dict__' of 'ProjectDomainV3' objects>, '__weakref__': <attribute '__weakref__' of 'ProjectDomainV3' objects>, '__doc__': None, '__required_keys__': frozenset({'name', 'id'}), '__optional_keys__': frozenset(), '__readonly_keys__': frozenset(), '__mutable_keys__': frozenset({'name', 'id'}), '__total__': True})\u00b6\n
\n \n
\n
\n __doc__ = None\u00b6
\n
\n \n@@ -1363,15 +1363,15 @@\n
\n
\n __annotations__ = {'domain': <class 'keystoneauth1.access.types.ProjectDomainV3'>, 'id': <class 'str'>, 'name': <class 'str'>}\u00b6
\n
\n \n
\n
\n-__dict__ = mappingproxy({'__module__': 'keystoneauth1.access.types', '__firstlineno__': 112, '__annotations__': {'domain': <class 'keystoneauth1.access.types.ProjectDomainV3'>, 'id': <class 'str'>, 'name': <class 'str'>}, '__static_attributes__': (), '__orig_bases__': (<function TypedDict>,), '__dict__': <attribute '__dict__' of 'ProjectV3' objects>, '__weakref__': <attribute '__weakref__' of 'ProjectV3' objects>, '__doc__': None, '__required_keys__': frozenset({'id', 'domain', 'name'}), '__optional_keys__': frozenset(), '__readonly_keys__': frozenset(), '__mutable_keys__': frozenset({'id', 'domain', 'name'}), '__total__': True})\u00b6
\n+__dict__ = mappingproxy({'__module__': 'keystoneauth1.access.types', '__firstlineno__': 112, '__annotations__': {'domain': <class 'keystoneauth1.access.types.ProjectDomainV3'>, 'id': <class 'str'>, 'name': <class 'str'>}, '__static_attributes__': (), '__orig_bases__': (<function TypedDict>,), '__dict__': <attribute '__dict__' of 'ProjectV3' objects>, '__weakref__': <attribute '__weakref__' of 'ProjectV3' objects>, '__doc__': None, '__required_keys__': frozenset({'name', 'domain', 'id'}), '__optional_keys__': frozenset(), '__readonly_keys__': frozenset(), '__mutable_keys__': frozenset({'name', 'domain', 'id'}), '__total__': True})\u00b6\n
\n \n
\n
\n __doc__ = None\u00b6
\n
\n \n@@ -1527,15 +1527,15 @@\n
\n
\n __annotations__ = {'id': <class 'str'>, 'name': <class 'str'>}\u00b6
\n
\n \n
\n
\n-__dict__ = mappingproxy({'__module__': 'keystoneauth1.access.types', '__firstlineno__': 158, '__annotations__': {'id': <class 'str'>, 'name': <class 'str'>}, '__static_attributes__': (), '__orig_bases__': (<function TypedDict>,), '__dict__': <attribute '__dict__' of 'RoleV3' objects>, '__weakref__': <attribute '__weakref__' of 'RoleV3' objects>, '__doc__': None, '__required_keys__': frozenset({'id', 'name'}), '__optional_keys__': frozenset(), '__readonly_keys__': frozenset(), '__mutable_keys__': frozenset({'id', 'name'}), '__total__': True})\u00b6
\n+__dict__ = mappingproxy({'__module__': 'keystoneauth1.access.types', '__firstlineno__': 158, '__annotations__': {'id': <class 'str'>, 'name': <class 'str'>}, '__static_attributes__': (), '__orig_bases__': (<function TypedDict>,), '__dict__': <attribute '__dict__' of 'RoleV3' objects>, '__weakref__': <attribute '__weakref__' of 'RoleV3' objects>, '__doc__': None, '__required_keys__': frozenset({'name', 'id'}), '__optional_keys__': frozenset(), '__readonly_keys__': frozenset(), '__mutable_keys__': frozenset({'name', 'id'}), '__total__': True})\u00b6\n
\n \n
\n
\n __doc__ = None\u00b6
\n
\n \n@@ -1609,15 +1609,15 @@\n
\n
\n __annotations__ = {'auth_url': <class 'str'>, 'id': <class 'str'>, 'sp_url': <class 'str'>}\u00b6
\n
\n \n
\n
\n-__dict__ = mappingproxy({'__module__': 'keystoneauth1.access.types', '__firstlineno__': 174, '__annotations__': {'auth_url': <class 'str'>, 'id': <class 'str'>, 'sp_url': <class 'str'>}, '__static_attributes__': (), '__orig_bases__': (<function TypedDict>,), '__dict__': <attribute '__dict__' of 'ServiceProviderV3' objects>, '__weakref__': <attribute '__weakref__' of 'ServiceProviderV3' objects>, '__doc__': None, '__required_keys__': frozenset({'id', 'sp_url', 'auth_url'}), '__optional_keys__': frozenset(), '__readonly_keys__': frozenset(), '__mutable_keys__': frozenset({'id', 'sp_url', 'auth_url'}), '__total__': True})\u00b6
\n+__dict__ = mappingproxy({'__module__': 'keystoneauth1.access.types', '__firstlineno__': 174, '__annotations__': {'auth_url': <class 'str'>, 'id': <class 'str'>, 'sp_url': <class 'str'>}, '__static_attributes__': (), '__orig_bases__': (<function TypedDict>,), '__dict__': <attribute '__dict__' of 'ServiceProviderV3' objects>, '__weakref__': <attribute '__weakref__' of 'ServiceProviderV3' objects>, '__doc__': None, '__required_keys__': frozenset({'auth_url', 'sp_url', 'id'}), '__optional_keys__': frozenset(), '__readonly_keys__': frozenset(), '__mutable_keys__': frozenset({'auth_url', 'sp_url', 'id'}), '__total__': True})\u00b6\n
\n \n
\n
\n __doc__ = None\u00b6
\n
\n \n@@ -1696,15 +1696,15 @@\n
\n
\n __annotations__ = {'endpoints': list[keystoneauth1.access.types.EndpointV3], 'id': <class 'str'>, 'name': <class 'str'>, 'type': <class 'str'>}\u00b6
\n
\n \n
\n
\n-__dict__ = mappingproxy({'__module__': 'keystoneauth1.access.types', '__firstlineno__': 100, '__annotations__': {'endpoints': list[keystoneauth1.access.types.EndpointV3], 'id': <class 'str'>, 'name': <class 'str'>, 'type': <class 'str'>}, '__static_attributes__': (), '__orig_bases__': (<function TypedDict>,), '__dict__': <attribute '__dict__' of 'ServiceV3' objects>, '__weakref__': <attribute '__weakref__' of 'ServiceV3' objects>, '__doc__': None, '__required_keys__': frozenset({'id', 'name', 'type', 'endpoints'}), '__optional_keys__': frozenset(), '__readonly_keys__': frozenset(), '__mutable_keys__': frozenset({'id', 'name', 'type', 'endpoints'}), '__total__': True})\u00b6
\n+__dict__ = mappingproxy({'__module__': 'keystoneauth1.access.types', '__firstlineno__': 100, '__annotations__': {'endpoints': list[keystoneauth1.access.types.EndpointV3], 'id': <class 'str'>, 'name': <class 'str'>, 'type': <class 'str'>}, '__static_attributes__': (), '__orig_bases__': (<function TypedDict>,), '__dict__': <attribute '__dict__' of 'ServiceV3' objects>, '__weakref__': <attribute '__weakref__' of 'ServiceV3' objects>, '__doc__': None, '__required_keys__': frozenset({'type', 'name', 'endpoints', 'id'}), '__optional_keys__': frozenset(), '__readonly_keys__': frozenset(), '__mutable_keys__': frozenset({'type', 'name', 'endpoints', 'id'}), '__total__': True})\u00b6\n
\n \n
\n
\n __doc__ = None\u00b6
\n
\n \n@@ -1865,15 +1865,15 @@\n
\n
\n __annotations__ = {'description': typing.NotRequired[str | None], 'enabled': typing.NotRequired[bool], 'id': <class 'str'>, 'name': <class 'str'>}\u00b6
\n
\n \n
\n
\n-__dict__ = mappingproxy({'__module__': 'keystoneauth1.access.types', '__firstlineno__': 20, '__annotations__': {'description': typing.NotRequired[str | None], 'enabled': typing.NotRequired[bool], 'id': <class 'str'>, 'name': <class 'str'>}, '__static_attributes__': (), '__orig_bases__': (<function TypedDict>,), '__dict__': <attribute '__dict__' of 'TenantV2' objects>, '__weakref__': <attribute '__weakref__' of 'TenantV2' objects>, '__doc__': None, '__required_keys__': frozenset({'id', 'name'}), '__optional_keys__': frozenset({'description', 'enabled'}), '__readonly_keys__': frozenset(), '__mutable_keys__': frozenset({'id', 'description', 'enabled', 'name'}), '__total__': True})\u00b6
\n+__dict__ = mappingproxy({'__module__': 'keystoneauth1.access.types', '__firstlineno__': 20, '__annotations__': {'description': typing.NotRequired[str | None], 'enabled': typing.NotRequired[bool], 'id': <class 'str'>, 'name': <class 'str'>}, '__static_attributes__': (), '__orig_bases__': (<function TypedDict>,), '__dict__': <attribute '__dict__' of 'TenantV2' objects>, '__weakref__': <attribute '__weakref__' of 'TenantV2' objects>, '__doc__': None, '__required_keys__': frozenset({'name', 'id'}), '__optional_keys__': frozenset({'enabled', 'description'}), '__readonly_keys__': frozenset(), '__mutable_keys__': frozenset({'enabled', 'description', 'name', 'id'}), '__total__': True})\u00b6\n
\n \n
\n
\n __doc__ = None\u00b6
\n
\n \n@@ -2111,15 +2111,15 @@\n
\n
\n __annotations__ = {'audit_ids': list[str], 'bind': typing.NotRequired[dict[str, typing.Any]], 'expires': <class 'str'>, 'id': <class 'str'>, 'issued_at': typing.NotRequired[str], 'tenant': typing.NotRequired[keystoneauth1.access.types.TenantV2]}\u00b6
\n
\n \n
\n
\n-__dict__ = mappingproxy({'__module__': 'keystoneauth1.access.types', '__firstlineno__': 27, '__annotations__': {'audit_ids': list[str], 'bind': typing.NotRequired[dict[str, typing.Any]], 'expires': <class 'str'>, 'id': <class 'str'>, 'issued_at': typing.NotRequired[str], 'tenant': typing.NotRequired[keystoneauth1.access.types.TenantV2]}, '__static_attributes__': (), '__orig_bases__': (<function TypedDict>,), '__dict__': <attribute '__dict__' of 'TokenV2' objects>, '__weakref__': <attribute '__weakref__' of 'TokenV2' objects>, '__doc__': None, '__required_keys__': frozenset({'id', 'audit_ids', 'expires'}), '__optional_keys__': frozenset({'issued_at', 'bind', 'tenant'}), '__readonly_keys__': frozenset(), '__mutable_keys__': frozenset({'id', 'issued_at', 'audit_ids', 'bind', 'expires', 'tenant'}), '__total__': True})\u00b6
\n+__dict__ = mappingproxy({'__module__': 'keystoneauth1.access.types', '__firstlineno__': 27, '__annotations__': {'audit_ids': list[str], 'bind': typing.NotRequired[dict[str, typing.Any]], 'expires': <class 'str'>, 'id': <class 'str'>, 'issued_at': typing.NotRequired[str], 'tenant': typing.NotRequired[keystoneauth1.access.types.TenantV2]}, '__static_attributes__': (), '__orig_bases__': (<function TypedDict>,), '__dict__': <attribute '__dict__' of 'TokenV2' objects>, '__weakref__': <attribute '__weakref__' of 'TokenV2' objects>, '__doc__': None, '__required_keys__': frozenset({'expires', 'audit_ids', 'id'}), '__optional_keys__': frozenset({'tenant', 'issued_at', 'bind'}), '__readonly_keys__': frozenset(), '__mutable_keys__': frozenset({'tenant', 'id', 'expires', 'audit_ids', 'issued_at', 'bind'}), '__total__': True})\u00b6\n
\n \n
\n
\n __doc__ = None\u00b6
\n
\n \n@@ -2213,15 +2213,15 @@\n
\n
\n __annotations__ = {'OS-OAUTH1': typing.NotRequired[keystoneauth1.access.types.OAuth1V3], 'OS-TRUST:trust': typing.NotRequired[keystoneauth1.access.types.TrustV3], 'application_credential': typing.NotRequired[keystoneauth1.access.types.ApplicationCredentialV3], 'audit_ids': list[str], 'bind': typing.NotRequired[dict[str, typing.Any]], 'catalog': typing.NotRequired[list[keystoneauth1.access.types.ServiceV3]], 'domain': typing.NotRequired[keystoneauth1.access.types.DomainV3], 'expires_at': <class 'str'>, 'is_admin_project': typing.NotRequired[bool], 'is_domain': typing.NotRequired[bool], 'issued_at': <class 'str'>, 'methods': list[str], 'oauth2_credential': typing.NotRequired[keystoneauth1.access.types.OAuth2V3], 'project': <class 'keystoneauth1.access.types.ProjectV3'>, 'roles': list[keystoneauth1.access.types.RoleV3], 'service_providers': typing.NotRequired[list[keystoneauth1.access.types.ServiceProviderV3]], 'system': typing.NotRequired[keystoneauth1.access.types.SystemV3], 'user': <class 'keystoneauth1.access.types.UserV3'>}\u00b6
\n
\n \n
\n
\n-__dict__ = mappingproxy({'__annotations__': {'application_credential': typing.NotRequired[keystoneauth1.access.types.ApplicationCredentialV3], 'audit_ids': list[str], 'bind': typing.NotRequired[dict[str, typing.Any]], 'catalog': typing.NotRequired[list[keystoneauth1.access.types.ServiceV3]], 'domain': typing.NotRequired[keystoneauth1.access.types.DomainV3], 'expires_at': <class 'str'>, 'is_admin_project': typing.NotRequired[bool], 'is_domain': typing.NotRequired[bool], 'issued_at': <class 'str'>, 'methods': list[str], 'oauth2_credential': typing.NotRequired[keystoneauth1.access.types.OAuth2V3], 'project': <class 'keystoneauth1.access.types.ProjectV3'>, 'roles': list[keystoneauth1.access.types.RoleV3], 'service_providers': typing.NotRequired[list[keystoneauth1.access.types.ServiceProviderV3]], 'system': typing.NotRequired[keystoneauth1.access.types.SystemV3], 'user': <class 'keystoneauth1.access.types.UserV3'>, 'OS-OAUTH1': typing.NotRequired[keystoneauth1.access.types.OAuth1V3], 'OS-TRUST:trust': typing.NotRequired[keystoneauth1.access.types.TrustV3]}, '__module__': 'keystoneauth1.access.types', '__dict__': <attribute '__dict__' of 'TokenV3' objects>, '__weakref__': <attribute '__weakref__' of 'TokenV3' objects>, '__doc__': None, '__orig_bases__': (<function TypedDict>,), '__required_keys__': frozenset({'methods', 'issued_at', 'user', 'audit_ids', 'project', 'expires_at', 'roles'}), '__optional_keys__': frozenset({'OS-OAUTH1', 'catalog', 'OS-TRUST:trust', 'oauth2_credential', 'domain', 'service_providers', 'is_domain', 'is_admin_project', 'application_credential', 'bind', 'system'}), '__readonly_keys__': frozenset(), '__mutable_keys__': frozenset({'OS-OAUTH1', 'issued_at', 'catalog', 'project', 'expires_at', 'oauth2_credential', 'is_admin_project', 'user', 'application_credential', 'roles', 'OS-TRUST:trust', 'domain', 'service_providers', 'is_domain', 'methods', 'audit_ids', 'bind', 'system'}), '__total__': True})\u00b6
\n+__dict__ = mappingproxy({'__annotations__': {'application_credential': typing.NotRequired[keystoneauth1.access.types.ApplicationCredentialV3], 'audit_ids': list[str], 'bind': typing.NotRequired[dict[str, typing.Any]], 'catalog': typing.NotRequired[list[keystoneauth1.access.types.ServiceV3]], 'domain': typing.NotRequired[keystoneauth1.access.types.DomainV3], 'expires_at': <class 'str'>, 'is_admin_project': typing.NotRequired[bool], 'is_domain': typing.NotRequired[bool], 'issued_at': <class 'str'>, 'methods': list[str], 'oauth2_credential': typing.NotRequired[keystoneauth1.access.types.OAuth2V3], 'project': <class 'keystoneauth1.access.types.ProjectV3'>, 'roles': list[keystoneauth1.access.types.RoleV3], 'service_providers': typing.NotRequired[list[keystoneauth1.access.types.ServiceProviderV3]], 'system': typing.NotRequired[keystoneauth1.access.types.SystemV3], 'user': <class 'keystoneauth1.access.types.UserV3'>, 'OS-OAUTH1': typing.NotRequired[keystoneauth1.access.types.OAuth1V3], 'OS-TRUST:trust': typing.NotRequired[keystoneauth1.access.types.TrustV3]}, '__module__': 'keystoneauth1.access.types', '__dict__': <attribute '__dict__' of 'TokenV3' objects>, '__weakref__': <attribute '__weakref__' of 'TokenV3' objects>, '__doc__': None, '__orig_bases__': (<function TypedDict>,), '__required_keys__': frozenset({'methods', 'expires_at', 'user', 'roles', 'audit_ids', 'issued_at', 'project'}), '__optional_keys__': frozenset({'system', 'catalog', 'oauth2_credential', 'service_providers', 'OS-TRUST:trust', 'is_domain', 'domain', 'OS-OAUTH1', 'application_credential', 'is_admin_project', 'bind'}), '__readonly_keys__': frozenset(), '__mutable_keys__': frozenset({'OS-TRUST:trust', 'oauth2_credential', 'project', 'user', 'application_credential', 'issued_at', 'OS-OAUTH1', 'system', 'catalog', 'service_providers', 'is_domain', 'methods', 'expires_at', 'domain', 'roles', 'audit_ids', 'is_admin_project', 'bind'}), '__total__': True})\u00b6\n
\n \n
\n
\n __doc__ = None\u00b6
\n
\n \n@@ -2355,15 +2355,15 @@\n
\n
\n __annotations__ = {'id': <class 'str'>, 'impersonation': <class 'bool'>, 'trustee_user_id': <class 'str'>, 'trustor_user_id': <class 'str'>}\u00b6
\n
\n \n
\n
\n-__dict__ = mappingproxy({'__module__': 'keystoneauth1.access.types', '__firstlineno__': 70, '__annotations__': {'id': <class 'str'>, 'impersonation': <class 'bool'>, 'trustee_user_id': <class 'str'>, 'trustor_user_id': <class 'str'>}, '__static_attributes__': (), '__orig_bases__': (<function TypedDict>,), '__dict__': <attribute '__dict__' of 'TrustV2' objects>, '__weakref__': <attribute '__weakref__' of 'TrustV2' objects>, '__doc__': None, '__required_keys__': frozenset({'id', 'impersonation', 'trustor_user_id', 'trustee_user_id'}), '__optional_keys__': frozenset(), '__readonly_keys__': frozenset(), '__mutable_keys__': frozenset({'id', 'impersonation', 'trustor_user_id', 'trustee_user_id'}), '__total__': True})\u00b6
\n+__dict__ = mappingproxy({'__module__': 'keystoneauth1.access.types', '__firstlineno__': 70, '__annotations__': {'id': <class 'str'>, 'impersonation': <class 'bool'>, 'trustee_user_id': <class 'str'>, 'trustor_user_id': <class 'str'>}, '__static_attributes__': (), '__orig_bases__': (<function TypedDict>,), '__dict__': <attribute '__dict__' of 'TrustV2' objects>, '__weakref__': <attribute '__weakref__' of 'TrustV2' objects>, '__doc__': None, '__required_keys__': frozenset({'trustee_user_id', 'trustor_user_id', 'impersonation', 'id'}), '__optional_keys__': frozenset(), '__readonly_keys__': frozenset(), '__mutable_keys__': frozenset({'trustee_user_id', 'trustor_user_id', 'impersonation', 'id'}), '__total__': True})\u00b6\n
\n \n
\n
\n __doc__ = None\u00b6
\n
\n \n@@ -2447,15 +2447,15 @@\n
\n
\n __annotations__ = {'id': <class 'str'>, 'impersonation': <class 'bool'>, 'trustee_user': <class 'keystoneauth1.access.types.TrusteeUser'>, 'trustor_user': <class 'keystoneauth1.access.types.TrustorUser'>}\u00b6
\n
\n \n
\n
\n-__dict__ = mappingproxy({'__module__': 'keystoneauth1.access.types', '__firstlineno__': 188, '__annotations__': {'id': <class 'str'>, 'impersonation': <class 'bool'>, 'trustee_user': <class 'keystoneauth1.access.types.TrusteeUser'>, 'trustor_user': <class 'keystoneauth1.access.types.TrustorUser'>}, '__static_attributes__': (), '__orig_bases__': (<function TypedDict>,), '__dict__': <attribute '__dict__' of 'TrustV3' objects>, '__weakref__': <attribute '__weakref__' of 'TrustV3' objects>, '__doc__': None, '__required_keys__': frozenset({'id', 'trustee_user', 'impersonation', 'trustor_user'}), '__optional_keys__': frozenset(), '__readonly_keys__': frozenset(), '__mutable_keys__': frozenset({'id', 'trustee_user', 'impersonation', 'trustor_user'}), '__total__': True})\u00b6
\n+__dict__ = mappingproxy({'__module__': 'keystoneauth1.access.types', '__firstlineno__': 188, '__annotations__': {'id': <class 'str'>, 'impersonation': <class 'bool'>, 'trustee_user': <class 'keystoneauth1.access.types.TrusteeUser'>, 'trustor_user': <class 'keystoneauth1.access.types.TrustorUser'>}, '__static_attributes__': (), '__orig_bases__': (<function TypedDict>,), '__dict__': <attribute '__dict__' of 'TrustV3' objects>, '__weakref__': <attribute '__weakref__' of 'TrustV3' objects>, '__doc__': None, '__required_keys__': frozenset({'trustor_user', 'trustee_user', 'impersonation', 'id'}), '__optional_keys__': frozenset(), '__readonly_keys__': frozenset(), '__mutable_keys__': frozenset({'trustor_user', 'trustee_user', 'impersonation', 'id'}), '__total__': True})\u00b6\n
\n \n
\n
\n __doc__ = None\u00b6
\n
\n \n@@ -2693,15 +2693,15 @@\n
\n
\n __annotations__ = {'id': <class 'str'>, 'name': <class 'str'>}\u00b6
\n
\n \n
\n
\n-__dict__ = mappingproxy({'__module__': 'keystoneauth1.access.types', '__firstlineno__': 123, '__annotations__': {'id': <class 'str'>, 'name': <class 'str'>}, '__static_attributes__': (), '__orig_bases__': (<function TypedDict>,), '__dict__': <attribute '__dict__' of 'UserDomainV3' objects>, '__weakref__': <attribute '__weakref__' of 'UserDomainV3' objects>, '__doc__': None, '__required_keys__': frozenset({'id', 'name'}), '__optional_keys__': frozenset(), '__readonly_keys__': frozenset(), '__mutable_keys__': frozenset({'id', 'name'}), '__total__': True})\u00b6
\n+__dict__ = mappingproxy({'__module__': 'keystoneauth1.access.types', '__firstlineno__': 123, '__annotations__': {'id': <class 'str'>, 'name': <class 'str'>}, '__static_attributes__': (), '__orig_bases__': (<function TypedDict>,), '__dict__': <attribute '__dict__' of 'UserDomainV3' objects>, '__weakref__': <attribute '__weakref__' of 'UserDomainV3' objects>, '__doc__': None, '__required_keys__': frozenset({'name', 'id'}), '__optional_keys__': frozenset(), '__readonly_keys__': frozenset(), '__mutable_keys__': frozenset({'name', 'id'}), '__total__': True})\u00b6\n
\n \n
\n
\n __doc__ = None\u00b6
\n
\n \n@@ -2775,15 +2775,15 @@\n
\n
\n __annotations__ = {'id': <class 'str'>, 'name': <class 'str'>, 'role_links': list[typing.Any], 'roles': list[keystoneauth1.access.types.RoleV2], 'tenantId': typing.NotRequired[str], 'tenantName': typing.NotRequired[str], 'username': <class 'str'>}\u00b6
\n
\n \n
\n
\n-__dict__ = mappingproxy({'__module__': 'keystoneauth1.access.types', '__firstlineno__': 55, '__annotations__': {'id': <class 'str'>, 'name': <class 'str'>, 'role_links': list[typing.Any], 'roles': list[keystoneauth1.access.types.RoleV2], 'tenantId': typing.NotRequired[str], 'tenantName': typing.NotRequired[str], 'username': <class 'str'>}, '__static_attributes__': (), '__orig_bases__': (<function TypedDict>,), '__dict__': <attribute '__dict__' of 'UserV2' objects>, '__weakref__': <attribute '__weakref__' of 'UserV2' objects>, '__doc__': None, '__required_keys__': frozenset({'id', 'name', 'role_links', 'username', 'roles'}), '__optional_keys__': frozenset({'tenantName', 'tenantId'}), '__readonly_keys__': frozenset(), '__mutable_keys__': frozenset({'id', 'name', 'tenantName', 'tenantId', 'role_links', 'username', 'roles'}), '__total__': True})\u00b6
\n+__dict__ = mappingproxy({'__module__': 'keystoneauth1.access.types', '__firstlineno__': 55, '__annotations__': {'id': <class 'str'>, 'name': <class 'str'>, 'role_links': list[typing.Any], 'roles': list[keystoneauth1.access.types.RoleV2], 'tenantId': typing.NotRequired[str], 'tenantName': typing.NotRequired[str], 'username': <class 'str'>}, '__static_attributes__': (), '__orig_bases__': (<function TypedDict>,), '__dict__': <attribute '__dict__' of 'UserV2' objects>, '__weakref__': <attribute '__weakref__' of 'UserV2' objects>, '__doc__': None, '__required_keys__': frozenset({'username', 'id', 'name', 'roles', 'role_links'}), '__optional_keys__': frozenset({'tenantName', 'tenantId'}), '__readonly_keys__': frozenset(), '__mutable_keys__': frozenset({'tenantName', 'username', 'id', 'name', 'roles', 'tenantId', 'role_links'}), '__total__': True})\u00b6\n
\n \n
\n
\n __doc__ = None\u00b6
\n
\n \n@@ -2882,15 +2882,15 @@\n
\n
\n __annotations__ = {'OS-FEDERATION': typing.NotRequired[keystoneauth1.access.types.FederationV3], 'domain': <class 'keystoneauth1.access.types.UserDomainV3'>, 'id': <class 'str'>, 'name': <class 'str'>, 'password_expires_at': typing.NotRequired[str]}\u00b6
\n
\n \n
\n
\n-__dict__ = mappingproxy({'__annotations__': {'domain': <class 'keystoneauth1.access.types.UserDomainV3'>, 'id': <class 'str'>, 'name': <class 'str'>, 'password_expires_at': typing.NotRequired[str], 'OS-FEDERATION': typing.NotRequired[keystoneauth1.access.types.FederationV3]}, '__module__': 'keystoneauth1.access.types', '__dict__': <attribute '__dict__' of 'UserV3' objects>, '__weakref__': <attribute '__weakref__' of 'UserV3' objects>, '__doc__': None, '__orig_bases__': (<function TypedDict>,), '__required_keys__': frozenset({'id', 'domain', 'name'}), '__optional_keys__': frozenset({'password_expires_at', 'OS-FEDERATION'}), '__readonly_keys__': frozenset(), '__mutable_keys__': frozenset({'id', 'OS-FEDERATION', 'password_expires_at', 'domain', 'name'}), '__total__': True})\u00b6
\n+__dict__ = mappingproxy({'__annotations__': {'domain': <class 'keystoneauth1.access.types.UserDomainV3'>, 'id': <class 'str'>, 'name': <class 'str'>, 'password_expires_at': typing.NotRequired[str], 'OS-FEDERATION': typing.NotRequired[keystoneauth1.access.types.FederationV3]}, '__module__': 'keystoneauth1.access.types', '__dict__': <attribute '__dict__' of 'UserV3' objects>, '__weakref__': <attribute '__weakref__' of 'UserV3' objects>, '__doc__': None, '__orig_bases__': (<function TypedDict>,), '__required_keys__': frozenset({'name', 'domain', 'id'}), '__optional_keys__': frozenset({'OS-FEDERATION', 'password_expires_at'}), '__readonly_keys__': frozenset(), '__mutable_keys__': frozenset({'domain', 'id', 'OS-FEDERATION', 'name', 'password_expires_at'}), '__total__': True})\u00b6\n
\n \n
\n
\n __doc__ = None\u00b6
\n
\n \n", "details": [{"source1": "html2text {}", "source2": "html2text {}", "unified_diff": "@@ -16,18 +16,18 @@\n typing.NotRequired[list[keystoneauth1.access.types.CatalogServiceV2]],\n 'user': , 'metadata':\n typing.NotRequired[keystoneauth1.access.types.MetadataV2], 'trust':\n typing.NotRequired[keystoneauth1.access.types.TrustV2]}, '__static_\n attributes__': (), '__orig_bases__': (,), '__dict__\n ': , '__weakref__':\n , '__doc__': None, '__\n- required_keys__': frozenset({'user', 'token'}), '__optional_keys__':\n- frozenset({'metadata', 'serviceCatalog', 'trust'}), '__readonly_keys__\n- ': frozenset(), '__mutable_keys__': frozenset({'user', 'metadata',\n- 'token', 'serviceCatalog', 'trust'}), '__total__': True})\u00b6\n+ required_keys__': frozenset({'token', 'user'}), '__optional_keys__':\n+ frozenset({'trust', 'metadata', 'serviceCatalog'}), '__readonly_keys__\n+ ': frozenset(), '__mutable_keys__': frozenset({'serviceCatalog',\n+ 'metadata', 'user', 'token', 'trust'}), '__total__': True})\u00b6\n __doc__ = None\u00b6\n __firstlineno__ = 77\u00b6\n __module__ = 'keystoneauth1.access.types'\u00b6\n __mutable_keys__ = frozenset({'metadata', 'serviceCatalog', 'token',\n 'trust', 'user'})\u00b6\n __optional_keys__ = frozenset({'metadata', 'serviceCatalog', 'trust'})\u00b6\n __orig_bases__ = (,)\u00b6\n@@ -77,18 +77,18 @@\n typing.NotRequired[list\n [keystoneauth1.access.types.ApplicationCredentialAccessRuleV3]], 'id':\n , 'name': , 'restricted': }, '_\n _static_attributes__': (), '__orig_bases__': (,),\n '__dict__': , '__weakref__': , '__doc__': None, '__required_keys__\n- ': frozenset({'id', 'name', 'restricted'}), '__optional_keys__':\n+ ': frozenset({'name', 'restricted', 'id'}), '__optional_keys__':\n frozenset({'access_rules'}), '__readonly_keys__': frozenset(), '__\n- mutable_keys__': frozenset({'id', 'access_rules', 'name',\n- 'restricted'}), '__total__': True})\u00b6\n+ mutable_keys__': frozenset({'restricted', 'name', 'access_rules',\n+ 'id'}), '__total__': True})\u00b6\n __doc__ = None\u00b6\n __firstlineno__ = 167\u00b6\n __module__ = 'keystoneauth1.access.types'\u00b6\n __mutable_keys__ = frozenset({'access_rules', 'id', 'name',\n 'restricted'})\u00b6\n __optional_keys__ = frozenset({'access_rules'})\u00b6\n __orig_bases__ = (,)\u00b6\n@@ -110,18 +110,18 @@\n __dict__ = mappingproxy({'__module__': 'keystoneauth1.access.types', '_\n _firstlineno__': 44, '__annotations__': {'endpoints': list\n [keystoneauth1.access.types.EndpointV2], 'endpoints_links': list\n [typing.Any], 'type': , 'name': }, '__static_\n attributes__': (), '__orig_bases__': (,), '__dict__\n ': , '__weakref__':\n , '__doc__':\n- None, '__required_keys__': frozenset({'type', 'name', 'endpoints_\n- links', 'endpoints'}), '__optional_keys__': frozenset(), '__readonly_\n- keys__': frozenset(), '__mutable_keys__': frozenset({'type', 'name',\n- 'endpoints_links', 'endpoints'}), '__total__': True})\u00b6\n+ None, '__required_keys__': frozenset({'type', 'endpoints', 'name',\n+ 'endpoints_links'}), '__optional_keys__': frozenset(), '__readonly_\n+ keys__': frozenset(), '__mutable_keys__': frozenset({'type',\n+ 'endpoints', 'name', 'endpoints_links'}), '__total__': True})\u00b6\n __doc__ = None\u00b6\n __firstlineno__ = 44\u00b6\n __module__ = 'keystoneauth1.access.types'\u00b6\n __mutable_keys__ = frozenset({'endpoints', 'endpoints_links', 'name',\n 'type'})\u00b6\n __optional_keys__ = frozenset({})\u00b6\n __orig_bases__ = (,)\u00b6\n@@ -141,16 +141,16 @@\n __annotations__ = {'id': , 'name': }\u00b6\n __dict__ = mappingproxy({'__module__': 'keystoneauth1.access.types', '_\n _firstlineno__': 118, '__annotations__': {'id': , 'name':\n }, '__static_attributes__': (), '__orig_bases__':\n (,), '__dict__': , '__weakref__': , '__doc__': None, '__required_keys__': frozenset(\n- {'id', 'name'}), '__optional_keys__': frozenset(), '__readonly_keys__':\n- frozenset(), '__mutable_keys__': frozenset({'id', 'name'}), '__total__\n+ {'name', 'id'}), '__optional_keys__': frozenset(), '__readonly_keys__':\n+ frozenset(), '__mutable_keys__': frozenset({'name', 'id'}), '__total__\n ': True})\u00b6\n __doc__ = None\u00b6\n __firstlineno__ = 118\u00b6\n __module__ = 'keystoneauth1.access.types'\u00b6\n __mutable_keys__ = frozenset({'id', 'name'})\u00b6\n __optional_keys__ = frozenset({})\u00b6\n __orig_bases__ = (,)\u00b6\n@@ -170,18 +170,18 @@\n __dict__ = mappingproxy({'__module__': 'keystoneauth1.access.types', '_\n _firstlineno__': 36, '__annotations__': {'adminURL': ,\n 'region': , 'internalURL': , 'id': , 'publicURL': }, '__static_attributes__': (), '__\n orig_bases__': (,), '__dict__': , '__weakref__': , '__doc__': None, '__required_keys__': frozenset(\n- {'id', 'publicURL', 'region', 'internalURL', 'adminURL'}), '__optional_\n+ {'publicURL', 'id', 'region', 'adminURL', 'internalURL'}), '__optional_\n keys__': frozenset(), '__readonly_keys__': frozenset(), '__mutable_\n- keys__': frozenset({'id', 'publicURL', 'region', 'internalURL',\n- 'adminURL'}), '__total__': True})\u00b6\n+ keys__': frozenset({'publicURL', 'id', 'region', 'adminURL',\n+ 'internalURL'}), '__total__': True})\u00b6\n __doc__ = None\u00b6\n __firstlineno__ = 36\u00b6\n __module__ = 'keystoneauth1.access.types'\u00b6\n __mutable_keys__ = frozenset({'adminURL', 'id', 'internalURL',\n 'publicURL', 'region'})\u00b6\n __optional_keys__ = frozenset({})\u00b6\n __orig_bases__ = (,)\u00b6\n@@ -205,17 +205,17 @@\n __dict__ = mappingproxy({'__module__': 'keystoneauth1.access.types', '_\n _firstlineno__': 92, '__annotations__': {'id': ,\n 'interface': , 'region': , 'region_id':\n , 'url': }, '__static_attributes__': (), '__\n orig_bases__': (,), '__dict__': , '__weakref__': , '__doc__': None, '__required_keys__': frozenset(\n- {'id', 'interface', 'region', 'region_id', 'url'}), '__optional_keys__\n+ {'region_id', 'interface', 'id', 'url', 'region'}), '__optional_keys__\n ': frozenset(), '__readonly_keys__': frozenset(), '__mutable_keys__':\n- frozenset({'id', 'interface', 'region', 'region_id', 'url'}), '__total_\n+ frozenset({'region_id', 'interface', 'id', 'url', 'region'}), '__total_\n _': True})\u00b6\n __doc__ = None\u00b6\n __firstlineno__ = 92\u00b6\n __module__ = 'keystoneauth1.access.types'\u00b6\n __mutable_keys__ = frozenset({'id', 'interface', 'region', 'region_id',\n 'url'})\u00b6\n __optional_keys__ = frozenset({})\u00b6\n@@ -371,17 +371,17 @@\n }\u00b6\n __dict__ = mappingproxy({'__module__': 'keystoneauth1.access.types', '_\n _firstlineno__': 195, '__annotations__': {'access_token_id': , 'consumer_id': }, '__static_attributes__': (), '__\n orig_bases__': (,), '__dict__': , '__weakref__': , '__doc__': None, '__required_keys__': frozenset(\n- {'consumer_id', 'access_token_id'}), '__optional_keys__': frozenset(),\n+ {'access_token_id', 'consumer_id'}), '__optional_keys__': frozenset(),\n '__readonly_keys__': frozenset(), '__mutable_keys__': frozenset(\n- {'consumer_id', 'access_token_id'}), '__total__': True})\u00b6\n+ {'access_token_id', 'consumer_id'}), '__total__': True})\u00b6\n __doc__ = None\u00b6\n __firstlineno__ = 195\u00b6\n __module__ = 'keystoneauth1.access.types'\u00b6\n __mutable_keys__ = frozenset({'access_token_id', 'consumer_id'})\u00b6\n __optional_keys__ = frozenset({})\u00b6\n __orig_bases__ = (,)\u00b6\n __readonly_keys__ = frozenset({})\u00b6\n@@ -418,17 +418,17 @@\n __annotations__ = {'id': , 'name': }\u00b6\n __dict__ = mappingproxy({'__module__': 'keystoneauth1.access.types', '_\n _firstlineno__': 107, '__annotations__': {'id': , 'name':\n }, '__static_attributes__': (), '__orig_bases__':\n (,), '__dict__': , '__weakref__': , '__doc__': None, '__required_keys__':\n- frozenset({'id', 'name'}), '__optional_keys__': frozenset(), '__\n- readonly_keys__': frozenset(), '__mutable_keys__': frozenset({'id',\n- 'name'}), '__total__': True})\u00b6\n+ frozenset({'name', 'id'}), '__optional_keys__': frozenset(), '__\n+ readonly_keys__': frozenset(), '__mutable_keys__': frozenset({'name',\n+ 'id'}), '__total__': True})\u00b6\n __doc__ = None\u00b6\n __firstlineno__ = 107\u00b6\n __module__ = 'keystoneauth1.access.types'\u00b6\n __mutable_keys__ = frozenset({'id', 'name'})\u00b6\n __optional_keys__ = frozenset({})\u00b6\n __orig_bases__ = (,)\u00b6\n __readonly_keys__ = frozenset({})\u00b6\n@@ -447,17 +447,17 @@\n __dict__ = mappingproxy({'__module__': 'keystoneauth1.access.types', '_\n _firstlineno__': 112, '__annotations__': {'domain': , 'id': ,\n 'name': }, '__static_attributes__': (), '__orig_bases__':\n (,), '__dict__': , '__weakref__': , '__doc__': None, '__required_keys__': frozenset(\n- {'id', 'domain', 'name'}), '__optional_keys__': frozenset(), '__\n- readonly_keys__': frozenset(), '__mutable_keys__': frozenset({'id',\n- 'domain', 'name'}), '__total__': True})\u00b6\n+ {'name', 'domain', 'id'}), '__optional_keys__': frozenset(), '__\n+ readonly_keys__': frozenset(), '__mutable_keys__': frozenset({'name',\n+ 'domain', 'id'}), '__total__': True})\u00b6\n __doc__ = None\u00b6\n __firstlineno__ = 112\u00b6\n __module__ = 'keystoneauth1.access.types'\u00b6\n __mutable_keys__ = frozenset({'domain', 'id', 'name'})\u00b6\n __optional_keys__ = frozenset({})\u00b6\n __orig_bases__ = (,)\u00b6\n __readonly_keys__ = frozenset({})\u00b6\n@@ -497,17 +497,17 @@\n Bases: TypedDict\n __annotations__ = {'id': , 'name': }\u00b6\n __dict__ = mappingproxy({'__module__': 'keystoneauth1.access.types', '_\n _firstlineno__': 158, '__annotations__': {'id': , 'name':\n }, '__static_attributes__': (), '__orig_bases__':\n (,), '__dict__': , '__weakref__': ,\n- '__doc__': None, '__required_keys__': frozenset({'id', 'name'}), '__\n+ '__doc__': None, '__required_keys__': frozenset({'name', 'id'}), '__\n optional_keys__': frozenset(), '__readonly_keys__': frozenset(), '__\n- mutable_keys__': frozenset({'id', 'name'}), '__total__': True})\u00b6\n+ mutable_keys__': frozenset({'name', 'id'}), '__total__': True})\u00b6\n __doc__ = None\u00b6\n __firstlineno__ = 158\u00b6\n __module__ = 'keystoneauth1.access.types'\u00b6\n __mutable_keys__ = frozenset({'id', 'name'})\u00b6\n __optional_keys__ = frozenset({})\u00b6\n __orig_bases__ = (,)\u00b6\n __readonly_keys__ = frozenset({})\u00b6\n@@ -524,17 +524,17 @@\n url': }\u00b6\n __dict__ = mappingproxy({'__module__': 'keystoneauth1.access.types', '_\n _firstlineno__': 174, '__annotations__': {'auth_url': ,\n 'id': , 'sp_url': }, '__static_attributes__':\n (), '__orig_bases__': (,), '__dict__': , '__weakref__': , '__doc__': None, '__\n- required_keys__': frozenset({'id', 'sp_url', 'auth_url'}), '__optional_\n+ required_keys__': frozenset({'auth_url', 'sp_url', 'id'}), '__optional_\n keys__': frozenset(), '__readonly_keys__': frozenset(), '__mutable_\n- keys__': frozenset({'id', 'sp_url', 'auth_url'}), '__total__': True})\u00b6\n+ keys__': frozenset({'auth_url', 'sp_url', 'id'}), '__total__': True})\u00b6\n __doc__ = None\u00b6\n __firstlineno__ = 174\u00b6\n __module__ = 'keystoneauth1.access.types'\u00b6\n __mutable_keys__ = frozenset({'auth_url', 'id', 'sp_url'})\u00b6\n __optional_keys__ = frozenset({})\u00b6\n __orig_bases__ = (,)\u00b6\n __readonly_keys__ = frozenset({})\u00b6\n@@ -554,17 +554,17 @@\n __dict__ = mappingproxy({'__module__': 'keystoneauth1.access.types', '_\n _firstlineno__': 100, '__annotations__': {'endpoints': list\n [keystoneauth1.access.types.EndpointV3], 'id': , 'name':\n , 'type': }, '__static_attributes__': (), '__\n orig_bases__': (,), '__dict__': , '__weakref__': , '__doc__': None, '__required_keys__': frozenset(\n- {'id', 'name', 'type', 'endpoints'}), '__optional_keys__': frozenset(),\n- '__readonly_keys__': frozenset(), '__mutable_keys__': frozenset({'id',\n- 'name', 'type', 'endpoints'}), '__total__': True})\u00b6\n+ {'type', 'name', 'endpoints', 'id'}), '__optional_keys__': frozenset(),\n+ '__readonly_keys__': frozenset(), '__mutable_keys__': frozenset(\n+ {'type', 'name', 'endpoints', 'id'}), '__total__': True})\u00b6\n __doc__ = None\u00b6\n __firstlineno__ = 100\u00b6\n __module__ = 'keystoneauth1.access.types'\u00b6\n __mutable_keys__ = frozenset({'endpoints', 'id', 'name', 'type'})\u00b6\n __optional_keys__ = frozenset({})\u00b6\n __orig_bases__ = (,)\u00b6\n __readonly_keys__ = frozenset({})\u00b6\n@@ -609,17 +609,17 @@\n __dict__ = mappingproxy({'__module__': 'keystoneauth1.access.types', '_\n _firstlineno__': 20, '__annotations__': {'description':\n typing.NotRequired[str | None], 'enabled': typing.NotRequired[bool],\n 'id': , 'name': }, '__static_attributes__':\n (), '__orig_bases__': (,), '__dict__': , '__weakref__': , '__doc__': None, '__required_keys__\n- ': frozenset({'id', 'name'}), '__optional_keys__': frozenset(\n- {'description', 'enabled'}), '__readonly_keys__': frozenset(), '__\n- mutable_keys__': frozenset({'id', 'description', 'enabled', 'name'}),\n+ ': frozenset({'name', 'id'}), '__optional_keys__': frozenset(\n+ {'enabled', 'description'}), '__readonly_keys__': frozenset(), '__\n+ mutable_keys__': frozenset({'enabled', 'description', 'name', 'id'}),\n '__total__': True})\u00b6\n __doc__ = None\u00b6\n __firstlineno__ = 20\u00b6\n __module__ = 'keystoneauth1.access.types'\u00b6\n __mutable_keys__ = frozenset({'description', 'enabled', 'id', 'name'})\u00b6\n __optional_keys__ = frozenset({'description', 'enabled'})\u00b6\n __orig_bases__ = (,)\u00b6\n@@ -695,18 +695,18 @@\n _firstlineno__': 27, '__annotations__': {'audit_ids': list[str],\n 'bind': typing.NotRequired[dict[str, typing.Any]], 'expires': , 'id': , 'issued_at': typing.NotRequired[str],\n 'tenant': typing.NotRequired[keystoneauth1.access.types.TenantV2]}, '__\n static_attributes__': (), '__orig_bases__': (,), '_\n _dict__': , '__weakref__':\n , '__doc__': None, '__\n- required_keys__': frozenset({'id', 'audit_ids', 'expires'}), '__\n- optional_keys__': frozenset({'issued_at', 'bind', 'tenant'}), '__\n- readonly_keys__': frozenset(), '__mutable_keys__': frozenset({'id',\n- 'issued_at', 'audit_ids', 'bind', 'expires', 'tenant'}), '__total__':\n+ required_keys__': frozenset({'expires', 'audit_ids', 'id'}), '__\n+ optional_keys__': frozenset({'tenant', 'issued_at', 'bind'}), '__\n+ readonly_keys__': frozenset(), '__mutable_keys__': frozenset({'tenant',\n+ 'id', 'expires', 'audit_ids', 'issued_at', 'bind'}), '__total__':\n True})\u00b6\n __doc__ = None\u00b6\n __firstlineno__ = 27\u00b6\n __module__ = 'keystoneauth1.access.types'\u00b6\n __mutable_keys__ = frozenset({'audit_ids', 'bind', 'expires', 'id',\n 'issued_at', 'tenant'})\u00b6\n __optional_keys__ = frozenset({'bind', 'issued_at', 'tenant'})\u00b6\n@@ -758,24 +758,24 @@\n 'system': typing.NotRequired[keystoneauth1.access.types.SystemV3],\n 'user': , 'OS-OAUTH1':\n typing.NotRequired[keystoneauth1.access.types.OAuth1V3], 'OS-TRUST:\n trust': typing.NotRequired[keystoneauth1.access.types.TrustV3]}, '__\n module__': 'keystoneauth1.access.types', '__dict__': , '__weakref__': , '__doc__': None, '__orig_bases__': (,), '__required_keys__': frozenset({'methods', 'issued_at',\n- 'user', 'audit_ids', 'project', 'expires_at', 'roles'}), '__optional_\n- keys__': frozenset({'OS-OAUTH1', 'catalog', 'OS-TRUST:trust', 'oauth2_\n- credential', 'domain', 'service_providers', 'is_domain', 'is_admin_\n- project', 'application_credential', 'bind', 'system'}), '__readonly_\n- keys__': frozenset(), '__mutable_keys__': frozenset({'OS-OAUTH1',\n- 'issued_at', 'catalog', 'project', 'expires_at', 'oauth2_credential',\n- 'is_admin_project', 'user', 'application_credential', 'roles', 'OS-\n- TRUST:trust', 'domain', 'service_providers', 'is_domain', 'methods',\n- 'audit_ids', 'bind', 'system'}), '__total__': True})\u00b6\n+ TypedDict>,), '__required_keys__': frozenset({'methods', 'expires_at',\n+ 'user', 'roles', 'audit_ids', 'issued_at', 'project'}), '__optional_\n+ keys__': frozenset({'system', 'catalog', 'oauth2_credential', 'service_\n+ providers', 'OS-TRUST:trust', 'is_domain', 'domain', 'OS-OAUTH1',\n+ 'application_credential', 'is_admin_project', 'bind'}), '__readonly_\n+ keys__': frozenset(), '__mutable_keys__': frozenset({'OS-TRUST:trust',\n+ 'oauth2_credential', 'project', 'user', 'application_credential',\n+ 'issued_at', 'OS-OAUTH1', 'system', 'catalog', 'service_providers',\n+ 'is_domain', 'methods', 'expires_at', 'domain', 'roles', 'audit_ids',\n+ 'is_admin_project', 'bind'}), '__total__': True})\u00b6\n __doc__ = None\u00b6\n __module__ = 'keystoneauth1.access.types'\u00b6\n __mutable_keys__ = frozenset({'OS-OAUTH1', 'OS-TRUST:trust',\n 'application_credential', 'audit_ids', 'bind', 'catalog', 'domain',\n 'expires_at', 'is_admin_project', 'is_domain', 'issued_at', 'methods',\n 'oauth2_credential', 'project', 'roles', 'service_providers', 'system',\n 'user'})\u00b6\n@@ -814,18 +814,18 @@\n __dict__ = mappingproxy({'__module__': 'keystoneauth1.access.types', '_\n _firstlineno__': 70, '__annotations__': {'id': ,\n 'impersonation': , 'trustee_user_id': ,\n 'trustor_user_id': }, '__static_attributes__': (), '__\n orig_bases__': (,), '__dict__': , '__weakref__': , '__doc__': None, '__required_keys__': frozenset(\n- {'id', 'impersonation', 'trustor_user_id', 'trustee_user_id'}), '__\n+ {'trustee_user_id', 'trustor_user_id', 'impersonation', 'id'}), '__\n optional_keys__': frozenset(), '__readonly_keys__': frozenset(), '__\n- mutable_keys__': frozenset({'id', 'impersonation', 'trustor_user_id',\n- 'trustee_user_id'}), '__total__': True})\u00b6\n+ mutable_keys__': frozenset({'trustee_user_id', 'trustor_user_id',\n+ 'impersonation', 'id'}), '__total__': True})\u00b6\n __doc__ = None\u00b6\n __firstlineno__ = 70\u00b6\n __module__ = 'keystoneauth1.access.types'\u00b6\n __mutable_keys__ = frozenset({'id', 'impersonation', 'trustee_user_id',\n 'trustor_user_id'})\u00b6\n __optional_keys__ = frozenset({})\u00b6\n __orig_bases__ = (,)\u00b6\n@@ -850,18 +850,18 @@\n _firstlineno__': 188, '__annotations__': {'id': ,\n 'impersonation': , 'trustee_user': , 'trustor_user': }, '__static_attributes__':\n (), '__orig_bases__': (,), '__dict__': , '__weakref__': , '__doc__': None, '__required_keys__':\n- frozenset({'id', 'trustee_user', 'impersonation', 'trustor_user'}), '__\n+ frozenset({'trustor_user', 'trustee_user', 'impersonation', 'id'}), '__\n optional_keys__': frozenset(), '__readonly_keys__': frozenset(), '__\n- mutable_keys__': frozenset({'id', 'trustee_user', 'impersonation',\n- 'trustor_user'}), '__total__': True})\u00b6\n+ mutable_keys__': frozenset({'trustor_user', 'trustee_user',\n+ 'impersonation', 'id'}), '__total__': True})\u00b6\n __doc__ = None\u00b6\n __firstlineno__ = 188\u00b6\n __module__ = 'keystoneauth1.access.types'\u00b6\n __mutable_keys__ = frozenset({'id', 'impersonation', 'trustee_user',\n 'trustor_user'})\u00b6\n __optional_keys__ = frozenset({})\u00b6\n __orig_bases__ = (,)\u00b6\n@@ -929,17 +929,17 @@\n __annotations__ = {'id': , 'name': }\u00b6\n __dict__ = mappingproxy({'__module__': 'keystoneauth1.access.types', '_\n _firstlineno__': 123, '__annotations__': {'id': , 'name':\n }, '__static_attributes__': (), '__orig_bases__':\n (,), '__dict__': , '__weakref__': , '__doc__': None, '__required_keys__':\n- frozenset({'id', 'name'}), '__optional_keys__': frozenset(), '__\n- readonly_keys__': frozenset(), '__mutable_keys__': frozenset({'id',\n- 'name'}), '__total__': True})\u00b6\n+ frozenset({'name', 'id'}), '__optional_keys__': frozenset(), '__\n+ readonly_keys__': frozenset(), '__mutable_keys__': frozenset({'name',\n+ 'id'}), '__total__': True})\u00b6\n __doc__ = None\u00b6\n __firstlineno__ = 123\u00b6\n __module__ = 'keystoneauth1.access.types'\u00b6\n __mutable_keys__ = frozenset({'id', 'name'})\u00b6\n __optional_keys__ = frozenset({})\u00b6\n __orig_bases__ = (,)\u00b6\n __readonly_keys__ = frozenset({})\u00b6\n@@ -961,19 +961,19 @@\n _firstlineno__': 55, '__annotations__': {'id': , 'name':\n , 'role_links': list[typing.Any], 'roles': list\n [keystoneauth1.access.types.RoleV2], 'tenantId': typing.NotRequired\n [str], 'tenantName': typing.NotRequired[str], 'username': }, '__static_attributes__': (), '__orig_bases__': (,), '__dict__': ,\n '__weakref__': , '__doc__\n- ': None, '__required_keys__': frozenset({'id', 'name', 'role_links',\n- 'username', 'roles'}), '__optional_keys__': frozenset({'tenantName',\n+ ': None, '__required_keys__': frozenset({'username', 'id', 'name',\n+ 'roles', 'role_links'}), '__optional_keys__': frozenset({'tenantName',\n 'tenantId'}), '__readonly_keys__': frozenset(), '__mutable_keys__':\n- frozenset({'id', 'name', 'tenantName', 'tenantId', 'role_links',\n- 'username', 'roles'}), '__total__': True})\u00b6\n+ frozenset({'tenantName', 'username', 'id', 'name', 'roles', 'tenantId',\n+ 'role_links'}), '__total__': True})\u00b6\n __doc__ = None\u00b6\n __firstlineno__ = 55\u00b6\n __module__ = 'keystoneauth1.access.types'\u00b6\n __mutable_keys__ = frozenset({'id', 'name', 'role_links', 'roles',\n 'tenantId', 'tenantName', 'username'})\u00b6\n __optional_keys__ = frozenset({'tenantId', 'tenantName'})\u00b6\n __orig_bases__ = (,)\u00b6\n@@ -1001,19 +1001,19 @@\n 'keystoneauth1.access.types.UserDomainV3'>, 'id': ,\n 'name': , 'password_expires_at': typing.NotRequired[str],\n 'OS-FEDERATION': typing.NotRequired\n [keystoneauth1.access.types.FederationV3]}, '__module__':\n 'keystoneauth1.access.types', '__dict__': , '__weakref__': , '__doc__': None, '__orig_bases__': (,),\n- '__required_keys__': frozenset({'id', 'domain', 'name'}), '__optional_\n- keys__': frozenset({'password_expires_at', 'OS-FEDERATION'}), '__\n- readonly_keys__': frozenset(), '__mutable_keys__': frozenset({'id',\n- 'OS-FEDERATION', 'password_expires_at', 'domain', 'name'}), '__total__\n- ': True})\u00b6\n+ '__required_keys__': frozenset({'name', 'domain', 'id'}), '__optional_\n+ keys__': frozenset({'OS-FEDERATION', 'password_expires_at'}), '__\n+ readonly_keys__': frozenset(), '__mutable_keys__': frozenset({'domain',\n+ 'id', 'OS-FEDERATION', 'name', 'password_expires_at'}), '__total__':\n+ True})\u00b6\n __doc__ = None\u00b6\n __module__ = 'keystoneauth1.access.types'\u00b6\n __mutable_keys__ = frozenset({'OS-FEDERATION', 'domain', 'id', 'name',\n 'password_expires_at'})\u00b6\n __optional_keys__ = frozenset({'OS-FEDERATION', 'password_expires_\n at'})\u00b6\n __orig_bases__ = (,)\u00b6\n"}]}, {"source1": "./usr/share/doc/python-keystoneauth1-doc/html/api/keystoneauth1.identity.v3.base.html", "source2": "./usr/share/doc/python-keystoneauth1-doc/html/api/keystoneauth1.identity.v3.base.html", "unified_diff": "@@ -709,15 +709,15 @@\n
\n
\n __annotations__ = {'identity': dict[str, typing.Any], 'scope': typing.NotRequired[dict[str, typing.Any] | str]}\u00b6
\n
\n \n
\n
\n-__dict__ = mappingproxy({'__module__': 'keystoneauth1.identity.v3.base', '__firstlineno__': 96, '__annotations__': {'identity': dict[str, typing.Any], 'scope': typing.NotRequired[dict[str, typing.Any] | str]}, '__static_attributes__': (), '__orig_bases__': (<function TypedDict>,), '__dict__': <attribute '__dict__' of '_AuthIdentity' objects>, '__weakref__': <attribute '__weakref__' of '_AuthIdentity' objects>, '__doc__': None, '__required_keys__': frozenset({'identity'}), '__optional_keys__': frozenset({'scope'}), '__readonly_keys__': frozenset(), '__mutable_keys__': frozenset({'scope', 'identity'}), '__total__': True})\u00b6
\n+__dict__ = mappingproxy({'__module__': 'keystoneauth1.identity.v3.base', '__firstlineno__': 96, '__annotations__': {'identity': dict[str, typing.Any], 'scope': typing.NotRequired[dict[str, typing.Any] | str]}, '__static_attributes__': (), '__orig_bases__': (<function TypedDict>,), '__dict__': <attribute '__dict__' of '_AuthIdentity' objects>, '__weakref__': <attribute '__weakref__' of '_AuthIdentity' objects>, '__doc__': None, '__required_keys__': frozenset({'identity'}), '__optional_keys__': frozenset({'scope'}), '__readonly_keys__': frozenset(), '__mutable_keys__': frozenset({'identity', 'scope'}), '__total__': True})\u00b6\n
\n \n
\n
\n __doc__ = None\u00b6
\n
\n \n", "details": [{"source1": "html2text {}", "source2": "html2text {}", "unified_diff": "@@ -346,15 +346,15 @@\n annotations__': {'identity': dict[str, typing.Any], 'scope':\n typing.NotRequired[dict[str, typing.Any] | str]}, '__static_attributes_\n _': (), '__orig_bases__': (,), '__dict__':\n , '__weakref__':\n , '__doc__': None,\n '__required_keys__': frozenset({'identity'}), '__optional_keys__':\n frozenset({'scope'}), '__readonly_keys__': frozenset(), '__mutable_\n- keys__': frozenset({'scope', 'identity'}), '__total__': True})\u00b6\n+ keys__': frozenset({'identity', 'scope'}), '__total__': True})\u00b6\n __doc__ = None\u00b6\n __firstlineno__ = 96\u00b6\n __module__ = 'keystoneauth1.identity.v3.base'\u00b6\n __mutable_keys__ = frozenset({'identity', 'scope'})\u00b6\n __optional_keys__ = frozenset({'scope'})\u00b6\n __orig_bases__ = (,)\u00b6\n __readonly_keys__ = frozenset({})\u00b6\n"}]}]}]}]}]}