mirror of
https://github.com/comfyanonymous/ComfyUI.git
synced 2026-01-10 06:10:50 +08:00
42 lines
1.2 KiB
Python
42 lines
1.2 KiB
Python
import os
|
|
from typing import TYPE_CHECKING, Optional
|
|
from pylint.checkers import BaseChecker
|
|
|
|
if TYPE_CHECKING:
|
|
from pylint.lint import PyLinter
|
|
|
|
class MissingInitChecker(BaseChecker):
|
|
name = 'missing-init'
|
|
priority = -1
|
|
msgs = {
|
|
'W8001': (
|
|
'Directory %s has .py files but missing __init__.py',
|
|
'missing-init',
|
|
'All directories containing .py files should have an __init__.py file.',
|
|
),
|
|
}
|
|
|
|
def __init__(self, linter: Optional["PyLinter"] = None) -> None:
|
|
super().__init__(linter)
|
|
|
|
def visit_module(self, node):
|
|
if not node.file:
|
|
return
|
|
|
|
# Only check .py files
|
|
if not node.file.endswith('.py'):
|
|
return
|
|
|
|
# Skip __init__.py itself
|
|
if os.path.basename(node.file) == '__init__.py':
|
|
return
|
|
|
|
directory = os.path.dirname(os.path.abspath(node.file))
|
|
init_file = os.path.join(directory, '__init__.py')
|
|
|
|
if not os.path.exists(init_file):
|
|
self.add_message('missing-init', args=directory, node=node)
|
|
|
|
def register(linter: "PyLinter") -> None:
|
|
linter.register_checker(MissingInitChecker(linter))
|