Hi Stan!
Had a quick look at getting pmcollectl.py running with the
refactored python modules today. I've pushed some changes
to my dev branch in git://oss.sgi.com/nathans/pcp just to
give the flavour. These module changes also happen to get
us a few steps forward with pylint on pmcollectl (below),
but clearly lotsa issues remain there.
I'll leave it at that for now - too much more work in here
will mean a very difficult merge later, as I know you've
got lots of changes/refactoring pending too in pmcollectl,
with your atop-alike tool and pmsubsys additions there.
Still keen for your thoughts on the python refactoring in
the src/python subdir, if you get some time to have a look.
I'm punting that pmsubsys.pl might need to end up in there
as well? (if its to be shared by pmcollectl and pmatop?)
No rush on any of this, of course & I'll be away for a few
days from tomorrow till early next week too.
cheers.
--
Nathan
$ pylint pmcollectl.py
No config file found, using default configuration
************* Module pmcollectl
C: 47: Line too long (93/80)
C: 72: Line too long (96/80)
C:115: Line too long (81/80)
C:141: Line too long (186/80)
C:151: Line too long (101/80)
C:206: Line too long (86/80)
C:308: Line too long (81/80)
C:313: Line too long (84/80)
C:314: Line too long (89/80)
C:324: Line too long (83/80)
C:328: Line too long (91/80)
C:344: Line too long (130/80)
C:374: Line too long (129/80)
C:381: Line too long (81/80)
C:382: Line too long (84/80)
C:383: Line too long (85/80)
C:387: Line too long (81/80)
C:388: Line too long (84/80)
C:389: Line too long (85/80)
C:394: Line too long (81/80)
C:401: Line too long (81/80)
C:402: Line too long (84/80)
C:403: Line too long (85/80)
C:410: Line too long (81/80)
C:468: Line too long (84/80)
C:473: Line too long (89/80)
C:477: Line too long (109/80)
C:482: Line too long (85/80)
C:483: Line too long (89/80)
C:493: Line too long (148/80)
W:502: Bad indentation. Found 12 spaces, expected 8
W:503: Bad indentation. Found 12 spaces, expected 8
W:504: Bad indentation. Found 12 spaces, expected 8
W:505: Bad indentation. Found 16 spaces, expected 12
W:506: Bad indentation. Found 12 spaces, expected 8
W:507: Bad indentation. Found 12 spaces, expected 8
W:508: Bad indentation. Found 16 spaces, expected 12
W:509: Bad indentation. Found 12 spaces, expected 8
W:510: Bad indentation. Found 12 spaces, expected 8
W:512: Bad indentation. Found 12 spaces, expected 8
W:513: Bad indentation. Found 12 spaces, expected 8
W:514: Bad indentation. Found 12 spaces, expected 8
W:515: Bad indentation. Found 16 spaces, expected 12
W:516: Bad indentation. Found 12 spaces, expected 8
W:518: Bad indentation. Found 12 spaces, expected 8
W:520: Bad indentation. Found 12 spaces, expected 8
W:521: Bad indentation. Found 16 spaces, expected 12
W:522: Bad indentation. Found 20 spaces, expected 16
W:523: Bad indentation. Found 16 spaces, expected 12
W:524: Bad indentation. Found 20 spaces, expected 16
W:526: Bad indentation. Found 12 spaces, expected 8
W:527: Bad indentation. Found 12 spaces, expected 8
W:528: Bad indentation. Found 16 spaces, expected 12
W:529: Bad indentation. Found 12 spaces, expected 8
C:553: Line too long (88/80)
C:580: Line too long (85/80)
C:584: Line too long (94/80)
C:600: Line too long (135/80)
W:609: Bad indentation. Found 12 spaces, expected 8
W:611: Bad indentation. Found 12 spaces, expected 8
W:613: Bad indentation. Found 12 spaces, expected 8
W:615: Bad indentation. Found 12 spaces, expected 8
C:617: Line too long (112/80)
W:617: Bad indentation. Found 12 spaces, expected 8
C:618: Line too long (112/80)
W:618: Bad indentation. Found 12 spaces, expected 8
C:620: Line too long (83/80)
W:620: Bad indentation. Found 12 spaces, expected 8
C:636: Line too long (90/80)
C:637: Line too long (83/80)
C:639: Line too long (88/80)
C:640: Line too long (88/80)
C:641: Line too long (82/80)
C:642: Line too long (85/80)
C:643: Line too long (89/80)
C:644: Line too long (89/80)
C:645: Line too long (83/80)
C:646: Line too long (86/80)
C:706: Line too long (89/80)
C:710: Line too long (100/80)
C:713: Line too long (82/80)
C:716: Line too long (83/80)
C:726: Line too long (145/80)
C:741: Line too long (153/80)
C:742: Line too long (153/80)
C:752: Line too long (114/80)
C:798: Line too long (83/80)
C:802: Line too long (91/80)
C:818: Line too long (130/80)
W:827: Bad indentation. Found 12 spaces, expected 8
W:829: Bad indentation. Found 12 spaces, expected 8
W:831: Bad indentation. Found 12 spaces, expected 8
W:833: Bad indentation. Found 12 spaces, expected 8
C:835: Line too long (108/80)
W:835: Bad indentation. Found 12 spaces, expected 8
C:837: Line too long (96/80)
W:837: Bad indentation. Found 12 spaces, expected 8
C:842: Line too long (81/80)
C:845: Line too long (95/80)
C:855: Line too long (81/80)
C:862: Line too long (86/80)
C:872: Line too long (82/80)
C:874: Line too long (94/80)
C:875: Line too long (97/80)
C:881: Line too long (96/80)
C:882: Line too long (105/80)
C:883: Line too long (83/80)
C:884: Line too long (85/80)
C:972: Line too long (95/80)
C:994: Line too long (85/80)
C:1017: Line too long (106/80)
C:1043: Line too long (111/80)
C: 1: Too many lines in module (1059)
W:938: TODO: --subsys XYZ
W:166:round: Redefining built-in 'round'
C: 39: Invalid name "me" (should match (([A-Z_][A-Z0-9_]*)|(__.*__))$)
W: 41:check_code: Redefining name 'code' from outer scope (line 985)
W: 41:check_code: Redefining name 'pm' from outer scope (line 962)
C: 41:check_code: Missing docstring
C: 41:check_code: Invalid name "pm" (should match [a-z_][a-z0-9_]{2,30}$)
C: 41:check_code: Invalid name "pm" (should match [a-z_][a-z0-9_]{2,30}$)
C: 46:usage: Missing docstring
W: 77:get_atom_value: Redefining built-in 'type'
C: 71:get_atom_value: Missing docstring
W: 71:get_atom_value: Unused argument 'metric'
R: 71:get_atom_value: Too many return statements (13/6)
R: 71:get_atom_value: Too many branches (20/12)
W:120:get_stats: Redefining name 'code' from outer scope (line 985)
W:122:get_stats: Redefining name 'e' from outer scope (line 963)
W:132:get_stats: Redefining name 'i' from outer scope (line 893)
W:134:get_stats: Redefining name 'j' from outer scope (line 940)
R:115:get_stats: Too many local variables (17/15)
C:115:get_stats: Missing docstring
C:122:get_stats: Invalid name "e" (should match [a-z_][a-z0-9_]{2,30}$)
R:115:get_stats: Too many branches (15/12)
C:166:round: Missing docstring
C:173:get_dimension: Missing docstring
C:184:get_scalar_value: Missing docstring
W:194:record: Redefining built-in 'file'
W:194:record: Redefining name 'duration' from outer scope (line 898)
W:194:record: Redefining name 'pm' from outer scope (line 962)
C:194:record: Missing docstring
C:194:record: Invalid name "pm" (should match [a-z_][a-z0-9_]{2,30}$)
C:194:record: Invalid name "pm" (should match [a-z_][a-z0-9_]{2,30}$)
W:195:record: Using global for 'me' but no assignment is done
E:214:record: Undefined variable 'check_status'
W:222:record_add_creator: Redefining name 'i' from outer scope (line 893)
W:221:record_add_creator: Redefining name 'args' from outer scope (line 1013)
C:219:record_add_creator: Missing docstring
C:219:record_add_creator: Invalid name "fn" (should match
[a-z_][a-z0-9_]{2,30}$)
C:219:record_add_creator: Invalid name "fn" (should match
[a-z_][a-z0-9_]{2,30}$)
C:220:record_add_creator: Invalid name "f" (should match [a-z_][a-z0-9_]{2,30}$)
W:232:record_check_creator: Redefining name 'line' from outer scope (line 975)
C:230:record_check_creator: Missing docstring
C:230:record_check_creator: Invalid name "fn" (should match
[a-z_][a-z0-9_]{2,30}$)
C:230:record_check_creator: Invalid name "fn" (should match
[a-z_][a-z0-9_]{2,30}$)
C:231:record_check_creator: Invalid name "f" (should match
[a-z_][a-z0-9_]{2,30}$)
C:240:_subsys: Missing docstring
W:243:_subsys.set_verbosity: Redefining name 'verbosity' from outer scope (line
895)
C:243:_subsys.set_verbosity: Missing docstring
C:245:_subsys.get_stats: Missing docstring
W:249:_subsys.get_stats: Statement seems to have no effect
C:250:_subsys.get_total: Missing docstring
W:251:_subsys.get_total: Statement seems to have no effect
R:250:_subsys.get_total: Method could be a function
C:252:_subsys.print_header1: Missing docstring
C:259:_subsys.print_header2: Missing docstring
C:266:_subsys.print_header1_brief: Missing docstring
W:267:_subsys.print_header1_brief: Statement seems to have no effect
R:266:_subsys.print_header1_brief: Method could be a function
C:268:_subsys.print_header2_brief: Missing docstring
W:269:_subsys.print_header2_brief: Statement seems to have no effect
R:268:_subsys.print_header2_brief: Method could be a function
C:270:_subsys.print_header1_detail: Missing docstring
W:271:_subsys.print_header1_detail: Statement seems to have no effect
R:270:_subsys.print_header1_detail: Method could be a function
C:272:_subsys.print_header2_detail: Missing docstring
W:273:_subsys.print_header2_detail: Statement seems to have no effect
R:272:_subsys.print_header2_detail: Method could be a function
C:274:_subsys.print_header1_verbose: Missing docstring
W:275:_subsys.print_header1_verbose: Statement seems to have no effect
R:274:_subsys.print_header1_verbose: Method could be a function
C:276:_subsys.print_header2_verbose: Missing docstring
W:277:_subsys.print_header2_verbose: Statement seems to have no effect
R:276:_subsys.print_header2_verbose: Method could be a function
C:278:_subsys.print_line: Missing docstring
C:285:_subsys.print_brief: Missing docstring
W:286:_subsys.print_brief: Statement seems to have no effect
R:285:_subsys.print_brief: Method could be a function
C:287:_subsys.print_verbose: Missing docstring
W:288:_subsys.print_verbose: Statement seems to have no effect
R:287:_subsys.print_verbose: Method could be a function
C:289:_subsys.print_detail: Missing docstring
W:290:_subsys.print_detail: Statement seems to have no effect
R:289:_subsys.print_detail: Method could be a function
C:291:_subsys.divide_check: Missing docstring
R:291:_subsys.divide_check: Method could be a function
W:296:_subsys.setup_metrics: Redefining name 'pm' from outer scope (line 962)
C:296:_subsys.setup_metrics: Missing docstring
C:296:_subsys.setup_metrics: Invalid name "pm" (should match
[a-z_][a-z0-9_]{2,30}$)
C:296:_subsys.setup_metrics: Comma not followed by a space
def setup_metrics(self,pm):
^^
C:296:_subsys.setup_metrics: Invalid name "pm" (should match
[a-z_][a-z0-9_]{2,30}$)
W:297:_subsys.setup_metrics: Statement seems to have no effect
W:296:_subsys.setup_metrics: Unused argument 'pm'
R:296:_subsys.setup_metrics: Method could be a function
W:244:_subsys.set_verbosity: Attribute 'verbosity' defined outside __init__
C:303:_cpu: Missing docstring
W:304:_cpu.__init__: __init__ method from base class '_subsys' is not called
W:324:_cpu.setup_metrics: Redefining name 'code' from outer scope (line 985)
W:325:_cpu.setup_metrics: Redefining name 'e' from outer scope (line 963)
W:333:_cpu.setup_metrics: Redefining name 'i' from outer scope (line 893)
W:321:_cpu.setup_metrics: Redefining name 'j' from outer scope (line 940)
W:319:_cpu.setup_metrics: Redefining name 'pm' from outer scope (line 962)
C:319:_cpu.setup_metrics: Invalid name "pm" (should match
[a-z_][a-z0-9_]{2,30}$)
C:319:_cpu.setup_metrics: Comma not followed by a space
def setup_metrics(self,pm):
^^
C:319:_cpu.setup_metrics: Invalid name "pm" (should match
[a-z_][a-z0-9_]{2,30}$)
C:325:_cpu.setup_metrics: Invalid name "e" (should match [a-z_][a-z0-9_]{2,30}$)
C:328:_cpu.setup_metrics: Operator not preceded by a space
self.cpu_metrics_dict=dict((i,self.cpu_metrics.index(i)) for i in
self.cpu_metrics)
^
W:325:_cpu.setup_metrics: Unused variable 'e'
W:333:_cpu.setup_metrics: Unused variable 'i'
W:338:_cpu.dump_metrics: Redefining name 'i' from outer scope (line 893)
C:336:_cpu.dump_metrics: Missing docstring
C:346:_cpu.get_cpu_metric_value: Missing docstring
W:328:_cpu.setup_metrics: Attribute 'cpu_metrics_dict' defined outside __init__
W:353:_cpu.get_total: Attribute 'cpu_total' defined outside __init__
W:334:_cpu.setup_metrics: Attribute 'old_cpu_metric_value' defined outside
__init__
W:331:_cpu.setup_metrics: Attribute 'cpu_metric_desc' defined outside __init__
W:329:_cpu.setup_metrics: Attribute 'cpu_metric_name' defined outside __init__
W:333:_cpu.setup_metrics: Attribute 'cpu_metric_value' defined outside __init__
C:460:_interrupt: Missing docstring
W:461:_interrupt.__init__: __init__ method from base class '_subsys' is not
called
W:473:_interrupt.setup_metrics: Redefining name 'code' from outer scope (line
985)
W:474:_interrupt.setup_metrics: Redefining name 'e' from outer scope (line 963)
W:467:_interrupt.setup_metrics: Redefining name 'i' from outer scope (line 893)
W:470:_interrupt.setup_metrics: Redefining name 'j' from outer scope (line 940)
W:465:_interrupt.setup_metrics: Redefining name 'pm' from outer scope (line 962)
C:465:_interrupt.setup_metrics: Invalid name "pm" (should match
[a-z_][a-z0-9_]{2,30}$)
C:465:_interrupt.setup_metrics: Comma not followed by a space
def setup_metrics(self,pm):
^^
C:465:_interrupt.setup_metrics: Invalid name "pm" (should match
[a-z_][a-z0-9_]{2,30}$)
C:474:_interrupt.setup_metrics: Invalid name "e" (should match
[a-z_][a-z0-9_]{2,30}$)
C:477:_interrupt.setup_metrics: Operator not preceded by a space
self.interrupt_metrics_dict=dict((i,self.interrupt_metrics.index(i))
for i in self.interrupt_metrics)
^
W:474:_interrupt.setup_metrics: Unused variable 'e'
W:487:_interrupt.dump_metrics: Redefining name 'i' from outer scope (line 893)
C:485:_interrupt.dump_metrics: Missing docstring
C:495:_interrupt.get_interrupt_metric_value: Missing docstring
C:503:_interrupt.print_header1_brief: Invalid name "h" (should match
[a-z_][a-z0-9_]{2,30}$)
C:505:_interrupt.print_header1_brief: Invalid name "h" (should match
[a-z_][a-z0-9_]{2,30}$)
C:506:_interrupt.print_header1_brief: Invalid name "h" (should match
[a-z_][a-z0-9_]{2,30}$)
C:508:_interrupt.print_header1_brief: Invalid name "h" (should match
[a-z_][a-z0-9_]{2,30}$)
C:509:_interrupt.print_header1_brief: Invalid name "h" (should match
[a-z_][a-z0-9_]{2,30}$)
W:504:_interrupt.print_header1_brief: Unused variable 'k'
W:535:_interrupt.print_brief: Redefining name 'j' from outer scope (line 940)
C:532:_interrupt.print_brief: Operator not preceded by a space
_=self.interrupt_metrics_dict
^
W:542:_interrupt.print_detail: Redefining name 'j' from outer scope (line 940)
C:541:_interrupt.print_detail: Operator not preceded by a space
_=self.interrupt_metrics_dict
^
W:482:_interrupt.setup_metrics: Attribute 'interrupt_metric_value' defined
outside __init__
W:477:_interrupt.setup_metrics: Attribute 'interrupt_metrics_dict' defined
outside __init__
W:480:_interrupt.setup_metrics: Attribute 'int_metric_desc' defined outside
__init__
W:483:_interrupt.setup_metrics: Attribute 'old_interrupt_metric_value' defined
outside __init__
W:478:_interrupt.setup_metrics: Attribute 'int_metric_name' defined outside
__init__
C:564:_disk: Missing docstring
W:565:_disk.__init__: __init__ method from base class '_subsys' is not called
W:580:_disk.setup_metrics: Redefining name 'code' from outer scope (line 985)
W:581:_disk.setup_metrics: Redefining name 'e' from outer scope (line 963)
W:589:_disk.setup_metrics: Redefining name 'i' from outer scope (line 893)
W:577:_disk.setup_metrics: Redefining name 'j' from outer scope (line 940)
W:575:_disk.setup_metrics: Redefining name 'pm' from outer scope (line 962)
C:575:_disk.setup_metrics: Invalid name "pm" (should match
[a-z_][a-z0-9_]{2,30}$)
C:575:_disk.setup_metrics: Comma not followed by a space
def setup_metrics(self,pm):
^^
C:575:_disk.setup_metrics: Invalid name "pm" (should match
[a-z_][a-z0-9_]{2,30}$)
C:581:_disk.setup_metrics: Invalid name "e" (should match
[a-z_][a-z0-9_]{2,30}$)
C:584:_disk.setup_metrics: Operator not preceded by a space
self.disk_metrics_dict=dict((i,self.disk_metrics.index(i)) for i in
self.disk_metrics)
^
W:581:_disk.setup_metrics: Unused variable 'e'
W:589:_disk.setup_metrics: Unused variable 'i'
W:594:_disk.dump_metrics: Redefining name 'i' from outer scope (line 893)
C:592:_disk.dump_metrics: Missing docstring
C:602:_disk.get_disk_metric_value: Missing docstring
W:632:_disk.print_detail: Redefining name 'e' from outer scope (line 963)
W:628:_disk.print_detail: Redefining name 'j' from outer scope (line 940)
C:632:_disk.print_detail: Invalid name "e" (should match [a-z_][a-z0-9_]{2,30}$)
W:630:_disk.print_detail: Unused variable 'inst'
W:632:_disk.print_detail: Unused variable 'e'
W:587:_disk.setup_metrics: Attribute 'disk_metric_desc' defined outside __init__
W:590:_disk.setup_metrics: Attribute 'old_disk_metric_value' defined outside
__init__
W:585:_disk.setup_metrics: Attribute 'disk_metric_name' defined outside __init__
W:584:_disk.setup_metrics: Attribute 'disk_metrics_dict' defined outside
__init__
W:589:_disk.setup_metrics: Attribute 'disk_metric_value' defined outside
__init__
C:673:_memory: Missing docstring
W:674:_memory.__init__: __init__ method from base class '_subsys' is not called
W:706:_memory.setup_metrics: Redefining name 'code' from outer scope (line 985)
W:707:_memory.setup_metrics: Redefining name 'e' from outer scope (line 963)
W:715:_memory.setup_metrics: Redefining name 'i' from outer scope (line 893)
W:703:_memory.setup_metrics: Redefining name 'j' from outer scope (line 940)
W:701:_memory.setup_metrics: Redefining name 'pm' from outer scope (line 962)
C:701:_memory.setup_metrics: Invalid name "pm" (should match
[a-z_][a-z0-9_]{2,30}$)
C:701:_memory.setup_metrics: Comma not followed by a space
def setup_metrics(self,pm):
^^
C:701:_memory.setup_metrics: Invalid name "pm" (should match
[a-z_][a-z0-9_]{2,30}$)
C:707:_memory.setup_metrics: Invalid name "e" (should match
[a-z_][a-z0-9_]{2,30}$)
C:710:_memory.setup_metrics: Operator not preceded by a space
self.memory_metrics_dict=dict((i,self.memory_metrics.index(i)) for i in
self.memory_metrics)
^
W:707:_memory.setup_metrics: Unused variable 'e'
W:715:_memory.setup_metrics: Unused variable 'i'
W:720:_memory.dump_metrics: Redefining name 'i' from outer scope (line 893)
C:718:_memory.dump_metrics: Missing docstring
C:728:_memory.get_memory_metric_value: Missing docstring
W:710:_memory.setup_metrics: Attribute 'memory_metrics_dict' defined outside
__init__
W:715:_memory.setup_metrics: Attribute 'memory_metric_value' defined outside
__init__
W:716:_memory.setup_metrics: Attribute 'old_memory_metric_value' defined
outside __init__
W:711:_memory.setup_metrics: Attribute 'memory_metric_name' defined outside
__init__
W:713:_memory.setup_metrics: Attribute 'memory_metric_desc' defined outside
__init__
C:779:_net: Missing docstring
W:780:_net.__init__: __init__ method from base class '_subsys' is not called
W:798:_net.setup_metrics: Redefining name 'code' from outer scope (line 985)
W:799:_net.setup_metrics: Redefining name 'e' from outer scope (line 963)
W:807:_net.setup_metrics: Redefining name 'i' from outer scope (line 893)
W:795:_net.setup_metrics: Redefining name 'j' from outer scope (line 940)
W:793:_net.setup_metrics: Redefining name 'pm' from outer scope (line 962)
C:793:_net.setup_metrics: Invalid name "pm" (should match
[a-z_][a-z0-9_]{2,30}$)
C:793:_net.setup_metrics: Comma not followed by a space
def setup_metrics(self,pm):
^^
C:793:_net.setup_metrics: Invalid name "pm" (should match
[a-z_][a-z0-9_]{2,30}$)
C:799:_net.setup_metrics: Invalid name "e" (should match [a-z_][a-z0-9_]{2,30}$)
C:802:_net.setup_metrics: Operator not preceded by a space
self.net_metrics_dict=dict((i,self.net_metrics.index(i)) for i in
self.net_metrics)
^
W:799:_net.setup_metrics: Unused variable 'e'
W:807:_net.setup_metrics: Unused variable 'i'
W:812:_net.dump_metrics: Redefining name 'i' from outer scope (line 893)
C:810:_net.dump_metrics: Missing docstring
C:820:_net.get_net_metric_value: Missing docstring
W:867:_net.print_detail: Redefining name 'e' from outer scope (line 963)
W:862:_net.print_detail: Redefining name 'j' from outer scope (line 940)
C:867:_net.print_detail: Invalid name "e" (should match [a-z_][a-z0-9_]{2,30}$)
W:867:_net.print_detail: Unused variable 'e'
W:865:_net.print_detail: Unused variable 'inst'
W:802:_net.setup_metrics: Attribute 'net_metrics_dict' defined outside __init__
W:807:_net.setup_metrics: Attribute 'net_metric_value' defined outside __init__
W:808:_net.setup_metrics: Attribute 'old_net_metric_value' defined outside
__init__
W:803:_net.setup_metrics: Attribute 'net_metric_name' defined outside __init__
W:805:_net.setup_metrics: Attribute 'net_metric_desc' defined outside __init__
C:892: Invalid name "n_samples" (should match (([A-Z_][A-Z0-9_]*)|(__.*__))$)
C:894: Invalid name "subsys" (should match (([A-Z_][A-Z0-9_]*)|(__.*__))$)
C:895: Invalid name "verbosity" (should match (([A-Z_][A-Z0-9_]*)|(__.*__))$)
C:896: Invalid name "output_file" (should match (([A-Z_][A-Z0-9_]*)|(__.*__))$)
C:897: Invalid name "input_file" (should match (([A-Z_][A-Z0-9_]*)|(__.*__))$)
C:898: Invalid name "duration" (should match (([A-Z_][A-Z0-9_]*)|(__.*__))$)
C:899: Invalid name "interval_arg" (should match (([A-Z_][A-Z0-9_]*)|(__.*__))$)
C:900: Invalid name "duration_arg" (should match (([A-Z_][A-Z0-9_]*)|(__.*__))$)
C:902: Invalid name "ss" (should match (([A-Z_][A-Z0-9_]*)|(__.*__))$)
C:903: Invalid name "cpu" (should match (([A-Z_][A-Z0-9_]*)|(__.*__))$)
C:904: Invalid name "interrupt" (should match (([A-Z_][A-Z0-9_]*)|(__.*__))$)
C:905: Invalid name "disk" (should match (([A-Z_][A-Z0-9_]*)|(__.*__))$)
C:906: Invalid name "memory" (should match (([A-Z_][A-Z0-9_]*)|(__.*__))$)
C:907: Invalid name "net" (should match (([A-Z_][A-Z0-9_]*)|(__.*__))$)
C:909: Comma not followed by a space
s_options = {"d":[disk,"brief"],"D":[disk,"detail"],
^^
"c":[cpu,"brief"],"C":[cpu,"detail"],
"n":[net,"brief"],"N":[net,"detail"],
"j":[interrupt,"brief"],"J":[interrupt,"detail"],
"b":[ss,"brief"],"B":[ss,"detail"],
"m":[memory,"brief"],"M":[ss,"detail"],
"f":[ss,"brief"],"F":[ss,"detail"],
"y":[ss,"brief"],"Y":[ss,"detail"],
"Z":[ss,"detail"]
C:909: Invalid name "s_options" (should match (([A-Z_][A-Z0-9_]*)|(__.*__))$)
C:923: Invalid name "n_samples" (should match (([A-Z_][A-Z0-9_]*)|(__.*__))$)
C:925: Invalid name "n_samples" (should match (([A-Z_][A-Z0-9_]*)|(__.*__))$)
C:928: Invalid name "output_file" (should match (([A-Z_][A-Z0-9_]*)|(__.*__))$)
C:931: Invalid name "input_file" (should match (([A-Z_][A-Z0-9_]*)|(__.*__))$)
C:934: Invalid name "duration_arg" (should match (([A-Z_][A-Z0-9_]*)|(__.*__))$)
C:937: Invalid name "interval_arg" (should match (([A-Z_][A-Z0-9_]*)|(__.*__))$)
C:947: Invalid name "verbosity" (should match (([A-Z_][A-Z0-9_]*)|(__.*__))$)
W:958: Used builtin function 'map'
W:958:<lambda>: Lambda may not be necessary
C:962: Invalid name "pm" (should match (([A-Z_][A-Z0-9_]*)|(__.*__))$)
C:968: Invalid name "lol" (should match (([A-Z_][A-Z0-9_]*)|(__.*__))$)
C:977: Invalid name "archive" (should match (([A-Z_][A-Z0-9_]*)|(__.*__))$)
C:979: Invalid name "pm" (should match (([A-Z_][A-Z0-9_]*)|(__.*__))$)
C:985: Invalid name "code" (should match (([A-Z_][A-Z0-9_]*)|(__.*__))$)
C:985: Invalid name "timeval" (should match (([A-Z_][A-Z0-9_]*)|(__.*__))$)
C:985: Invalid name "errmsg" (should match (([A-Z_][A-Z0-9_]*)|(__.*__))$)
C:989: Invalid name "duration" (should match (([A-Z_][A-Z0-9_]*)|(__.*__))$)
C:991: Invalid name "code" (should match (([A-Z_][A-Z0-9_]*)|(__.*__))$)
C:991: Invalid name "delta" (should match (([A-Z_][A-Z0-9_]*)|(__.*__))$)
C:991: Invalid name "errmsg" (should match (([A-Z_][A-Z0-9_]*)|(__.*__))$)
C:994: Invalid name "configuration" (should match
(([A-Z_][A-Z0-9_]*)|(__.*__))$)
C:1000: Invalid name "duration" (should match (([A-Z_][A-Z0-9_]*)|(__.*__))$)
C:1002: Invalid name "duration" (should match (([A-Z_][A-Z0-9_]*)|(__.*__))$)
C:1003: Invalid name "client" (should match (([A-Z_][A-Z0-9_]*)|(__.*__))$)
W:1012: No exception type(s) specified
C:1025: More than one statement on a single line
C:1029: More than one statement on a single line
C:1033: Invalid name "n" (should match (([A-Z_][A-Z0-9_]*)|(__.*__))$)
C:1035: Invalid name "host" (should match (([A-Z_][A-Z0-9_]*)|(__.*__))$)
C:1037: Invalid name "host" (should match (([A-Z_][A-Z0-9_]*)|(__.*__))$)
C:1046: More than one statement on a single line
W:1059: Statement seems to have no effect
[...]
Global evaluation
-----------------
Your code has been rated at 3.73/10 (previous run: -0.45/10)
|