Skip to content

Commit 8d0a833

Browse files
committed
Pylint tweaks, mainly docstrings
1 parent 4c66144 commit 8d0a833

File tree

2 files changed

+60
-7
lines changed

2 files changed

+60
-7
lines changed

adafruit_logger/adafruit_logger.py

Lines changed: 55 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,7 @@
4040
https://github.com/adafruit/circuitpython/releases
4141
4242
"""
43-
#pylint:disable=redefined-outer-name
43+
#pylint:disable=redefined-outer-name,consider-using-enumerate,no-self-use
4444

4545
# imports
4646

@@ -49,46 +49,67 @@
4949

5050
import time
5151

52-
levels = [(0, 'NOTSET'),
52+
LEVELS = [(00, 'NOTSET'),
5353
(10, 'DEBUG'),
5454
(20, 'INFO'),
5555
(30, 'WARNING'),
5656
(40, 'ERROR'),
5757
(50, 'CRITICAL')]
5858

59-
for value, name in levels:
59+
for value, name in LEVELS:
6060
globals()[name] = value
6161

6262
def level_for(value):
63-
for i in range(len(levels)):
64-
if value < levels[i][0]:
65-
return levels[i-1][1]
66-
return levels[0][1]
63+
"""Convert a numberic level to the most appropriate name.
64+
value -- a numeric level
65+
"""
66+
for i in range(len(LEVELS)):
67+
if value < LEVELS[i][0]:
68+
return LEVELS[i-1][1]
69+
return LEVELS[0][1]
6770

6871
class LoggingHandler(object):
72+
"""Abstract logging message handler."""
6973

7074
def format(self, level, msg):
75+
"""Generate a timestamped message.
76+
level -- the logging level
77+
msg -- the message to log
78+
"""
7179
now = time.localtime()
7280
time_vals = (now.tm_year, now.tm_mon, now.tm_mday,
7381
now.tm_hour, now.tm_min, now.tm_sec)
7482
timestamp = '%4d/%02d/%02d %02d:%02d:%02d' % time_vals
7583
return '{0}: {1} - {2}'.format(timestamp, level_for(level), msg)
7684

7785
def emit(self, level, msg):
86+
"""Send a message where it should go.
87+
Place holder for subclass implementations.
88+
"""
7889
raise NotImplementedError()
7990

91+
8092
class PrintHandler(LoggingHandler):
93+
"""Send logging messages to the console by using print."""
8194

8295
def emit(self, level, msg):
96+
"""Send a message to teh console.
97+
level -- the logging level
98+
msg -- the message to log
99+
"""
83100
print(self.format(level, msg))
84101

85102

86103
# The level module-global variables get created when loaded
87104
#pylint:disable=undefined-variable
88105

89106
class Logger(object):
107+
"""Provide a logging api."""
90108

91109
def __init__(self, handler=None):
110+
"""Create an instance.
111+
handler -- what to use to output messages. Defaults to a PrintHandler.
112+
"""
92113
self._level = NOTSET
93114
if handler is None:
94115
self._handler = PrintHandler()
@@ -97,27 +118,54 @@ def __init__(self, handler=None):
97118

98119
@property
99120
def level(self):
121+
"""Get the level."""
100122
return self._level
101123

102124
@level.setter
103125
def level(self, value):
126+
"""Set the level."""
104127
self._level = value
105128

106129
def log(self, level, format_string, *args):
130+
"""Log a message.
131+
level -- the priority level at which to log
132+
format_string -- the core mesage string with embedded formatting directives
133+
args -- arguments format_string.format(), can be empty
134+
"""
107135
if self._level != NOTSET and level >= self._level:
108136
self._handler.emit(level, format_string.format(*args))
109137

110138
def debug(self, format_string, *args):
139+
"""Log a debug message.
140+
format_string -- the core mesage string with embedded formatting directives
141+
args -- arguments format_string.format(), can be empty
142+
"""
111143
self.log(DEBUG, format_string, *args)
112144

113145
def info(self, format_string, *args):
146+
"""Log a info message.
147+
format_string -- the core mesage string with embedded formatting directives
148+
args -- arguments format_string.format(), can be empty
149+
"""
114150
self.log(INFO, format_string, *args)
115151

116152
def warning(self, format_string, *args):
153+
"""Log a warning message.
154+
format_string -- the core mesage string with embedded formatting directives
155+
args -- arguments format_string.format(), can be empty
156+
"""
117157
self.log(WARNING, format_string, *args)
118158

119159
def error(self, format_string, *args):
160+
"""Log a error message.
161+
format_string -- the core mesage string with embedded formatting directives
162+
args -- arguments format_string.format(), can be empty
163+
"""
120164
self.log(ERROR, format_string, *args)
121165

122166
def critical(self, format_string, *args):
167+
"""Log a critical message.
168+
format_string -- the core mesage string with embedded formatting directives
169+
args -- arguments format_string.format(), can be empty
170+
"""
123171
self.log(CRITICAL, format_string, *args)

adafruit_logger/uart_handler.py

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -57,8 +57,13 @@
5757
from adafruit_logger import LoggingHandler
5858

5959
class UartHandler(LoggingHandler):
60+
"""Send logging output to a serial port."""
6061

6162
def __init__(self, uart):
63+
"""Create an instance.
64+
uart -- the busio.UART instance to which to write messages
65+
"""
66+
6267
self._uart = uart
6368

6469
def format(self, level, msg):

0 commit comments

Comments
 (0)