REDROOM
PHP 8.2.31
Path:
Logout
Edit File
Size: 3.43 KB
Close
/proc/self/root/opt/cloudlinux/venv/lib/python3.11/site-packages/pylint/reporters/base_reporter.py
Text
Base64
# Licensed under the GPL: https://www.gnu.org/licenses/old-licenses/gpl-2.0.html # For details: https://github.com/PyCQA/pylint/blob/main/LICENSE # Copyright (c) https://github.com/PyCQA/pylint/blob/main/CONTRIBUTORS.txt from __future__ import annotations import os import sys import warnings from typing import TYPE_CHECKING, TextIO from warnings import warn from pylint.message import Message from pylint.reporters.ureports.nodes import Text from pylint.utils import LinterStats if TYPE_CHECKING: from pylint.lint.pylinter import PyLinter from pylint.reporters.ureports.nodes import Section class BaseReporter: """Base class for reporters. symbols: show short symbolic names for messages. """ extension = "" name = "base" """Name of the reporter.""" def __init__(self, output: TextIO | None = None) -> None: if getattr(self, "__implements__", None): warnings.warn( "Using the __implements__ inheritance pattern for BaseReporter is no " "longer supported. Child classes should only inherit BaseReporter", DeprecationWarning, stacklevel=2, ) self.linter: PyLinter self.section = 0 self.out: TextIO = output or sys.stdout self.messages: list[Message] = [] # Build the path prefix to strip to get relative paths self.path_strip_prefix = os.getcwd() + os.sep def handle_message(self, msg: Message) -> None: """Handle a new message triggered on the current file.""" self.messages.append(msg) def set_output(self, output: TextIO | None = None) -> None: """Set output stream.""" # TODO: 3.0: Remove deprecated method warn( "'set_output' will be removed in 3.0, please use 'reporter.out = stream' instead", DeprecationWarning, stacklevel=2, ) self.out = output or sys.stdout def writeln(self, string: str = "") -> None: """Write a line in the output buffer.""" print(string, file=self.out) def display_reports(self, layout: Section) -> None: """Display results encapsulated in the layout tree.""" self.section = 0 if layout.report_id: if isinstance(layout.children[0].children[0], Text): layout.children[0].children[0].data += f" ({layout.report_id})" else: raise ValueError(f"Incorrect child for {layout.children[0].children}") self._display(layout) def _display(self, layout: Section) -> None: """Display the layout.""" raise NotImplementedError() def display_messages(self, layout: Section | None) -> None: """Hook for displaying the messages of the reporter. This will be called whenever the underlying messages needs to be displayed. For some reporters, it probably doesn't make sense to display messages as soon as they are available, so some mechanism of storing them could be used. This method can be implemented to display them after they've been aggregated. """ # Event callbacks def on_set_current_module(self, module: str, filepath: str | None) -> None: """Hook called when a module starts to be analysed.""" def on_close( self, stats: LinterStats, previous_stats: LinterStats | None, ) -> None: """Hook called when a module finished analyzing."""
Save
Close
Exit & Reset
Text mode: syntax highlighting auto-detects file type.
Directory Contents
Dirs: 2 × Files: 7
Delete Selected
Select All
Select None
Sort:
Name
Size
Modified
Enable drag-to-move
Name
Size
Perms
Modified
Actions
ureports
DIR
-
drwxr-xr-x
2026-02-05 08:01:15
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
__pycache__
DIR
-
drwxr-xr-x
2026-02-05 08:01:15
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
base_reporter.py
3.43 KB
lrw-r--r--
2026-01-20 13:01:48
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
collecting_reporter.py
725 B
lrw-r--r--
2026-01-20 13:01:48
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
json_reporter.py
3.68 KB
lrw-r--r--
2026-01-20 13:01:48
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
multi_reporter.py
3.67 KB
lrw-r--r--
2026-01-20 13:01:48
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
reports_handler_mix_in.py
3.00 KB
lrw-r--r--
2026-01-20 13:01:48
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
text.py
10.70 KB
lrw-r--r--
2026-01-20 13:01:48
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
__init__.py
1.00 KB
lrw-r--r--
2026-01-20 13:01:48
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
Zip Selected
If ZipArchive is unavailable, a
.tar
will be created (no compression).