
# Fatal       (1)  - 00001
# Error       (2)  - 00010
# Warning     (4)  - 00100
# Convention  (8)  - 01000
# Refactor    (16) - 10000
# Information (NA)

[BASIC]
good-names=i,
            j,
            k,
            v,
            e,
            ra,
            dec,
            tn, #  from  astelco.py 
            ob, #  from  sequencer.py
            gp, # from gnuplotlib

[MASTER]
# init-hook='
#     import os, sys; 
#     from pylint.config import find_pylintrc; 
#     sys.path.append(os.path.dirname(find_pylintrc()))
#    '

load-plugins=pylint.extensions.docparams, pylint.extensions.check_elif # Examples

[MESSAGES CONTROL]
# Disable specific messages if needed, e.g.:
# disable=missing-module-docstring,missing-class-docstring,missing-function-docstring
#disable=C0114, # Missing module docstring
#         C0115, # Missing class docstring
#         C0116, # Missing function docstring
#         R0903, # Too few public methods
#         R0913, # Too many arguments
#         R0902, # Too many instance attributes (can be high in device classes)
#         W0703, # Catching too general exception Exception (sometimes necessary in device comms)
#         W0613  # Unused argument (common in callbacks/overrides)


[REPORTS]
reports=no

[TYPECHECK]
# If you have generated-members that pylint can't see (e.g. from dynamic imports in devices)
# generated-members=
# For devices dynamically added to 'noctua.devices'
# This is tricky. Pylint is static. If 'noctua.devices.dom' is created at runtime,
# pylint won't know about it unless you explicitly tell it or use a plugin.
# For now, we'll lint 'noctua' and submodules directly.
# The dynamic attributes on `noctua.devices` itself will likely cause `no-member` errors.
# You might need to lint `noctua.devices.__init__.py` with specific disables or a custom plugin.

# For SQLAlchemy in your dependencies, if you use it and get no-member errors:
# ignored-classes=sqlalchemy.orm.scoping.scoped_session,sqlalchemy.sql.schema.Table
# contextmanager-decorators=contextlib.contextmanager,sqlalchemy.orm.scoping.scoped_session.remove

[FORMAT]
max-line-length=120
