PluginVulture.py

Sat, 03 Oct 2015 19:07:40 +0200

author
Detlev Offenbach <detlev@die-offenbachs.de>
date
Sat, 03 Oct 2015 19:07:40 +0200
changeset 1
ea6aed49cd69
parent 0
9b743f8d436b
child 2
b517a1c5d5de
permissions
-rw-r--r--

Started implementing the vulture checker.

1
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
1 # -*- coding: utf-8 -*-
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
2
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
3 # Copyright (c) 2015 Detlev Offenbach <detlev@die-offenbachs.de>
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
4 #
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
5
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
6 """
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
7 Module implementing the radon code metrics plug-in.
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
8 """
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
9
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
10 from __future__ import unicode_literals
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
11
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
12 import os
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
13
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
14 from PyQt5.QtCore import pyqtSignal, QObject, QTranslator
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
15
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
16 from E5Gui.E5Application import e5App
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
17 from E5Gui.E5Action import E5Action
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
18
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
19 import Preferences
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
20
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
21 # Start-Of-Header
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
22 name = "PluginVulture"
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
23 author = "Detlev Offenbach <detlev@die-offenbachs.de>"
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
24 autoactivate = True
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
25 deactivateable = True
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
26 version = "0.1.0"
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
27 className = "VulturePlugin"
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
28 packageName = "VultureChecker"
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
29 shortDescription = "Plug-in to detect unused code using the vulture library"
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
30 longDescription = (
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
31 """Plug-in to detect unused code using the vulture library."""
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
32 )
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
33 needsRestart = False
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
34 pyqtApi = 2
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
35 python2Compatible = True
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
36 # End-Of-Header
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
37
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
38 error = ""
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
39
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
40
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
41 class VulturePlugin(QObject):
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
42 """
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
43 Class documentation goes here.
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
44
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
45 @signal metricsDone(str, dict) emitted when the code metrics were
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
46 determined for a file
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
47 @signal error(str, str) emitted in case of an error
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
48 @signal batchFinished() emitted when a style check batch is done
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
49 """
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
50 batchFinished = pyqtSignal()
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
51
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
52 def __init__(self, ui):
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
53 """
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
54 Constructor
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
55
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
56 @param ui reference to the user interface object (UI.UserInterface)
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
57 """
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
58 super(VulturePlugin, self).__init__(ui)
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
59 self.__ui = ui
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
60 self.__initialize()
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
61
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
62 self.backgroundService = e5App().getObject("BackgroundService")
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
63
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
64 path = os.path.join(os.path.dirname(__file__), packageName)
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
65 try:
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
66 self.backgroundService.serviceConnect(
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
67 'vulture', 'Python2', path, 'VultureCheckerService',
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
68 self.vultureCheckDone,
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
69 onErrorCallback=self.serviceErrorPy2,
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
70 onBatchDone=self.batchJobDone)
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
71 self.backgroundService.serviceConnect(
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
72 'vulture', 'Python3', path, 'VultureCheckerService',
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
73 self.vultureCheckDone,
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
74 onErrorCallback=self.serviceErrorPy3,
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
75 onBatchDone=self.batchJobDone)
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
76 except TypeError:
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
77 # backward compatibility for eric 6.0
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
78 self.backgroundService.serviceConnect(
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
79 'vulture', 'Python2', path, 'VultureCheckerService',
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
80 self.vultureCheckDone,
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
81 onErrorCallback=self.serviceErrorPy2)
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
82 self.backgroundService.serviceConnect(
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
83 'vulture', 'Python3', path, 'VultureCheckerService',
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
84 self.vultureCheckDone,
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
85 onErrorCallback=self.serviceErrorPy3)
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
86
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
87 self.queuedBatches = []
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
88 self.batchesFinished = True
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
89
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
90 self.__translator = None
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
91 self.__loadTranslator()
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
92
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
93 def __serviceError(self, fn, msg):
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
94 """
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
95 Private slot handling service errors.
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
96
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
97 @param fn file name
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
98 @type str
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
99 @param msg message text
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
100 @type str
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
101 """
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
102 self.error.emit(fn, msg)
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
103
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
104 def serviceErrorPy2(self, fx, lang, fn, msg):
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
105 """
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
106 Public slot handling service errors for Python 2.
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
107
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
108 @param fx service name
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
109 @type str
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
110 @param lang language
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
111 @type str
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
112 @param fn file name
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
113 @type str
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
114 @param msg message text
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
115 @type str
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
116 """
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
117 if fx in ['vulture', 'batch_vulture'] and \
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
118 lang == 'Python2':
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
119 if fx == 'vulture':
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
120 self.__serviceError(fn, msg)
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
121 else:
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
122 self.__serviceError(self.tr("Python 2 batch job"), msg)
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
123 self.batchJobDone(fx, lang)
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
124
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
125 def serviceErrorPy3(self, fx, lang, fn, msg):
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
126 """
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
127 Public slot handling service errors for Python 3.
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
128
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
129 @param fx service name
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
130 @type str
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
131 @param lang language
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
132 @type str
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
133 @param fn file name
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
134 @type str
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
135 @param msg message text
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
136 @type str
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
137 """
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
138 if fx in ['vulture', 'batch_vulture'] and \
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
139 lang == 'Python3':
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
140 if fx == 'vulture':
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
141 self.__serviceError(fn, msg)
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
142 else:
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
143 self.__serviceError(self.tr("Python 3 batch job"), msg)
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
144 self.batchJobDone(fx, lang)
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
145
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
146 def batchJobDone(self, fx, lang):
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
147 """
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
148 Public slot handling the completion of a batch job.
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
149
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
150 @param fx service name
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
151 @type str
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
152 @param lang language
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
153 @type str
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
154 """
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
155 if fx in ['vulture', 'batch_vulture']:
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
156 if lang in self.queuedBatches:
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
157 self.queuedBatches.remove(lang)
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
158 # prevent sending the signal multiple times
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
159 if len(self.queuedBatches) == 0 and not self.batchesFinished:
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
160 self.batchFinished.emit()
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
161 self.batchesFinished = True
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
162
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
163 def __initialize(self):
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
164 """
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
165 Private slot to (re)initialize the plug-in.
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
166 """
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
167 self.__projectAct = None
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
168 self.__projectVultureCheckerDialog = None
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
169
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
170 def vultureCheck(self, lang, filenames):
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
171 """
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
172 Public method to prepare a vulture check for a Python project.
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
173
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
174 @param lang language of the files or None to determine by internal
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
175 algorithm
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
176 @type str or None
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
177 @param filenames list of file names to include in the check
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
178 @type list of str
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
179 """
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
180 # TODO: implement this
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
181
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
182 def activate(self):
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
183 """
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
184 Public method to activate this plug-in.
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
185
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
186 @return tuple of None and activation status (boolean)
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
187 """
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
188 global error
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
189 error = "" # clear previous error
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
190
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
191 menu = e5App().getObject("Project").getMenu("Checks")
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
192 if menu:
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
193 self.__projectAct = E5Action(
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
194 self.tr('Check Unused Code'),
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
195 self.tr('&Unused Code...'), 0, 0,
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
196 self, 'project_check_vulture')
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
197 self.__projectAct.setStatusTip(
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
198 self.tr('Check for unused code'))
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
199 self.__projectAct.setWhatsThis(self.tr(
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
200 """<b>Check Unused Code...</b>"""
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
201 """<p>This checks a Python project for unused code.</p>"""
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
202 ))
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
203 self.__projectAct.triggered.connect(
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
204 self.__projectVultureCheck)
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
205 e5App().getObject("Project").addE5Actions([self.__projectAct])
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
206 menu.addAction(self.__projectAct)
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
207
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
208 e5App().getObject("Project").showMenu.connect(self.__projectShowMenu)
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
209 e5App().getObject("Project").projectClosed.connect(
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
210 self.__projectClosed)
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
211
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
212 return None, True
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
213
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
214 def deactivate(self):
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
215 """
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
216 Public method to deactivate this plug-in.
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
217 """
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
218 e5App().getObject("Project").showMenu.disconnect(
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
219 self.__projectShowMenu)
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
220 e5App().getObject("Project").projectClosed.disconnect(
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
221 self.__projectClosed)
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
222
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
223 menu = e5App().getObject("Project").getMenu("Show")
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
224 if menu:
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
225 if self.__projectAct is not None:
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
226 menu.removeAction(self.__projectAct)
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
227 e5App().getObject("Project").removeE5Actions(
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
228 [self.self.__projectAct])
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
229
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
230 def __loadTranslator(self):
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
231 """
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
232 Private method to load the translation file.
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
233 """
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
234 if self.__ui is not None:
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
235 loc = self.__ui.getLocale()
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
236 if loc and loc != "C":
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
237 locale_dir = os.path.join(
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
238 os.path.dirname(__file__), "VultureChecker", "i18n")
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
239 translation = "vulture_{0}".format(loc)
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
240 translator = QTranslator(None)
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
241 loaded = translator.load(translation, locale_dir)
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
242 if loaded:
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
243 self.__translator = translator
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
244 e5App().installTranslator(self.__translator)
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
245 else:
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
246 print("Warning: translation file '{0}' could not be"
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
247 " loaded.".format(translation))
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
248 print("Using default.")
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
249
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
250 def __projectShowMenu(self, menuName, menu):
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
251 """
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
252 Private slot called, when the the project menu or a submenu is
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
253 about to be shown.
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
254
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
255 @param menuName name of the menu to be shown
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
256 @type str
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
257 @param menu reference to the menu
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
258 @type QMenu
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
259 """
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
260 if menuName == "Check":
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
261 if self.__projectAct is not None:
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
262 self.__projectAct.setEnabled(
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
263 e5App().getObject("Project").getProjectLanguage() in
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
264 ["Python3", "Python2", "Python"])
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
265
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
266 def __projectVultureCheck(self):
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
267 """
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
268 Private slot used to check the project for unused code.
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
269 """
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
270 project = e5App().getObject("Project")
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
271 project.saveAllScripts()
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
272 ppath = project.getProjectPath()
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
273 files = [os.path.join(ppath, file)
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
274 for file in project.pdata["SOURCES"]
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
275 if file.endswith(
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
276 tuple(Preferences.getPython("Python3Extensions")) +
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
277 tuple(Preferences.getPython("PythonExtensions")))]
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
278
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
279 if self.__projectVultureCheckerDialog is None:
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
280 from VultureChecker.VultureCheckerDialog import \
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
281 VultureCheckerDialog
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
282 self.__projectRawMetricsDialog = VultureCheckerDialog(self)
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
283 self.__projectVultureCheckerDialog.show()
ea6aed49cd69 Started implementing the vulture checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
284 self.__projectVultureCheckerDialog.prepare(files, project)

eric ide

mercurial