Index index by Group index by Distribution index by Vendor index by creation date index by Name Mirrors Help Search

python313-moto-server-5.1.20-1.2 RPM for noarch

From OpenSuSE Tumbleweed for noarch

Name: python313-moto-server Distribution: openSUSE Tumbleweed
Version: 5.1.20 Vendor: openSUSE
Release: 1.2 Build date: Fri Jan 23 11:14:26 2026
Group: Unspecified Build host: reproducible
Size: 10834 Source RPM: python-moto-5.1.20-1.2.src.rpm
Packager: https://bugs.opensuse.org
Url: https://github.com/getmoto/moto
Summary: Library to mock out the boto library -- moto[server]
A library that allows your python tests to mock out the boto
library. Meta package to install server extra (moto[server])

Provides

Requires

License

Apache-2.0

Changelog

* Fri Jan 23 2026 Markéta Machová <mmachova@suse.com>
  - Update to 5.1.20
    * Many new methods and services
    * Python 3.14 is now officially supported
    * Removed support for the RoboMaker, QLDB and ElasticTranscoder,
      now that AWS has also deprecated these services
    * otherwise, see upstream changelog:
      https://github.com/getmoto/moto/blob/5.1.20/CHANGELOG.md
* Mon Sep 22 2025 Steve Kowalik <steven.kowalik@suse.com>
  - Update to 5.1.13
    * see upstream changelog:
      https://github.com/getmoto/moto/blob/5.1.13/CHANGELOG.md
* Thu Jul 24 2025 Nico Krapp <nico.krapp@suse.com>
  - Update to 5.1.8
    * see upstream changelog:
      https://github.com/getmoto/moto/blob/5.1.8/CHANGELOG.md
* Tue Feb 25 2025 Markéta Machová <mmachova@suse.com>
  - Update to 5.1.0
    * Dropped support for Python 3.8
    * New Services in: Lex V2 Models, CloudHSM V2
    * New Methods in: ElasticSearch, RDS, SecurityHub, TimeStream InfluxDB
* Wed Nov 06 2024 Bernhard Wiedemann <bwiedemann@suse.com>
  - Update to 5.0.20:
    fix reproducible builds (boo#1047218)
* Fri Oct 04 2024 ecsos <ecsos@opensuse.org>
  - Update to 5.0.16:
    [#] New Services:
    * OpenSearch Ingestion Service:
    * create_pipeline()
    * delete_pipeline()
    * get_pipeline()
    * list_pipelines()
    * list_tags_for_resource()
    * start_pipeline()
    * stop_pipeline()
    * tag_resource()
    * untag_resource()
    * update_pipeline()
    [#] New Methods:
    * CloudFront:
    * get_invalidation()
    * Directory Service:
    * create_trust()
    * delete_trust()
    * describe_ldaps_settings()
    * describe_trusts()
    * disable_ldaps()
    * enable_ldaps()
    * EC2:
    * modify_ebs_default_kms_key_id()
    [#] Miscellaneous:
    * CloudFormation: AWS::ECS::TaskDefinition now correctly validates the provided memory parameters
    * EC2: create_network_acl_entry() now supports the Ipv6CidrBlock-parameter
    * EC2: create_tags() now takes existing tags into account before throwing a TagLimitExceeded-exception
    * Firehose: put_record_batch() no longer fails when the SnowflakeDestinationConfiguration-parameter is set
    * FSx: The FileSystemID now uses the same pattern as AWS (fs-xxxxxxxx)
    * GuardDuty: create_detector() now supports the Features-parameter
    * Polly has been updated with the latest voices
    * RDS: modify_option_groups() now correctly parses OptionsToInclude
    * ResourceGroupsTaggingAPI: get_resources() now supports EC2 NAT Gateways, route tables, subnets
    * Scheduler: create_chedule() now validates the start_date-parameter for recurrent schedule expressions
    * SNS: publish() and publish_batch now support MessageStructure=json
    * WAFv2: associate_web_acl() now allows any resource to be associated
  - Update to 5.0.15:
    [#] New Services:
    * MemoryDB:
    * create_cluster()
    * create_snapshot()
    * create_subnet_group()
    * delete_cluster()
    * delete_snapshot()
    * delete_subnet_group()
    * describe_clusters()
    * describe_snapshots()
    * describe_subnet_groups()
    * list_tags()
    * tag_resource()
    * untag_resource()
    * update_cluster()
    * WorkspacesWeb:
    * associate_browser_settings()
    * associate_network_settings()
    * associate_user_access_logging_settings()
    * associate_user_settings()
    * create_browser_settings()
    * create_network_settings()
    * create_portal()
    * create_user_access_logging_settings()
    * create_user_settings()
    * delete_browser_settings()
    * delete_network_settings()
    * delete_portal()
    * delete_user_access_logging_settings()
    * delete_user_settings()
    * get_browser_settings()
    * get_network_settings()
    * get_portal()
    * get_user_access_logging_settings()
    * get_user_settings()
    * list_browser_settings()
    * list_network_settings()
    * list_portals()
    * list_user_access_logging_settings()
    * list_user_settings()
    [#] New Methods:
    * ApiGateway:
    * get_account()
    * update_account()
    * AppSync:
    * create_api_cache()
    * delete_api_cache()
    * get_api_cache()
    [#] Miscellaneous:
    * DynamoDB: get/delete/update_item() now validates all provided keys exist
    * Firehose: create_delivery_stream() now supports the SnowflakeDestinationConfiguration-parameter
    * S3: put_object() now support conditional writes
  - Update to 5.0.14:
    [#] General:
    * All JSON files in the binary distribution are shipped compressed, significantly reducing the size on disk
    [#] New Services:
    * Shield:
    * create_subscription()
    * describe_subscription()
    * TimestreamQuery:
    * create_scheduled_query()
    * delete_scheduled_query()
    * describe_endpoints()
    * describe_scheduled_query()
    * query()
    * update_scheduled_query()
    [#] New Methods:
    * AppMesh:
    * create_virtual_node()
    * delete_virtual_node()
    * describe_virtual_node()
    * list_virtual_nodes()
    * update_virtual_node()
    * create_virtual_router()
    * delete_virtual_router()
    * describe_virtual_router()
    * list_virtual_routers()
    * update_virtual_router()
    * create_route()
    * delete_route()
    * describe_route()
    * list_routes()
    * update_route()
    [#] Miscellaneous:
    * CloudFormation templates now support the Fn::Base64-function
    * CognitoIDP: Enhanced support for MFA flows/challenges
    * DynamoDB: update_item() now validates empty string sets
    * EC2: describe_snapshots() now supports the kms-key-id filter
    * EC2: run_instances() now supports the parameter Ipv6AddressCount
    * ECS: Tasks can now be created with unknown security groups
    * IAM: generate_credentials_report() now shows active certificates
    * KMS: sign() now supports Alias ARNs
    * Route53: list_resource_record_sets() now validates record names
    * S3: create_bucket() now has additional LocationConstraint-validation
    * S3: delete_objects() now respects BucketPolicy and ObjectLocks
    * S3: head_object() now handles Range-parameter correctly
    * SageMaker: search() now supports the CONTAINS filter
    * Sagemaker Runtime: invoke_endpoint_async() now supports failure responses
    * SNS: Signature of HTTP Messages are now valid
    * SSM: get_maintenance_window() now returns an exception if the window does not exist
    * SQS: delete_message_batch() now validates there's at least one entry
  - Update to 5.0.13:
    [#] General:
    * Support for Python 3.13
    * Moto now supports whitelisting which services can be used
    [#] New Services:
    * AppMesh:
    * create_mesh()
    * delete_mesh()
    * describe_mesh()
    * list_meshes()
    * list_tags_for_resource()
    * tag_resource()
    * update_mesh()
    * Transfer:
    * create_server()
    * create_user()
    * delete_server()
    * delete_ssh_public_key()
    * delete_user()
    * describe_server()
    * describe_user()
    * import_ssh_public_key()
    [#] New Methods:
    * Athena:
    * delete_work_group()
    * CodeBuild:
    * batch_get_projects()
    * DynamoDB:
    * delete_resource_policy()
    * get_resource_policy()
    * put_resource_policy()
    * EMR:
    * get_block_public_access_configuration()
    * put_block_public_access_configuration()
    * QLDB:
    * create_ledger()
    * delete_ledger()
    * describe_ledger()
    * list_tags_for_resource()
    * tag_resource()
    * update_ledger()
    * SageMaker:
    * create_data_quality_job_definition()
    * create_model_bias_job_definition()
    * create_model_card()
    * delete_data_quality_job_definition()
    * delete_model_bias_job_definition()
    * delete_model_card()
    * describe_data_quality_job_definition()
    * describe_model_bias_job_definition()
    * describe_model_card()
    * list_data_quality_job_definitions()
    * list_model_bias_job_definitions()
    * list_model_cards()
    * list_model_card_versions()
    [#] Miscellaneous:
    * ACM-PCA: create_certificate_authority() now uses the provided Subject
    * Athena: The default work group now has the correct configuration
    * ApplicationAutoscaling - put_scheduled_action() now allows multiple actions per Namespace/Dimension/Id
    * Autoscaling: update_group() now validates that the Group exists
    * Batch: now supports parameters in Job commands
    * CloudFormation: create_change_set() now validates the provided ChangeSetName
    * CloudFormation: describe_stacks() now returns export names in the Outputs
    * CloudFormation: AWS::Events::Rule's now also creates/deletes Targets
    * CloudWatch: get_metric_data() now returns everything when querying for Metric Insights Queries
    * CodeBuild: create_project() now supports the parameter description, tags, cache, timeoutInMinutes,
      queuedTimeoutInMinutes, sourceVersion, logsConfig and vpcConfig
    * CognitoIDP: sign_up() now returns CodeDeliveryDetails
    * DynamoDB: export_table_to_point_in_time() now exports data in correct format
    * DynamoDB: update_item() now validates an empty ExpressionAttributeValues and UpdateExpression
    * DynamoDB: All applicable methods that accept a TableName-parameter now also accept the ARN of the table
    * EC2: describe_security_group_rules() now correctly exposes rules with duplicate port/protocol values
    * EC2: Terminating an instance now also terminates any NIC's
    * EventBridge: create_connection() now creates a KMS Secret
    * EventBridge: Messages are now formatted using the InputTemplate, if provided
    * KMS: describe_key() now exposes the MultiRegionConfiguration-attribute
    * Organizations: create_account() now comes preconfigured with an IAM role
    * RDS: update_db_instance() now supports the CloudwatchLogsExportConfiguration-parameter
    * ResourceGroupsTagging API now supports additional SageMaker resources
      (CompilationJobs, Domains, ModelExplainabilityJobDefinition, ModelQualityJobDefinition, HyperParameterTuningJob)
    * S3: copy_object() now respects the CopySourceIfNoneMatch-parameter
    * SageMaker: search() now supports ModelPackageGroups
    * StepFunctions now has improved JSONPath support
    * StepFunctions now supports MaxItem/MaxItemPath/MaxConcurrencyPath
    * StepFunctions now supports MaxAttempts with value 0
  - Update to 5.0.12:
    [#] General:
    * The MotoProxy can now be run on Windows
    [#] New Services:
    * DirectConnect:
    * create_connection()
    * delete_connection()
    * describe_connections()
    * update_connection()
    * DynamoDB:
    * describe_export()
    * export_table_to_point_in_time()
    * list_export()
    * NetworkManager:
    * create_device()
    * create_link()
    * create_link()
    * delete_device()
    * delete_link()
    * delete_site()
    * get_devices()
    * get_links()
    * get_sites()
    * list_tags_for_resource()
    * SageMaker:
    * list_endpoints()
    * list_endpoint_configs()
    * create_auto_ml_job_v2()
    * describe_auto_ml_job_v2()
    * list_auto_ml_jobs()
    * stop_auto_ml_job()
    * create_compilation_job()
    * describe_compilation_job()
    * list_compilation_jobs()
    * delete_compilation_job()
    * create_domain()
    * describe_domain()
    * list_domains()
    * delete_domain()
    * create_model_explainability_job_definition()
    * describe_model_explainability_job_definition()
    * list_model_explainability_job_definitions()
    * delete_model_explainability_job_definition()
    * create_hyper_parameter_tuning_job()
    * describe_hyper_parameter_tuning_job()
    * list_hyper_parameter_tuning_jobs()
    * delete_hyper_parameter_tuning_job()
    * create_model_quality_job_definition()
    * describe_model_quality_job_definition()
    * list_model_quality_job_definitions()
    * delete_model_quality_job_definition()
    * Route53:
    * list_tags_for_resource()
    [#] Miscellaneous:
    * ACM: export_certificate() now only allows exporting private certificates
    * ACM: DomainValidationOptions now have SUCCESS-status, fixing the `certificate_validated` waiter
    * Athena: QueryResults are now stored in S3
    * CloudFormation: update_stack() now persists the new parameters provided
    * CloudFormation: update_stack() now understands UsePreviousValue=False
    * CloudFormation: update_stack() now throws an exception when using UsePreviousValue=True and a new parameter value
    * CloudFormation: update_stack() is now able to update resources where only the parameters have changed
    * CloudFormation: AWS::S3::Bucket resources will now create/update Tags
    * CloudFormation: AWS::S3::Bucket resources are no longer recreated for every update
    * CognitoIDP: initiate_auth() now supports USERNAME_PASSWORD_AUTH and SMS/Software Token MFA
    * CognitoIDP: initiate_auth() now returns th email in the ID-token claims
    * DynamoDB: query() now sorts the results correctly when querying GSI data with identical hash keys
    * EC2: describe_security_group_rules() now enumerates multiple rules correctly
    * EC2: run_instances() can now use $Default or $Latest launch template version
    * Events: list_targets_by_rule() now supports pagination
    * EventBridge Scheduler - get_schedule() now returns the ActionAfterCompletion
    * Firehose: create_delivery_stream() now creates S3 files with the correct filename if no prefix is provided
    * IOT: Certificates hashes can now be computed using the DER encoding, per the AWS spec
      This is an opt-in behaviour, and can be enabled with the following configuration:
      @mock_aws(config={"iot": {"use_valid_cert": True}})
    * ResourceGroupsTaggingAPI: tag_resources() now supports SageMaker resources
    * S3: head_object()/get_object() now support the PartNumber-argument
    * S3: put_object() now correctly enforces the BucketPolicy when creating new objects
    * SESv2: send_email() now returns the MessageId
  - Update to 5.0.11:
    [#] New Methods:
    * ServiceDiscovery:
    * deregister_instance()
    * discover_instances()
    * discover_instances_revision()
    * get_instance()
    * get_instances_health_status()
    * list_instances()
    * register_instance()
    * update_http_namespace()
    * update_instance_custom_health_status()
    [#] Miscellaneous:
    * DynamoDB: transact_write_items() no longer throws a ValidationException when passing multiple set actions, only when passing multiple set clauses
    * DynamoDB: transact_write_items() no longer throws an Exception when ExpressionAttributeNames are not provided
      (Both bugs were introduced in 5.0.10)
    * IOT-data: update_thing_shadow() now calculates the delta correctly
    * ResourceGroupsTagging: get_resources() now supports EFS resources
  - Update to 5.0.10:
    [#] General:
    * CloudFormation now supports cfn-lint v1, as well as v0
    [#] New Services:
    * FSX:
    * create_file_system()
    * delete_file_system()
    * describe_file_systems()
    * tag_resource()
    * untag_resource()
    * OpenSearch Serverless:
    * batch_get_collection()
    * create_collection()
    * create_security_policy()
    * create_vpc_endpoint()
    * delete_collection()
    * get_security_policy()
    * list_collections()
    * list_security_policies()
    * list_tags_for_resource()
    * tag_resource()
    * untag_resource()
    * update_security_policy()
    * Shield:
    * create_protection()
    * delete_protection()
    * describe_protection()
    * list_protections()
    * list_tags_for_resource()
    * tag_resource()
    * untag_resource()
    [#] New Methods:
    * Sagemaker:
    * create_cluster()
    * delete_cluster()
    * describe_cluster()
    * list_clusters()
    * list_cluster_nodes()
    [#] Miscellaneous:
    * CognitoIDP: admin_list_groups_by_user() now supports pagination
    * DynamoDB: transact_write_items() now validates the number of SET expressions
    * DynamoDB: update_item() now validates unused ExpressionAttributeValues
    * DynamoDB: query() now supports pagination when querying Global Indexes
    * EC2: describe_images() - feat: support filtering images by ExecutableUsers=['self']
    * EC2: describe_route_tables() now supports the filter `route.transit-gateway-id`
    * EC2: update_security_group_rule_descriptions_ingress() now supports updating multiple descriptions
    * EKS: create_nodegroup() now supports the `taints`-parameter
    * ELBv2: add_listener_certificates() now validates when adding too many certificates (> 25)
    * ELBv2: describe_target_health() now handles unknown/deregistered/terminated instances better
    * ResourceGroupsTaggingAPI: get_resources() now supports ResourceType=s3:bucket
    * RDS: Clusters now have the `creating`-status on create, and `available` immediately after - in line with AWS
    * SSM: get_parameter() now supports ARN's for the Name-parameter
  - Update to 5.0.9:
    [#] General:
    * Fixed an InfiniteRecursion-bug when accessing S3-buckets that was introduced in 5.0.8
    [#] New Methods:
    * SSO-Admin:
    * list_accounts_for_provisioned_permission_set()
    * list_instances()
    * list_permission_sets_provisioned_to_account()
    * provision_permission_set()
    * update_instance()
    [#] Miscellaneous:
    * DynamoDB: query() now handles pagination correctly on a GSI without a range key
    * IAM: create_policy() now returns tags correctly
    * S3: list_objects(): The default value for MaxKeys can now be configured, using an environment variable:
      MOTO_S3_DEFAULT_MAX_KEYS=1
  - Update to 5.0.8:
    [#] General:
    * Improved support for non-generic partitions (China, GovCloud, ISO-regions).
      All ARN's now contain the correct partition for resources created in those regions.
    [#] New Services:
    * NetworkManager:
    * create_global_network()
    * describe_global_networks()
    * create_core_network()
    * create_global_network()
    * delete_core_network()
    * list_core_networks()
    * get_core_network()
    * tag_resource()
    * untag_resource()
    [#] Miscellaneous:
    * ResilienceHub: list_app_assessments() can now return pre-configured results
    * ResourceGroupTagging: get_resources() now returns results when filtering on "lambda:function"
    * S3: delete_object_tagging()/put_object_tagging() now send an EventBridge notification
  - Update to 5.0.7:
    [#] New Services:
    * Sagemaker Metrics:
    * batch_put_metrics()
    [#] New Methods:
    * DynamoDB:
    * describe_import()
    * import_table()
    * EMR Serverless:
    * cancel_job_run()
    * get_job_run()
    * list_job_runs()
    * start_job_run()
    * IAM:
    * tag_instance_profile()
    * untag_instance_profile()
    * Panorama:
    * create_node_from_template_job()
    * describe_node_from_template_job()
    * list_nodes()
    * SSO-Admin:
    * describe_account_assignment_creation_status()
    * describe_account_assignment_deletion_status()
    * WAFv2:
    * create_ip_set()
    * delete_ip_set()
    * list_ip_sets()
    * get_ip_set()
    * update_ip_set()
    * put_logging_configuration()
    * get_logging_configuration()
    * list_logging_configurations()
    * delete_logging_configuration()
    [#] Miscellaneous:
    * Athena: start_query_execution() now supports the ExecutionParameters-parameter
    * DynamoDB: Tables now support DeleteProtection
    * DynamoDB: update_item() no longer throws an error when deleting an item from an empty set
    * DynamoDB: update_item() no throws an error when adding an empty set
    * EC2: delete_network_acl() now throws an error when the ACL still has associations attached to it
    * EC2: describe_route_tables() now supports the `route.nat-gateway-id` filter
    * EC2: revoke_security_group_ingress/_egress() now throw an error when an unknown Security Group is passed
  - Update to 5.0.6:
    [#] New Services:
    * Bedrock:
    * create_model_customization_job()
    * delete_custom_model()
    * delete_model_invocation_logging_configuration()
    * get_custom_model()
    * get_model_customization_job()
    * get_model_invocation_logging_configuration()
    * list_custom_models()
    * list_model_customization_jobs()
    * list_tags_for_resource()
    * put_model_invocation_logging_configuration()
    * stop_model_customization_job()
    * tag_resource()
    * untag_resource()
    * BedrockAgent:
    * create_agent()
    * create_knowledge_base()
    * delete_agent()
    * delete_knowledge_base()
    * get_agent()
    * get_knowledge_base()
    * list_agents()
    * list_knowledge_bases()
    * list_tags_for_resource()
    * tag_resource()
    * untag_resource()
    [#] New Methods:
    * EC2:
    * describe_addresses_attributes()
    * Rekognition:
    * detect_custom_labels()
    * Sagemaker:
    * update_trial_component()
    [#] Miscellaneous:
    * CloudFront: update_distribution() now supports the CacheBehaviours-parameter
    * DynamoDB: query() now acts correctly when paginating GSI tables without range keys
    * EC2: RouteTables can now have multiple propagations
    * EC2: describe_instances() now now filter by product-code and product-code.type
    * EC2: describe_security_group_rules() now validates the format of the incoming security group id's
    * ECS: update_service() now supports the loadBalancers-parameter
    * Logs: describe_metric_filter() now has the correct validation for metricNamespaces
    * IOT: search_index() now supports thingTypeName
    * SFN: send_task_failure()/send_task_success() now work correctly when using the Parser
    * SNS: subscribe() now throws an exception if the endpoint doesn't exist
    * SQS: Improved queue name validation
  - Update to 5.0.5:
    [#] General:
    * DynamoDB: scan() now returns items in a alphabetical order
    [#] New Methods:
    * SecretsManager:
    * batch_get_secret_value()
    [#] Miscellaneous:
    * ApplicationAutoscaling: put_scaling_policy() now generates CW alarms for DynamoDB and ECS
    * DynamoDB: Fix pagination for scan()/query()
    * DynamoDB: batch_write_item() now validates for duplicate DELETE or PUT requests
    * Events: put_events() now validates that input-values cannot be empty
    * IOT: create_topic_rule() now validates name-format
    * ResourceGroupsTaggingAPI: tag_resources() now supports RDS snapshots
    * SFN: Fixed a bug where the executionInput was double encoded
  - Update to 5.0.4:
    [#] General:
    * Lambda: The results of a Dockerless invocation can now be configured.
      See http://docs.getmoto.org/en/latest/docs/services/lambda.html
    * StepFunctions can now execute the provided StepFunctionMachine (opt-in), instead of returning static data (still the default).
      See http://docs.getmoto.org/en/latest/docs/services/stepfunctions.html
    [#] New Service:
    * ElastiCache:
    * list_tags_for_resource()
    * ResilienceHub:
    * create_app()
    * create_app_version_app_component()
    * create_app_version_resource()
    * create_resiliency_policy()
    * describe_app()
    * describe_resiliency_policy()
    * import_resources_to_draft_app_version()
    * list_app_assessments()
    * list_app_version_app_components()
    * list_app_version_resources()
    * list_app_versions()
    * list_apps()
    * list_resiliency_policies()
    * list_tags_for_resource()
    * publish_app_version()
    * tag_resource()
    * untag_resource()
    * Workspaces:
    * create_tags()
    * create_workspace_image()
    * create_workspaces()
    * deregister_workspace_directory()
    * describe_client_properties()
    * describe_tags()
    * describe_workspace_directories()
    * describe_workspace_image_permissions()
    * describe_workspace_images()
    * describe_workspaces()
    * modify_client_properties()
    * modify_selfservice_permissions()
    * modify_workspace_creation_properties()
    * register_workspace_directory()
    * update_workspace_image_permission()
    [#] Miscellaneous:
    * APIGateway: update_usage_plan() now supports some remove-operations
    * Autoscaling: describe_auto_scaling_groups() now returns a dynamic CreatedTime
    * CloudFormation: Outputs now support Conditions
    * CloudFormation: Outputs now return Descriptions
    * CognitoIDP: admin_update_user_attributes() and admin_delete_user_attributes now correctly update the UserLastModifiedDate
    * DynamoDB: query() no longer requires the LastEvaluatedKey to exist
    * EC2: describe_vpc_endpoint_services() now supports all services
    * Kinesis: list_streams() now returns StreamSummaries
    * Lambda: get_policy() now throws an error when no statements exist
    * ResourceGroupsTaggingAPI now supports DynamoDB tables
    * ResourceGroupsTaggingAPI now supports SSM documents
    * S3: EventBridge notifications are now supported for ObjectRestore:Post
    * S3: restore_object() now contains limited validation when supplying both Days- and Type-argument
    * S3: select_object_content() now supports Compressed requests and CSV responses
    * SecretsManager: list_secrets() now handles negative matches correctly
    * SNS: delete_endpoint() is now an idempotent operation, just like AWS
  - Fix rpmlint warning: python-bytecode-inconsistent-mtime
* Mon Mar 25 2024 Steve Kowalik <steven.kowalik@suse.com>
  - Update to 5.0.3:
    [#] General:
    * New configuration options for:
      + Passing URL's through the proxy
      + Configuring Docker-less services in ServerMode
    * Removed the `python-jose` and `sshpubkeys` dependencies in favor of
      `joserfc`.
    [#] Miscellaneous:
    * ApiGateway: update_usage_plan() now supports adding apiStages
    * Athena: get_query_execution() now returns exact OutputLocation file
    * Autoscaling: describe_auto_scaling_groups() now supports the
      filters-argument
    * CloudFront: create_distribution() now supports CustomHeaders
    * CloudFront: update_distribution() now handles updates to
      DistributionConfig correctly
    * CloudFormation - Now supports creation and deletion of
      AWS::EMR::Cluster
    * CloudFormation - Now supports creation and deletion of
      AWS::EMR::SecurityConfiguration
    * CloudFormation - Now supports creation and deletion of
      AWS::EFS::AccessPoint
    * CloudFormation - Now supports creation and deletion of
      AWS::EFS::FileSystem
    * CloudFormation - Now supports creation and deletion of
      AWS::EMR::InstanceGroupConfig
    * CloudFormation - Now supports deletion of AWS::Logs::LogGroup
    * CloudFormation: delete_stack() now handles resource dependencies better
    * CloudWatch: put_metric_data() now supports large (compressed) requests
    * CognitoIDP: admin_initiate_auth() and respond_to_auth_challenge()
      now support SMS_MFA
    * DynamoDB: transact_write_items() now raises ValidationException when
      putting and deleting the same item
    * EC2: authorize_security_group_egress/_ingress now support the
      TagSpecifications-argument
    * EC2: describe_security_group_rules() now supports Tag-filters
    * S3: EventBridge notifications are now supported for
      ObjectCreated:POST/COPY/MULTIPART_UPLOAD and ObjectDeleted
    * SNS: subscribe() now adds support the `$or`, `equals-ignore-case` and
      `suffix` features in a FilterPolicy
    * SQS: send_message() should respect DelaySeconds of 0
    * AWSLambda: The ImageConfig.EntryPoint of a function is now used when
      invoking it in a Docker container
    * CognitoIDP now allows public actions even if IAM auth is enabled
    * DynamoDB: create_table() now validates the number of KeySchema-items
    * EC2: modify_image_attributes() now supports all LaunchPermissions
    * ECS: register_task_definition() now has improved validation around
      `memory`-parameters
    * Glue: create_database() now supports the `tags`-parameter
    * IAM: assume_user()/create_user()/get_caller_identity() now return the
      correct partition for China (aws-cn) when called from a Chinese region
    * ResourceGroupsTagging: get_resources() now supports ELB resources
    * Route53: list_hosted_zones() now supports pagination
    * S3: put_bucket_notification_configuration() now supports
      EventBridge-notifications
    * SES now returns errors in the correct format
* Thu Feb 08 2024 Steve Kowalik <steven.kowalik@suse.com>
  - Update to 5.0.1:
    [#]# New Methods:
    * SecretsManager:
    * remove_regions_from_replication()
    * replicate_secret_to_regions()
    [#]# General:
    * All decorators have been replaced with a single decorator: `mock_aws`
    * The `mock_batch_simple` and `mock_lambda_simple` decorators can now be
      configured using the `config`-parameter:
    * It is now possible to configure methods/services which should reach out
      to AWS.
    * All requests now return a RequestId
    [#]# Miscellaneous:
    * AWSLambda: create_event_source_mapping() now supports Kinesis streams
      as targets
    * CloudFront: Removed error handling for InvalidOriginServer, as our
      validation was too strict
    * DynamoDB: batch_execute_statement() now supports for
      Update/Insert/Delete-statements
    * DynamoDB: query() now correctly handles calls where both Limit and
      ScanIndexForward are supplied
    * EC2: Now supports availability zones for eu-central-2 (Zurich)
    * S3: list_objects_v2() can now return more then 1000 results max (again)
    * S3: copy_object() now allows in-place copies when bucket versioning
      is enabled
    * SecretsManager: create_secrets() now supports the parameters
      AddReplicaRegions and ForceOverwriteReplicaSecret
    * SecretsManager: list_secrets() now supports the filters primary-region
      and owning-service
    * IAM: The AWS managed Policies are no longer loaded by default.
    * S3: list_objects() now returns a hashed ContinuationToken
* Thu Dec 28 2023 Ben Greiner <code@bnavigator.de>
  - Update to 4.2.12
    [#]# Miscellaneous:
    * AWSLambda: list_functions() now returns a default PackageType
      (ZIP) if not specified
    * CloudFormation: AWS::EC2::LaunchTemplate resources now support
      Fn::GetAtt operations
    * CognitoIDP: admin_initiate_auth() now correctly returns a
      Challenge when 2FA is enabled
    * DynamoDB: execute_statement() now supports INSERT/UPDATE/DELETE
      queries
    * EC2: describe_availability_zones() now supports the
      ZoneNames/ZoneIds-parameters
    * KMS: encrypt() now validates payloads that are too large
    * ResourceGroupTaggingAPI: get_resources() now supports SQS
      queues
    * Route53: list_hosted_zone()/list_hosted_zones_by_name() now
      return the CallerReference
    * S3: copy() now respects the ExtraArgs-parameter when using
      MultiPart uploads
    * S3: list_object_versions() now supports pagination
    * S3: put_object_tagging() now validates the number of tags
      provided
* Sat Dec 09 2023 Ben Greiner <code@bnavigator.de>
  - Update to 4.2.11
    [#]# New Methods:
    * Lambda:
    * DeleteFunctionEventInvokeConfig()
    * GetFunctionEventInvokeConfig()
    * ListFunctionEventInvokeConfigs()
    * PutFunctionEventInvokeConfig()
    * UpdateFunctionEventInvokeConfig()
    * Logs:
    * describe_export_tasks()
    [#]# Miscellaneous:
    * DynamoDB: put_item() now returns old item for
      ConditionalCheckFailed exceptions
    * DynamoDB: scan() now returns the correct ScannedCount when
      passing the Limit-parameter
    * DynamoDB: transact_write_items() now validates that Keys in
      Update-queries are not empty
    * IOT: create_thing()/describe_thing() now returns the thingId
    * Logs: create_export_task() now actually exports the data to S3
    * ResourceGroupsTaggingAPI: get_resources() now supports ACM
      certificates
  - Moto 4.2.10
    [#]# New Methods:
    * CognitoIdentity: list_identity_pools()
    [#]# Miscellaneous:
    * Autoscaling: describe_tags() now supports the key/value filters
    * CloudFormation: AWS::Logs::LogGroup now supports tags
    * CloudWatch: get_metric_data() no longer throws an error when
      supplying >10 queries
    * CognitoIdentity: get_credentials_for_identity() now returns
      Expiration as a number, fixing compatibility with the GoLang
      SDK
    * EFS: describe_access_points() now supports the
      FileSystemId-parameter
    * LakeFormation: list_permissions() now supports the
      DataLocation-parameter
    * LakeFormation: register_resource() now throws an exception when
      registering an existing resource
    * SQS: Ensure all responses are in JSON-format when required,
      fixing compatibility with the Ruby SDK
* Fri Nov 24 2023 Ben Greiner <code@bnavigator.de>
  - Update to 4.2.9
    [#]# General:
    * Fix compatibility with botocore 1.32.1
    [#]# Miscellaneous:
    * ECS: Tagging is now supported for Tasks
    * LakeFormation: deregister_resource() now throws the correct
      error for unknown resources
    * LakeFormation: list_permissions() now supports Parameters
    * RDS: create_db_instance() now validates the engine parameter
    * Transcribe: TranscriptionJobs now support the
      Subtitles-parameter
  - Moto 4.2.8
    [#]# General:
    * Support for Python 3.12
    * Support for a Simple Lambda backend, that will mock functions
      without invoking a Docker container. Use the decorator
      `mock_lambda_simple` for this feature.
    [#]# New Methods:
    [#]## IdentityStore:
    * describe_group()
    [#]## Signer:
    * list_tags_by_resource()
    * tag_resource()
    * untag_resource()
    [#]# Miscellaneous:
    * DynamoDB: create_table() now throws an error when supplying an
      unknown KeyType
    * DynamoDB: query() now throws an error when supplying a
      ExpressionAttributeValue that doesn't start with a ':'
    * EC2: describe_hosts() now returns the AllocationTime-attribute
    * ECS: register_task_definition() now throws an exception if the
      ContainerDefinition has missing keys
    * ECR: describe_images() now returns the supplied
      imageDigest-values, instead of random values
    * EFS: AccessPoints now have the correct identifier format
    * Lambda: Various methods now support the FunctionName in the
      format 'name:qualifier'
    * MQ: create_configuration() is now possible for engine-type
      'RABBITMQ'
    * RDS: create_db_cluster() now throws an error if the provided
      engine is not supported
    * RDS: create_db_instance() now throws an error if the provided
      engine does not match the cluster engine
    * RDS: delete_db_cluster() now throws an error if any instances
      are still active
    * SageMaker: list_model_packages() and
      list_model_package_groups() no longer throw an error on
      pagination
* Wed Nov 22 2023 Benjamin Greiner <code@bnavigator.de>
  - Fix python-multipart requirement
* Sun Nov 05 2023 Ben Greiner <code@bnavigator.de>
  - Update to 4.2.7
    [#]# New Services:
    [#]## Inspector2:
    * associate_member()
    * batch_get_account_status()
    * create_filter()
    * delete_filter()
    * describe_organization_configuration()
    * disable()
    * disable_delegated_admin_account()
    * disassociate_member()
    * enable()
    * enable_delegated_admin_account()
    * get_member()
    * list_delegated_admin_accounts()
    * list_filters()
    * list_findings()
    * list_members()
    * list_tags_for_resource()
    * tag_resource()
    * untag_resource()
    * update_organization_configuration()
    [#]# New Methods:
    [#]## ECR:
    * batch_get_repository_scanning_configuration()
    * put_registry_scanning_configuration()
    [#]#  Miscellaneous:
    * Batch: submit_job() now returns the jobArn-attribute
    * DynamoDB: execute_statement() has now support for nested
      WHERE-clauses with functions
    * DynamoDB: update_item() now returns item for
      ConditionalCheckFailed-exceptions
    * EC2: create_key_pair() and describe_key_pair(s)() now support
      tags
    * Route53: get_hosted_zone() now returns the CallerReference
    * S3: get_object/put_object() now accepts AccessPoint ARN's
    * S3Control: create_access_point() now returns the correct Alias
    * SES: list_identities() now supports the IdentityType-parameter
    * SNS: create_platform_application has improved error handling
  - Moto 4.2.6
    [#]# New Services:
    [#]## IVS:
    * batch_get_channel()
    * create_channel()
    * delete_channel()
    * get_channel()
    * list_channels()
    * update_channel()
    [#]# New Methods:
    [#]## LakeFormation:
    * add_lf_tags_to_resource()
    * get_resource_lf_tags()
    * remove_lf_tags_from_resource()
    * update_lf_tag()
    [#]## Sagemaker:
    * describe_model_package_group()
    * update_model_package()
    [#]# Miscellaneous:
    * Batch: submit_job() now behaves correctly when passing the
      arrayProperties-parameter
    * DynamoDB: Improved PartiQL parser, with support for different
      types (Decimals/Booleans) and queries with quoted table-names
    * EC2: TagSpecifications now throw an error if the ResourceType is
      not provided
    * EC2: run_instances()/describe_instances() now always return the
      same attributes (before, both operations were missing different
      fields)
    * EC2: associate_dhcp_options() now supports DhcpOptionsId=default
    * EC2: create_key_pair() now supports the KeyType-parameter
    * EC2: run_instances() now returns the Placement.HostId attribute
    * ELBv2: modify_target_group_attributes() now has additional
      validations
    * Events: put_events() now throws a warning when Detail field is
      not a dict
    * IOT: update_thing() now behaves correctly with empty attributes
    * S3: head_object() now raises a MethodNotAllowed for
      DeleteMarkers
  - Moto 4.2.5
    [#]# General:
    * Introducing: MotoProxy! An alternative to the MotoServer. See
      the docs: http://docs.getmoto.org/en/latest/docs/proxy_mode.html
    [#]# New Methods:
    [#]## Sagemaker:
    * list_model_package_groups()
    [#]# Miscellaneous:
    * CognitoIDP: update_user_pool() no longer overrides default
      settings
    * CognitoIDP: set_user_mfa_preference() now allows the settings to
      be cleared
    * EC2: Transit Gateway Peering Attachments are now supported
      across accounts
    * EC2: delete_fleets() now sets the correct status
    * ECS: The Task-statuses now automatically advance
    * Glue: get_databases/get_tables() now return the CatalogId
    * IAM: list_groups() now returns the CreateDate-attribute
    * Redshift: describe_clusters() now returns the
      TotalStorageCapacityInMegabytes
    * SES: Templates now support if/else constructs
  - Moto 4.2.4
    [#]# New Methods:
    [#]## OpenSearch:
    * list_domain_names()
    [#]# Miscellaneous:
    * DynamoDB: Fixed a bug where binary data could not be queried
      (introduced in 4.2.3)
    * EC2: VPC Peering Connections are now supported across accounts
    * ECS: register_task_definition() now validates the PidMode has
      the correct value
    * S3: put_bucket_notification_configuration() now supports SNS
      Topic targets
  - Moto 4.2.3
    [#]# New Services:
    [#]## RoboMaker:
    * create_robot_application()
    * delete_robot_application()
    * describe_robot_application()
    * list_robot_applications()
    [#]# New Methods:
    [#]## ElasticBeanstalk:
    * delete_application()
    [#]## Events:
    * create_partner_event_source()
    * delete_partner_event_source()
    * describe_event_source()
    * describe_partner_event_source()
    * put_partner_events()
    [#]# Miscellaneous:
    * Core: The mocked ACCESS_KEY has been changed from `foobar_key`
      to `FOOBARKEY`, to align with AWS guidelines
    * Core: set_initial_no_auth_action_count() now supports SSM
      actions
    * Core: Fixed a memory leak when comparing requests (introduced in
      4.1.13)
    * Athena: get_query_execution() now returns a StatementType
      dependent on the provided query
    * DynamoDB: query() now throws an exception when the
      KeyConditionExpression contains a literal value
    * EBS: put_snapshot_block() now supports random bytes
    * EC2: describe_transit_gateways() now supports filtering by tags
    * ELBv2: describe_target_groups() now throws an exception for
      invalid input parameters
    * ELBv2: describe_target_groups() now sorts the result before
      returning it
    * ELBv2: create_target_group() now has improved validation and
      default values
    * ELBv2: create_rule() now creates links between the TargetGroups
      and LoadBalancers
    * Events: put_events() now support HTTP targets
    * IAM policy validation now takes the provided Resource-argument
      into account when validating access to STS-resources
    * IAM: get_role() now returns the LastUsed-parameter, provided the
      role was assumed and used
    * KMS: sign/verify now uses the original message when signing, not
      the base64-version
    * Lambda: invoke() now loads any Layers provided in the
      create_function()
    * S3: put_bucket_logging() now supports bucket policies (as well
      as ACP's)
    * S3: Range requests are now more permissive (following AWS'
      behaviour)
    * SFN: list_executions() now returns the StopDate-attribute
  - Moto 4.2.2
    * See 4.2.1 - no functional changes.
  - Moto 4.2.1
    [#]# New Services:
    [#]## Sagemaker Runtime:
    * invoke_endpoint()
    [#]# New Methods:
    [#]## CognitoIDP:
    * describe_resource_server()
    * list_resource_servers()
    [#]## CognitoIDP:
    * create_cache_cluster()
    * delete_cache_cluster()
    * describe_cache_clusters()
    [#]## IdentityStore:
    * list_users()
    [#]## Logs:
    * describe_query_results()
    * get_query_results()
    * list_tags_for_resource()
    * tag_resource()
    * untag_resource()
    [#]## Sagemaker:
    * list_notebook_instances()
    [#]# Miscellaneous:
    * EC2: describe_transit_gateways() now returns the ARN
    * IAM policies now allow S3 accesspoint arns
    * KMS: sign() now supports RSASSA_PSS_SHA_384, RSASSA_PSS_SHA_512
      and RSASSA_PKCS1_* algorithms
    * Logs: Now supports two subscription filters
    * RDS: Clusters now support the ServerlessV2ScalingConfiguration
      parameter
    * ResourceGroupsTaggingAPI: tag_resource() now supports RDS
      resources
    * S3: CrossAccount access can now be disabled, using
      MOTO_S3_ALLOW_CROSSACCOUNT_ACCESS=false
    * SecretsManager: Allow creation/update of secrets without values
    * SES: set_identity_mail_from_domain() - the Identity can now also
      be an email
  - Moto 4.2.0
    [#]# General:
    * The Docker image is now based on Python 3.11 (instead of 3.7)
  - Moto 4.1.15
    [#]# New Services:
    [#]## APIGateway Management API:
    * delete_connection()
    * get_connection()
    * post_to_connection()
    [#]# New Methods:
    [#]## Autoscaling:
    * delete_warm_pool()
    * describe_warm_pool()
    * put_warm_pool()
    [#]## IdentityStore:
    * list_groups()
    [#]## IOTData:
    * list_named_shadows_for_thing()
    [#]## MQ:
    * list_tags()
    [#]## ServiceDiscovery:
    * update_private_dns_namespace()
    * update_public_dns_namespace()
    [#]# Miscellaneous:
    * ACM-PCA: create_certificate_authority() now supports the
      KeyStorageSecurityStandard-parameter
    * Batch: create_job_definition() now returns more default fields
      in the containerProperties field
    * CloudTrail: get_trail_status now works with MultiRegion trails
    * CognitoIDP: UserPools now return the
      AccountRecoverySetting-field by default
    * DynamoDB: query() now throws an exception when providing empty
      ProjectionExpressions/FilterExpressions
    * EC2: describe_vpc_endpoint_services() now returns user-defined
      ones
    * EC2: run_instances() now supports the Monitoring-attribute
    * IOT: group names can now contain special characters
    * IOTData now supports named shadows
    * KMS: create_key() now supports KeySpecs RSA_3072 and RSA_4096
    * KMS: create_key() now validates the provided KeySpec
    * Lambda: create_function() now fails when creating a function
      with a name that already exists
    * Lambda: put_function_concurrency() now errors on a quota that
      exceeds the value set by MOTO_LAMBDA_CONCURRENCY_QUOTA
    * Lambda: update_function_code() now supports the
      ImageUri-attribute
    * RDS: describe_db_cluster_snapshots() now returns the
      TagList-property
    * ResourceTaggingsAPI: Now supports Glue resources
    * S3: Authentication now allows specific resources in the IAM
      access policy
    * S3: select_object_content() now takes RecordDelimiter into
      account
    * Scheduler: create_scheduler() now errors on duplicate names
    * TimestreamWrite: create_table() now supports the
      Schema-attribute
  - Moto 4.1.14
    [#]# New Methods:
    [#]## SageMaker:
    * create_model_package()
    * create_model_package_group()
    * describe_model_package()
    * list_model_packages()
    [#]# Miscellaneous:
    * CloudFormation: describe_stack_instances() now returns the
      StackInstanceStatus-attribute
    * CloudFront: update_distribution() now supports the
      DefaultRootObject-parameter
    * CloudWatch: get_metric_data() now support (simple) Expressions
    * CognitoIDP: initiate_auth() and admin_initiate_auth() now throw
      a NotAuthorizedError for disabled users
    * EC2 VPC's: Add CloudFront, Ground Station and Lattice prefix
      lists
    * IOT: search_index() now returns the connectivity-attribute
    * Organizations: Introduce more trusted service principals
    * RDS: create_db_cluster() now supports the
      VpcSecurityGroupIds-parameter
    * S3: Optional support for CRC32C checksums
    * SNS: publish_batch() now sends the required
      `MessageDeduplicationId` for FIFO queues
    * SQS: send_message_batch() now only throws a
      `BatchRequestTooLong` if the sum of all messages exceed the
      limit
* Wed Jul 26 2023 Steve Kowalik <steven.kowalik@suse.com>
  - Update to 4.1.13, partial changes:
    * CloudFront: create_distribution() now correctly handles a single alias
    * CloudFront - CustomOrigins now have default timeouts if not supplied
    * IOTData: publish() can now handle non-Unicode bytes
    * RDS: Automated snapshots now have the appropriate SnapshotType
    * CloudFront: create_invalidation() now behaves correctly when supplying a
      single Path
    * CodeBuild: create_project() now accepts all ServiceRole ARN's, not just
      ARN's that end in /service-role/
    * DynamoDB now supports ProjectionExpressions on (nested) lists
    * EC2: create_flow_logs() now allows different LogDestinations for a
      single ResourceId
    * EC2: create_volume() now supports the Throughput-parameter
    * ECR: put_image() now correctly overwrites tags on images with multiple tags
    * Lambda: delete_layer_version() now also accepts function ARNs
    * RDS: Further improve Global Cluster behaviour
    * S3: GET/PUT requests now return Access-Control headers, if a CORS
      configuration has been set
    * S3: put_bucket_lifecycle_configuration() now supports multiple Transitions
    * SESv2: create_contact_list() now correctly reads Topics with special
      characters
    * SESv2: send_email() now correctly reads raw emails
    * Organizations: create_policy() now supports the Tags-parameter
    * RDS: creation times of all objects are now in UTC
    * Redshift: creation times of all objects are now in UTC
    * S3: Bucket names are now global, meaning they have to be unique across
      accounts
    * S3: select_object_content() now supports None-values
    * SecretsManager - update_secret() now supports the Description-parameter
    * SNS: Topics are no longer accessible across regions (only across accounts)
    * SQS: Requests and responses in JSON-format are now supported
    * Core: The `date`-header is now returned for all operations
    * EC2: create_route() now takes the `VpcEndpointId`-parameter into account
    * S3: aligned checksum calculation with how AWS behaves
    * S3: copy_object() now behaves correctly when copying objects in
      encrypted buckets
    * S3: put_object_legal_hold() now takes the VersionId-parameter into account
    * S3: put_object_retention() now takes the VersionId-parameter into account
    * SNS: Topics can now be accessed across accounts
    * Kinesis: Improve calculations on stream limits
    * EC2: Improve logic behind describe_image_attribute()
    * S3: Various improvements to the logic behind copy_object()
    * Scheduler: update_schedule() now supports the GroupName-parameter
    * SNS: MessageDeduplicationId is now forwarded to SQS queues
    * EC2: replace_route() now supports the NetworkInterfaceId-parameter
    * S3: copy_object() now adds a checksum to a copied object if requested
    * SES: Templates now allow a single curly brace, and no longer assume
      it's part of a variable
    * STS: assume_role() now stores the AccessKey in the requesting account
    * DynamoDB: update_item() now supports number-sets in the
      AttributeUpdates-parameter
    * DynamoDB: query() - The KeyConditionExpression now allows enclosing the
      sort key condition in brackets
    * EC2: assign_private_ip_addresses() now supports the
      PrivateIpAddresses-argument
    * ECR: put_image() now supports the imageManifestMediaType parameter
    * Logs: put_subscription_filter() now supports KinesisStream destinations
    * RDS: describe_db_clusters() now supports filtering by db-cluster-id and
      engine
    * SQS: Improvements in the deduplication-logic
    * RDS: describe_db_clusters() now accepts an ARN as identifier
    * SecretsManager now supports partial ARN's
    * Athena: Now automatically creates the default WorkGroup called `primary`
    * CognitoIDP: the ID-token now uses the key cognito:username
    * EC2: describe_security_group_rules() now provides the correct value
      for the IsEgress-parameter
    * IOT: delete_certificate() now supports the forceDelete-parameter
    * CognitoIDP: The idToken now contains the cognito:groups attribute
    * DynamoDB: scan() now respects the Projection-attribute of a GSI/LSI
    * KMS: encrypt(), decrypt(), re_encrypt() now accept aliases as arguments
    * KMS: list_aliases() now supports the KeyId-parameter
    * Lambda: FIFO Queues are now supported event sources
    * DynamoDB: create_table() now deals correctly with non-key attributes
      supplied as part of the KeySchema
    * CognitoIDP: admin_update_user_attributes() now checks for duplicate emails
    * ECS: create_cluster() now supports the parameters configuration,
      capacityProviders, defaultCapacityProviderStrategy
    * ECS: delete_cluster() now marks the cluster as INACTIVE, rather than
      removing it outright, in-line with how AWS behaves
    * ECS: run_task() no longer crashes when providing launchType=FARGATE
    * ECS now has improved tagging-support
    * Kinesis now supports the streamARN-parameter for all arguments
    * S3: Improved bucket policy enforcement
    * Batch: register_job_definition() now supports type="multinode"
    * EC2: describe_launch_template_versions() now supports $Latest and
      $Default versions
    * ECS: start_task() now supports the tags-parameter
    * S3: put_bucket_logging() now actually logs incoming requests, when enabled
    * SES: Fixed a bug where the service was not region-aware, i.e. all
      resources were shared across regions
    * SES: improved parser support for email templates
    * RDS: create_db_instance() now supports the PreferredMaintenanceWindow
      and PreferredBackupWindow-parameters
* Sat Jan 21 2023 Ben Greiner <code@bnavigator.de>
  - Update to 4.1.0
    * Dropped support for Py 3.6
    * Moto now uses setup.cfg to hold our packaging configuration,
      instead of setup.py, making Moto compatible with more recent
      Pip-versions
  - Moto 4.0.13
    [#]# New Methods:
    * EC2:
    - get_password_data()
    * Sagemaker:
    - update_pipeline()
    * SecretsManager:
    - cancel_rotate_secret()
    [#]# Miscellaneous:
    * CloudWatch: put_metric_data() now supports the
      StatisticValues-parameter
    * CognitoIDP: sign_out() now also invalidates the AccessToken
    * IAM: get_account_authorization_details() now returns the
      Tags-attribute
    * IOT: create_keys_and_certificate() now creates valid
      certificates, instead of random data
  - Moto 4.0.12
    [#]# General:
    * Fixes our Kinesis-compatibility with botocore>=1.29.31 -
      earlier Moto-versions will connect to AWS when using this
      botocore-version
    [#] New Methods:
    * Athena:
    - get_query_results()
    - list_query_executions()
    * RDS:
    - promote_read_replica()
    * Sagemaker:
    - create_pipeline()
    - delete_pipeline()
    - list_pipelines()
    [#]# Miscellaneous:
    * AWSLambda: publish_function() and update_function_code() now
      only increment the version if the source code has changed
    * CognitoIDP: Passwords are now validated using the
      PasswordPolicy (either supplied, or the default)
    * CloudFormation: create_stack() now propagates parameters
      StackPolicyBody and TimeoutInMinutes
    * CloudFormation: create_stack_instances() now returns the actual
      OperationId
    * CloudFormation: create_stack_set() now validates the provided
      name
    * CloudFormation: create_stack_set() now supports the
      DeploymentTargets-parameter
    * CloudFormation: create_stack_set() now actually creates the
      provided resources
    * CloudFormation: create_stack_set() now propagates parameters
      AdministrationRoleARN and ExecutionRoleName
    * CloudFormation: describe_stack_set() now returns the attributes
      Description, PermissionModel
    * CloudFormation: delete_stack_set() now validates that no
      instances are present before deleting the set
    * CloudWatch: get_metric_data() now supports the Label-parameter
    * EC2: allocate_address() now has improved behaviour for the
      Domain-parameter
    * EC2: create_volume() now supports the Iops-parameter
    * ECR: Improved ImageManifest support
    * KMS: describe_key() now returns an AccessDeniedException if the
      supplied policy does not allow this action
    * Route53: change_resource_record_sets() has additional
      validations
    * Route53: create_hosted_zone() now also creates a SOA-record by
      default
    * S3: put_object() now returns the ChecksumAlgorithm-attribute if
      supplied
    * SSM: describe_parameters() now has improved support for
      filtering by tags
  - Drop remove-mock.patch -- fixed upstream

Files

/usr/share/licenses/python313-moto-server
/usr/share/licenses/python313-moto-server/LICENSE


Generated by rpm2html 1.8.1

Fabrice Bellet, Thu Mar 5 22:51:13 2026