From cb1bf7653d517d81ff06d1fb3ccaa00db11bf8f6 Mon Sep 17 00:00:00 2001 From: heitorlessa Date: Fri, 14 Aug 2020 18:25:18 +0200 Subject: [PATCH 1/8] chore: trigger docs on new release --- .github/workflows/python_docs.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/workflows/python_docs.yml b/.github/workflows/python_docs.yml index 86a2dd3c208..febee05519d 100644 --- a/.github/workflows/python_docs.yml +++ b/.github/workflows/python_docs.yml @@ -9,6 +9,8 @@ on: - master # Disabled until docs support versioning per branch/release # - develop + release: + types: [published] # update Docs upon new release jobs: docs: From dd674f79dab78f9cc9ceed43068968e33ff85560 Mon Sep 17 00:00:00 2001 From: Heitor Lessa Date: Fri, 14 Aug 2020 18:27:01 +0200 Subject: [PATCH 2/8] chore: trigger docs on new release (#102) (#103) --- .github/workflows/python_docs.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/workflows/python_docs.yml b/.github/workflows/python_docs.yml index 86a2dd3c208..febee05519d 100644 --- a/.github/workflows/python_docs.yml +++ b/.github/workflows/python_docs.yml @@ -9,6 +9,8 @@ on: - master # Disabled until docs support versioning per branch/release # - develop + release: + types: [published] # update Docs upon new release jobs: docs: From a85aecd4b5f844a7fcc1e7986bd97a81ea1ab0ae Mon Sep 17 00:00:00 2001 From: heitorlessa Date: Fri, 14 Aug 2020 20:14:51 +0200 Subject: [PATCH 3/8] chore: fix test level typo --- tests/functional/test_logger.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/functional/test_logger.py b/tests/functional/test_logger.py index 21f25125283..f95a1867749 100644 --- a/tests/functional/test_logger.py +++ b/tests/functional/test_logger.py @@ -320,7 +320,7 @@ def test_logger_level_case_insensitive(stdout): def test_logger_level_not_set(stdout): # GIVEN a Loggers is initialized # WHEN no log level was passed - logger = Logger(level="info") + logger = Logger() # THEN we should default to INFO assert logger.level == logging.INFO From b6c0dbd09e0035e98ae9e62227d2c0ec88a97381 Mon Sep 17 00:00:00 2001 From: heitorlessa Date: Fri, 14 Aug 2020 20:24:01 +0200 Subject: [PATCH 4/8] fix: add test covering logging constant --- tests/functional/test_logger.py | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/tests/functional/test_logger.py b/tests/functional/test_logger.py index f95a1867749..b9cacae0edf 100644 --- a/tests/functional/test_logger.py +++ b/tests/functional/test_logger.py @@ -324,3 +324,12 @@ def test_logger_level_not_set(stdout): # THEN we should default to INFO assert logger.level == logging.INFO + + +def test_logger_level_as_int(stdout): + # GIVEN a Loggers is initialized + # WHEN log level is inst + logger = Logger(level=logging.INFO) + + # THEN we should default to INFO + assert logger.level == logging.INFO From 24f6391c7e367a745b6c50a35ec6aec55e6ec313 Mon Sep 17 00:00:00 2001 From: heitorlessa Date: Fri, 14 Aug 2020 20:24:55 +0200 Subject: [PATCH 5/8] fix: return log level int immediately --- aws_lambda_powertools/logging/logger.py | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/aws_lambda_powertools/logging/logger.py b/aws_lambda_powertools/logging/logger.py index 1b4f3d8bcfe..de60024e36d 100644 --- a/aws_lambda_powertools/logging/logger.py +++ b/aws_lambda_powertools/logging/logger.py @@ -132,8 +132,11 @@ def __getattr__(self, name): # https://github.com/awslabs/aws-lambda-powertools-python/issues/97 return getattr(self._logger, name) - def _get_log_level(self, level: str): + def _get_log_level(self, level: Union[str, int]) -> Union[str, int]: """ Returns preferred log level set by the customer in upper case """ + if isinstance(level, int): + return level + log_level: str = level or os.getenv("LOG_LEVEL") log_level = log_level.upper() if log_level is not None else logging.INFO From 1c7418c5b0b1a47af0418da189dbc4e9f4fa4d09 Mon Sep 17 00:00:00 2001 From: heitorlessa Date: Fri, 14 Aug 2020 20:30:58 +0200 Subject: [PATCH 6/8] chore: fix docstring on level [str,int] consistency --- aws_lambda_powertools/logging/logger.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/aws_lambda_powertools/logging/logger.py b/aws_lambda_powertools/logging/logger.py index de60024e36d..2a4f2971248 100644 --- a/aws_lambda_powertools/logging/logger.py +++ b/aws_lambda_powertools/logging/logger.py @@ -53,7 +53,7 @@ class Logger: ---------- service : str, optional service name to be appended in logs, by default "service_undefined" - level : str, optional + level : str, int optional logging.level, by default "INFO" child: bool, optional create a child Logger named ., False by default From 174f1fa389ac06cd2545ace71a792dcf52ded0ab Mon Sep 17 00:00:00 2001 From: heitorlessa Date: Fri, 14 Aug 2020 20:35:25 +0200 Subject: [PATCH 7/8] chore: fix unused fixture --- tests/functional/test_logger.py | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/tests/functional/test_logger.py b/tests/functional/test_logger.py index b9cacae0edf..fa804a7c979 100644 --- a/tests/functional/test_logger.py +++ b/tests/functional/test_logger.py @@ -317,7 +317,7 @@ def test_logger_level_case_insensitive(stdout): assert logger.level == logging.INFO -def test_logger_level_not_set(stdout): +def test_logger_level_not_set(): # GIVEN a Loggers is initialized # WHEN no log level was passed logger = Logger() @@ -326,10 +326,10 @@ def test_logger_level_not_set(stdout): assert logger.level == logging.INFO -def test_logger_level_as_int(stdout): +def test_logger_level_as_int(): # GIVEN a Loggers is initialized - # WHEN log level is inst + # WHEN log level is int logger = Logger(level=logging.INFO) - # THEN we should default to INFO + # THEN we should be expected int (20, in this case) assert logger.level == logging.INFO From a46ebb2e3d29bce4ab642b59efc1a255537aa9b2 Mon Sep 17 00:00:00 2001 From: heitorlessa Date: Fri, 14 Aug 2020 20:36:50 +0200 Subject: [PATCH 8/8] chore: bump patch version Signed-off-by: heitorlessa --- CHANGELOG.md | 4 ++++ pyproject.toml | 2 +- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index be11a7b9867..655762a5611 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,6 +6,10 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] +## [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 diff --git a/pyproject.toml b/pyproject.toml index 978696e090a..ea087088993 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,6 +1,6 @@ [tool.poetry] name = "aws_lambda_powertools" -version = "1.1.0" +version = "1.1.1" description = "Python utilities for AWS Lambda functions including but not limited to tracing, logging and custom metric" authors = ["Amazon Web Services"] classifiers=[