microsoft-agents-activity 1.10.0.dev5__tar.gz → 1.10.0.dev7__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {microsoft_agents_activity-1.10.0.dev5/microsoft_agents_activity.egg-info → microsoft_agents_activity-1.10.0.dev7}/PKG-INFO +1 -1
- microsoft_agents_activity-1.10.0.dev7/VERSION.txt +1 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/config/__init__.py +9 -1
- microsoft_agents_activity-1.10.0.dev7/microsoft_agents/activity/config/_load_configuration.py +27 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/config/_logging/_logging_configuration.py +15 -4
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/config/configuration.py +149 -17
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7/microsoft_agents_activity.egg-info}/PKG-INFO +1 -1
- microsoft_agents_activity-1.10.0.dev5/VERSION.txt +0 -1
- microsoft_agents_activity-1.10.0.dev5/microsoft_agents/activity/config/_load_configuration.py +0 -45
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/LICENSE +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/MANIFEST.in +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/__init__.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/_model_utils.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/_type_aliases.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/_utils/__init__.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/_utils/_deferred_string.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/action_types.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/activity.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/activity_event_names.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/activity_importance.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/activity_types.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/adaptive_card_card.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/adaptive_card_invoke_action.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/adaptive_card_invoke_response.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/adaptive_card_invoke_value.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/adaptive_card_search_invoke_value.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/agents_model.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/animation_card.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/attachment.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/attachment_data.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/attachment_info.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/attachment_layout_types.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/attachment_view.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/audio_card.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/caller_id_constants.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/card.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/card_action.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/card_image.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/channel_account.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/channel_adapter_protocol.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/channel_id.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/channels.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/config/_coercion.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/config/_configuration_protocol.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/config/_constants.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/config/_logging/__init__.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/config/_logging/_color_formatter.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/config/_logging/_constants.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/config/_logging/_load.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/config/_resolve.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/config/_utils.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/contact_relation_update_action_types.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/content_types.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/conversation_account.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/conversation_members.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/conversation_parameters.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/conversation_reference.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/conversation_resource_response.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/conversation_update_types.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/conversations_result.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/delivery_modes.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/end_of_conversation_codes.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/entity/__init__.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/entity/_schema_mixin.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/entity/_validate_known_entities.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/entity/activity_treatment.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/entity/ai_entity.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/entity/entity.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/entity/entity_types.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/entity/geo_coordinates.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/entity/mention.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/entity/place.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/entity/product_info.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/entity/stream_info.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/entity/thing.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/error.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/error_response.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/errors/__init__.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/errors/error_message.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/errors/error_resources.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/expected_replies.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/fact.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/hero_card.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/inner_http_error.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/input_hints.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/installation_update_action_types.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/invoke_response.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/media_event_value.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/media_url.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/message_reaction.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/message_reaction_types.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/message_update_types.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/oauth_card.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/paged_members_result.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/py.typed +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/receipt_card.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/receipt_item.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/resource_response.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/role_types.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/search_invoke_options.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/search_invoke_value.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/semantic_action.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/semantic_actions_states.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/sign_in_constants.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/sign_in_resource.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/signin_card.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/suggested_actions.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/teams/__init__.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/teams/app_based_link_query.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/teams/batch_failed_entries_response.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/teams/batch_failed_entry.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/teams/batch_operation_response.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/teams/batch_operation_state_response.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/teams/bot_config_auth.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/teams/cache_info.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/teams/cancel_operation_response.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/teams/channel_info.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/teams/config_auth_response.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/teams/config_response.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/teams/config_response_base.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/teams/config_task_response.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/teams/conversation_list.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/teams/file_consent_card.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/teams/file_consent_card_response.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/teams/file_download_info.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/teams/file_info_card.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/teams/file_upload_info.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/teams/meeting_details.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/teams/meeting_details_base.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/teams/meeting_end_event_details.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/teams/meeting_event_details.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/teams/meeting_info.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/teams/meeting_notification.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/teams/meeting_notification_base.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/teams/meeting_notification_channel_data.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/teams/meeting_notification_recipient_failure_info.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/teams/meeting_notification_response.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/teams/meeting_participant_info.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/teams/meeting_participants_event_details.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/teams/meeting_stage_surface.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/teams/meeting_start_event_details.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/teams/meeting_tab_icon_surface.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/teams/message_actions_payload.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/teams/message_actions_payload_app.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/teams/message_actions_payload_attachment.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/teams/message_actions_payload_body.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/teams/message_actions_payload_conversation.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/teams/message_actions_payload_from.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/teams/message_actions_payload_mention.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/teams/message_actions_payload_reaction.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/teams/message_actions_payload_user.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/teams/messaging_extension_action.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/teams/messaging_extension_action_response.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/teams/messaging_extension_attachment.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/teams/messaging_extension_parameter.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/teams/messaging_extension_query.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/teams/messaging_extension_query_options.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/teams/messaging_extension_response.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/teams/messaging_extension_result.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/teams/messaging_extension_suggested_action.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/teams/notification_info.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/teams/o365_connector_card.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/teams/o365_connector_card_action_base.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/teams/o365_connector_card_action_card.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/teams/o365_connector_card_action_query.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/teams/o365_connector_card_date_input.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/teams/o365_connector_card_fact.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/teams/o365_connector_card_http_post.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/teams/o365_connector_card_image.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/teams/o365_connector_card_input_base.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/teams/o365_connector_card_multichoice_input.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/teams/o365_connector_card_multichoice_input_choice.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/teams/o365_connector_card_open_uri.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/teams/o365_connector_card_open_uri_target.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/teams/o365_connector_card_section.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/teams/o365_connector_card_text_input.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/teams/o365_connector_card_view_action.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/teams/on_behalf_of.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/teams/read_receipt_info.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/teams/signin_state_verification_query.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/teams/surface.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/teams/tab_context.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/teams/tab_entity_context.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/teams/tab_request.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/teams/tab_response.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/teams/tab_response_card.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/teams/tab_response_cards.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/teams/tab_response_payload.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/teams/tab_submit.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/teams/tab_submit_data.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/teams/tab_suggested_actions.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/teams/targeted_meeting_notification.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/teams/targeted_meeting_notification_value.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/teams/task_module_card_response.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/teams/task_module_continue_response.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/teams/task_module_message_response.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/teams/task_module_request.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/teams/task_module_request_context.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/teams/task_module_response.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/teams/task_module_response_base.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/teams/task_module_task_info.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/teams/team_details.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/teams/team_info.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/teams/teams_batch_operation_response.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/teams/teams_channel_account.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/teams/teams_channel_data.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/teams/teams_channel_data_settings.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/teams/teams_meeting_info.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/teams/teams_meeting_member.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/teams/teams_meeting_participant.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/teams/teams_member.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/teams/teams_paged_members_result.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/teams/tenant_info.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/teams/user_meeting_details.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/text_format_types.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/text_highlight.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/thumbnail_card.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/thumbnail_url.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/token_exchange_invoke_request.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/token_exchange_invoke_response.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/token_exchange_request.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/token_exchange_resource.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/token_exchange_state.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/token_or_sign_in_resource_response.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/token_post_resource.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/token_request.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/token_response.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/token_status.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/transcript.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/turn_context_protocol.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents/activity/video_card.py +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents_activity.egg-info/SOURCES.txt +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents_activity.egg-info/dependency_links.txt +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents_activity.egg-info/requires.txt +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/microsoft_agents_activity.egg-info/top_level.txt +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/pyproject.toml +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/readme.md +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/setup.cfg +0 -0
- {microsoft_agents_activity-1.10.0.dev5 → microsoft_agents_activity-1.10.0.dev7}/setup.py +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
1.10.0.dev7
|
|
@@ -1,8 +1,15 @@
|
|
|
1
1
|
# Copyright (c) Microsoft Corporation. All rights reserved.
|
|
2
2
|
# Licensed under the MIT License.
|
|
3
3
|
|
|
4
|
+
"""Configuration loading and typed settings binding.
|
|
5
|
+
|
|
6
|
+
``load_configuration_from_env`` returns a root ``Configuration``. Plain mappings
|
|
7
|
+
and extracted sections are scoped inputs; ``_RootConfigurable`` distinguishes
|
|
8
|
+
these forms using ``Configuration.is_root_config``, not their contents or paths.
|
|
9
|
+
"""
|
|
10
|
+
|
|
4
11
|
from ._load_configuration import load_configuration_from_env
|
|
5
|
-
from .configuration import Configuration, _Configurable
|
|
12
|
+
from .configuration import Configuration, _Configurable, _RootConfigurable
|
|
6
13
|
from ._configuration_protocol import _ConfigurationProtocol, _DictConfigurable
|
|
7
14
|
from ._resolve import _resolve
|
|
8
15
|
from ._utils import (
|
|
@@ -31,6 +38,7 @@ __all__ = [
|
|
|
31
38
|
"_try_set",
|
|
32
39
|
"_resolve",
|
|
33
40
|
"_Configurable",
|
|
41
|
+
"_RootConfigurable",
|
|
34
42
|
"_DictConfigurable",
|
|
35
43
|
"coerce_bool",
|
|
36
44
|
"coerce_int",
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
# Copyright (c) Microsoft Corporation. All rights reserved.
|
|
2
|
+
# Licensed under the MIT License.
|
|
3
|
+
|
|
4
|
+
from typing import Any, Mapping
|
|
5
|
+
|
|
6
|
+
from .configuration import Configuration
|
|
7
|
+
|
|
8
|
+
from ._logging import _configure_logging
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
def load_configuration_from_env(
|
|
12
|
+
env_vars: Mapping[str, Any], defaults: Mapping[str, Any] | None = None
|
|
13
|
+
) -> Configuration:
|
|
14
|
+
"""Resolve environment values and defaults into root configuration.
|
|
15
|
+
|
|
16
|
+
Environment-style ``__`` paths are expanded and indexed mappings become
|
|
17
|
+
lists. Environment values take precedence over defaults without modifying
|
|
18
|
+
either input. The resolved logging section is applied before returning.
|
|
19
|
+
|
|
20
|
+
:param env_vars: A mapping of environment variable names to their values.
|
|
21
|
+
:param defaults: Optional fallback values, either nested or environment-style.
|
|
22
|
+
:return: A Configuration with ``is_root_config=True``, suitable for binding
|
|
23
|
+
application-level settings. Extracted sections are scoped configurations.
|
|
24
|
+
"""
|
|
25
|
+
config = Configuration.resolve(env_vars, defaults or {}, _is_root_config=True)
|
|
26
|
+
_configure_logging(config)
|
|
27
|
+
return config
|
|
@@ -7,10 +7,11 @@ from __future__ import annotations
|
|
|
7
7
|
|
|
8
8
|
from dataclasses import dataclass
|
|
9
9
|
from typing import Mapping
|
|
10
|
+
from typing_extensions import Self
|
|
10
11
|
|
|
11
12
|
from microsoft_agents.activity.errors import configuration_errors
|
|
12
13
|
|
|
13
|
-
from ..configuration import Configuration,
|
|
14
|
+
from ..configuration import Configuration, _RootConfigurable
|
|
14
15
|
from .._utils import _xpath
|
|
15
16
|
from ._constants import _NAME_TO_LEVEL
|
|
16
17
|
|
|
@@ -35,13 +36,23 @@ class _LogLevelEntry:
|
|
|
35
36
|
|
|
36
37
|
|
|
37
38
|
@dataclass(frozen=True)
|
|
38
|
-
class _LoggingConfiguration(
|
|
39
|
-
"""
|
|
39
|
+
class _LoggingConfiguration(_RootConfigurable):
|
|
40
|
+
"""Bind namespace log levels from root configuration or a logging section.
|
|
41
|
+
|
|
42
|
+
Root input reads ``logging::log_level``; scoped input reads ``log_level``
|
|
43
|
+
directly. Missing entries produce no level overrides.
|
|
44
|
+
"""
|
|
40
45
|
|
|
41
46
|
log_levels: list[_LogLevelEntry]
|
|
42
47
|
|
|
43
48
|
@classmethod
|
|
44
|
-
def
|
|
49
|
+
def _from_root_configuration(cls, config: Configuration) -> _LoggingConfiguration:
|
|
50
|
+
return cls._from_scoped_configuration(
|
|
51
|
+
config.get_section(_xpath("logging"), default=Configuration())
|
|
52
|
+
)
|
|
53
|
+
|
|
54
|
+
@classmethod
|
|
55
|
+
def _from_scoped_configuration(cls, config: Configuration) -> _LoggingConfiguration:
|
|
45
56
|
|
|
46
57
|
raw_log_levels = config.get(_xpath("log_level"), default={})
|
|
47
58
|
if not isinstance(raw_log_levels, Mapping):
|
|
@@ -6,7 +6,6 @@ from __future__ import annotations
|
|
|
6
6
|
from abc import ABC, abstractmethod
|
|
7
7
|
from typing import (
|
|
8
8
|
Any,
|
|
9
|
-
Callable,
|
|
10
9
|
Iterable,
|
|
11
10
|
Mapping,
|
|
12
11
|
TypeVar,
|
|
@@ -47,34 +46,115 @@ class Configuration(dict, _ConfigurationProtocol):
|
|
|
47
46
|
Paths use ``::`` separators. Alternative paths are tried in the supplied
|
|
48
47
|
order. Sections carry the matched source path for diagnostics.
|
|
49
48
|
Construction makes a shallow copy; nested mutable values can remain shared.
|
|
49
|
+
|
|
50
|
+
Plain mappings are scoped by default. Root configurations, such as those
|
|
51
|
+
returned by ``load_configuration_from_env``, let settings binders locate
|
|
52
|
+
their sections within the application configuration. Root identity is
|
|
53
|
+
explicit metadata, independent of the diagnostic base path.
|
|
50
54
|
"""
|
|
51
55
|
|
|
52
56
|
def __init__(
|
|
53
|
-
self,
|
|
57
|
+
self,
|
|
58
|
+
original: Mapping | None = None,
|
|
59
|
+
_base_path: str | None = None,
|
|
60
|
+
_is_root_config: bool | None = None,
|
|
61
|
+
**kwargs,
|
|
54
62
|
):
|
|
55
63
|
"""Initialize a Configuration instance.
|
|
56
64
|
|
|
57
|
-
:param
|
|
58
|
-
:param _base_path:
|
|
65
|
+
:param original: The original mapping to initialize the configuration from.
|
|
66
|
+
:param _base_path: Source path used in diagnostics; defaults to an empty
|
|
67
|
+
path, even when copying another Configuration.
|
|
68
|
+
:param _is_root_config: Whether this is application-level configuration.
|
|
69
|
+
When omitted, inherit the flag from an original Configuration;
|
|
70
|
+
otherwise default to False. Explicit False overrides an inherited
|
|
71
|
+
root flag.
|
|
72
|
+
:param kwargs: Configuration entries when no original mapping is supplied.
|
|
73
|
+
:raises ValueError: If both original and keyword entries are supplied.
|
|
59
74
|
"""
|
|
60
|
-
if
|
|
61
|
-
raise ValueError("Cannot provide both '
|
|
62
|
-
super().__init__(
|
|
75
|
+
if original is not None and kwargs:
|
|
76
|
+
raise ValueError("Cannot provide both 'original' and keyword arguments.")
|
|
77
|
+
super().__init__(original or kwargs)
|
|
63
78
|
self._base_path = _base_path or ""
|
|
79
|
+
if isinstance(original, Configuration) and _is_root_config is None:
|
|
80
|
+
_is_root_config = original._is_root_config
|
|
81
|
+
self._is_root_config = _is_root_config or False
|
|
82
|
+
self._key = None
|
|
83
|
+
|
|
84
|
+
@property
|
|
85
|
+
def is_root_config(self) -> bool:
|
|
86
|
+
"""Whether settings binders should treat this as application-level input."""
|
|
87
|
+
return self._is_root_config
|
|
88
|
+
|
|
89
|
+
@property
|
|
90
|
+
def base_path(self) -> str:
|
|
91
|
+
"""Source path used in diagnostics, not an indication of root identity."""
|
|
92
|
+
return self._base_path
|
|
93
|
+
|
|
94
|
+
@property
|
|
95
|
+
def key(self) -> str:
|
|
96
|
+
"""Last source-path segment, or an empty string when no path is set."""
|
|
97
|
+
if not self._key:
|
|
98
|
+
self._key = (
|
|
99
|
+
self._base_path.rsplit(_PATH_SEPARATOR, maxsplit=1)[-1]
|
|
100
|
+
if self._base_path
|
|
101
|
+
else ""
|
|
102
|
+
)
|
|
103
|
+
return self._key
|
|
104
|
+
|
|
105
|
+
@classmethod
|
|
106
|
+
def resolve(
|
|
107
|
+
cls,
|
|
108
|
+
primary: Mapping | None = None,
|
|
109
|
+
defaults: Mapping | None = None,
|
|
110
|
+
*,
|
|
111
|
+
_base_path: str | None = None,
|
|
112
|
+
_is_root_config: bool | None = None,
|
|
113
|
+
) -> Configuration:
|
|
114
|
+
"""Normalize and merge sources, with primary values taking precedence.
|
|
115
|
+
|
|
116
|
+
Expand environment-style ``__`` paths and convert indexed mappings to
|
|
117
|
+
lists. Nested mappings merge recursively; primary lists replace default
|
|
118
|
+
lists. Neither input's containers are modified.
|
|
119
|
+
|
|
120
|
+
:param primary: Values that override defaults.
|
|
121
|
+
:param defaults: Optional fallback values.
|
|
122
|
+
:param _base_path: Diagnostic source path for the result.
|
|
123
|
+
:param _is_root_config: Mark the result as root when True. Unlike copying
|
|
124
|
+
a Configuration, resolution does not inherit input metadata; the
|
|
125
|
+
result is scoped unless explicitly marked as root.
|
|
126
|
+
"""
|
|
127
|
+
resolved = _resolve(primary or {}, defaults or {})
|
|
128
|
+
return Configuration(
|
|
129
|
+
resolved, _base_path=_base_path, _is_root_config=_is_root_config
|
|
130
|
+
)
|
|
64
131
|
|
|
65
132
|
@classmethod
|
|
66
133
|
def from_mapping(
|
|
67
|
-
cls,
|
|
134
|
+
cls,
|
|
135
|
+
_mapping: Mapping | None = None,
|
|
136
|
+
_base_path: str | None = None,
|
|
137
|
+
_is_root_config: bool | None = None,
|
|
138
|
+
**kwargs,
|
|
68
139
|
) -> Configuration:
|
|
69
140
|
"""Create configuration, using keyword arguments as fallback values.
|
|
70
141
|
|
|
71
|
-
An existing Configuration is reused
|
|
72
|
-
|
|
142
|
+
An existing Configuration is reused when no defaults or metadata changes
|
|
143
|
+
are requested. Otherwise a new instance is constructed. Root identity is
|
|
144
|
+
inherited from a Configuration unless explicitly overridden; ordinary
|
|
145
|
+
mappings are scoped by default.
|
|
146
|
+
|
|
147
|
+
:param _mapping: Primary values, which take precedence over kwargs.
|
|
148
|
+
:param _base_path: Diagnostic source path for a new instance. Use
|
|
149
|
+
``from_config`` to preserve a source path when adding defaults.
|
|
150
|
+
:param _is_root_config: Optional override of root/scoped identity.
|
|
151
|
+
:param kwargs: Fallback configuration entries, not environment variables.
|
|
73
152
|
"""
|
|
74
153
|
if (
|
|
75
154
|
isinstance(_mapping, Configuration)
|
|
76
155
|
and not kwargs
|
|
77
156
|
and (_base_path is None or _base_path == _mapping._base_path)
|
|
157
|
+
and (_is_root_config is None or _is_root_config == _mapping._is_root_config)
|
|
78
158
|
):
|
|
79
159
|
return _mapping
|
|
80
160
|
if kwargs:
|
|
@@ -84,16 +164,28 @@ class Configuration(dict, _ConfigurationProtocol):
|
|
|
84
164
|
resolved = _resolve(_mapping, kwargs, path_transformer=lambda x: x)
|
|
85
165
|
else:
|
|
86
166
|
resolved = _mapping
|
|
87
|
-
|
|
167
|
+
|
|
168
|
+
if _is_root_config is None:
|
|
169
|
+
if isinstance(_mapping, Configuration):
|
|
170
|
+
_is_root_config = _mapping._is_root_config
|
|
171
|
+
return cls(resolved, _base_path=_base_path, _is_root_config=_is_root_config)
|
|
88
172
|
|
|
89
173
|
@classmethod
|
|
90
|
-
def from_config(
|
|
91
|
-
"""
|
|
174
|
+
def from_config(cls, base: Configuration | None, **kwargs) -> Configuration:
|
|
175
|
+
"""Fork configuration, preserving its source path and root identity.
|
|
176
|
+
|
|
177
|
+
Values in base take precedence; kwargs supply missing defaults rather
|
|
178
|
+
than overwriting existing entries. If base is None, create a scoped
|
|
179
|
+
Configuration from kwargs.
|
|
180
|
+
"""
|
|
92
181
|
if base is None:
|
|
93
|
-
return Configuration(**kwargs)
|
|
182
|
+
return Configuration(**kwargs, _is_root_config=False)
|
|
94
183
|
new_config = base.copy()
|
|
95
184
|
return Configuration.from_mapping(
|
|
96
|
-
new_config,
|
|
185
|
+
new_config,
|
|
186
|
+
_base_path=base._base_path,
|
|
187
|
+
_is_root_config=base._is_root_config,
|
|
188
|
+
**kwargs,
|
|
97
189
|
)
|
|
98
190
|
|
|
99
191
|
def _resolve_path(self, key: str) -> str:
|
|
@@ -407,15 +499,22 @@ class Configuration(dict, _ConfigurationProtocol):
|
|
|
407
499
|
if scopes is None:
|
|
408
500
|
return []
|
|
409
501
|
if isinstance(scopes, str):
|
|
502
|
+
scopes = scopes.replace(",", " ")
|
|
410
503
|
lst = scopes.strip().split()
|
|
411
504
|
return [s for s in lst if s]
|
|
412
|
-
return scopes
|
|
505
|
+
return list(scopes)
|
|
413
506
|
|
|
414
507
|
|
|
415
508
|
class _Configurable(ABC):
|
|
509
|
+
"""Bind typed settings from a Configuration or reuse an already-bound object."""
|
|
416
510
|
|
|
417
511
|
@classmethod
|
|
418
512
|
def from_mapping(cls, _mapping: Mapping | None = None, **kwargs) -> Self:
|
|
513
|
+
"""Bind mapping values, using kwargs as fallbacks for missing entries.
|
|
514
|
+
|
|
515
|
+
Configuration inputs preserve their root identity. Ordinary mappings
|
|
516
|
+
are scoped; use a marked root Configuration for application-level input.
|
|
517
|
+
"""
|
|
419
518
|
return cls.from_configuration(Configuration.from_mapping(_mapping, **kwargs))
|
|
420
519
|
|
|
421
520
|
@classmethod
|
|
@@ -423,9 +522,42 @@ class _Configurable(ABC):
|
|
|
423
522
|
def _from_configuration(cls, config: Configuration) -> Self: ...
|
|
424
523
|
|
|
425
524
|
@classmethod
|
|
426
|
-
def from_configuration(cls, config: Configuration | Self) -> Self:
|
|
525
|
+
def from_configuration(cls, config: Configuration | Self | None) -> Self:
|
|
526
|
+
"""Bind a Configuration, reuse a settings instance, or bind defaults.
|
|
527
|
+
|
|
528
|
+
None binds an empty scoped Configuration. Plain mappings must instead
|
|
529
|
+
be passed to ``from_mapping``.
|
|
530
|
+
|
|
531
|
+
:raises TypeError: If config is not a supported input type.
|
|
532
|
+
"""
|
|
533
|
+
if config is None:
|
|
534
|
+
config = Configuration()
|
|
427
535
|
if isinstance(config, cls):
|
|
428
536
|
return config
|
|
429
537
|
if isinstance(config, Configuration):
|
|
430
538
|
return cls._from_configuration(config)
|
|
431
539
|
raise TypeError(f"Cannot create {cls.__name__} from {type(config).__name__}")
|
|
540
|
+
|
|
541
|
+
|
|
542
|
+
class _RootConfigurable(_Configurable, ABC):
|
|
543
|
+
"""Bind settings from either application-level or scoped configuration.
|
|
544
|
+
|
|
545
|
+
Subclasses implement root and scoped binding separately. Dispatch uses only
|
|
546
|
+
``Configuration.is_root_config``: a root binder locates its own section,
|
|
547
|
+
while a scoped binder reads fields directly. Passing None uses the scoped
|
|
548
|
+
binder with empty configuration.
|
|
549
|
+
"""
|
|
550
|
+
|
|
551
|
+
@classmethod
|
|
552
|
+
def _from_configuration(cls, config: Configuration) -> Self:
|
|
553
|
+
if config._is_root_config:
|
|
554
|
+
return cls._from_root_configuration(config)
|
|
555
|
+
return cls._from_scoped_configuration(config)
|
|
556
|
+
|
|
557
|
+
@classmethod
|
|
558
|
+
@abstractmethod
|
|
559
|
+
def _from_scoped_configuration(cls, config: Configuration) -> Self: ...
|
|
560
|
+
|
|
561
|
+
@classmethod
|
|
562
|
+
@abstractmethod
|
|
563
|
+
def _from_root_configuration(cls, config: Configuration) -> Self: ...
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
1.10.0.dev5
|
microsoft_agents_activity-1.10.0.dev5/microsoft_agents/activity/config/_load_configuration.py
DELETED
|
@@ -1,45 +0,0 @@
|
|
|
1
|
-
# Copyright (c) Microsoft Corporation. All rights reserved.
|
|
2
|
-
# Licensed under the MIT License.
|
|
3
|
-
|
|
4
|
-
from typing import Any, Mapping
|
|
5
|
-
|
|
6
|
-
from ._logging import _configure_logging
|
|
7
|
-
from ._resolve import _resolve
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
def load_configuration_from_env(env_vars: Mapping[str, Any]) -> dict:
|
|
11
|
-
"""
|
|
12
|
-
Parses environment variables and returns a dictionary with the relevant configuration.
|
|
13
|
-
"""
|
|
14
|
-
local_vars = dict(env_vars)
|
|
15
|
-
result = {}
|
|
16
|
-
for key, value in local_vars.items():
|
|
17
|
-
levels = key.split("__")
|
|
18
|
-
current_level = result
|
|
19
|
-
last_level = None
|
|
20
|
-
for next_level in levels:
|
|
21
|
-
if next_level not in current_level:
|
|
22
|
-
current_level[next_level] = {}
|
|
23
|
-
last_level = current_level
|
|
24
|
-
current_level = current_level[next_level]
|
|
25
|
-
last_level[levels[-1]] = value
|
|
26
|
-
|
|
27
|
-
if result.get("CONNECTIONSMAP") and isinstance(result["CONNECTIONSMAP"], dict):
|
|
28
|
-
result["CONNECTIONSMAP"] = [
|
|
29
|
-
conn for conn in result.get("CONNECTIONSMAP", {}).values()
|
|
30
|
-
]
|
|
31
|
-
|
|
32
|
-
_configure_logging(result.get("LOGGING", {}))
|
|
33
|
-
|
|
34
|
-
# temporary fix before next PR
|
|
35
|
-
token_validation_options = _resolve(
|
|
36
|
-
result.get("TOKENVALIDATION", {}),
|
|
37
|
-
)
|
|
38
|
-
|
|
39
|
-
return {
|
|
40
|
-
"AGENTAPPLICATION": result.pop("AGENTAPPLICATION", {}),
|
|
41
|
-
"CONNECTIONS": result.pop("CONNECTIONS", {}),
|
|
42
|
-
"CONNECTIONSMAP": result.pop("CONNECTIONSMAP", []),
|
|
43
|
-
"LOGGING": result.pop("LOGGING", {}),
|
|
44
|
-
"TOKENVALIDATION": token_validation_options,
|
|
45
|
-
}
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|