????JFIF??x?x????'
| Server IP : 104.21.30.238 / Your IP : 216.73.216.87 Web Server : LiteSpeed System : Linux premium151.web-hosting.com 4.18.0-553.44.1.lve.el8.x86_64 #1 SMP Thu Mar 13 14:29:12 UTC 2025 x86_64 User : tempvsty ( 647) PHP Version : 8.0.30 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : OFF | Pkexec : OFF Directory : /././opt/cloudlinux/venv/lib/python3.11/site-packages/prospector/formatters/ |
Upload File : |
from abc import ABC, abstractmethod
__all__ = ("Formatter",)
from pathlib import Path
from prospector.message import Message
class Formatter(ABC):
def __init__(self, summary, messages, profile, paths_relative_to: Path = None):
self.summary = summary
self.messages = messages
self.profile = profile
self.paths_relative_to = paths_relative_to
@abstractmethod
def render(self, summary=True, messages=True, profile=False):
raise NotImplementedError
def _make_path(self, path: Path) -> str:
if self.paths_relative_to is None:
path = path.absolute()
elif path.is_absolute():
path = path.relative_to(self.paths_relative_to)
return str(path)
def _message_to_dict(self, message: Message) -> dict:
loc = {
"path": self._make_path(message.location.path),
"module": message.location.module,
"function": message.location.function,
"line": message.location.line,
"character": message.location.character,
}
return {
"source": message.source,
"code": message.code,
"location": loc,
"message": message.message,
}