| Server IP : 213.136.93.164 / Your IP : 216.73.216.20 Web Server : Apache System : Linux m14200.contabo.net 5.14.0-611.54.1.el9_7.x86_64 #1 SMP PREEMPT_DYNAMIC Wed May 6 18:03:03 EDT 2026 x86_64 User : ki692510 ( 1047) PHP Version : 7.4.33 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : OFF | Pkexec : OFF Directory : /opt/cloudlinux/venv/lib/python3.11/site-packages/prospector/tools/pylint/ |
Upload File : |
from io import StringIO
from typing import List
from pylint.exceptions import UnknownMessageError
from pylint.message import Message as PylintMessage
from pylint.reporters import BaseReporter
from prospector.message import Location, Message
class Collector(BaseReporter):
name = "collector"
def __init__(self, message_store):
BaseReporter.__init__(self, output=StringIO())
self._message_store = message_store
self._messages = []
def handle_message(self, msg: PylintMessage) -> None:
loc = Location(msg.abspath, msg.module, msg.obj, msg.line, msg.column)
# At this point pylint will give us the code but we want the
# more user-friendly symbol
try:
msg_data = self._message_store.get_message_definitions(msg.msg_id)
except UnknownMessageError:
# this shouldn't happen, as all pylint errors should be
# in the message store, but just in case we'll fall back
# to using the code.
msg_symbol = msg.msg_id
else:
msg_symbol = msg_data[0].symbol
message = Message("pylint", msg_symbol, loc, msg.msg)
self._messages.append(message)
def _display(self, layout) -> None:
pass
def get_messages(self) -> List[Message]:
return self._messages