Change Log:
LocalStack release 0.12.19
1. New Features
- add initial support for KMS asymmetric keys
- add initial support for KMS grant operations
- add support for and/or/condition CFN intrinsic functions
- add support for states:::events:putEvents to publish events from StepFunction
- add wildcard support for
EXTRA_CORS_ALLOWED_ORIGINS
configuration
2. Enhancements
- move attribute defaults from template_deployer to service models
- cache single instance of request context to enable mutability
- refactor Lambda API delete_function logic for better extensibility
- pass ENABLE_CONFIG_UPDATES environment variable to Docker container from CLI
- support case-sensitive response headers, add ETag to CORS exposed headers for S3 JS SDK compatibility
- add pagination to get_lambda_log_events(..) util function to fix Lambda tests
- log emails sent via SES send_raw_email into local log file
- add ability to pass invocation handler to test HTTP server for API GW integration tests
- add missing event attributes and increase timeout in Java Lambda tests
- rename docker->docker_utils to avoid import/aliasing issues
- minor refactoring of inter-service message forwarding for better extensibility
- add simple util classes ObjectIdHashComparator and ArbitraryAccessObj
- add helper function to mock a request context with a particular region
- refactor and remove fix_resource_props_for_sdk_deployment(..) in CFN deployer
- move delete patches in template deployer to CFN service models
- refactor error handling and add MOCK_UNIMPLEMENTED config to gracefully handle unimplemented APIs
- add ability to pass --workdir to launched containers in Docker client
- allow Lambda plugins to return invocation results directly, create plugin to handle LAMBDA_FORWARD_URL
- increase ElasticSearch cluster startup timeout
- skip forwarding Lambda invocation result if on_successful_invocation is None
- add missing edge routing logic for AWS SDK v2
- add support for s3:ObjectCreated:Copy event in the presence of X-Amz-Copy-Source headers
- add Docker client methods to inspect networks
- wait until port is closed on DynamoDB shutdown/restart
- pass CORS configuration options and Thundra Node.js/Python agent config from CLI to the container
- add util function to restart StepFunctions service process
- minor: check for empty files in download_and_extract(..) util function
- implement PluginDisabled exception to handle disabled plugins
- refactor DDBStreams/ES/Firehose APIs to use RegionBackend classes
3. Bug Fixes
- fix potential race condition in Docker container start/wait logic
- fix CFN SecretsManager::Secret to properly return secret ARN as Ref
- fix CFN resource type lookup
- fix deploying Lambdas with colliding names due to common prefixes
- fix issue with single quotes in payload for Node.js Lambda in local execution mode
- fix deployment of DynamoDB table with SSE disabled in Terraform definition
- fix selection of sub-elements in SQS listener XML responses
- fix Lambda SNS event source attribute as
aws:sns
instead oflocalstack:sns
- minor fix to avoid running multiple edge proxies on the same port