Skip to content

Changelog

v1.3.0 - "Dynahanced"

14/07/2026
  • Full refactored DynamoDB single-table modeling around public entity ids, internal storage addresses, CanonicalEntity, and AggregateEntity

  • Added declarative DynamoDB access patterns through SingleTableConfig, unique(), index(), CompositeUnique, and CompositeIndex, including nested field paths and paginated index queries

  • Added optimistic locking, strongly consistent read controls, and contextual DynamoDB transactions with nested propagation and atomic maintenance of entity, unique constraint, and index items

  • Enhanced ModelMapper with recursive partial updates for embedded Pydantic models, destination validation with an opt-out compatibility mode, and the reusable map_or_self() method

  • Reduced cost per Atlas API by migrating application environment variables storage from AWS Secrets Manager to encrypted JSON documents in AWS Systems Manager Parameter Store

  • Improved the local debug server to derive the application's SSM parameter from APP_NAME, load deployed environment variables, and apply .atlas/.env.local as an override layer of environment variables

  • Improved local debug startup by using the active Python interpreter, preparing Lambda layers more reliably, and reporting server startup time

  • Added support for alphanumeric CNPJ validation and normalization in BrazilianDocumentStr, while preserving numeric CPF and CNPJ support

  • Added stable Lambda function naming, descriptions, and tags while respecting AWS' 64-character function name limit

  • Fixed API Gateway authorizer caching by varying policies by request path, and fixed environment propagation to the authorizer in local debugging

  • Fixed missing dynamodb:BatchGetItem permissions for REST endpoint and WebSocket action Lambda functions

v1.2.0 - "Tycoonslayer"

09/02/2026
  • Added full WebSocket lifecycle and functions support (WSGateway, @action_controller, and more)

  • Added full DynamoDB persistence support through the app-edge dynamodels package (SingleTableEntity, SingleTableService)

  • Refactored @controller_method to not send, through client response, any details concerning raised exceptions (since this could expose sensitive data); exceptions' details should now only be visible in CloudWatch logs

  • ModelMapper now supports mapping for non-provided fields

v1.1.0 - "Clocktracker"

24/12/2025
  • Added a new Endpoint-level configuration option: cron

  • Added a new API-level configuration option: auth_cache_ttl

  • Added to HttpError an optional error_code field for custom error identification codes

  • Fixed an API GW Lambda Authorizer issue where changes to the policy cache TTL were not applied unless the API was manually redeployed via the API Gateway menu in the AWS Console

  • Fixed an local debug server issue where request threading was not done properly, causing infinite loading

  • Refactored @controller_method to log any exception raised so it gets properly printed in CloudWatch logs

  • Refactored statement dictionaries' names in Messages by using snake_case instead of camelCase

  • Removed DependencyError due to its redundancy with IntegrationError

v1.0.0 - "Worldcarrier"

16/11/2025
  • First release