Mercurial > libervia-backend
diff libervia/backend/plugins/plugin_misc_uri_finder.py @ 4270:0d7bb4df2343
Reformatted code base using black.
author | Goffi <goffi@goffi.org> |
---|---|
date | Wed, 19 Jun 2024 18:44:57 +0200 |
parents | 4b842c1fb686 |
children | e0ae6ca806ba |
line wrap: on
line diff
--- a/libervia/backend/plugins/plugin_misc_uri_finder.py Tue Jun 18 12:06:45 2024 +0200 +++ b/libervia/backend/plugins/plugin_misc_uri_finder.py Wed Jun 19 18:44:57 2024 +0200 @@ -22,6 +22,7 @@ from libervia.backend.core.log import getLogger from twisted.internet import defer import textwrap + log = getLogger(__name__) import json import os.path @@ -36,14 +37,18 @@ C.PI_DEPENDENCIES: [], C.PI_MAIN: "URIFinder", C.PI_HANDLER: "no", - C.PI_DESCRIPTION: textwrap.dedent(_("""\ + C.PI_DESCRIPTION: textwrap.dedent( + _( + """\ Plugin to find URIs in well know location. This allows to retrieve settings to work with a project (e.g. pubsub node used for merge-requests). - """)) + """ + ) + ), } -SEARCH_FILES = ('readme', 'contributing') +SEARCH_FILES = ("readme", "contributing") class URIFinder(object): @@ -51,10 +56,14 @@ def __init__(self, host): log.info(_("URI finder plugin initialization")) self.host = host - host.bridge.add_method("uri_find", ".plugin", - in_sign='sas', out_sign='a{sa{ss}}', - method=self.find, - async_=True) + host.bridge.add_method( + "uri_find", + ".plugin", + in_sign="sas", + out_sign="a{sa{ss}}", + method=self.find, + async_=True, + ) def find(self, path, keys): """Look for URI in well known locations @@ -64,31 +73,38 @@ e.g.: "tickets", "merge-requests" @return (dict[unicode, unicode]): map from key to found uri """ - keys_re = '|'.join(keys) + keys_re = "|".join(keys) label_re = r'"(?P<label>[^"]+)"' - uri_re = re.compile(r'(?P<key>{keys_re})[ :]? +(?P<uri>xmpp:\S+)(?:.*use {label_re} label)?'.format( - keys_re=keys_re, label_re = label_re)) + uri_re = re.compile( + r"(?P<key>{keys_re})[ :]? +(?P<uri>xmpp:\S+)(?:.*use {label_re} label)?".format( + keys_re=keys_re, label_re=label_re + ) + ) path = os.path.normpath(path) if not os.path.isdir(path) or not os.path.isabs(path): - raise ValueError('path must be an absolute path to a directory') + raise ValueError("path must be an absolute path to a directory") found_uris = {} - while path != '/': + while path != "/": for filename in os.listdir(path): name, __ = os.path.splitext(filename) if name.lower() in SEARCH_FILES: file_path = os.path.join(path, filename) with open(file_path) as f: for m in uri_re.finditer(f.read()): - key = m.group('key') - uri = m.group('uri') - label = m.group('label') + key = m.group("key") + uri = m.group("uri") + label = m.group("label") if key in found_uris: - log.warning(_("Ignoring already found uri for key \"{key}\"").format(key=key)) + log.warning( + _( + 'Ignoring already found uri for key "{key}"' + ).format(key=key) + ) else: - uri_data = found_uris[key] = {'uri': uri} + uri_data = found_uris[key] = {"uri": uri} if label is not None: - uri_data['labels'] = json.dumps([label]) + uri_data["labels"] = json.dumps([label]) if found_uris: break path = os.path.dirname(path)