capo-codeguruprofiler 0.6.0__tar.gz → 0.8.0__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.
- {capo_codeguruprofiler-0.6.0/src/capo_codeguruprofiler.egg-info → capo_codeguruprofiler-0.8.0}/PKG-INFO +2 -2
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/pyproject.toml +2 -2
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/_auth/_sigv4.py +9 -9
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/_operations/code_guru_profiler/add_notification_channels.py +5 -1
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/_operations/code_guru_profiler/batch_get_frame_metric_data.py +5 -1
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/_operations/code_guru_profiler/configure_agent.py +5 -1
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/_operations/code_guru_profiler/create_profiling_group.py +5 -1
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/_operations/code_guru_profiler/delete_profiling_group.py +5 -1
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/_operations/code_guru_profiler/describe_profiling_group.py +5 -1
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/_operations/code_guru_profiler/get_findings_report_account_summary.py +5 -1
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/_operations/code_guru_profiler/get_notification_configuration.py +5 -1
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/_operations/code_guru_profiler/get_policy.py +5 -1
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/_operations/code_guru_profiler/get_profile.py +5 -1
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/_operations/code_guru_profiler/get_recommendations.py +5 -1
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/_operations/code_guru_profiler/list_findings_reports.py +5 -1
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/_operations/code_guru_profiler/list_profile_times.py +5 -1
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/_operations/code_guru_profiler/list_profiling_groups.py +5 -1
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/_operations/code_guru_profiler/list_tags_for_resource.py +5 -1
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/_operations/code_guru_profiler/post_agent_profile.py +5 -1
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/_operations/code_guru_profiler/put_permission.py +5 -1
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/_operations/code_guru_profiler/remove_notification_channel.py +5 -1
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/_operations/code_guru_profiler/remove_permission.py +5 -1
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/_operations/code_guru_profiler/submit_feedback.py +5 -1
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/_operations/code_guru_profiler/tag_resource.py +5 -1
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/_operations/code_guru_profiler/untag_resource.py +5 -1
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/_operations/code_guru_profiler/update_profiling_group.py +5 -1
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/_services/_pipeline.py +2 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/_services/async_code_guru_profiler.py +12 -4
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/_services/code_guru_profiler.py +12 -4
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0/src/capo_codeguruprofiler.egg-info}/PKG-INFO +2 -2
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler.egg-info/requires.txt +1 -1
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/tests/test_sigv4.py +21 -6
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/LICENSE +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/README.md +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/setup.cfg +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/__init__.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/_async.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/_auth/_identity.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/_auth/_providers.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/_auth/_signers.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/_auth/_zapros_handler.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/_body.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/_iter.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/_pagination.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/_protocol/__init__.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/_protocol/errors.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/_protocol/eventstream.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/_protocol/serialize.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/_protocol/xml.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/_resources/code_guru_profiler/profiling_group.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/_rule_engine/__init__.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/_rule_engine/_aws_partition.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/_rule_engine/_endpoint_rule_set.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/_rule_engine/_endpoint_runtime.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/_services/_aws_config.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/errors/__init__.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/errors/_base.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/errors/conflict_exception.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/errors/internal_server_exception.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/errors/resource_not_found_exception.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/errors/service_quota_exceeded_exception.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/errors/throttling_exception.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/errors/validation_exception.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/py.typed +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/types/_prelude/blob.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/types/_prelude/timestamp.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/types/action_group.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/types/add_notification_channels_request.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/types/add_notification_channels_response.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/types/agent_configuration.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/types/agent_orchestration_config.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/types/agent_parameter_field.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/types/agent_parameters.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/types/agent_profile.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/types/aggregated_profile.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/types/aggregated_profile_time.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/types/aggregation_period.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/types/anomalies.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/types/anomaly.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/types/anomaly_instance.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/types/anomaly_instance_id.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/types/anomaly_instances.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/types/batch_get_frame_metric_data_request.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/types/batch_get_frame_metric_data_response.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/types/channel.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/types/channel_id.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/types/channel_uri.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/types/channels.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/types/client_token.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/types/compute_platform.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/types/configure_agent_request.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/types/configure_agent_response.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/types/create_profiling_group_request.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/types/create_profiling_group_response.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/types/delete_profiling_group_request.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/types/delete_profiling_group_response.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/types/describe_profiling_group_request.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/types/describe_profiling_group_response.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/types/event_publisher.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/types/event_publishers.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/types/feedback_type.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/types/findings_report_id.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/types/findings_report_summaries.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/types/findings_report_summary.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/types/fleet_instance_id.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/types/frame_metric.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/types/frame_metric_data.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/types/frame_metric_datum.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/types/frame_metric_value.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/types/frame_metric_values.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/types/frame_metrics.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/types/get_findings_report_account_summary_request.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/types/get_findings_report_account_summary_response.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/types/get_notification_configuration_request.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/types/get_notification_configuration_response.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/types/get_policy_request.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/types/get_policy_response.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/types/get_profile_request.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/types/get_profile_response.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/types/get_recommendations_request.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/types/get_recommendations_response.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/types/list_findings_reports_request.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/types/list_findings_reports_response.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/types/list_of_timestamps.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/types/list_profile_times_request.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/types/list_profile_times_response.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/types/list_profiling_groups_request.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/types/list_profiling_groups_response.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/types/list_tags_for_resource_request.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/types/list_tags_for_resource_response.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/types/locale.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/types/match.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/types/matches.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/types/max_depth.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/types/max_results.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/types/metadata.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/types/metadata_field.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/types/metric.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/types/metric_type.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/types/notification_configuration.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/types/order_by.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/types/pagination_token.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/types/pattern.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/types/percentage.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/types/period.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/types/post_agent_profile_request.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/types/post_agent_profile_response.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/types/principal.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/types/principals.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/types/profile_time.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/types/profile_times.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/types/profiling_group_arn.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/types/profiling_group_description.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/types/profiling_group_descriptions.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/types/profiling_group_name.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/types/profiling_group_names.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/types/profiling_status.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/types/put_permission_request.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/types/put_permission_response.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/types/recommendation.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/types/recommendations.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/types/remove_notification_channel_request.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/types/remove_notification_channel_response.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/types/remove_permission_request.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/types/remove_permission_response.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/types/revision_id.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/types/strings.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/types/submit_feedback_request.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/types/submit_feedback_response.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/types/tag_keys.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/types/tag_resource_request.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/types/tag_resource_response.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/types/tags_map.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/types/target_frame.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/types/target_frames.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/types/thread_states.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/types/timestamp.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/types/timestamp_structure.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/types/unprocessed_end_time_map.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/types/untag_resource_request.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/types/untag_resource_response.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/types/update_profiling_group_request.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/types/update_profiling_group_response.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/types/user_feedback.py +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler.egg-info/SOURCES.txt +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler.egg-info/dependency_links.txt +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler.egg-info/top_level.txt +0 -0
- {capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/tests/test_body.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: capo-codeguruprofiler
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.8.0
|
|
4
4
|
Summary: Python SDK for AWS Codeguruprofiler.
|
|
5
5
|
Classifier: Development Status :: 4 - Beta
|
|
6
6
|
Classifier: Intended Audience :: Developers
|
|
@@ -17,7 +17,7 @@ Classifier: Typing :: Typed
|
|
|
17
17
|
Requires-Python: >=3.10
|
|
18
18
|
Description-Content-Type: text/markdown
|
|
19
19
|
License-File: LICENSE
|
|
20
|
-
Requires-Dist: zapros>=0.
|
|
20
|
+
Requires-Dist: zapros>=0.21.0
|
|
21
21
|
Provides-Extra: anyio
|
|
22
22
|
Requires-Dist: anyio>=3.0; extra == "anyio"
|
|
23
23
|
Provides-Extra: sso
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
[project]
|
|
2
2
|
name = "capo-codeguruprofiler"
|
|
3
|
-
version = "0.
|
|
3
|
+
version = "0.8.0"
|
|
4
4
|
description = "Python SDK for AWS Codeguruprofiler."
|
|
5
5
|
readme = "README.md"
|
|
6
6
|
requires-python = ">=3.10"
|
|
@@ -19,7 +19,7 @@ classifiers = [
|
|
|
19
19
|
"Typing :: Typed",
|
|
20
20
|
]
|
|
21
21
|
dependencies = [
|
|
22
|
-
"zapros>=0.
|
|
22
|
+
"zapros>=0.21.0",
|
|
23
23
|
]
|
|
24
24
|
|
|
25
25
|
[project.optional-dependencies]
|
|
@@ -17,7 +17,7 @@ import hmac
|
|
|
17
17
|
import re
|
|
18
18
|
from collections.abc import AsyncIterator, Iterator
|
|
19
19
|
from typing import Any, Literal, TypedDict, cast
|
|
20
|
-
from urllib.parse import quote
|
|
20
|
+
from urllib.parse import quote
|
|
21
21
|
|
|
22
22
|
import zapros
|
|
23
23
|
from pywhatwgurl import URLSearchParams
|
|
@@ -134,11 +134,11 @@ def _remove_dot_segments(path: str) -> str:
|
|
|
134
134
|
def _canonical_path(path: str, *, double_encode: bool, normalize: bool) -> str:
|
|
135
135
|
"""Build CanonicalURI.
|
|
136
136
|
|
|
137
|
-
|
|
138
|
-
normalize dot segments and URI-encode each
|
|
139
|
-
rules-engine ``disableNormalizePath`` /
|
|
140
|
-
turn those steps off — S3-family
|
|
141
|
-
signed exactly as provided.
|
|
137
|
+
``path`` is the path as sent on the wire, so it is already URI-encoded
|
|
138
|
+
once. Standard services normalize dot segments and URI-encode each
|
|
139
|
+
segment a second time. The rules-engine ``disableNormalizePath`` /
|
|
140
|
+
``disableDoubleEncoding`` flags turn those steps off — S3-family
|
|
141
|
+
services set both, so the path is signed exactly as provided.
|
|
142
142
|
"""
|
|
143
143
|
if not path:
|
|
144
144
|
return "/"
|
|
@@ -148,9 +148,9 @@ def _canonical_path(path: str, *, double_encode: bool, normalize: bool) -> str:
|
|
|
148
148
|
path = _remove_dot_segments(path)
|
|
149
149
|
if not double_encode:
|
|
150
150
|
return path
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
return quote(
|
|
151
|
+
# Never decode first: that would turn a "%2F" inside a segment (an ARN in
|
|
152
|
+
# a path label) into a separator and leave it out of the second encoding.
|
|
153
|
+
return quote(path, safe="/~")
|
|
154
154
|
|
|
155
155
|
|
|
156
156
|
def _canonical_query(query: str) -> str:
|
|
@@ -141,7 +141,11 @@ def build_request(
|
|
|
141
141
|
allow_nan=False,
|
|
142
142
|
).encode()
|
|
143
143
|
headers["content-type"] = "application/json"
|
|
144
|
-
signer =
|
|
144
|
+
signer = (
|
|
145
|
+
None
|
|
146
|
+
if options.anonymous
|
|
147
|
+
else get_signer(options, auth_schemes=endpoint.properties.get("authSchemes"))
|
|
148
|
+
)
|
|
145
149
|
normalized_url = zapros.URL(url)
|
|
146
150
|
for k, v in params:
|
|
147
151
|
normalized_url.search_params.append(k, v)
|
|
@@ -158,7 +158,11 @@ def build_request(
|
|
|
158
158
|
allow_nan=False,
|
|
159
159
|
).encode()
|
|
160
160
|
headers["content-type"] = "application/json"
|
|
161
|
-
signer =
|
|
161
|
+
signer = (
|
|
162
|
+
None
|
|
163
|
+
if options.anonymous
|
|
164
|
+
else get_signer(options, auth_schemes=endpoint.properties.get("authSchemes"))
|
|
165
|
+
)
|
|
162
166
|
normalized_url = zapros.URL(url)
|
|
163
167
|
for k, v in params:
|
|
164
168
|
normalized_url.search_params.append(k, v)
|
|
@@ -133,7 +133,11 @@ def build_request(
|
|
|
133
133
|
allow_nan=False,
|
|
134
134
|
).encode()
|
|
135
135
|
headers["content-type"] = "application/json"
|
|
136
|
-
signer =
|
|
136
|
+
signer = (
|
|
137
|
+
None
|
|
138
|
+
if options.anonymous
|
|
139
|
+
else get_signer(options, auth_schemes=endpoint.properties.get("authSchemes"))
|
|
140
|
+
)
|
|
137
141
|
normalized_url = zapros.URL(url)
|
|
138
142
|
for k, v in params:
|
|
139
143
|
normalized_url.search_params.append(k, v)
|
|
@@ -136,7 +136,11 @@ def build_request(
|
|
|
136
136
|
allow_nan=False,
|
|
137
137
|
).encode()
|
|
138
138
|
headers["content-type"] = "application/json"
|
|
139
|
-
signer =
|
|
139
|
+
signer = (
|
|
140
|
+
None
|
|
141
|
+
if options.anonymous
|
|
142
|
+
else get_signer(options, auth_schemes=endpoint.properties.get("authSchemes"))
|
|
143
|
+
)
|
|
140
144
|
normalized_url = zapros.URL(url)
|
|
141
145
|
for k, v in params:
|
|
142
146
|
normalized_url.search_params.append(k, v)
|
|
@@ -121,7 +121,11 @@ def build_request(
|
|
|
121
121
|
params: list[tuple[str, str]] = []
|
|
122
122
|
headers: dict[str, str] = {k: ", ".join(v) for k, v in endpoint.headers.items()}
|
|
123
123
|
body: bytes | None = b""
|
|
124
|
-
signer =
|
|
124
|
+
signer = (
|
|
125
|
+
None
|
|
126
|
+
if options.anonymous
|
|
127
|
+
else get_signer(options, auth_schemes=endpoint.properties.get("authSchemes"))
|
|
128
|
+
)
|
|
125
129
|
normalized_url = zapros.URL(url)
|
|
126
130
|
for k, v in params:
|
|
127
131
|
normalized_url.search_params.append(k, v)
|
|
@@ -125,7 +125,11 @@ def build_request(
|
|
|
125
125
|
params: list[tuple[str, str]] = []
|
|
126
126
|
headers: dict[str, str] = {k: ", ".join(v) for k, v in endpoint.headers.items()}
|
|
127
127
|
body: bytes | None = b""
|
|
128
|
-
signer =
|
|
128
|
+
signer = (
|
|
129
|
+
None
|
|
130
|
+
if options.anonymous
|
|
131
|
+
else get_signer(options, auth_schemes=endpoint.properties.get("authSchemes"))
|
|
132
|
+
)
|
|
129
133
|
normalized_url = zapros.URL(url)
|
|
130
134
|
for k, v in params:
|
|
131
135
|
normalized_url.search_params.append(k, v)
|
|
@@ -120,7 +120,11 @@ def build_request(
|
|
|
120
120
|
)
|
|
121
121
|
headers: dict[str, str] = {k: ", ".join(v) for k, v in endpoint.headers.items()}
|
|
122
122
|
body: bytes | None = b""
|
|
123
|
-
signer =
|
|
123
|
+
signer = (
|
|
124
|
+
None
|
|
125
|
+
if options.anonymous
|
|
126
|
+
else get_signer(options, auth_schemes=endpoint.properties.get("authSchemes"))
|
|
127
|
+
)
|
|
124
128
|
normalized_url = zapros.URL(url)
|
|
125
129
|
for k, v in params:
|
|
126
130
|
normalized_url.search_params.append(k, v)
|
|
@@ -124,7 +124,11 @@ def build_request(
|
|
|
124
124
|
params: list[tuple[str, str]] = []
|
|
125
125
|
headers: dict[str, str] = {k: ", ".join(v) for k, v in endpoint.headers.items()}
|
|
126
126
|
body: bytes | None = b""
|
|
127
|
-
signer =
|
|
127
|
+
signer = (
|
|
128
|
+
None
|
|
129
|
+
if options.anonymous
|
|
130
|
+
else get_signer(options, auth_schemes=endpoint.properties.get("authSchemes"))
|
|
131
|
+
)
|
|
128
132
|
normalized_url = zapros.URL(url)
|
|
129
133
|
for k, v in params:
|
|
130
134
|
normalized_url.search_params.append(k, v)
|
|
@@ -119,7 +119,11 @@ def build_request(
|
|
|
119
119
|
params: list[tuple[str, str]] = []
|
|
120
120
|
headers: dict[str, str] = {k: ", ".join(v) for k, v in endpoint.headers.items()}
|
|
121
121
|
body: bytes | None = b""
|
|
122
|
-
signer =
|
|
122
|
+
signer = (
|
|
123
|
+
None
|
|
124
|
+
if options.anonymous
|
|
125
|
+
else get_signer(options, auth_schemes=endpoint.properties.get("authSchemes"))
|
|
126
|
+
)
|
|
123
127
|
normalized_url = zapros.URL(url)
|
|
124
128
|
for k, v in params:
|
|
125
129
|
normalized_url.search_params.append(k, v)
|
|
@@ -154,7 +154,11 @@ def build_request(
|
|
|
154
154
|
if "accept" in input_:
|
|
155
155
|
headers["Accept"] = input_["accept"]
|
|
156
156
|
body: bytes | None = b""
|
|
157
|
-
signer =
|
|
157
|
+
signer = (
|
|
158
|
+
None
|
|
159
|
+
if options.anonymous
|
|
160
|
+
else get_signer(options, auth_schemes=endpoint.properties.get("authSchemes"))
|
|
161
|
+
)
|
|
158
162
|
normalized_url = zapros.URL(url)
|
|
159
163
|
for k, v in params:
|
|
160
164
|
normalized_url.search_params.append(k, v)
|
|
@@ -152,7 +152,11 @@ def build_request(
|
|
|
152
152
|
params.append(("locale", input_["locale"]))
|
|
153
153
|
headers: dict[str, str] = {k: ", ".join(v) for k, v in endpoint.headers.items()}
|
|
154
154
|
body: bytes | None = b""
|
|
155
|
-
signer =
|
|
155
|
+
signer = (
|
|
156
|
+
None
|
|
157
|
+
if options.anonymous
|
|
158
|
+
else get_signer(options, auth_schemes=endpoint.properties.get("authSchemes"))
|
|
159
|
+
)
|
|
156
160
|
normalized_url = zapros.URL(url)
|
|
157
161
|
for k, v in params:
|
|
158
162
|
normalized_url.search_params.append(k, v)
|
|
@@ -153,7 +153,11 @@ def build_request(
|
|
|
153
153
|
)
|
|
154
154
|
headers: dict[str, str] = {k: ", ".join(v) for k, v in endpoint.headers.items()}
|
|
155
155
|
body: bytes | None = b""
|
|
156
|
-
signer =
|
|
156
|
+
signer = (
|
|
157
|
+
None
|
|
158
|
+
if options.anonymous
|
|
159
|
+
else get_signer(options, auth_schemes=endpoint.properties.get("authSchemes"))
|
|
160
|
+
)
|
|
157
161
|
normalized_url = zapros.URL(url)
|
|
158
162
|
for k, v in params:
|
|
159
163
|
normalized_url.search_params.append(k, v)
|
|
@@ -152,7 +152,11 @@ def build_request(
|
|
|
152
152
|
params.append(("nextToken", input_["next_token"]))
|
|
153
153
|
headers: dict[str, str] = {k: ", ".join(v) for k, v in endpoint.headers.items()}
|
|
154
154
|
body: bytes | None = b""
|
|
155
|
-
signer =
|
|
155
|
+
signer = (
|
|
156
|
+
None
|
|
157
|
+
if options.anonymous
|
|
158
|
+
else get_signer(options, auth_schemes=endpoint.properties.get("authSchemes"))
|
|
159
|
+
)
|
|
156
160
|
normalized_url = zapros.URL(url)
|
|
157
161
|
for k, v in params:
|
|
158
162
|
normalized_url.search_params.append(k, v)
|
|
@@ -116,7 +116,11 @@ def build_request(
|
|
|
116
116
|
)
|
|
117
117
|
headers: dict[str, str] = {k: ", ".join(v) for k, v in endpoint.headers.items()}
|
|
118
118
|
body: bytes | None = b""
|
|
119
|
-
signer =
|
|
119
|
+
signer = (
|
|
120
|
+
None
|
|
121
|
+
if options.anonymous
|
|
122
|
+
else get_signer(options, auth_schemes=endpoint.properties.get("authSchemes"))
|
|
123
|
+
)
|
|
120
124
|
normalized_url = zapros.URL(url)
|
|
121
125
|
for k, v in params:
|
|
122
126
|
normalized_url.search_params.append(k, v)
|
|
@@ -114,7 +114,11 @@ def build_request(
|
|
|
114
114
|
params: list[tuple[str, str]] = []
|
|
115
115
|
headers: dict[str, str] = {k: ", ".join(v) for k, v in endpoint.headers.items()}
|
|
116
116
|
body: bytes | None = b""
|
|
117
|
-
signer =
|
|
117
|
+
signer = (
|
|
118
|
+
None
|
|
119
|
+
if options.anonymous
|
|
120
|
+
else get_signer(options, auth_schemes=endpoint.properties.get("authSchemes"))
|
|
121
|
+
)
|
|
118
122
|
normalized_url = zapros.URL(url)
|
|
119
123
|
for k, v in params:
|
|
120
124
|
normalized_url.search_params.append(k, v)
|
|
@@ -124,7 +124,11 @@ def build_request(
|
|
|
124
124
|
headers["Content-Type"] = input_["content_type"]
|
|
125
125
|
body: bytes | None = input_["agent_profile"]
|
|
126
126
|
headers["content-type"] = "application/octet-stream"
|
|
127
|
-
signer =
|
|
127
|
+
signer = (
|
|
128
|
+
None
|
|
129
|
+
if options.anonymous
|
|
130
|
+
else get_signer(options, auth_schemes=endpoint.properties.get("authSchemes"))
|
|
131
|
+
)
|
|
128
132
|
normalized_url = zapros.URL(url)
|
|
129
133
|
for k, v in params:
|
|
130
134
|
normalized_url.search_params.append(k, v)
|
|
@@ -138,7 +138,11 @@ def build_request(
|
|
|
138
138
|
allow_nan=False,
|
|
139
139
|
).encode()
|
|
140
140
|
headers["content-type"] = "application/json"
|
|
141
|
-
signer =
|
|
141
|
+
signer = (
|
|
142
|
+
None
|
|
143
|
+
if options.anonymous
|
|
144
|
+
else get_signer(options, auth_schemes=endpoint.properties.get("authSchemes"))
|
|
145
|
+
)
|
|
142
146
|
normalized_url = zapros.URL(url)
|
|
143
147
|
for k, v in params:
|
|
144
148
|
normalized_url.search_params.append(k, v)
|
|
@@ -125,7 +125,11 @@ def build_request(
|
|
|
125
125
|
params: list[tuple[str, str]] = []
|
|
126
126
|
headers: dict[str, str] = {k: ", ".join(v) for k, v in endpoint.headers.items()}
|
|
127
127
|
body: bytes | None = b""
|
|
128
|
-
signer =
|
|
128
|
+
signer = (
|
|
129
|
+
None
|
|
130
|
+
if options.anonymous
|
|
131
|
+
else get_signer(options, auth_schemes=endpoint.properties.get("authSchemes"))
|
|
132
|
+
)
|
|
129
133
|
normalized_url = zapros.URL(url)
|
|
130
134
|
for k, v in params:
|
|
131
135
|
normalized_url.search_params.append(k, v)
|
|
@@ -131,7 +131,11 @@ def build_request(
|
|
|
131
131
|
params.append(("revisionId", input_["revision_id"]))
|
|
132
132
|
headers: dict[str, str] = {k: ", ".join(v) for k, v in endpoint.headers.items()}
|
|
133
133
|
body: bytes | None = b""
|
|
134
|
-
signer =
|
|
134
|
+
signer = (
|
|
135
|
+
None
|
|
136
|
+
if options.anonymous
|
|
137
|
+
else get_signer(options, auth_schemes=endpoint.properties.get("authSchemes"))
|
|
138
|
+
)
|
|
135
139
|
normalized_url = zapros.URL(url)
|
|
136
140
|
for k, v in params:
|
|
137
141
|
normalized_url.search_params.append(k, v)
|
|
@@ -126,7 +126,11 @@ def build_request(
|
|
|
126
126
|
allow_nan=False,
|
|
127
127
|
).encode()
|
|
128
128
|
headers["content-type"] = "application/json"
|
|
129
|
-
signer =
|
|
129
|
+
signer = (
|
|
130
|
+
None
|
|
131
|
+
if options.anonymous
|
|
132
|
+
else get_signer(options, auth_schemes=endpoint.properties.get("authSchemes"))
|
|
133
|
+
)
|
|
130
134
|
normalized_url = zapros.URL(url)
|
|
131
135
|
for k, v in params:
|
|
132
136
|
normalized_url.search_params.append(k, v)
|
|
@@ -114,7 +114,11 @@ def build_request(
|
|
|
114
114
|
allow_nan=False,
|
|
115
115
|
).encode()
|
|
116
116
|
headers["content-type"] = "application/json"
|
|
117
|
-
signer =
|
|
117
|
+
signer = (
|
|
118
|
+
None
|
|
119
|
+
if options.anonymous
|
|
120
|
+
else get_signer(options, auth_schemes=endpoint.properties.get("authSchemes"))
|
|
121
|
+
)
|
|
118
122
|
normalized_url = zapros.URL(url)
|
|
119
123
|
for k, v in params:
|
|
120
124
|
normalized_url.search_params.append(k, v)
|
|
@@ -112,7 +112,11 @@ def build_request(
|
|
|
112
112
|
params.append(("tagKeys", item))
|
|
113
113
|
headers: dict[str, str] = {k: ", ".join(v) for k, v in endpoint.headers.items()}
|
|
114
114
|
body: bytes | None = b""
|
|
115
|
-
signer =
|
|
115
|
+
signer = (
|
|
116
|
+
None
|
|
117
|
+
if options.anonymous
|
|
118
|
+
else get_signer(options, auth_schemes=endpoint.properties.get("authSchemes"))
|
|
119
|
+
)
|
|
116
120
|
normalized_url = zapros.URL(url)
|
|
117
121
|
for k, v in params:
|
|
118
122
|
normalized_url.search_params.append(k, v)
|
|
@@ -137,7 +137,11 @@ def build_request(
|
|
|
137
137
|
allow_nan=False,
|
|
138
138
|
).encode()
|
|
139
139
|
headers["content-type"] = "application/json"
|
|
140
|
-
signer =
|
|
140
|
+
signer = (
|
|
141
|
+
None
|
|
142
|
+
if options.anonymous
|
|
143
|
+
else get_signer(options, auth_schemes=endpoint.properties.get("authSchemes"))
|
|
144
|
+
)
|
|
141
145
|
normalized_url = zapros.URL(url)
|
|
142
146
|
for k, v in params:
|
|
143
147
|
normalized_url.search_params.append(k, v)
|
|
@@ -40,6 +40,7 @@ class OperationOptions:
|
|
|
40
40
|
endpoint: str | None = None
|
|
41
41
|
retry_max_attempts: int | None = None
|
|
42
42
|
credentials_provider: IdentityProvider[Credentials] | None = None
|
|
43
|
+
anonymous: bool | None = None
|
|
43
44
|
|
|
44
45
|
|
|
45
46
|
@dataclass
|
|
@@ -51,6 +52,7 @@ class AsyncOperationOptions:
|
|
|
51
52
|
endpoint: str | None = None
|
|
52
53
|
retry_max_attempts: int | None = None
|
|
53
54
|
credentials_provider: IdentityProvider[Credentials] | None = None
|
|
55
|
+
anonymous: bool | None = None
|
|
54
56
|
|
|
55
57
|
|
|
56
58
|
@dataclass
|
|
@@ -116,6 +116,7 @@ class AsyncCodeGuruProfilerClientConfig(TypedDict, total=False, closed=True):
|
|
|
116
116
|
use_fips: bool | None
|
|
117
117
|
endpoint: str | None
|
|
118
118
|
credentials_provider: IdentityProvider[Credentials] | None
|
|
119
|
+
anonymous: bool | None
|
|
119
120
|
|
|
120
121
|
|
|
121
122
|
class AsyncCodeGuruProfilerClient:
|
|
@@ -131,6 +132,7 @@ class AsyncCodeGuruProfilerClient:
|
|
|
131
132
|
endpoint: The value of the ``SDK::Endpoint`` endpoint parameter.
|
|
132
133
|
credentials: AWS credentials for request signing.
|
|
133
134
|
credentials_provider: Provider that resolves AWS credentials. Takes precedence over ``credentials``.
|
|
135
|
+
anonymous: Send requests unsigned, without resolving credentials, even for operations that require authentication.
|
|
134
136
|
"""
|
|
135
137
|
|
|
136
138
|
def __init__(
|
|
@@ -144,10 +146,14 @@ class AsyncCodeGuruProfilerClient:
|
|
|
144
146
|
endpoint: str | None = None,
|
|
145
147
|
credentials: Credentials | None = None,
|
|
146
148
|
credentials_provider: CredentialsProvider | None = None,
|
|
149
|
+
anonymous: bool | None = None,
|
|
147
150
|
):
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
+
client = AsyncClient(http_handler)
|
|
152
|
+
# The handler the user gave us, or the default one for this environment.
|
|
153
|
+
# The SDK middlewares wrap it below, and the credential resolvers borrow
|
|
154
|
+
# it for their one-off calls.
|
|
155
|
+
raw_handler = client.handler
|
|
156
|
+
self._client = client.wrap_with_middleware(lambda next: AuthMiddleware(next))
|
|
151
157
|
if credentials is not None and credentials_provider is not None:
|
|
152
158
|
warnings.warn(
|
|
153
159
|
"Both credentials and credentials_provider given; provider takes precedence"
|
|
@@ -159,7 +165,7 @@ class AsyncCodeGuruProfilerClient:
|
|
|
159
165
|
resolved_credentials_provider = StaticAwsCredentialsProvider(credentials)
|
|
160
166
|
if resolved_credentials_provider is None and credentials is None:
|
|
161
167
|
resolved_credentials_provider = default_aws_credentials_chain(
|
|
162
|
-
AsyncClient(
|
|
168
|
+
AsyncClient(raw_handler)
|
|
163
169
|
)
|
|
164
170
|
self._config = AsyncCodeGuruProfilerClientConfig(
|
|
165
171
|
{
|
|
@@ -170,6 +176,7 @@ class AsyncCodeGuruProfilerClient:
|
|
|
170
176
|
"use_fips": use_fips,
|
|
171
177
|
"endpoint": endpoint,
|
|
172
178
|
"credentials_provider": resolved_credentials_provider,
|
|
179
|
+
"anonymous": anonymous,
|
|
173
180
|
}
|
|
174
181
|
)
|
|
175
182
|
|
|
@@ -201,6 +208,7 @@ class AsyncCodeGuruProfilerClient:
|
|
|
201
208
|
credentials_provider=overrides.get(
|
|
202
209
|
"credentials_provider", self._config.get("credentials_provider")
|
|
203
210
|
),
|
|
211
|
+
anonymous=overrides.get("anonymous", self._config.get("anonymous")),
|
|
204
212
|
)
|
|
205
213
|
return interceptors_, options_
|
|
206
214
|
|
|
@@ -116,6 +116,7 @@ class CodeGuruProfilerClientConfig(TypedDict, total=False, closed=True):
|
|
|
116
116
|
use_fips: bool | None
|
|
117
117
|
endpoint: str | None
|
|
118
118
|
credentials_provider: IdentityProvider[Credentials] | None
|
|
119
|
+
anonymous: bool | None
|
|
119
120
|
|
|
120
121
|
|
|
121
122
|
class CodeGuruProfilerClient:
|
|
@@ -131,6 +132,7 @@ class CodeGuruProfilerClient:
|
|
|
131
132
|
endpoint: The value of the ``SDK::Endpoint`` endpoint parameter.
|
|
132
133
|
credentials: AWS credentials for request signing.
|
|
133
134
|
credentials_provider: Provider that resolves AWS credentials. Takes precedence over ``credentials``.
|
|
135
|
+
anonymous: Send requests unsigned, without resolving credentials, even for operations that require authentication.
|
|
134
136
|
"""
|
|
135
137
|
|
|
136
138
|
def __init__(
|
|
@@ -144,10 +146,14 @@ class CodeGuruProfilerClient:
|
|
|
144
146
|
endpoint: str | None = None,
|
|
145
147
|
credentials: Credentials | None = None,
|
|
146
148
|
credentials_provider: CredentialsProvider | None = None,
|
|
149
|
+
anonymous: bool | None = None,
|
|
147
150
|
):
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
+
client = Client(http_handler)
|
|
152
|
+
# The handler the user gave us, or the default one for this environment.
|
|
153
|
+
# The SDK middlewares wrap it below, and the credential resolvers borrow
|
|
154
|
+
# it for their one-off calls.
|
|
155
|
+
raw_handler = client.handler
|
|
156
|
+
self._client = client.wrap_with_middleware(lambda next: AuthMiddleware(next))
|
|
151
157
|
if credentials is not None and credentials_provider is not None:
|
|
152
158
|
warnings.warn(
|
|
153
159
|
"Both credentials and credentials_provider given; provider takes precedence"
|
|
@@ -159,7 +165,7 @@ class CodeGuruProfilerClient:
|
|
|
159
165
|
resolved_credentials_provider = StaticAwsCredentialsProvider(credentials)
|
|
160
166
|
if resolved_credentials_provider is None and credentials is None:
|
|
161
167
|
resolved_credentials_provider = default_aws_credentials_chain(
|
|
162
|
-
Client(
|
|
168
|
+
Client(raw_handler)
|
|
163
169
|
)
|
|
164
170
|
self._config = CodeGuruProfilerClientConfig(
|
|
165
171
|
{
|
|
@@ -170,6 +176,7 @@ class CodeGuruProfilerClient:
|
|
|
170
176
|
"use_fips": use_fips,
|
|
171
177
|
"endpoint": endpoint,
|
|
172
178
|
"credentials_provider": resolved_credentials_provider,
|
|
179
|
+
"anonymous": anonymous,
|
|
173
180
|
}
|
|
174
181
|
)
|
|
175
182
|
|
|
@@ -201,6 +208,7 @@ class CodeGuruProfilerClient:
|
|
|
201
208
|
credentials_provider=overrides.get(
|
|
202
209
|
"credentials_provider", self._config.get("credentials_provider")
|
|
203
210
|
),
|
|
211
|
+
anonymous=overrides.get("anonymous", self._config.get("anonymous")),
|
|
204
212
|
)
|
|
205
213
|
return interceptors_, options_
|
|
206
214
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: capo-codeguruprofiler
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.8.0
|
|
4
4
|
Summary: Python SDK for AWS Codeguruprofiler.
|
|
5
5
|
Classifier: Development Status :: 4 - Beta
|
|
6
6
|
Classifier: Intended Audience :: Developers
|
|
@@ -17,7 +17,7 @@ Classifier: Typing :: Typed
|
|
|
17
17
|
Requires-Python: >=3.10
|
|
18
18
|
Description-Content-Type: text/markdown
|
|
19
19
|
License-File: LICENSE
|
|
20
|
-
Requires-Dist: zapros>=0.
|
|
20
|
+
Requires-Dist: zapros>=0.21.0
|
|
21
21
|
Provides-Extra: anyio
|
|
22
22
|
Requires-Dist: anyio>=3.0; extra == "anyio"
|
|
23
23
|
Provides-Extra: sso
|
|
@@ -91,13 +91,28 @@ class TestCanonicalPath:
|
|
|
91
91
|
def test_s3_preserves_dot_segments(self):
|
|
92
92
|
assert _s3_path("/a/../b/./c") == "/a/../b/./c"
|
|
93
93
|
|
|
94
|
-
def
|
|
95
|
-
#
|
|
96
|
-
assert _std_path("/foo bar") == "/foo%2520bar"
|
|
97
|
-
|
|
98
|
-
def test_non_s3_already_encoded_double_encodes(self):
|
|
99
|
-
# "/foo%20bar" gets unquoted to "/foo bar", then double-encoded.
|
|
94
|
+
def test_non_s3_encodes_wire_path_once_more(self):
|
|
95
|
+
# The path arrives URI-encoded once ("/foo bar" is sent as "/foo%20bar").
|
|
100
96
|
assert _std_path("/foo%20bar") == "/foo%2520bar"
|
|
97
|
+
assert _std_path("/a%3Ab/caf%C3%A9~") == "/a%253Ab/caf%25C3%25A9~"
|
|
98
|
+
|
|
99
|
+
def test_non_s3_keeps_encoded_slash_inside_segment(self):
|
|
100
|
+
# An ARN in a path label: its "/" is sent as "%2F" and must stay part
|
|
101
|
+
# of the segment, not become a separator.
|
|
102
|
+
assert (
|
|
103
|
+
_std_path("/model/arn%3Aaws%3Abedrock%3A%3Afoundation-model%2Fx/converse")
|
|
104
|
+
== "/model/arn%253Aaws%253Abedrock%253A%253Afoundation-model%252Fx/converse"
|
|
105
|
+
)
|
|
106
|
+
assert _s3_path("/bucket/a%2Fb") == "/bucket/a%2Fb"
|
|
107
|
+
|
|
108
|
+
def test_non_s3_encodes_literal_reserved_characters_once(self):
|
|
109
|
+
# "@" and "$" appear literally in a few URI templates and are sent as is.
|
|
110
|
+
assert _std_path("/@connections/abc") == "/%40connections/abc"
|
|
111
|
+
assert _std_path("/things/t/jobs/$next") == "/things/t/jobs/%24next"
|
|
112
|
+
|
|
113
|
+
def test_non_s3_does_not_decode_the_wire_path(self):
|
|
114
|
+
assert _std_path("/a%2fb") == "/a%252fb"
|
|
115
|
+
assert _std_path("/a%25b") == "/a%2525b"
|
|
101
116
|
|
|
102
117
|
def test_non_s3_removes_dot_segments(self):
|
|
103
118
|
# Mirrors botocore's normalize_url_path: "." dropped, ".." pops,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/__init__.py
RENAMED
|
File without changes
|
{capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/_async.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/_body.py
RENAMED
|
File without changes
|
{capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/_iter.py
RENAMED
|
File without changes
|
{capo_codeguruprofiler-0.6.0 → capo_codeguruprofiler-0.8.0}/src/capo_codeguruprofiler/_pagination.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|