Skip to content

Latest commit

 

History

History
673 lines (486 loc) · 37.6 KB

CHANGELOG.md

File metadata and controls

673 lines (486 loc) · 37.6 KB

Changelog

All notable changes to this project will be documented in this file.

This project follows Keep a Changelog format for changes and adheres to Semantic Versioning.

[Unreleased]

1.21.1 - 2021-10-07

Regression

  • metrics: typing regression on log_metrics callable (#744)

Documentation

  • add new public layer ARNs (#746)

Maintenance

  • ignore constants in test cov (#745)
  • github-actions: add support for publishing fallback
  • deps: bump boto3 from 1.18.54 to 1.18.56 (#742)
  • deps-dev: bump mkdocs-material from 7.3.1 to 7.3.2 (#741)

1.21.0 - 2021-10-05

Bug Fixes

  • data-classes: use correct asdict funciton (#666)
  • feature-flags: rules should evaluate with an AND op (#724)
  • idempotency: sorting keys before hashing (#722)
  • idempotency: sorting keys before hashing
  • logger: push extra keys to the end (#722)
  • mypy: a few return types, type signatures, and untyped areas (#718)

Code Refactoring

  • data-classes: clean up internal logic for APIGatewayAuthorizerResponse (#643)

Documentation

  • Terraform reference for SAR Lambda Layer (#716)
  • event-handler: document catch-all routes (#705)
  • idempotency: fix misleading idempotent examples (#661)
  • jmespath: clarify envelope terminology
  • parser: fix incorrect import in root_validator example (#735)

Features

  • expose jmespath powertools functions (#736)
  • boto3 sessions in batch, parameters & idempotency (#717)
  • feature-flags: add get_raw_configuration property in store; expose store (#720)
  • feature-flags: Bring your own logger for debug (#709)
  • feature-flags: improve "IN/NOT_IN"; new rule actions (#710)
  • feature-flags: get_raw_configuration property in Store (#720)
  • feature_flags: Added inequality conditions (#721)
  • idempotency: makes customers unit testing easier (#719)
  • validator: include missing data elements from a validation error (#686)

Maintenance

  • add python 3.9 support
  • deps: bump boto3 from 1.18.51 to 1.18.54 (#733)
  • deps: bump boto3 from 1.18.32 to 1.18.38 (#671)
  • deps: bump boto3 from 1.18.38 to 1.18.41 (#677)
  • deps: bump boto3 from 1.18.49 to 1.18.51 (#713)
  • deps: bump boto3 from 1.18.41 to 1.18.49 (#703)
  • deps: bump codecov/codecov-action from 2.0.2 to 2.1.0 (#675)
  • deps-dev: bump coverage from 5.5 to 6.0 (#732)
  • deps-dev: bump mkdocs-material from 7.2.8 to 7.3.0 (#695)
  • deps-dev: bump mkdocs-material from 7.2.6 to 7.2.8 (#682)
  • deps-dev: bump flake8-bugbear from 21.4.3 to 21.9.1 (#676)
  • deps-dev: bump flake8-bugbear from 21.9.1 to 21.9.2 (#712)
  • deps-dev: bump radon from 4.5.2 to 5.1.0 (#673)
  • deps-dev: bump mkdocs-material from 7.3.0 to 7.3.1 (#731)
  • deps-dev: bump xenon from 0.7.3 to 0.8.0 (#669)

Bug Fixes

  • event-handler: fix issue with strip_prefixes and root level resolvers (#646)

Maintenance

  • deps: bump boto3 from 1.18.26 to 1.18.32 (#663)
  • deps-dev: bump mkdocs-material from 7.2.4 to 7.2.6 (#665)
  • deps-dev: bump pytest from 6.2.4 to 6.2.5 (#662)
  • deps-dev: bump mike from 0.6.0 to 1.0.1 (#453)
  • license: add third party license to pyproject.toml (#641)

1.20.2 - 2021-09-02

Bug Fixes

  • event-handler: fix issue with strip_prefixes and root level resolvers (#646)

Maintenance

  • deps: bump boto3 from 1.18.26 to 1.18.32 (#663)
  • deps-dev: bump mkdocs-material from 7.2.4 to 7.2.6 (#665)
  • deps-dev: bump pytest from 6.2.4 to 6.2.5 (#662)
  • deps-dev: bump mike from 0.6.0 to 1.0.1 (#453)
  • license: add third party license to pyproject.toml (#641)

1.20.1 - 2021-08-22

Bug Fixes

  • idempotency: sorting keys before hashing (#639)

Maintenance

  • markdown linter fixes (#636)
  • setup codespaces (#637)
  • license: add third party license (#635)

1.20.0 - 2021-08-21

Bug Fixes

  • api-gateway: HTTP API strip stage name from request path (#622)

Code Refactoring

  • event-handler: match to match_results; 3.10 new keyword (#616)

Documentation

  • data-classes: make authorizer concise; use enum (#630)
  • feature-flags: correct link and json examples (#605)
  • data-class: fix invalid syntax in new AppSync Authorizer
  • api-gateway: add new API mapping support

Features

  • data-classes: authorizer for API Gateway HTTP and REST API (#620)
  • data-classes: new data_as_bytes property in KinesisStreamRecordPayload (#628)
  • data-classes: AppSync Lambda authorizer event (#610)
  • event-handler: prefixes to strip for custom domain mapping paths (#579)
  • general: support for Python 3.9 (#626)
  • idempotency: support for any synchronous function (#625)

Maintenance

  • actions: include new labels
  • api-docs: enable allow_reuse to fix the docs (#612)
  • deps: bump boto3 from 1.18.25 to 1.18.26 (#627)
  • deps: bump boto3 from 1.18.24 to 1.18.25 (#623)
  • deps: bump boto3 from 1.18.22 to 1.18.24 (#619)
  • deps: bump boto3 from 1.18.17 to 1.18.21 (#608)
  • deps: bump boto3 from 1.18.21 to 1.18.22 (#614)
  • deps-dev: bump flake8-comprehensions from 3.5.0 to 3.6.0 (#609)
  • deps-dev: bump flake8-comprehensions from 3.6.0 to 3.6.1 (#615)
  • deps-dev: bump mkdocs-material from 7.2.3 to 7.2.4 (#607)
  • docs: correct markdown based on markdown lint (#603)
  • shared: fix cyclic import & refactor data extraction fn (#613)

1.19.0 - 2021-08-11

Bug Fixes

  • deps: bump poetry to latest (#592)
  • feature-flags: bug handling multiple conditions (#599)
  • parser: API Gateway WebSocket validation under check_message_id; plus some housekeeping (#553)
  • feature-toggles: correct cdk example (#601)

Code Refactoring

  • feature-flags: add debug statements for all feature evaluations (#590)
  • feature-flags: optimize UX and maintenance (#563)

Documentation

  • event-handler: new custom serializer option
  • feature-flags: create concrete documentation (#594)
  • feature-flags: correct docs and typing (#588)
  • parameters: auto-transforming values based on suffix (#573)
  • readme: add code coverage badge (#577)
  • tracer: update wording that it auto-disables on non-Lambda env
  • feature-flags: fix SAM infra, convert CDK to Python
  • feature-flags: fix sample feature name in evaluate method
  • feature-flags: add guidance when to use vs env vars vs parameters

Features

  • api-gateway: add support for custom serializer (#568)
  • data-classes: decode json_body if based64 encoded (#560)
  • feature-flags: Add not_in action and rename contains to in (#589)
  • params: expose params max_age, raise_on_transform_error to high level functions (#567)
  • tracer: auto-disable tracer for non-Lambda environments to ease testing (#598)

Maintenance

  • deps: bump boto3 from 1.18.1 to 1.18.15 (#591)
  • deps: bump codecov/codecov-action from 2.0.1 to 2.0.2 (#558)
  • deps: bump boto3 from 1.18.15 to 1.18.17 (#597)
  • deps-dev: bump mkdocs-material from 7.2.2 to 7.2.3 (#596)
  • deps-dev: bump mkdocs-material from 7.2.1 to 7.2.2 (#582)
  • deps-dev: bump pdoc3 from 0.9.2 to 0.10.0 (#584)
  • deps-dev: bump isort from 5.9.2 to 5.9.3 (#574)
  • deps-dev: bump mkdocs-material from 7.2.0 to 7.2.1 (#566)
  • deps-dev: bump mkdocs-material from 7.1.11 to 7.2.0 (#551)
  • deps-dev: bump flake8-black from 0.2.1 to 0.2.3 (#541)

1.18.1 - 2021-07-23

Bug Fixes

  • api-gateway: route regression for non-word and unsafe URI chars (#556)

1.18.0 - 2021-07-20

Bug Fixes

  • api-gateway: non-greedy route pattern regex which incorrectly mapped certain route params to function params (#533)
  • api-gateway: incorrect plain text mimetype constant #506
  • data-classes: include milliseconds in scalar types to correctly align with AppSync scalars (#504)
  • mypy: addresses lack of optional types (#521)
  • parser: make ApiGateway version, authorizer fields optional (#532)
  • tracer: mypy generic to preserve decorated method signature (#529)

Code Refactoring

  • feature-toggles: code coverage and housekeeping (#530)

Documentation

  • api-gateway: new HTTP service error exceptions (#546)
  • logger: new get_correlation_id method (#545)

Features

  • api-gateway: add debug mode (#507)
  • api-gateway: add common HTTP service errors (#506)
  • event-handler: Support AppSyncResolverEvent subclassing (#526)
  • feat-toggle: New simple feature toggles rule engine (WIP) (#494)
  • logger: add get_correlation_id method (#516)

Maintenance

  • mypy: add mypy support to makefile (#508)
  • deps: bump codecov/codecov-action from 1 to 2.0.1 (#539)
  • deps: bump boto3 from 1.18.0 to 1.18.1 (#528)
  • deps: bump boto3 from 1.17.110 to 1.18.0 (#527)
  • deps: bump boto3 from 1.17.102 to 1.17.110 (#523)
  • deps-dev: bump mkdocs-material from 7.1.10 to 7.1.11 (#542)
  • deps-dev: bump mkdocs-material from 7.1.9 to 7.1.10 (#522)
  • deps-dev: bump isort from 5.9.1 to 5.9.2 (#514)
  • event-handler: adjusts API Gateway/ALB service errors exception docstrings to not confuse AppSync customers

1.17.1 - 2021-07-02

Bug Fixes

  • Validator: Handle built-in custom formats like date-time when type is string (#498)

Documentation

  • Layers: Add Layers example for Serverless framework & CDK (#500)
  • Misc.: Enable dark mode switch (#471)
  • Tracer: Additional scenario when to disable auto-capture for responses larger than 64K (#499)

Maintenance

  • deps: bump boto3 from 1.17.101 to 1.17.102 (#493)
  • deps: bump boto3 from 1.17.91 to 1.17.101 (#490)
  • deps: bump email-validator from 1.1.2 to 1.1.3 (#478)
  • deps: bump boto3 from 1.17.89 to 1.17.91 (#473)
  • deps-dev: bump flake8-eradicate from 1.0.0 to 1.1.0 (#492)
  • deps-dev: bump isort from 5.8.0 to 5.9.1 (#487)
  • deps-dev: bump mkdocs-material from 7.1.7 to 7.1.9 (#491)

1.17.0 - 2021-06-08

Added

  • Documentation: Include new public roadmap (#452)
  • Documentation: Remove old todo in idempotency docs
  • Data classes: New AttributeValueType to get type and value from data in DynamoDBStreamEvent (#462)
  • Data classes: New decorator event_source to instantiate data_classes (#442)
  • Logger: New clear_state parameter to clear previously added custom keys upon invocation (#467)
  • Parser: Support for API Gateway HTTP API #434 (#441)

Maintenance

  • deps: bump xenon from 0.7.1 to 0.7.3 (#446)
  • assited changelog pre-generation, auto-label PR (#443)
  • enable dependabot for dep upgrades (#444)
  • enable mergify (#450)
  • deps: bump mkdocs-material from 7.1.5 to 7.1.6 (#451)
  • deps: bump boto3 from 1.17.78 to 1.17.84 (#449)
  • update mergify to require approval on dependabot (#456)
  • deps: bump actions/setup-python from 1 to 2.2.2 (#445)
  • deps: bump boto3 from 1.17.87 to 1.17.88 (#463)
  • deps: bump boto3 from 1.17.88 to 1.17.89 (#466)
  • deps: bump boto3 from 1.17.84 to 1.17.85 (#455)
  • deps: bump boto3 from 1.17.85 to 1.17.86 (#458)
  • deps: bump boto3 from 1.17.86 to 1.17.87 (#459)
  • deps-dev: bump mkdocs-material from 7.1.6 to 7.1.7 (#464)
  • deps-dev: bump pytest-cov from 2.12.0 to 2.12.1 (#454)
  • mergify: disable check for matrix jobs
  • mergify: use job name to match GH Actions

1.16.1 - 2021-05-23

Fixed

  • Parser: Upgrade Pydantic to 1.8.2 due to CVE-2021-29510

1.16.0 - 2021-05-17

Features

  • data-classes(API Gateway, ALB): New method to decode base64 encoded body (#425)
  • data-classes(CodePipeline): Support for CodePipeline job event and methods to handle artifacts more easily (#416)

1.15.1 - 2021-05-13

Fixed

  • Logger: Fix a regression with the %s operator

1.15.0 - 2021-05-06

Added

  • Event handlers: New API Gateway and ALB utility to reduce routing boilerplate and more
  • Documentation: Logger enhancements such as bring your own formatter, handler, UTC support, and testing for Python 3.6
  • Parser: Support for API Gateway REST Proxy event and envelope
  • Logger: Support for bringing custom formatter, custom handler, custom JSON serializer and deserializer, UTC support, expose LambdaPowertoolsFormatter
  • Metrics: Support for persisting default dimensions that should always be added

Fixed

  • Documentation: Fix highlights, Parser types
  • Validator: Fix event type annotations for validate standalone function
  • Parser: Improve and fix types
  • Internal: Remove X-Ray SDK version pinning as serialization regression has been fixed in 2.8.0
  • Internal: Latest documentation correctly includes a copy of API docs reference

1.14.0 - 2021-04-09

Added

  • Event handlers: New core utility to easily handle incoming requests tightly integrated with Data Classes; AppSync being the first as we gauge from the community what additional ones would be helpful
  • Documentation: Enabled versioning to access docs on a per release basis or staging docs (develop branch)
  • Documentation: Links now open in a new tab and improved snippet line highlights
  • Documentation(validation): JSON Schema snippets and more complete examples
  • Documentation(idempotency): Table with expected configuration values for hash key and TTL attribute name when using the default behaviour
  • Documentation(logger): New example on how to set logging record timestamps in UTC
  • Parser(S3): Support for the new S3 Object Lambda Event model (S3ObjectLambdaEvent)
  • Parameters: Support for DynamoDB Local via endpoint_url parameter, including docs
  • Internal: Include make pr in pre-commit hooks when contributing to shorten feedback loop on pre-commit specific linting

Fixed

  • Parser: S3Model now supports keys with 0 length
  • Tracer: Lock X-Ray SDK to 2.6.0 as there's been a regression upstream in 2.7.0 on serializing & capturing exceptions
  • Data Classes(API Gateway): Add missing property operationName within request context
  • Misc.: Numerous typing fixes to better to support MyPy across all utilities
  • Internal: Downgraded poetry to 1.1.4 as there's been a regression with importlib-metadata in 1.1.5 not yet fixed

1.13.0 - 2021-03-23

Added

  • Data Classes: New S3 Object Lambda event

Fixed

  • Docs: Lambda Layer SAM template reference example

1.12.0 - 2021-03-17

Added

  • Parameters: New force_fetch param to always fetch the latest and bypass cache, if available
  • Data Classes: New AppSync Lambda Resolver event covering both Direct Lambda Resolver and Amplify GraphQL Transformer Resolver @function
  • Data Classes: New AppSync scalar utilities to easily compose Lambda Resolvers with date utils, uuid, etc.
  • Logger: Support for Correlation ID both in inject_lambda_context decorator and set_correlation_id method
  • Logger: Include new exception_name key to help customers easily enumerate exceptions across all functions

Fixed

  • Tracer: Type hint on return instance that made PyCharm no longer recognize autocompletion
  • Idempotency: Error handling for missing idempotency key and save_in_progress errors

1.11.0 - 2021-03-05

Fixed

  • Tracer: Lazy loads X-Ray SDK to increase perf by 75% for those not instantiating Tracer
  • Metrics: Optimize validation and serialization to increase perf by nearly 50% for large operations (<1ms)

Added

  • Dataclass: Add new Amazon Connect contact flow event
  • Idempotency: New Idempotency utility
  • Docs: Add example on how to integrate Batch utility with Sentry.io
  • Internal: Added performance SLA tests for high level imports and Metrics validation/serialization

1.10.5 - 2021-02-17

No changes. Bumped version to trigger new pipeline build for layer publishing.

1.10.4 - 2021-02-17

Fixed

  • Docs: Fix anchor tags to be lower case
  • Docs: Correct the docs location for the labeller

1.10.3 - 2021-02-04

Added

  • Docs: Migrated from Gatsby to MKdocs documentation system
  • Docs: Included Getting started and Advanced sections in Core utilities, including additional examples

Fixed

  • Tracer: Disabled batching segments as X-Ray SDK does not flush traces upon reaching limits
  • Parser: Model type is now compliant with mypy

1.10.2 - 2021-02-04

Fixed

  • Utilities: Correctly handle and list multiple exceptions in SQS batch processing utility.
  • *Docs:: Fix typos on AppConfig docstring import, and SnsModel typo in parser.
  • Utilities: typing_extensions package is now only installed in Python < 3.8

1.10.1 - 2021-01-19

Fixed

  • Utilities: Added SnsSqsEnvelope in parser to dynamically adjust model mismatch when customers use SNS + SQS instead of SNS + Lambda, since we've discovered three payload keys are slightly different.

1.10.0 - 2021-01-18

Added

  • Utilities: Added support for AppConfig in Parameters utility
  • Logger: Added support for extra parameter to add additional root fields when logging messages
  • Logger: Added support to Pytest Live Log feat. via feature toggle POWERTOOLS_LOG_DEDUPLICATION_DISABLED
  • Tracer: Added support to disable auto-capturing response and exception as metadata
  • Utilities: Added support to handle custom string/integer formats in JSON Schema in Validator utility
  • Install: Added new Lambda Layer with all extra dependencies installed, available in Serverless Application Repository (SAR)

Fixed

  • Docs: Added missing SNS parser model
  • Docs: Added new environment variables for toggling features in Logger and Tracer: POWERTOOLS_LOG_DEDUPLICATION_DISABLED, POWERTOOLS_TRACER_CAPTURE_RESPONSE, POWERTOOLS_TRACER_CAPTURE_ERROR
  • Docs: Fixed incorrect import for Cognito data classes in Event Sources utility

1.9.1 - 2020-12-21

Fixed

  • Logger: Bugfix to prevent parent loggers with the same name being configured more than once

Added

  • Docs: Add clarification to Tracer docs for how capture_method decorator can cause function responses to be read and serialized.
  • Utilities: Added equality to ease testing Event source data classes
  • Package: Added py.typed for initial work needed for PEP 561 compliance

1.9.0 - 2020-12-04

Added

  • Utilities: Added Kinesis, S3, CloudWatch Logs, Application Load Balancer, and SES support in Parser
  • Docs: Sidebar menu are now always expanded

Fixed

  • Docs: Broken link to GitHub to homepage

1.8.0 - 2020-11-20

Added

  • Utilities: Added support for new EventBridge Replay field in Parser and Event source data classes
  • Utilities: Added SNS support in Parser
  • Utilities: Added API Gateway HTTP API data class support for new IAM and Lambda authorizer in Event source data classes
  • Docs: Add new FAQ section for Logger on how to enable debug logging for boto3
  • Docs: Add explicit minimal set of permissions required to use Layers provided by Serverless Application Repository (SAR)

Fixed

  • Docs: Fix typo in Dataclasses example for SES when fetching common email headers

1.7.0 - 2020-10-26

Added

  • Utilities: Add new Parser utility to provide parsing and deep data validation using Pydantic Models
  • Utilities: Add case insensitive header lookup, and Cognito custom auth triggers to Event source data classes

Fixed

  • Logger: keeps Lambda root logger handler, and add log filter instead to prevent child log records duplication
  • Docs: Improve wording on adding log keys conditionally

1.6.1 - 2020-09-23

Fixed

  • Utilities: Fix issue with boolean values in DynamoDB stream event data class.

1.6.0 - 2020-09-22

Added

  • Metrics: Support adding multiple metric values to a single metric name
  • Utilities: Add new Validator utility to validate inbound events and responses using JSON Schema
  • Utilities: Add new Event source data classes utility to easily describe event schema of popular event sources
  • Docs: Add new Testing your code section to both Logger and Metrics page, and content width is now wider
  • Tracer: Support for automatically disable Tracer when running a Chalice app

Fixed

  • Docs: Improve wording on log sampling feature in Logger, and removed duplicate content on main page
  • Utilities: Remove DeleteMessageBatch API call when there are no messages to delete

1.5.0 - 2020-09-04

Added

  • Logger: Add xray_trace_id to log output to improve integration with CloudWatch Service Lens
  • Logger: Allow reordering of logged output
  • Utilities: Add new SQS batch processing utility to handle partial failures in processing message batches
  • Utilities: Add typing utility providing static type for lambda context object
  • Utilities: Add transform=auto in parameters utility to deserialize parameter values based on the key name

Fixed

  • Logger: The value of json_default formatter is no longer written to logs

1.4.0 - 2020-08-25

Added

  • All: Official Lambda Layer via Serverless Application Repository
  • Tracer: capture_method and capture_lambda_handler now support capture_response=False parameter to prevent Tracer to capture response as metadata to allow customers running Tracer with sensitive workloads

Fixed

  • Metrics: Cold start metric is now completely separate from application metrics dimensions, making it easier and cheaper to visualize.
    • This is a breaking change if you were graphing/alerting on both application metrics with the same name to compensate this previous malfunctioning
    • Marked as bugfix as this is the intended behaviour since the beginning, as you shouldn't have the same application metric with different dimensions
  • Utilities: SSMProvider within Parameters utility now have decrypt and recursive parameters correctly defined to support autocompletion

Added

  • Tracer: capture_lambda_handler and capture_method decorators now support capture_response parameter to not include function's response as part of tracing metadata

1.3.1 - 2020-08-22

Fixed

  • Tracer: capture_method decorator did not properly handle nested context managers

1.3.0 - 2020-08-21

Added

  • Utilities: Add new parameters utility to retrieve a single or multiple parameters from SSM Parameter Store, Secrets Manager, DynamoDB, or your very own

1.2.0 - 2020-08-20

Added

  • Tracer: capture_method decorator now supports generator functions (including context managers)

1.1.3 - 2020-08-18

Fixed

  • Logger: Logs emitted twice, structured and unstructured, due to Lambda configuring the root handler

1.1.2 - 2020-08-16

Fixed

  • Docs: Clarify confusion on Tracer reuse and auto_patch=False statement
  • Logger: Autocomplete for log statements in PyCharm

1.1.1 - 2020-08-14

Fixed

  • Logger: Regression on Logger level not accepting int i.e. Logger(level=logging.INFO)

1.1.0 - 2020-08-14

Added

  • Logger: Support for logger inheritance with child parameter

Fixed

  • Logger: Log level is now case insensitive via params and env var

1.0.2 - 2020-07-16

Fixed

  • Tracer: Correct AWS X-Ray SDK dependency to support 2.5.0 and higher

1.0.1 - 2020-07-06

Fixed

  • Logger: Fix a bug with inject_lambda_context causing existing Logger keys to be overridden if structure_logs was called before

1.0.0 - 2020-06-18

Added

  • Metrics: add_metadata method to add any metric metadata you'd like to ease finding metric related data via CloudWatch Logs
  • Set status as General Availability

0.11.0 - 2020-06-08

Added

  • Imports can now be made from top level of module, e.g.: from aws_lambda_powertools import Logger, Metrics, Tracer

Fixed

  • Metrics: Fix a bug with Metrics causing an exception to be thrown when logging metrics if dimensions were not explicitly added.

Changed

  • Metrics: No longer throws exception by default in case no metrics are emitted when using the log_metrics decorator.

0.10.0 - 2020-06-08

Added

  • Metrics: capture_cold_start_metric parameter added to log_metrics decorator
  • Metrics: Optional namespace and service parameters added to Metrics constructor to more closely resemble other core utils

Changed

  • Metrics: Default dimension is now created based on service parameter or POWERTOOLS_SERVICE_NAME env var

Deprecated

  • Metrics: add_namespace method deprecated in favor of using namespace parameter to Metrics constructor or POWERTOOLS_METRICS_NAMESPACE env var

0.9.5 - 2020-06-02

Fixed

  • Metrics: Coerce non-string dimension values to string
  • Logger: Correct cold_start, function_memory_size values from string to bool and int respectively

0.9.4 - 2020-05-29

Fixed

  • Metrics: Fix issue where metrics were not correctly flushed, and cleared on every invocation

0.9.3 - 2020-05-16

Fixed

  • Tracer: Fix Runtime Error for nested sync due to incorrect loop usage

0.9.2 - 2020-05-14

Fixed

  • Tracer: Import aiohttp lazily so it's not a hard dependency

0.9.0 - 2020-05-12

Added

  • Tracer: Support for async functions in Tracer via capture_method decorator
  • Tracer: Support for aiohttp via aiohttp_trace_config trace config
  • Tracer: Support for patching specific modules via patch_modules param
  • Tracer: Document escape hatch mechanisms via tracer.provider

0.8.1 - 2020-05-1

Fixed

  • Metrics: Fix metric unit casting logic if one passes plain string (value or key)
  • Metrics:: Fix MetricUnit enum values for
    • BytesPerSecond
    • KilobytesPerSecond
    • MegabytesPerSecond
    • GigabytesPerSecond
    • TerabytesPerSecond
    • BitsPerSecond
    • KilobitsPerSecond
    • MegabitsPerSecond
    • GigabitsPerSecond
    • TerabitsPerSecond
    • CountPerSecond

0.8.0 - 2020-04-24

Added

  • Logger: Introduced Logger class for structured logging as a replacement for logger_setup
  • Logger: Introduced Logger.inject_lambda_context decorator as a replacement for logger_inject_lambda_context

Removed

  • Logger: Raise DeprecationWarning exception for both logger_setup, logger_inject_lambda_context

0.7.0 - 2020-04-20

Added

  • Middleware factory: Introduced Middleware Factory to build your own middleware via lambda_handler_decorator

Fixed

  • Metrics: Fixed metrics dimensions not being included correctly in EMF

0.6.3 - 2020-04-09

Fixed

  • Logger: Fix log_metrics decorator logic not calling the decorated function, and exception handling

0.6.1 - 2020-04-08

Added

  • Metrics: Introduces Metrics middleware to utilise CloudWatch Embedded Metric Format

Deprecated

  • Metrics: Added deprecation warning for log_metrics

0.5.0 - 2020-02-20

Added

0.1.0 - 2019-11-15

Added

  • Public beta release