From 7769ddd52c338ad7e369ef1c404e1bd63a3b63f5 Mon Sep 17 00:00:00 2001 From: Pradyun Gedam Date: Fri, 22 Jun 2018 08:16:41 +0530 Subject: [PATCH] Rename deprecation warnings to not be versioned --- src/pip/_internal/utils/deprecation.py | 51 +++++++++++--------------- 1 file changed, 22 insertions(+), 29 deletions(-) diff --git a/src/pip/_internal/utils/deprecation.py b/src/pip/_internal/utils/deprecation.py index 89b66e9ad..a1644c778 100644 --- a/src/pip/_internal/utils/deprecation.py +++ b/src/pip/_internal/utils/deprecation.py @@ -16,50 +16,43 @@ class PipDeprecationWarning(Warning): pass -class Pending(object): +class PipPendingDeprecationWarning(PipDeprecationWarning): pass -class RemovedInPip12Warning(PipDeprecationWarning, Pending): - pass - - -# Warnings <-> Logging Integration - - _warnings_showwarning = None # type: Any +# Warnings <-> Logging Integration def _showwarning(message, category, filename, lineno, file=None, line=None): if file is not None: if _warnings_showwarning is not None: _warnings_showwarning( message, category, filename, lineno, file, line, ) - else: - if issubclass(category, PipDeprecationWarning): - # We use a specially named logger which will handle all of the - # deprecation messages for pip. - logger = logging.getLogger("pip._internal.deprecations") + elif issubclass(category, PipDeprecationWarning): + # We use a specially named logger which will handle all of the + # deprecation messages for pip. + logger = logging.getLogger("pip._internal.deprecations") - # This is purposely using the % formatter here instead of letting - # the logging module handle the interpolation. This is because we - # want it to appear as if someone typed this entire message out. - log_message = "DEPRECATION: %s" % message + # This is purposely using the % formatter here instead of letting + # the logging module handle the interpolation. This is because we + # want it to appear as if someone typed this entire message out. + log_message = "DEPRECATION: %s" % message - # PipDeprecationWarnings that are Pending still have at least 2 - # versions to go until they are removed so they can just be - # warnings. Otherwise, they will be removed in the very next - # version of pip. We want these to be more obvious so we use the - # ERROR logging level. - if issubclass(category, Pending): - logger.warning(log_message) - else: - logger.error(log_message) + # PipPendingDeprecationWarnings still have at least 2 + # versions to go until they are removed so they can just be + # warnings. Otherwise, they will be removed in the very next + # version of pip. We want these to be more obvious so we use the + # ERROR logging level. + if issubclass(category, PipPendingDeprecationWarning): + logger.warning(log_message) else: - _warnings_showwarning( - message, category, filename, lineno, file, line, - ) + logger.error(log_message) + else: + _warnings_showwarning( + message, category, filename, lineno, file, line, + ) def install_warning_logger():