From d28f8ff8d002252b44110afc6fc8b3ae26eeb8b6 Mon Sep 17 00:00:00 2001 From: TAHRI Ahmed R Date: Fri, 3 Dec 2021 19:53:54 +0100 Subject: [PATCH] :wrench: Tweak/adjust the logging verbosity greater-eq to warning level (#147) --- .codecov.yml | 8 ++++++++ CHANGELOG.md | 3 +++ charset_normalizer/api.py | 20 +++++++++----------- 3 files changed, 20 insertions(+), 11 deletions(-) create mode 100644 .codecov.yml diff --git a/.codecov.yml b/.codecov.yml new file mode 100644 index 00000000..f307895e --- /dev/null +++ b/.codecov.yml @@ -0,0 +1,8 @@ +coverage: + status: + project: + default: + target: 88% + threshold: null + patch: false + changes: false diff --git a/CHANGELOG.md b/CHANGELOG.md index 13f56b38..f778189a 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,6 +6,9 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/). - [Short description of non-trivial change.] +### Changed +- Moderating the logging impact (since 2.0.8) for specific environments (PR #147) + ### Fixed - Wrong logging level applied when setting kwarg `explain` to True (PR #146) diff --git a/charset_normalizer/api.py b/charset_normalizer/api.py index 62ef1819..d9e5866a 100644 --- a/charset_normalizer/api.py +++ b/charset_normalizer/api.py @@ -70,21 +70,19 @@ def from_bytes( if explain: previous_logger_level = logger.level # type: int logger.addHandler(explain_handler) - logger.setLevel(logging.INFO) + logger.setLevel(logging.DEBUG) length = len(sequences) # type: int if length == 0: - logger.warning( - "Given content is empty, stopping the process very early, returning empty utf_8 str match" - ) + logger.warning("Encoding detection on empty bytes, assuming utf_8 intention.") if explain: logger.removeHandler(explain_handler) logger.setLevel(previous_logger_level or logging.WARNING) return CharsetMatches([CharsetMatch(sequences, "utf_8", 0.0, False, [], "")]) if cp_isolation is not None: - logger.warning( + logger.debug( "cp_isolation is set. use this flag for debugging purpose. " "limited list of encoding allowed : %s.", ", ".join(cp_isolation), @@ -94,7 +92,7 @@ def from_bytes( cp_isolation = [] if cp_exclusion is not None: - logger.warning( + logger.debug( "cp_exclusion is set. use this flag for debugging purpose. " "limited list of encoding excluded : %s.", ", ".join(cp_exclusion), @@ -104,7 +102,7 @@ def from_bytes( cp_exclusion = [] if length <= (chunk_size * steps): - logger.warning( + logger.debug( "override steps (%i) and chunk_size (%i) as content does not fit (%i byte(s) given) parameters.", steps, chunk_size, @@ -190,7 +188,7 @@ def from_bytes( ) # type: bool if encoding_iana in {"utf_16", "utf_32"} and not bom_or_sig_available: - logger.info( + logger.debug( "Encoding %s wont be tested as-is because it require a BOM. Will try some sub-encoder LE/BE.", encoding_iana, ) @@ -221,7 +219,7 @@ def from_bytes( ) except (UnicodeDecodeError, LookupError) as e: if not isinstance(e, LookupError): - logger.warning( + logger.debug( "Code page %s does not fit given bytes sequence at ALL. %s", encoding_iana, str(e), @@ -237,7 +235,7 @@ def from_bytes( break if similar_soft_failure_test: - logger.warning( + logger.info( "%s is deemed too similar to code page %s and was consider unsuited already. Continuing!", encoding_iana, encoding_soft_failed, @@ -332,7 +330,7 @@ def from_bytes( ) # type: float if mean_mess_ratio >= threshold or early_stop_count >= max_chunk_gave_up: tested_but_soft_failure.append(encoding_iana) - logger.warning( + logger.info( "%s was excluded because of initial chaos probing. Gave up %i time(s). " "Computed mean chaos is %f %%.", encoding_iana,