| Index | index by Group | index by Distribution | index by Vendor | index by creation date | index by Name | Mirrors | Help | Search |
| Name: python311-moto-all | Distribution: openSUSE:Factory:zSystems |
| Version: 5.1.13 | Vendor: openSUSE |
| Release: 1.1 | Build date: Mon Sep 22 05:50:46 2025 |
| Group: Unspecified | Build host: reproducible |
| Size: 10834 | Source RPM: python-moto-5.1.13-1.1.src.rpm |
| Packager: https://bugs.opensuse.org | |
| Url: https://github.com/getmoto/moto | |
| Summary: Library to mock out the boto library -- all extras | |
A library that allows your python tests to mock out the boto library. Meta package to install the extras moto[all], and moto[proxy], which have the same requirement definitions.
Apache-2.0
* 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
* Mon Nov 21 2022 Ben Greiner <code@bnavigator.de>
- Update to 4.0.10
[#]# New Methods:
* CloudFront:
* get_distribution_config()
* Organizations:
* delete_organizational_unit()
[#]# Miscellaneous:
* APIGateway: put_integration_response() now supports the
responseParameters-parameter
* Cloudformation now supports the creation/update/deletion of
AWS::SSM::Parameter
* Cloudformation: create_stack() now returns the attribute
EnableTerminationProtection
* CloudWatch: put_metric_data() now supports the
MetricData.Values parameter
* DynamoDB: transact_write_items() now supports the
ReturnValuesOnConditionCheckFailure-parameter
* RDS: describe_db_cluster now returns the
EarliestRestorableTime-attribute
* S3: get_object() and head_object() now correctly handle the
IfModifiedSince-parameter
* Sat Nov 19 2022 Ben Greiner <code@bnavigator.de>
- Update to 4.0.9
[#]# Miscellaneous:
* CloudTrail: describe_trails() now returns the correct
(MultiRegion) trails
* CloudWatch:tag_resource() now allows tagting new Alarms that
didn't have tags yet
* EC2: create_instances() now supports the
`IamInstanceProfile`-parameter
* EC2: describe_route_tables() now supports the
`route.vpc-peering-connection-id`-filter
* EC2: modify_vpc_attribute() now supports the
enableNetworkAddressUsageMetrics-attribute
* S3: delete_objects() now works against the JS SDK v3.197.0
* Fri Oct 28 2022 Ben Greiner <code@bnavigator.de>
- Update to 4.0.8
* General:
* Unpins the werkzeug-dependency - Moto now works with
werkzeug==2.2.2
* Fixes the Docker-build to run on M1 Macbooks.
* New Services:
* ServiceQuotas:
* get_service_quota()
* list_aws_default_service_quotas()
* New Methods:
* CloudFront: list_invalidations()
* RDS: modify_db_cluster()
* Miscellaneous:
* Lambda:delete_function() - fixed an issue where the wrong
Function would be deleted when providing a qualifier
* ECR:put_image() now removes any existing images that have the
provided tag
* IAM:detach_user/group/role_policy() now throws the correct
error message when the policy is not attached in the first
place
* S3:list_object_versions(): Fix delimiter to take prefix into
account
* S3: Now closes file handles as early as possible when
deleting files/multipart uploads
* Sagamaker:describe_training_job() now throws the correct
exception when trying to explain a non-existing job
* Thu Oct 13 2022 Ben Greiner <code@bnavigator.de>
- Update to 4.0.7
* New Services:
* Comprehend:
* create_entity_recognizer()
* delete_entity_recognizer()
* describe_entity_recognizer()
* list_entity_recognizers()
* list_tags_for_resource()
* stop_training_entity_recognizer()
* MeteringMarketplace:
* batch_meter_usage()
* New Methods:
* EC2:
* modify_vpc_endpoint()
* MediaConnect:
* grant_flow_entitlements()
* revoke_flow_entitlement()
* update_flow_entitlement()
* update_flow_output()
* Miscellaneous:
* DynamoDB:transact_write_items() - Now includes validation if
multipel operations are provided in the same item
* EC2:cancel_spot_fleet_request() - Fixed a bug where instances
were always terminated
* EC2:create_instances() - Now uses the private IP address as
as provided in the NetworkInterface
* EC2:describe_instance_types() - Now supports all filters
* ECS:run_task() - Now creates/attaches an ENI if appropriate
* S3: Fixed an issue where file handles were not closed on
large uploads
- Release 4.0.6
* General:
* Moto can now be seeded, which will make identifiers
deterministic. See
http://docs.getmoto.org/en/latest/docs/configuration/recorder/index.html
* The format for access-key and role ids has been changed, and
is now generated using the same algorithm that AWS uses
* Miscellaneous:
* AWSLambda:add_permission() now properly handles the
PrincipalOrgID-param
* DynamoDB:update_item() now validates duplicate
UpdateExpressions
* EC2 now exposes instance types in the correct availability
zones for us-west-1 (us-west-1a and us-west-1b)
* EC2 has various improvements around the handling of
RouteTableAssociations
* Glue:get_tables() now supports the Expression-parameter
* Organizations:create_organization() now uses a default value
for FeatureSet=ALL
* RDS:describe_db_subnet_groups() now returns the
DBSubnetGroupArn-attribute
* S3:upload_file() now supports the ExtraArgs:
ChecksumAlgorithm-parameter
* SSM:list_commands() now returns the
DeliveryTimedOutCount-attribute
- Release 4.0.5
* General:
* Moto now has a Recorder, to easily record and replay a given
set of requests. See
http://docs.getmoto.org/en/latest/docs/configuration/recorder/index.html
* Miscellaneous:
* CloudFormation now supports the creation/update/deletion of
AWS::EC2::LaunchTemplate
* Glue:start_job_run() now respects the
MaxConcurrentRuns-parameter
* S3:get_object() now performs rudimentary BucketPolicy
validation
* StateManager now supports `glue::job_run`, managing how long
it takes to for a Glue job to become 'SUCCEEDED'
- Release 4.0.3
* General:
* Compatible with openapi-spec-validator 0.5.x
* New Methods:
* Kinesis:
* update_stream_mode()
* WAFv2:
* associate_web_acl()
* delete_web_acl()
* disassociate_web_acl()
* get_web_acl()
* get_web_acl_for_resource()
* list_rule_groups()
* list_tags_for_resource()
* tag_resource()
* untag_resource()
* update_web_acl()
* Miscellaneous:
* DynamoDB:query() now has improved support for
KeyConditionExpression
* Kinesis:put_records() now validates the size/number of
records, following AWS' behaviour
- Release 4.0.2
* New Services:
* Amazon Managed Prometheus (AMP)
* create_rule_groups_namespace()
* create_workspace()
* delete_rule_groups_namespace()
* delete_workspace()
* describe_rule_groups_namespace()
* describe_workspace()
* list_rule_groups_namespaces()
* list_tags_for_resource()
* list_workspaces()
* put_rule_groups_namespace()
* tag_resource()
* untag_resource()
* update_workspace_alias()
* Miscellaneous:
* APIGateway:put_method() now supports the
requestParameters-parameter
* AutoScaling:create_auto_scaling_group() now supports the
MixedInstancesPolicy-parameter
* CloudWatchLogs:filter_log_events() now supports the
filterPattern-parameter
* DynamoDB:batch_put_item() now has validatior for empty keys
* Kinesis:create_stream() now supports stream-mode=OnDemand
* S3:head_object() now returns the PartsCount-header
* SNS:subscribe() now has increased support for the
FilterPolicy-argument
* SSM now returns the
/aws/service/ami-amazon-linux-latest-parameters as provided
by AWS
- Release 4.0.1
* New Services:
* Personalize:
* create_schema()
* delete_schema()
* describe_schema()
* list_schemas()
* Signer:
* cancel_signing_profile()
* get_signing_profile()
* list_signing_platforms()
* put_signing_profile()
* New Methods:
* AWS Lambda:
* create_function_url_config()
* delete_function_url_config()
* get_function_url_config()
* update_function_url_config()
* Glue:
* update_database()
* EC2:
* describe_volumes_modifications()
* modify_volume()
* S3:
* delete_bucket_ownership_rule()
* get_bucket_ownership_rule()
* put_bucket_ownership_rule()
* Miscellaneous:
* CloudFormation: Fixed a bug where deletion of
AWS::Route53::RecordSet would result in an error
* DynamoDB: Fixed a bug where a TableARN would always return
region=us-east-1
* EC2:create_launch_template() now supports the
TagSpecifications-parameter
* EC2:describe_instance_types() now supports the
Filters-parameter
* EC2:run_instances() now supports the HibernationOptions-param
- Release 4.0.0
* General:
* Introduces MultiAccount support (see
http://docs.getmoto.org/en/latest/docs/multi_account.html)
* Removes deprecated decorators mock_dynamodb2 and mock_rds2
* The API for the TreadedMotoServer is now considered stable
* Dependencies:
* The responses-module now has a minimum version of 0.13.0
- Release 3.1.18
* General:
* Flask has now also been pinned to 2.1.x, as that is the
latest release that works with werkzeug 2.1.x
* New Methods:
* EC2:
* create_fleet()
* describe_fleets()
* describe_fleet_instances()
* delete_fleets()
* SES:
* describe_configuration_set()
* send_bulk_templated_email()
* Miscellaneous:
* EC2: describe_key_pairs() now returns the KeyPairId-attribute
* EC2: import_key_pair() now returns the KeyPairId-attribute
* EC2: describe_launch_templates() now behaves correctly when
called with an unknown template name
* RDS: create_db_instance() now returns the
AvailabilityZone-attribute
* RDS: describe_db_instances() now returns the
AvailabilityZone-attribute
- Release 3.1.17
* General:
* Werkzeug has been pinned to 2.1.x, as the latest 2.2.x
releases cause some issues
* New Services:
* CodeBuild:
* batch_get_builds()
* delete_project()
* list_builds()
* list_builds_for_project()
* start_build()
* stop_build()
* Cost Explorer:
* create_cost_category_definition()
* delete_cost_category_definition()
* describe_cost_category_definition()
* update_cost_category_definition()
* EMR Serverless:
* create_application()
* delete_application()
* get_application()
* list_applications()
* start_application()
* start_job_run()
* stop_application()
* update_application()
* New Methods:
* Autoscaling:
* delete_scheduled_action()
* describe_scheduled_actions()
* put_scheduled_update_group_action()
* CloudFront:
* create_distribution_with_tags()
* create_invalidation()
* list_tags_for_resource()
* Glue:
* create_schema()
* delete_schema()
* get_schema_by_definition()
* get_schema_version()
* put_schema_version_metadata()
* register_schema_version()
* Greengrass:
* associate_role_to_group()
* create_deployment()
* disassociate_role_from_group()
* get_associated_role()
* get_deployment_status()
* list_deployments()
* reset_deployments()
* IAM:
* update_assume_role_policy()
* IOT:
* list_targets_for_policy()
* KMS:
* replicate_key()
* MediaConnect:
* add_flow_sources()
* update_flow_source()
* Miscellaneous:
* CloudFormation now supports the creation of
AWS::AutoScaling::ScheduledAction
* CognitoIDP now supports pagination for list_groups() and
list_users_in_group()
* EC2:describe_instances() now supports the filter 'key-name'
* IAM:create_access_key() now limits the number of keys per
user to 2
* Mon Jun 27 2022 Ben Greiner <code@bnavigator.de>
- Update to 3.1.16
* New Methods:
* Autoscaling:
* enable_metrics_collection()
* Miscellaneous:
* Fixes a dependency-error that popped up in 3.1.15.
- Release 3.1.15
* Known bugs:
* Some services will throw an error: Missing module
'openapi_spec_validator'.
* New Methods:
* Databrew:
* create_profile_job()
* create_recipe_job()
* delete_job()
* describe_job()
* list_jobs()
* update_profile_job()
* update_recipe_job()
* Glue:
* create_registry()
* Greengrass:
* create_group()
* create_group_version()
* delete_group()
* get_group()
* get_group_version()
* list_groups()
* list_group_versions()
* update_group()
* KMS:
* sign()
* verify()
* Route53Resolver:
* associate_resolver_endpoint_ip_address()
* disassociate_resolver_endpoint_ip_address()
- Release 3.1.14
* New Methods:
* Greengrass:
* create_function_definition()
* create_resource_definition()
* create_function_definition_version()
* create_resource_definition_version()
* create_subscription_definition()
* create_subscription_definition_version()
* delete_function_definition()
* delete_resource_definition()
* delete_subscription_definition()
* get_function_definition()
* get_function_definition_version()
* get_resource_definition()
* get_resource_definition_version()
* get_subscription_definition()
* get_subscription_definition_version()
* list_function_definitions()
* list_function_definition_versions()
* list_resource_definitions()
* list_resource_definition_versions()
* list_subscription_definitions()
* list_subscription_definition_versions()
* update_function_definition()
* update_resource_definition()
* update_subscription_definition()
* EKS:
* list_tags_for_resources()
* tag_resource()
* untag_resource()
* Route53:
* associate_vpc_with_hosted_zone()
* disassociate_vpc_from_hosted_zone()
* update_health_check()
* update_hosted_zone_comment()
* Miscellaneous:
* APIGateway:put_integration() now supports the
requestParameters-parameter
* EC2:create_route() now validates whether a route already
exists
- Add remove-mock.patch -- https://trello.com/c/S6eADbii
* Wed Jun 15 2022 Yogalakshmi Arunachalam <yarunachalam@suse.com>
- Update to 3.1.13
New Methods:
* EC2:
* create_default_vpc()
* Greengrass:
* create_device_definition()
* create_device_definition_version()
* delete_core_definition()
* delete_device_definition()
* get_core_definition()
* get_core_definition_version()
* get_device_definition()
* get_device_definition_version()
* list_core_definitions()
* list_core_definition_versions()
* list_device_definitions()
* list_device_definition_versions()
* update_core_definition()
* update_device_definition()
* SSO Admin:
* create_permission_set()
* delete_permission_set()
* describe_permission_set()
* list_permission_sets()
* update_permission_set()
* Route53:
* get_dnssec()
* get_health_check()
* Miscellaneous:
* StateManager now supports `s3::keyrestore`, managing how long it takes to restore S3 objects from Glacier.
- Update to 3.1.12
New Services:
* Greengrass:
* create_core_definition()
* create_core_definition_version()
Internal Changes:
* The data structure containing all of Moto's state has been updated to support multiple accounts
- Update to 3.1.11
New Methods:
* GuardDuty:
* create_filter()
* delete_detector()
* delete_filter()
* enable_organization_admin_account()
* get_detector()
* get_filter()
* list_organization_admin_accounts()
* update_detector()
* update_filter()
* KMS:
* create_grant()
* list_grants()
* list_retirable_grants()
* retire_grant()
* revoke_grant()
Miscellaneous:
* EC2:describe_network_acls() now supports the `entry.egress`-filter
* EC2:run_instances() now supports validation for the KeyPair-parameter. This is disabled by default - set MOTO_ENABLE_KEYPAIR_VALIDATION to true to enable this.
* EC2:run_instances() now supports validation for the ImageId-parameter. This is disabled by default - set MOTO_ENABLE_AMI_VALIDATION to true to enable this.
- Update to 3.1.10
New Methods:
* APIGateway:
* import_rest_api()
* put_rest_api()
* Glue:
* get_tags()
* tag_resource()
* untag_resource()
Miscellaneous:
* APIGateway:put_integration() now supports the passthroughBehavior-parameter
* APIGatewayV2:create_authorizer() now supports the AuthorizerPayloadFormatVersion-parameter
* AWSLamba:publish_layer_version() now supports the CompatibleArchitectures-parameter
* DAX:create_cluster() now supports the ClusterEndpointEncryptionType-parameter
* EC2:describe_route_tables() now supports the filter `route.gateway-id`
* EC2:run_instances() now validates whether the Placement-parameter has a valid availabilty zone
* ECS:list_services() now supports the launchType-parameter
* ELB:describe_instance_health() now returns the OutOfService-status when appropriate
* Organizations:list_accounts_for_parent() now supports pagination
* Organizations:list_organizational_units_for_parent() now supports pagination
- Update to 3.1.9
New Services:
* EBS:
* complete_snapshot()
* get_snapshot_block()
* list_changed_blocks()
* list_snapshot_blocks()
* put_snapshot_block()
* start_snapshot()
New Methods:
* CloudFront:
* update_distribution()
* Datasets:
* create_dataset()
* delete_dataset()
* describe_dataset()
* list_datasets()
* update_dataset()
* Glue:
* list_crawlers()
* Rekognition:
* get_face_search()
* start_face_seach()
Miscellaneous:
* EC2:describe_vpc_endpoints() now supports the `vpc-endpoint-type`-filter
* RDS:create_db_cluster() now supports the EnableCloudwatchLogsExports-parameter
* RDS:create_db_instance() now supports the EnableCloudwatchLogsExports-parameter
* SSM now integrates with SecretsManager
* Tue May 10 2022 Ben Greiner <code@bnavigator.de>
- Update to 3.1.8
General:
* Moto now supports a way to delay state transitions.
See http://docs.getmoto.org/en/latest/docs/configuration/state_transition/index.html
* Moto now supports `@mock_batch_simple`, a way to mock the
Batch-service without invoking Docker. New Methods:
* CognitoIDP:
- global_sign_out()
- update_group()
- update_user_attributes()
* DataBrew:
- delete_recipe_version()
- list_recipe_versions()
- publish_recipe()
* IAM:
- create_service_linked_role()
- delete_service_linked_role()
- get_service_linked_role_deletion_status()
* Sagemaker:
- update_endpoint_weights_and_capacities()
Miscellaneous:
* EC2: request_spot_fleet() now supports the parameters
LaunchTemplateConfigs, InstanceInterruptionBehavior
* EC2: request_spot_instances() now supports the
InstanceInterruptionBehavior-parameter
* EC2: The status of a SpotInstances request now automatically
transitions to 'Active/Fulfilled'
* EC2: Tags specified into create_launch_template() are now
passed through when calling `run_instances()` with this
template
* RDS: describe_db_instances() now supports the filter
`db-cluster-id`
* TimestreamWrite: create_table() now supports the
MagneticStoreWriteProps-parameter
* TimestreamWrite: update_table() now supports the
MagneticStoreWriteProps-parameter
- Release 3.1.7
New Methods:
* SES:
- get_identity_verification_attributes()
Miscellaneous:
* CognitoIDP: UserPools now come with default values for the
following attributes: Policies, AdminCreateUserConfig,
EmailConfiguration, VerificationMessageTemplate
* ELBv2: Improved the response-format of the `create_rule()` and
`set_rule_priorities()`-methods
* MediaConnect: Now has the correct format for flow/source ARN's
* Organizations: Fixes the behaviour for close_account()
* Sagemaker: Now supports tagging of Models, EndpointConfigs,
ProcessingJobs
- The tests require mock which is not pulled in implicitly anymore
* Mon Apr 25 2022 Ben Greiner <code@bnavigator.de>
- Update to 3.1.6
New Methods:
* Organizations:
* close_account()
Miscellaneous:
* Autoscaling: the BlockDeviceMappings in LaunchConfigurations
and LaunchTemplates are now respected when launching EC2
instances
* CloudWatch: get_metric_data() now supports the
Dimensions-parameter
* ELB: set_rule_priorities() now correctly returns the
Rules-attribute
* ELBv2: create_target_group() now supports the Tags-parameter
* Events: delete_rule() now verifies whether any targets are
still attached before deletion
- Release 3.1.5
New Methods:
* ApplicationAutoscaling:
* delete_scheduled_action()
* describe_scheduled_actions()
* put_scheduled_action()
* Databrew:
* create_ruleset()
* delete_ruleset()
* list_rulesets()
* update_recipe()
* update_ruleset()
* EC2:
* describe_network_interface_attribute()
Miscellaneous:
* Glue:get_partitions() now supports the Expression-parameter
* RDS:delete_db_cluster() now supports the
FinalDBSnapshotIdentifier-parameter
* S3 actions can now send notifications for (a subset of)
supported events and targets
- Release 3.1.4
General:
* Compatible with botocore 1.24.30. The IOTData service in
older versions of Moto is incompatible with botocore >=
1.24.30, due to the fact that AWS changed their URL
endpoints.
New Services:
* QuickSight:
* create_data_set()
* create_group()
* create_group_membership()
* create_ingestion()
* delete_group()
* delete_user()
* describe_group()
* describe_group_membership()
* describe_user()
* list_groups()
* list_group_memberships()
* list_users()
* register_user()
* update_group()
* describe_group()
* describe_group()
* describe_group()
* Rekognition:
* get_text_detection()
* start_text_detection()
New Methods:
* EC2:
* delete_launch_template()
* ECS:
* create_capacity_provider()
* delete_capacity_provider()
* describe_capacity_providers()
Miscellaneous:
* Autoscaling:put_scaling_policy() now supports the parameters
MetricAggregationType, MinAdjustmentMagnitude,
EstimatedInstanceWarmup, PredictiveScalingConfiguration
* Autoscaling:create_auto_scaling_group() now supports launch
template versions '$Latest' and '$Default'
* RDS: Improved tagging support for Clusters and
ClusterSnapshots
* Sun Mar 27 2022 Ben Greiner <code@bnavigator.de>
- Update to 3.1.3
New Methods:
* TimestreamWrite:
* list_tags_for_resource()
* tag_resource()
* untag_resource()
Miscellaneous:
* EC2:run_instances(): Fixed a bug when supplying the
NetworkInterfaces.Groups-parameter
* Logs:delete_metric_filter(): Fixed a bug where the
logGroupName-validator was too strict
- Release 3.1.2
Known Bugs:
* EC2:run_instances(): This call will fail when supplying the
NetworkInterfaces.Groups-parameter
New Methods:
* ELB
* attach_load_balancer_to_subnets()
* detach_load_balancer_from_subnets()
* describe_load_balancer_policies()
* delete_load_balancer_policy()
* enable_availability_zones_for_load_balancer()
* disable_availability_zones_for_load_balancer()
* ELBv2:
* add_listener_certificates()
* describe_listener_certificates()
* remove_listener_certificates()
* Glue:
* get_job()
* get_job_run()
* start_job_run()
Miscellaneous:
* AWSLambda:add_permission() now supports the
Qualifier-parameter
* ELB:create_load_balancer() now retrieves the subnets based on
the AvailabilityZones-parameter
* ELB:create_load_balancer() now creates a default
SecurityGroup, if none is provided
* ELBv2:create_load_balancer() now supports the
SubnetMappings-parameter
* ELBv2:create_listener() now supports the AlpnPolicy-parameter
* ELBv2: Improved tagging support
* ELBv2: Exposes the TargetGroupStickinessConfig-attribute when
describing a Action of type ForwardConfig
- Release 3.1.1
New Methods:
* AWSLambda:
* create_alias()
* delete_alias()
* delete_layer_version()
* get_alias()
* get_layer_version()
* update_alias()
* EFS:
* create_access_point()
* delete_access_point()
* describe_access_points()
* describe_lifecycle_configuration()
* describe_mount_target_security_groups()
* list_tags_for_resource()
* modify_mount_target_security_groups()
* put_lifecycle_configuration()
* tag_resource()
* untag_resource()
Miscellaneous:
* AWSLambda: get_function now returns the parameters Tags,
LastUpdateStatus, TracingConfig
* ELBV2:describe_tags() now supports ListenerRules.
- Release 3.1.0
General:
* Users of `mock_dynamodb2` should start using `mock_dynamodb`
instead. The `mock_dynamodb`-decorator has been repurposed to
mock the latest version of DynamoDB, making the behaviour
equivalent to `mock_dynamodb2`. The
`mock_dynamodb2`-decorator is now considered deprecated, and
will be removed in the next major version.
* Similarly, users of the `mock_rds2` should start using
`mock_rds` instead. The `mock_rds`-decorator has been
repurposed to mock the latest version of RDS, making the
behaviour equivalent to `mock_rds2`. The
`mock_rds2`-decorator has also been deprecated, and will be
removed in the next major version.
Internal Changes:
* We've upgraded our linting process to use Black 22.1.0, and
have enabled more pylint rules. Please continue to run `make
lint` prior to creating a PR, to ensure any changes are
formatted correctly.
- Release 3.0.7
General:
* Compatible with the latest `responses`-release (0.19.0)
New Services:
* DataBrew:
* create_recipe()
* get_recipe()
* list_recipes()
* Pinpoint:
* create_app()
* delete_app()
* delete_event_stream()
* get_app()
* get_application_settings()
* get_apps()
* get_event_stream()
* list_tags_for_resource()
* put_event_stream()
* tag_resource()
* untag_resource()
* update_application_settings()
- Release 3.0.6
General:
* Feature to start the MotoServer from within Python (in beta)
Miscellaneous:
* CloudFormation now supports creation of type
AWS::EC2::VPCEndpoint
* ECS: run_task() - The task count now defaults to 1
- Release 3.0.5
New Services:
* Textract:
* get_document_text_detection()
* start_document_text_detection()
New Methods:
* APIGateway:
* delete_gateway_responses()
* get_gateway_response()
* get_gateway_responses()
* put_gateway_response()
* CloudTrail:
* add_tags()
* get_event_selectors()
* get_insight_selectors()
* list_tags()
* put_event_selectors()
* put_insight_selectors()
* remove_tags()
* update_trail()
* CognitoIDP:
* admin_set_user_mfa_preference()
* S3Control:
* create_access_point()
* delete_access_point()
* delete_access_point_policy()
* get_access_point()
* get_access_point_policy()
* get_access_point_policy_status()
Miscellaneous:
* APIGateway: put_integration() now supports the
timeoutInMillis-parameter
* AWSLambda: Made the docker image repository selectable via
the `MOTO_DOCKER_LAMBDA_IMAGE` environment variable.
* Batch: register_job_definition() now supports the parameters
`platformCapabilities`, `propagateTags` and `retryStrategy`
* IAM: list_entities_for_policy() now returns the
RoleId/GroupId/UserId-attributes
* S3Control is now available in ServerMode.
* Tue Feb 22 2022 Dirk Müller <dmueller@suse.com>
- update to 3.0.4:
New Services:
* Redshift-Data:
* cancel_statement()
* describe_statement()
* execute_statement()
* get_statement_result()
* Servicediscovery/Cloudmap:
* create_http_namespace()
* create_private_dns_namespace()
* create_public_dns_namespace()
* create_service()
* delete_namespace()
* delete_service()
* get_namespace()
* get_operation()
* get_service()
* list_namespaces()
* list_operations()
* list_services()
* list_tags_for_resource()
* tag_resource()
* untag_resource()
* update_service()
New Methods:
* Athena:
* create_data_catalog()
* get_data_catalog()
* list_data_catalogs()
* SES:
* get_identity_mail_from_domain_attributes()
* set_identity_mail_from_domain()
Miscellaneous:
* SSM: Global infrastructure parameters supplied by AWS are now available
* in Moto
* Tue Feb 22 2022 Dirk Müller <dmueller@suse.com>
- update to 3.0.3:
* New Services:
* APIGatewayV2
* create_api()
* create_authorizer()
* create_integration()
* create_integration_response()
* create_model()
* create_route()
* create_route_response()
* create_vpc_link()
* delete_api()
* delete_authorizer()
* delete_cors_configuration()
* delete_integration()
* delete_integration_response()
* delete_model()
* delete_route()
* delete_route_request_parameter()
* delete_route_response()
* delete_vpc_link()
* get_api()
* get_apis()
* get_authorizer()
* get_integration()
* get_integration_response()
* get_integration_responses()
* get_integrations()
* get_model()
* get_route()
* get_route_response()
* get_routes()
* get_tags()
* get_vpc_link()
* get_vpc_links()
* reimport_api()
* tag_resource()
* untag_resource()
* update_api()
* update_authorizer()
* update_integration()
* update_integration_response()
* update_model()
* update_route()
* update_vpc_link()
* New Methods:
* APIGateway:
* create_vpc_link()
* delete_vpc_link()
* get_vpc_link()
* get_vpc_links()
EC2:
* create_vpc_endpoint_service_configuration()
* delete_vpc_endpoint_service_configurations()
* describe_vpc_endpoint_service_configurations()
* describe_vpc_endpoint_service_permissions()
* modify_vpc_endpoint_service_configuration()
* modify_vpc_endpoint_service_permissions()
* Route53:
* create_reusable_delegation_set()
* delete_reusable_delegation_set()
* get_hosted_zone_count()
* get_reusable_delegation_set()
* list_reusable_delegation_sets()
* Miscellaneous:
* CognitoIDP:
* initiate_auth()/admin_initiate_auth(): improved behaviour of the AuthFlow-parameter
* EC2:
* describe_instance_types() now returns the GpuInfo-attribute
* Redshift:
* describe_cluster_snapshots() now supports the SnapshotType-parameter
* Mon Jan 31 2022 Steve Kowalik <steven.kowalik@suse.com>
- Update to 3.0.2:
* Miscellaneous:
* Improved configuration options for Docker-instances started by
AWSLambda and Batch
* New Methods:
* EC2:
* create_snapshots()
* Logs:
* create_export_task()
* Organizations:
* remove_account_from_organization()
* Miscellaneous:
* DynamoDB: transact_write_items() now throws a
MultipleTransactionsException when appropriate
* DynamoDB: Now throws the appropriate InvalidConditionExpression when
a ConditionExpression contains reserved keywords
* Organizations: delete_organization() now validates whether all
accounts are deleted
* SecretsManager: The attributes CreatedDate and LastChangedDate are
now returned for secrets
* SNS: Simplistic email validation is now in place before sending emails
* Removed:
- All deprecated decorators have been removed
* Changes:
- The behaviour of the class-decorator has been reworked - the state
is now reset before every test-method.
- ECS ARN's are now using the long format.
* Rebranded:
- The new mock_s3control-decorator has been introduced. The existing
S3control methods (get/put/delete_public_access_block) are no longer
available via mock_s3, only via mock_s3control.
* General:
- Python 3.5 support has been removed
- Python 3.10 is now supported
- Add graphql-core to {Build,}Requires
- Remove importlib-metadata from {Build,}Requires
* Thu Jan 06 2022 Ben Greiner <code@bnavigator.de>
- Update to 2.3.0
* It is now possible to use a mocked region. This will throw an
error by default, but can be enabled using the
`MOTO_ALLOW_NONEXISTENT_REGION`-environment variable.
* Performance improvements - only the backend for the requested
region is now loaded into memory, instead of (naively) loading
a backend for every region.
/usr/share/licenses/python311-moto-all /usr/share/licenses/python311-moto-all/LICENSE
Generated by rpm2html 1.8.1
Fabrice Bellet, Wed Oct 22 23:06:31 2025