jenkins-bot has submitted this change. ( 
https://gerrit.wikimedia.org/r/c/pywikibot/core/+/783860 )

Change subject: [IMPR] make debug layer optional
......................................................................

[IMPR] make debug layer optional

Remove layer strings out of the framework
(Make logging interface more consistent)

Bug: T85620
Change-Id: If685e8610b6fa09f7dbd17d819ccb20cdc6dd317
---
M pywikibot/__init__.py
M pywikibot/bot.py
M pywikibot/comms/eventstreams.py
M pywikibot/comms/http.py
M pywikibot/data/api.py
M pywikibot/logentries.py
M pywikibot/logging.py
M pywikibot/login.py
M pywikibot/page/_wikibase.py
M pywikibot/pagegenerators.py
M pywikibot/proofreadpage.py
M pywikibot/site/_apisite.py
M pywikibot/site/_datasite.py
M pywikibot/site/_generators.py
M pywikibot/site/_siteinfo.py
M pywikibot/site/_tokenwallet.py
M pywikibot/site/_upload.py
M pywikibot/textlib.py
M pywikibot/throttle.py
M pywikibot/tools/__init__.py
M pywikibot/version.py
M scripts/patrol.py
M tests/ui_tests.py
23 files changed, 78 insertions(+), 164 deletions(-)

Approvals:
  Xqt: Looks good to me, approved
  jenkins-bot: Verified



diff --git a/pywikibot/__init__.py b/pywikibot/__init__.py
index d9ed711..54780d2 100644
--- a/pywikibot/__init__.py
+++ b/pywikibot/__init__.py
@@ -1152,8 +1152,6 @@
     :raises ValueError: Missing Site code
     :raises ValueError: Missing Site family
     """
-    _logger = 'wiki'
-
     if url:
         # Either code and fam or url with optional fam for AutoFamily name
         if code:
@@ -1207,7 +1205,7 @@
     if key not in _sites or not isinstance(_sites[key], interface):
         _sites[key] = interface(code=code, fam=fam, user=user)
         debug("Instantiated {} object '{}'"
-              .format(interface.__name__, _sites[key]), _logger)
+              .format(interface.__name__, _sites[key]))

         if _sites[key].code != code:
             warn('Site {} instantiated using different code "{}"'
@@ -1282,9 +1280,7 @@
     Wait for the page-putter to flush its queue. Also drop this process from
     the throttle log. Called automatically at Python exit.
     """
-    _logger = 'wiki'
-
-    debug('_flush() called', _logger)
+    debug('_flush() called')

     def remaining() -> Tuple[int, datetime.timedelta]:
         remainingPages = page_put_queue.qsize()
diff --git a/pywikibot/bot.py b/pywikibot/bot.py
index 7401883..67915d5 100644
--- a/pywikibot/bot.py
+++ b/pywikibot/bot.py
@@ -190,9 +190,6 @@
 ]
 PageLinkType = Union['pywikibot.page.Link', 'pywikibot.page.Page']

-# Note: all output goes through python std library "logging" module
-_logger = 'bot'
-
 ui = None  # type: Optional[pywikibot.userinterfaces._interface_base.ABUIC]


@@ -977,7 +974,7 @@
         show_help(show_global=do_help_val == 'global')
         sys.exit(0)

-    debug('handle_args() completed.', _logger)
+    debug('handle_args() completed.')
     return non_global_args


diff --git a/pywikibot/comms/eventstreams.py b/pywikibot/comms/eventstreams.py
index a984370..1c82bc9 100644
--- a/pywikibot/comms/eventstreams.py
+++ b/pywikibot/comms/eventstreams.py
@@ -38,9 +38,6 @@
         "install it with 'pip install \"requests>=2.20.1\"'\n")


-_logger = 'pywikibot.eventstreams'
-
-
 class EventStreams:

     """Basic EventStreams iterator class for Server-Sent Events (SSE) protocol.
@@ -171,7 +168,7 @@
         if value is not None:
             self._total = int(value)
             debug('{}: Set limit (maximum_items) to {}.'
-                  .format(self.__class__.__name__, self._total), _logger)
+                  .format(self.__class__.__name__, self._total))

     def register_filter(self, *args, **kwargs):
         """Register a filter.
@@ -322,7 +319,7 @@
                 warning('Unknown event {} occurred.'.format(event.event))

         debug('{}: Stopped iterating due to exceeding item limit.'
-              .format(self.__class__.__name__), _logger)
+              .format(self.__class__.__name__))
         del self.source


diff --git a/pywikibot/comms/http.py b/pywikibot/comms/http.py
index 84eb68f..fb4b8fa 100644
--- a/pywikibot/comms/http.py
+++ b/pywikibot/comms/http.py
@@ -61,17 +61,15 @@
 # 'certificate verify failed' is a commonly detectable string
 SSL_CERT_VERIFY_FAILED_MSG = 'certificate verify failed'

-_logger = 'comms.http'
-
 cookie_file_path = config.datafilepath('pywikibot.lwp')
 file_mode_checker(cookie_file_path, create=True)
 cookie_jar = cookiejar.LWPCookieJar(cookie_file_path)
 try:
     cookie_jar.load(ignore_discard=True)
 except cookiejar.LoadError:
-    debug('Loading cookies failed.', _logger)
+    debug('Loading cookies failed.')
 else:
-    debug('Loaded cookies from file.', _logger)
+    debug('Loaded cookies from file.')

 session = requests.Session()
 session.cookies = cookie_jar
diff --git a/pywikibot/data/api.py b/pywikibot/data/api.py
index cc1183b..2a75e93 100644
--- a/pywikibot/data/api.py
+++ b/pywikibot/data/api.py
@@ -44,8 +44,6 @@
 from pywikibot.tools import PYTHON_VERSION, itergroup


-_logger = 'data.api'
-
 lagpattern = re.compile(
     r'Waiting for [\w.: ]+: (?P<lag>\d+(?:\.\d+)?) seconds? lagged')

@@ -311,13 +309,13 @@
         # number of modules that may be processed in a single batch.
         for module_batch in module_generator():
             if self.modules_only_mode and 'pageset' in module_batch:
-                pywikibot.debug('paraminfo fetch: removed pageset', _logger)
+                pywikibot.debug('paraminfo fetch: removed pageset')
                 module_batch.remove('pageset')
                 # If this occurred during initialisation,
                 # also record it in the preloaded_modules.
                 # (at least so tests know an extra load was intentional)
                 if 'query' not in self._paraminfo:
-                    pywikibot.debug('paraminfo batch: added query', _logger)
+                    pywikibot.debug('paraminfo batch: added query')
                     module_batch.append('query')
                     self.preloaded_modules |= {'query'}

@@ -1052,7 +1050,7 @@

         # Make sure user is logged in
         if self.write:
-            pywikibot.debug('Adding user assertion', _logger)
+            pywikibot.debug('Adding user assertion')
             self['assert'] = 'user'

     @classmethod
@@ -1477,8 +1475,7 @@

         pywikibot.debug('API request to {} (uses get: {}):\n'
                         'Headers: {!r}\nURI: {!r}\nBody: {!r}'
-                        .format(self.site, use_get, headers, uri, body),
-                        _logger)
+                        .format(self.site, use_get, headers, uri, body))
         return use_get, uri, body, headers

     def _http_request(self, use_get: bool, uri: str, data, headers,
@@ -1545,7 +1542,7 @@
             # Do not retry for AutoFamily but raise a SiteDefinitionError
             # Note: family.AutoFamily is a function to create that class
             if self.site.family.__class__.__name__ == 'AutoFamily':
-                pywikibot.debug(msg, _logger)
+                pywikibot.debug(msg)
                 raise SiteDefinitionError('Invalid AutoFamily({!r})'
                                           .format(self.site.family.domain))

@@ -2050,7 +2047,7 @@
                 return False
             pywikibot.debug('{}: cache hit ({}) for API request: {}'
                             .format(self.__class__.__name__, filename,
-                                    uniquedescr), _logger)
+                                    uniquedescr))
             return True
         except OSError:
             # file not found
@@ -2154,8 +2151,7 @@
         self.query_increment = int(value)
         self.request[self.limit_name] = self.query_increment
         pywikibot.debug('{}: Set query_increment to {}.'
-                        .format(self.__class__.__name__,
-                                self.query_increment), _logger)
+                        .format(type(self).__name__, self.query_increment))

     def set_maximum_items(self, value: Union[int, str, None]) -> None:
         """
@@ -2172,11 +2168,9 @@
             if self.query_increment and self.limit < self.query_increment:
                 self.request[self.limit_name] = self.limit
                 pywikibot.debug('{}: Set request item limit to {}'
-                                .format(self.__class__.__name__, self.limit),
-                                _logger)
+                                .format(type(self).__name__, self.limit))
             pywikibot.debug('{}: Set limit (maximum_items) to {}.'
-                            .format(self.__class__.__name__, self.limit),
-                            _logger)
+                            .format(type(self).__name__, self.limit))

     def __iter__(self):
         """
@@ -2189,28 +2183,25 @@
         while True:
             self.request[self.continue_name] = offset
             pywikibot.debug('{}: Request: {}'
-                            .format(self.__class__.__name__, self.request),
-                            _logger)
+                            .format(type(self).__name__, self.request))
             data = self.request.submit()

             n_items = len(data[self.data_name])
             pywikibot.debug('{}: Retrieved {} items'
-                            .format(self.__class__.__name__, n_items),
-                            _logger)
+                            .format(type(self).__name__, n_items))
             if n_items > 0:
                 for item in data[self.data_name]:
                     yield item
                     n += 1
                     if self.limit is not None and n >= self.limit:
-                        pywikibot.debug('%s: Stopped iterating due to '
-                                        'exceeding item limit.' %
-                                        self.__class__.__name__, _logger)
+                        pywikibot.debug('{}: Stopped iterating due to '
+                                        'exceeding item limit.'
+                                        .format(type(self).__name__))
                         return
                 offset += n_items
             else:
                 pywikibot.debug('{}: Stopped iterating due to empty list in '
-                                'response.'.format(self.__class__.__name__),
-                                _logger)
+                                'response.'.format(type(self).__name__))
                 break


@@ -2409,8 +2400,7 @@
         else:
             self.query_limit = min(self.api_limit, limit)
         pywikibot.debug('{}: Set query_limit to {}.'
-                        .format(self.__class__.__name__,
-                                self.query_limit), _logger)
+                        .format(type(self).__name__, self.query_limit))

     def set_maximum_items(self, value: Union[int, str, None]) -> None:
         """Set the maximum number of items to be retrieved from the wiki.
@@ -2439,10 +2429,8 @@
             limit = int(param['max'])
         if self.api_limit is None or limit < self.api_limit:
             self.api_limit = limit
-            pywikibot.debug(
-                '{}: Set query_limit to {}.'.format(self.__class__.__name__,
-                                                    self.api_limit),
-                _logger)
+            pywikibot.debug('{}: Set query_limit to {}.'
+                            .format(type(self).__name__, self.api_limit))

     def support_namespace(self) -> bool:
         """Check if namespace is a supported parameter on this query.
@@ -2578,8 +2566,7 @@
                         new=new_limit,
                         count=self._count,
                         prefix=self.prefix,
-                        value=self.request[self.prefix + 'limit']),
-                _logger)
+                        value=self.request[self.prefix + 'limit']))
         return prev_limit, new_limit

     def _get_resultdata(self):
@@ -2598,9 +2585,8 @@
                 resultdata = [resultdata[k]
                               for k in sorted(resultdata.keys())]
         pywikibot.debug('{name} received {keys}; limit={limit}'
-                        .format(name=self.__class__.__name__,
-                                keys=keys, limit=self.limit),
-                        _logger)
+                        .format(name=type(self).__name__, keys=keys,
+                                limit=self.limit))
         return resultdata

     def _extract_results(self, resultdata):
@@ -2645,9 +2631,9 @@
             if not self.data or not isinstance(self.data, dict):
                 pywikibot.debug(
                     '{}: stopped iteration because no dict retrieved from api.'
-                    .format(self.__class__.__name__),
-                    _logger)
+                    .format(type(self).__name__))
                 return
+
             if 'query' in self.data and self.resultkey in self.data['query']:
                 resultdata = self._get_resultdata()
                 if 'normalized' in self.data['query']:
diff --git a/pywikibot/logentries.py b/pywikibot/logentries.py
index e91168b..75463a7 100644
--- a/pywikibot/logentries.py
+++ b/pywikibot/logentries.py
@@ -14,9 +14,6 @@
 from pywikibot.exceptions import Error, HiddenKeyError


-_logger = 'wiki'
-
-
 class LogEntry(UserDict):

     """Generic log entry.
@@ -52,8 +49,7 @@

         It also logs debugging information when a key is missing.
         """
-        pywikibot.debug('API log entry received:\n{!r}'.format(self),
-                        _logger)
+        pywikibot.debug('API log entry received:\n{!r}'.format(self))
         hidden = {
             'actionhidden': [
                 'action', 'logpage', 'ns', 'pageid', 'params', 'title',
@@ -84,9 +80,9 @@
         """Compare if self is equal to other."""
         if not isinstance(other, LogEntry):
             pywikibot.debug("'{}' cannot be compared with '{}'"
-                            .format(type(self).__name__, type(other).__name__),
-                            _logger)
+                            .format(type(self).__name__, type(other).__name__))
             return False
+
         return self.logid() == other.logid() and self.site == other.site

     def __getattr__(self, item: str) -> Any:
@@ -412,8 +408,7 @@
         try:
             logtype = logdata['type']
         except KeyError:
-            pywikibot.debug('API log entry received:\n{}'.format(logdata),
-                            _logger)
+            pywikibot.debug('API log entry received:\n{}'.format(logdata))
             raise Error("Log entry has no 'type' key")

         return LogEntryFactory.get_entry_class(logtype)(logdata, self._site)
diff --git a/pywikibot/logging.py b/pywikibot/logging.py
index 30cdc0b..39b6ac1 100644
--- a/pywikibot/logging.py
+++ b/pywikibot/logging.py
@@ -203,18 +203,21 @@
     logoutput(text, decoder, newline, CRITICAL, **kwargs)


-def debug(text: object, layer: str, decoder: Optional[str] = None,
+def debug(text: object, layer: str = '', decoder: Optional[str] = None,
           newline: bool = True, **kwargs: Any) -> None:
     """Output a debug record to the log file.

+    .. versionchanged:: 7.2
+       `layer` parameter is optional.
+
     :param text: the message of the debug record to be logged to the log file.
-    :param layer: logger to record this message upon
+    :param layer: dot-separated logger suffix to record this message
+        upon. If not given only 'pywiki' is used as logger name.
     :param decoder: If None, text should be a unicode string else it should
         be encoded in the given encoding.
     :param newline: If True, a line feed will be added after printing the text.
     :param kwargs: The keyword arguments can be found in the python doc:
         https://docs.python.org/3/howto/logging-cookbook.html
-    :param layer: The name of the logger that text will be sent to.
     """
     logoutput(text, decoder, newline, DEBUG, layer, **kwargs)

diff --git a/pywikibot/login.py b/pywikibot/login.py
index aa436d5..a58fa1d 100644
--- a/pywikibot/login.py
+++ b/pywikibot/login.py
@@ -30,9 +30,6 @@
     """The format of password file is incorrect."""


-_logger = 'wiki.login'
-
-
 # On some wikis you are only allowed to run a bot if there is a link to
 # the bot's user page in a specific list.
 # If bots are listed in a template, the templates name must be given as
diff --git a/pywikibot/page/_wikibase.py b/pywikibot/page/_wikibase.py
index 26ea6ae..3042b44 100644
--- a/pywikibot/page/_wikibase.py
+++ b/pywikibot/page/_wikibase.py
@@ -427,9 +427,7 @@
         if title and ('ns' not in kwargs and 'entity_type' not in kwargs):
             pywikibot.debug('{}.__init__: {} title {!r} specified without '
                             'ns or entity_type'
-                            .format(self.__class__.__name__, site,
-                                    title),
-                            layer='wikibase')
+                            .format(type(self).__name__, site, title))

         self._namespace = None

diff --git a/pywikibot/pagegenerators.py b/pywikibot/pagegenerators.py
index 0926580..d0bb14a 100644
--- a/pywikibot/pagegenerators.py
+++ b/pywikibot/pagegenerators.py
@@ -66,8 +66,6 @@
 )


-_logger = 'pagegenerators'
-
 # ported from version 1 for backwards-compatibility
 # most of these functions just wrap a Site or Page method that returns
 # a generator
diff --git a/pywikibot/proofreadpage.py b/pywikibot/proofreadpage.py
index 9df73bf..6b9914c 100644
--- a/pywikibot/proofreadpage.py
+++ b/pywikibot/proofreadpage.py
@@ -70,9 +70,6 @@
         _bs4_soup = partial(BeautifulSoup, features='lxml')


-_logger = 'proofreadpage'
-
-
 PagesFromLabelType = Dict[str, Set['pywikibot.page.Page']]
 _IndexType = Tuple[Optional['IndexPage'], List['IndexPage']]

@@ -627,8 +624,7 @@

         # wrong link fail with Exceptions
         for retry in range(5, 30, 5):
-            pywikibot.debug('{}: get URI {!r}'.format(ocr_tool, cmd_uri),
-                            _logger)
+            pywikibot.debug('{}: get URI {!r}'.format(ocr_tool, cmd_uri))
             try:
                 response = http.fetch(cmd_uri)
             except ReadTimeout as e:
@@ -637,8 +633,7 @@
                 pywikibot.error('"{}": {}'.format(cmd_uri, e))
                 return True, e
             else:
-                pywikibot.debug('{}: {}'.format(ocr_tool, response.text),
-                                _logger)
+                pywikibot.debug('{}: {}'.format(ocr_tool, response.text))
                 break

             pywikibot.warning('retrying in {} seconds ...'.format(retry))
diff --git a/pywikibot/site/_apisite.py b/pywikibot/site/_apisite.py
index 2210ec9..a8b5120 100644
--- a/pywikibot/site/_apisite.py
+++ b/pywikibot/site/_apisite.py
@@ -77,7 +77,6 @@


 __all__ = ('APISite', )
-_logger = 'wiki.apisite'
 _mw_msg_cache = defaultdict(dict)  # type: DefaultDict[str, Dict[str, str]]
 

@@ -1617,8 +1616,7 @@
                     self._dl_errors[err.code].format_map(errdata)
                 ) from None
             pywikibot.debug("revdelete: Unexpected error code '{}' received."
-                            .format(err.code),
-                            _logger)
+                            .format(err.code))
             raise
         else:
             if target:
@@ -1776,14 +1774,11 @@
             while True:
                 try:
                     result = req.submit()
-                    pywikibot.debug('editpage response: {}'.format(result),
-                                    _logger)
+                    pywikibot.debug('editpage response: {}'.format(result))
                 except APIError as err:
                     if err.code.endswith('anon') and self.logged_in():
-                        pywikibot.debug(
-                            "editpage: received '{}' even though bot is "
-                            'logged in'.format(err.code),
-                            _logger)
+                        pywikibot.debug("editpage: received '{}' even though "
+                                        'bot is logged in'.format(err.code))
                     if err.code == 'abusefilter-warning':
                         pywikibot.warning('{info}\nRetrying.'
                                           .format(info=err.info))
@@ -1808,8 +1803,7 @@
                         raise exception(page) from None
                     pywikibot.debug(
                         "editpage: Unexpected error code '{}' received."
-                        .format(err.code),
-                        _logger)
+                        .format(err.code))
                     raise
                 assert 'edit' in result and 'result' in result['edit'], result

@@ -1966,8 +1960,7 @@
         try:
             result = req.submit()
             pywikibot.debug('mergehistory response: {result}'
-                            .format(result=result),
-                            _logger)
+                            .format(result=result))
         except APIError as err:
             if err.code in self._mh_errors:
                 on_error = self._mh_errors[err.code]
@@ -1975,9 +1968,7 @@

             pywikibot.debug(
                 "mergehistory: Unexpected error code '{code}' received"
-                .format(code=err.code),
-                _logger
-            )
+                .format(code=err.code))
             raise
         finally:
             self.unlock_page(source)
@@ -2071,14 +2062,13 @@
         req['from'] = oldtitle  # "from" is a python keyword
         try:
             result = req.submit()
-            pywikibot.debug('movepage response: {}'.format(result),
-                            _logger)
+            pywikibot.debug('movepage response: {}'.format(result))
         except APIError as err:
             if err.code.endswith('anon') and self.logged_in():
                 pywikibot.debug(
                     "movepage: received '{}' even though bot is logged in"
-                    .format(err.code),
-                    _logger)
+                    .format(err.code))
+
             if err.code in self._mv_errors:
                 on_error = self._mv_errors[err.code]
                 if not isinstance(on_error, str):
@@ -2111,8 +2101,7 @@
                 raise Error(on_error.format_map(errdata)) from None

             pywikibot.debug("movepage: Unexpected error code '{}' received."
-                            .format(err.code),
-                            _logger)
+                            .format(err.code))
             raise
         finally:
             self.unlock_page(page)
@@ -2190,8 +2179,7 @@
                     self._rb_errors[err.code].format_map(errdata)
                 ) from None
             pywikibot.debug("rollback: Unexpected error code '{}' received."
-                            .format(err.code),
-                            _logger)
+                            .format(err.code))
             raise
         finally:
             self.unlock_page(page)
@@ -2288,8 +2276,7 @@
                     self._dl_errors[err.code].format_map(errdata)
                 ) from None
             pywikibot.debug('delete: Unexpected error code {!r} received.'
-                            .format(err.code),
-                            _logger)
+                            .format(err.code))
             raise
         else:
             if isinstance(page, pywikibot.page.BasePage):
@@ -2348,8 +2335,7 @@
                     self._dl_errors[err.code].format_map(errdata)
                 ) from None
             pywikibot.debug('undelete: Unexpected error code {!r} received.'
-                            .format(err.code),
-                            _logger)
+                            .format(err.code))
             raise
         finally:
             self.unlock_page(page)
@@ -2432,8 +2418,7 @@
                     self._protect_errors[err.code].format_map(errdata)
                 ) from None
             pywikibot.debug("protect: Unexpected error code '{}' received."
-                            .format(err.code),
-                            _logger)
+                            .format(err.code))
             raise
         else:
             protection = {}
diff --git a/pywikibot/site/_datasite.py b/pywikibot/site/_datasite.py
index b729f25..440134e 100644
--- a/pywikibot/site/_datasite.py
+++ b/pywikibot/site/_datasite.py
@@ -26,7 +26,6 @@


 __all__ = ('DataSite', )
-_logger = 'wiki.datasite'


 class DataSite(APISite):
diff --git a/pywikibot/site/_generators.py b/pywikibot/site/_generators.py
index d6ecd73..7bc537c 100644
--- a/pywikibot/site/_generators.py
+++ b/pywikibot/site/_generators.py
@@ -33,9 +33,6 @@
 )


-_logger = 'wiki.apisite'
-
-
 class GeneratorsMixin:

     """API generators mixin to MediaWiki site."""
@@ -152,7 +149,7 @@
                              .format(len(cache), self))

             for pagedata in rvgen:
-                pywikibot.debug('Preloading {}'.format(pagedata), _logger)
+                pywikibot.debug('Preloading {}'.format(pagedata))
                 try:
                     if pagedata['title'] not in cache:
                         # API always returns a "normalized" title which is
@@ -172,11 +169,9 @@
                                 "title '{}'".format(pagedata['title']))
                             continue
                 except KeyError:
-                    pywikibot.debug("No 'title' in {}"
-                                    .format(pagedata), _logger)
-                    pywikibot.debug('pageids={}'.format(pageids), _logger)
-                    pywikibot.debug('titles={}'
-                                    .format(list(cache.keys())), _logger)
+                    pywikibot.debug("No 'title' in {}".format(pagedata))
+                    pywikibot.debug('pageids={}'.format(pageids))
+                    pywikibot.debug('titles={}'.format(list(cache.keys())))
                     continue
                 priority, page = cache[pagedata['title']]
                 api.update_page(page, pagedata, rvgen.props)
@@ -1838,8 +1833,7 @@
                     raise Error(self._patrol_errors[err.code]
                                 .format_map(errdata))
                 pywikibot.debug("protect: Unexpected error code '{}' received."
-                                .format(err.code),
-                                _logger)
+                                .format(err.code))
                 raise

             yield result['patrol']
diff --git a/pywikibot/site/_siteinfo.py b/pywikibot/site/_siteinfo.py
index a92311b..bc0aa76 100644
--- a/pywikibot/site/_siteinfo.py
+++ b/pywikibot/site/_siteinfo.py
@@ -16,9 +16,6 @@
 from pywikibot.tools import EMPTY_DEFAULT


-_logger = 'wiki.siteinfo'
-
-
 class Siteinfo(Container):

     """
@@ -228,7 +225,7 @@
         :rtype: various (the value), bool (if the default value is used)
         """
         if 'general' not in self._cache:
-            pywikibot.debug('general siteinfo not loaded yet.', _logger)
+            pywikibot.debug('general siteinfo not loaded yet.')
             force = True
             props = ['namespaces', 'namespacealiases']
         else:
@@ -239,7 +236,7 @@
             if props:
                 pywikibot.debug(
                     "Load siteinfo properties '{}' along with 'general'"
-                    .format("', '".join(props)), _logger)
+                    .format("', '".join(props)))
             props += ['general']
             default_info = self._get_siteinfo(props, expiry)
             for prop in props:
diff --git a/pywikibot/site/_tokenwallet.py b/pywikibot/site/_tokenwallet.py
index 12bd1a3..9e32f87 100644
--- a/pywikibot/site/_tokenwallet.py
+++ b/pywikibot/site/_tokenwallet.py
@@ -8,9 +8,6 @@
 from pywikibot.exceptions import Error


-_logger = 'site.tokenwallet'
-
-
 class TokenWallet:

     """Container for tokens."""
@@ -62,8 +59,7 @@
         if self.site.mw_version >= '1.24wmf19' \
            and key in {'edit', 'delete', 'protect', 'move', 'block', 'unblock',
                        'email', 'import', 'options'}:
-            debug(
-                'Token {!r} was replaced by {!r}'.format(key, 'csrf'), _logger)
+            debug('Token {!r} was replaced by {!r}'.format(key, 'csrf'))
             key = 'csrf'

         try:
diff --git a/pywikibot/site/_upload.py b/pywikibot/site/_upload.py
index c85a397..1db38c4 100644
--- a/pywikibot/site/_upload.py
+++ b/pywikibot/site/_upload.py
@@ -20,7 +20,6 @@


 __all__ = ('Uploader', )
-_logger = 'wiki.apisite'


 class Uploader:
@@ -457,7 +456,7 @@
                         self.site._uploaddisabled = True
                     raise error
                 result = result['upload']
-                pywikibot.debug(result, _logger)
+                pywikibot.debug(result)

             if 'result' not in result:
                 raise Error('Upload: unrecognized response: {}'.format(result))
diff --git a/pywikibot/textlib.py b/pywikibot/textlib.py
index 8b16d4e..4b6270b 100644
--- a/pywikibot/textlib.py
+++ b/pywikibot/textlib.py
@@ -49,8 +49,6 @@

 ETPType = List[Tuple[str, OrderedDictType[str, str]]]

-_logger = 'textlib'
-
 # cache for replaceExcept to avoid recompile or regexes each call
 _regex_cache = {}

@@ -1696,7 +1694,7 @@
         text = removeDisabledParts(text)

     parser_name = wikitextparser.__name__
-    pywikibot.debug('Using {!r} wikitext parser'.format(parser_name), _logger)
+    pywikibot.debug('Using {!r} wikitext parser'.format(parser_name))

     result = []
     parsed = wikitextparser.parse(text)
diff --git a/pywikibot/throttle.py b/pywikibot/throttle.py
index 7079d1a..c293493 100644
--- a/pywikibot/throttle.py
+++ b/pywikibot/throttle.py
@@ -24,8 +24,6 @@
     from hashlib import blake2b


-_logger = 'wiki.throttle'
-
 FORMAT_LINE = '{module_id} {pid} {time} {site}\n'
 ProcEntry = namedtuple('ProcEntry', ['module_id', 'pid', 'time', 'site'])

@@ -158,8 +156,7 @@
         """
         global pid
         mysite = self.mysite
-        pywikibot.debug('Checking multiplicity: pid = {pid}'.format(pid=pid),
-                        _logger)
+        pywikibot.debug('Checking multiplicity: pid = {pid}'.format(pid=pid))
         with self.lock:
             processes = []
             used_pids = set()
diff --git a/pywikibot/tools/__init__.py b/pywikibot/tools/__init__.py
index df207fb..3b68d81 100644
--- a/pywikibot/tools/__init__.py
+++ b/pywikibot/tools/__init__.py
@@ -65,8 +65,6 @@

 PYTHON_VERSION = sys.version_info[:3]

-_logger = 'tools'
-

 def is_ip_address(value: str) -> bool:
     """Check if a value is a valid IPv4 or IPv6 address.
@@ -507,8 +505,7 @@
                                                 version_match.group(2))
             if version_match.group(2):
                 debug('Additional unused version part '
-                      '"{}"'.format(version_match.group(2)),
-                      _logger)
+                      '"{}"'.format(version_match.group(2)))
             self._dev_version = (4, )

         self.suffix = version_match.group(2) or ''
@@ -773,8 +770,6 @@

     """

-    _logger = 'threadlist'
-
     def __init__(self, limit: int = 128, wait_time: float = 2, *args) -> None:
         """Initializer.

@@ -810,17 +805,16 @@

         super().append(thd)
         thd.start()
-        debug("thread {} ('{}') started".format(len(self), type(thd)),
-              self._logger)
+        debug("thread {} ('{}') started".format(len(self), type(thd)))

     def stop_all(self) -> None:
         """Stop all threads the pool."""
         if self:
-            debug('EARLY QUIT: Threads: {}'.format(len(self)), self._logger)
+            debug('EARLY QUIT: Threads: {}'.format(len(self)))
         for thd in self:
             thd.stop()
             debug('EARLY QUIT: Queue size left in {}: {}'
-                  .format(thd, thd.queue.qsize()), self._logger)
+                  .format(thd, thd.queue.qsize()))


 def intersect_generators(*iterables, allow_duplicates: bool = False):
@@ -890,7 +884,7 @@
     for source in iterables:
         if not source:
             debug('At least one iterable ({!r}) is empty and execution was '
-                  'skipped immediately.'.format(source), 'intersect')
+                  'skipped immediately.'.format(source))
             return

     # Item is cached to check that it is found n_gen times
diff --git a/pywikibot/version.py b/pywikibot/version.py
index 1145497..661eb36 100644
--- a/pywikibot/version.py
+++ b/pywikibot/version.py
@@ -27,9 +27,6 @@
 from pywikibot.exceptions import VersionParseError


-_logger = 'version'
-
-
 def _get_program_dir():
     _program_dir = os.path.normpath(
         os.path.split(os.path.dirname(__file__))[0])
@@ -113,7 +110,7 @@
     # Git and SVN can silently fail, as it may be a nightly.
     if exceptions:
         pywikibot.debug('version algorithm exceptions:\n{!r}'
-                        .format(exceptions), _logger)
+                        .format(exceptions))

     if isinstance(date, str):
         datestring = date
diff --git a/scripts/patrol.py b/scripts/patrol.py
index f2d33ec..48bc66f 100755
--- a/scripts/patrol.py
+++ b/scripts/patrol.py
@@ -61,8 +61,6 @@
 except ImportError as e:
     mwparserfromhell = e

-_logger = 'patrol'
-

 def verbose_output(string) -> None:
     """Verbose output."""
@@ -210,8 +208,8 @@
                 continue
             if isinstance(node, mwparserfromhell.nodes.wikilink.Wikilink):
                 if current_user is False:
-                    pywikibot.debug('Link to "{}" ignored as outside '
-                                    'list'.format(node.title), _logger)
+                    pywikibot.debug('Link to "{}" ignored as outside list'
+                                    .format(node.title))
                     continue

                 obj = pywikibot.Link(node.title, self.site)
diff --git a/tests/ui_tests.py b/tests/ui_tests.py
index 9f443fd..cab4146 100755
--- a/tests/ui_tests.py
+++ b/tests/ui_tests.py
@@ -149,7 +149,7 @@
         self.assertEqual(self.strerr.getvalue(), 'CRITICAL: critical\n')

     def test_debug(self):
-        pywikibot.debug('debug', 'test')
+        pywikibot.debug('debug', layer='test')
         self.assertEqual(self.strout.getvalue(), '')
         self.assertEqual(self.strerr.getvalue(), '')


--
To view, visit https://gerrit.wikimedia.org/r/c/pywikibot/core/+/783860
To unsubscribe, or for help writing mail filters, visit 
https://gerrit.wikimedia.org/r/settings

Gerrit-Project: pywikibot/core
Gerrit-Branch: master
Gerrit-Change-Id: If685e8610b6fa09f7dbd17d819ccb20cdc6dd317
Gerrit-Change-Number: 783860
Gerrit-PatchSet: 4
Gerrit-Owner: Xqt <[email protected]>
Gerrit-Reviewer: D3r1ck01 <[email protected]>
Gerrit-Reviewer: Xqt <[email protected]>
Gerrit-Reviewer: jenkins-bot
Gerrit-CC: DannyS712 <[email protected]>
Gerrit-MessageType: merged
_______________________________________________
Pywikibot-commits mailing list -- [email protected]
To unsubscribe send an email to [email protected]

Reply via email to