Removed support for Python2. release-3.0.0

Tue, 23 Jun 2020 17:33:21 +0200

author
Detlev Offenbach <detlev@die-offenbachs.de>
date
Tue, 23 Jun 2020 17:33:21 +0200
changeset 62
4a69da851bd2
parent 61
9d01e990bb27
child 63
3a84d0fb4a59

Removed support for Python2.

ChangeLog file | annotate | diff | comparison | revisions
PluginCheckerVulture.e4p file | annotate | diff | comparison | revisions
PluginVulture.py file | annotate | diff | comparison | revisions
PluginVulture.zip file | annotate | diff | comparison | revisions
VultureChecker/Documentation/source/Plugin_Checker_Vulture.PluginVulture.html file | annotate | diff | comparison | revisions
VultureChecker/Documentation/source/Plugin_Checker_Vulture.VultureChecker.EditWhiteListDialog.html file | annotate | diff | comparison | revisions
VultureChecker/Documentation/source/Plugin_Checker_Vulture.VultureChecker.VultureCheckerDialog.html file | annotate | diff | comparison | revisions
VultureChecker/Documentation/source/Plugin_Checker_Vulture.VultureChecker.VultureCheckerService.html file | annotate | diff | comparison | revisions
VultureChecker/Documentation/source/index-Plugin_Checker_Vulture.VultureChecker.html file | annotate | diff | comparison | revisions
VultureChecker/Documentation/source/index-Plugin_Checker_Vulture.html file | annotate | diff | comparison | revisions
VultureChecker/Documentation/source/index.html file | annotate | diff | comparison | revisions
VultureChecker/EditWhiteListDialog.py file | annotate | diff | comparison | revisions
VultureChecker/VultureCheckerDialog.py file | annotate | diff | comparison | revisions
VultureChecker/VultureCheckerService.py file | annotate | diff | comparison | revisions
VultureChecker/i18n/vulture_de.ts file | annotate | diff | comparison | revisions
VultureChecker/i18n/vulture_en.ts file | annotate | diff | comparison | revisions
VultureChecker/i18n/vulture_es.ts file | annotate | diff | comparison | revisions
VultureChecker/i18n/vulture_ru.ts file | annotate | diff | comparison | revisions
--- a/ChangeLog	Wed Jan 01 11:58:52 2020 +0100
+++ b/ChangeLog	Tue Jun 23 17:33:21 2020 +0200
@@ -1,5 +1,8 @@
 ChangeLog
 ---------
+Version 3.0.0:
+- removed support for Python2
+
 Version 2.0.1:
 - updated Russian translations
 
--- a/PluginCheckerVulture.e4p	Wed Jan 01 11:58:52 2020 +0100
+++ b/PluginCheckerVulture.e4p	Tue Jun 23 17:33:21 2020 +0200
@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!DOCTYPE Project SYSTEM "Project-5.1.dtd">
 <!-- eric project file for project PluginCheckerVulture -->
-<!-- Copyright (C) 2018 Detlev Offenbach, detlev@die-offenbachs.de -->
+<!-- Copyright (C) 2020 Detlev Offenbach, detlev@die-offenbachs.de -->
 <Project version="5.1">
   <Language>en_US</Language>
   <Hash>ba39fb6c6b6bbf35870f5dac20e42e8e562ca22b</Hash>
@@ -239,6 +239,25 @@
         <value>
           <dict>
             <key>
+              <string>AnnotationsChecker</string>
+            </key>
+            <value>
+              <dict>
+                <key>
+                  <string>MaximumComplexity</string>
+                </key>
+                <value>
+                  <int>3</int>
+                </value>
+                <key>
+                  <string>MinimumCoverage</string>
+                </key>
+                <value>
+                  <int>75</int>
+                </value>
+              </dict>
+            </value>
+            <key>
               <string>BlankLines</string>
             </key>
             <value>
@@ -279,6 +298,19 @@
               </dict>
             </value>
             <key>
+              <string>CommentedCodeChecker</string>
+            </key>
+            <value>
+              <dict>
+                <key>
+                  <string>Aggressive</string>
+                </key>
+                <value>
+                  <bool>False</bool>
+                </value>
+              </dict>
+            </value>
+            <key>
               <string>CopyrightAuthor</string>
             </key>
             <value>
@@ -297,6 +329,12 @@
               <string>eric</string>
             </value>
             <key>
+              <string>EnabledCheckerCategories</string>
+            </key>
+            <value>
+              <string>C, D, E, M, N, S, W</string>
+            </value>
+            <key>
               <string>ExcludeFiles</string>
             </key>
             <value>
@@ -306,7 +344,7 @@
               <string>ExcludeMessages</string>
             </key>
             <value>
-              <string>C101, E265, E266, E305, E402, M201, M811, N802, N803, N807, N808, N821, W293, W504</string>
+              <string>C101,E265,E266,E305,E402,M201,M811,N802,N803,N807,N808,N821,W293,W504</string>
             </value>
             <key>
               <string>FixCodes</string>
@@ -324,7 +362,7 @@
               <string>FutureChecker</string>
             </key>
             <value>
-              <string>unicode_literals</string>
+              <string></string>
             </value>
             <key>
               <string>HangClosing</string>
@@ -357,6 +395,12 @@
               <int>10</int>
             </value>
             <key>
+              <string>MaxDocLineLength</string>
+            </key>
+            <value>
+              <int>79</int>
+            </value>
+            <key>
               <string>MaxLineLength</string>
             </key>
             <value>
@@ -375,6 +419,91 @@
               <bool>True</bool>
             </value>
             <key>
+              <string>SecurityChecker</string>
+            </key>
+            <value>
+              <dict>
+                <key>
+                  <string>CheckTypedException</string>
+                </key>
+                <value>
+                  <bool>False</bool>
+                </value>
+                <key>
+                  <string>HardcodedTmpDirectories</string>
+                </key>
+                <value>
+                  <list>
+                    <string>/tmp</string>
+                    <string>/var/tmp</string>
+                    <string>/dev/shm</string>
+                    <string>~/tmp</string>
+                  </list>
+                </value>
+                <key>
+                  <string>InsecureHashes</string>
+                </key>
+                <value>
+                  <list>
+                    <string>md4</string>
+                    <string>md5</string>
+                    <string>sha</string>
+                    <string>sha1</string>
+                  </list>
+                </value>
+                <key>
+                  <string>InsecureSslProtocolVersions</string>
+                </key>
+                <value>
+                  <list>
+                    <string>PROTOCOL_SSLv2</string>
+                    <string>SSLv2_METHOD</string>
+                    <string>SSLv23_METHOD</string>
+                    <string>PROTOCOL_SSLv3</string>
+                    <string>PROTOCOL_TLSv1</string>
+                    <string>SSLv3_METHOD</string>
+                    <string>TLSv1_METHOD</string>
+                  </list>
+                </value>
+                <key>
+                  <string>WeakKeySizeDsaHigh</string>
+                </key>
+                <value>
+                  <string>1024</string>
+                </value>
+                <key>
+                  <string>WeakKeySizeDsaMedium</string>
+                </key>
+                <value>
+                  <string>2048</string>
+                </value>
+                <key>
+                  <string>WeakKeySizeEcHigh</string>
+                </key>
+                <value>
+                  <string>160</string>
+                </value>
+                <key>
+                  <string>WeakKeySizeEcMedium</string>
+                </key>
+                <value>
+                  <string>224</string>
+                </value>
+                <key>
+                  <string>WeakKeySizeRsaHigh</string>
+                </key>
+                <value>
+                  <string>1024</string>
+                </value>
+                <key>
+                  <string>WeakKeySizeRsaMedium</string>
+                </key>
+                <value>
+                  <string>2048</string>
+                </value>
+              </dict>
+            </value>
+            <key>
               <string>ShowIgnored</string>
             </key>
             <value>
--- a/PluginVulture.py	Wed Jan 01 11:58:52 2020 +0100
+++ b/PluginVulture.py	Tue Jun 23 17:33:21 2020 +0200
@@ -7,8 +7,6 @@
 Module implementing the vulture plug-in.
 """
 
-from __future__ import unicode_literals
-
 import os
 
 from PyQt5.QtCore import pyqtSignal, QObject, QTranslator
@@ -24,7 +22,7 @@
 author = "Detlev Offenbach <detlev@die-offenbachs.de>"
 autoactivate = True
 deactivateable = True
-version = "2.0.1"
+version = "3.0.0"
 className = "VulturePlugin"
 packageName = "VultureChecker"
 shortDescription = "Plug-in to detect unused code using the vulture library"
@@ -33,7 +31,6 @@
 )
 needsRestart = False
 pyqtApi = 2
-python2Compatible = True
 # End-Of-Header
 
 error = ""
@@ -65,29 +62,11 @@
         self.backgroundService = e5App().getObject("BackgroundService")
         
         path = os.path.join(os.path.dirname(__file__), packageName)
-        try:
-            self.backgroundService.serviceConnect(
-                'vulture', 'Python2', path, 'VultureCheckerService',
-                self.vultureCheckDone,
-                onErrorCallback=self.serviceErrorPy2,
-                onBatchDone=self.batchJobDone)
-            self.backgroundService.serviceConnect(
-                'vulture', 'Python3', path, 'VultureCheckerService',
-                self.vultureCheckDone,
-                onErrorCallback=self.serviceErrorPy3,
-                onBatchDone=self.batchJobDone)
-            self.hasBatch = True
-        except TypeError:
-            # backward compatibility for eric 6.0
-            self.backgroundService.serviceConnect(
-                'vulture', 'Python2', path, 'VultureCheckerService',
-                self.vultureCheckDone,
-                onErrorCallback=self.serviceErrorPy2)
-            self.backgroundService.serviceConnect(
-                'vulture', 'Python3', path, 'VultureCheckerService',
-                self.vultureCheckDone,
-                onErrorCallback=self.serviceErrorPy3)
-            self.hasBatch = False
+        self.backgroundService.serviceConnect(
+            'vulture', 'Python3', path, 'VultureCheckerService',
+            self.vultureCheckDone,
+            onErrorCallback=self.serviceErrorPy3,
+            onBatchDone=self.batchJobDone)
         
         self.queuedBatches = []
         self.batchesFinished = True
@@ -106,27 +85,6 @@
         """
         self.error.emit(fn, msg)
     
-    def serviceErrorPy2(self, fx, lang, fn, msg):
-        """
-        Public slot handling service errors for Python 2.
-        
-        @param fx service name
-        @type str
-        @param lang language
-        @type str
-        @param fn file name
-        @type str
-        @param msg message text
-        @type str
-        """
-        if fx in ['vulture', 'batch_vulture'] and \
-                lang == 'Python2':
-            if fx == 'vulture':
-                self.__serviceError(fn, msg)
-            else:
-                self.__serviceError(self.tr("Python 2 batch job"), msg)
-                self.batchJobDone(fx, lang)
-    
     def serviceErrorPy3(self, fx, lang, fn, msg):
         """
         Public slot handling service errors for Python 3.
@@ -140,8 +98,7 @@
         @param msg message text
         @type str
         """
-        if fx in ['vulture', 'batch_vulture'] and \
-                lang == 'Python3':
+        if fx in ['vulture', 'batch_vulture'] and lang == 'Python3':
             if fx == 'vulture':
                 self.__serviceError(fn, msg)
             else:
@@ -197,7 +154,7 @@
         """
         if lang is None:
             lang = 'Python{0}'.format(determinePythonVersion(filename, source))
-        if lang not in ['Python2', 'Python3']:
+        if lang != 'Python3':
             return
         
         self.backgroundService.enqueueRequest(
@@ -213,30 +170,27 @@
         @type (str, str)
         """
         data = {
-            "Python2": [],
             "Python3": [],
         }
         for filename, source in argumentsList:
             lang = 'Python{0}'.format(determinePythonVersion(filename, source))
-            if lang not in ['Python2', 'Python3']:
+            if lang != 'Python3':
                 continue
             else:
                 data[lang].append((filename, source))
         
         self.queuedBatches = []
-        for lang in ['Python2', 'Python3']:
-            if data[lang]:
-                self.queuedBatches.append(lang)
-                self.backgroundService.enqueueRequest('batch_vulture', lang,
-                                                      "", data[lang])
-                self.batchesFinished = False
+        if data['Python3']:
+            self.queuedBatches.append('Python3')
+            self.backgroundService.enqueueRequest(
+                'batch_vulture', 'Python3', "", data['Python3'])
+            self.batchesFinished = False
     
     def cancelVultureCheckBatch(self):
         """
         Public method to cancel all batch jobs.
         """
-        for lang in ['Python2', 'Python3']:
-            self.backgroundService.requestCancel('batch_vulture', lang)
+        self.backgroundService.requestCancel('batch_vulture', 'Python3')
     
     def activate(self):
         """
@@ -321,8 +275,9 @@
         if menuName == "Check":
             if self.__projectAct is not None:
                 self.__projectAct.setEnabled(
-                    e5App().getObject("Project").getProjectLanguage() in
-                    ["Python3", "Python2", "Python"])
+                    e5App().getObject("Project")
+                    .getProjectLanguage() == "Python3"
+                )
     
     def __projectVultureCheck(self):
         """
@@ -338,8 +293,9 @@
                      tuple(Preferences.getPython("PythonExtensions")))]
         
         if self.__projectVultureCheckerDialog is None:
-            from VultureChecker.VultureCheckerDialog import \
+            from VultureChecker.VultureCheckerDialog import (
                 VultureCheckerDialog
+            )
             self.__projectVultureCheckerDialog = VultureCheckerDialog(self)
         self.__projectVultureCheckerDialog.show()
         self.__projectVultureCheckerDialog.prepare(files, project)
@@ -348,7 +304,7 @@
         """
         Private slot to handle closing a project.
         """
-        self.__projectVultureCheckerDialog and \
+        if self.__projectVultureCheckerDialog:
             self.__projectVultureCheckerDialog.clear()
 
 #
Binary file PluginVulture.zip has changed
--- a/VultureChecker/Documentation/source/Plugin_Checker_Vulture.PluginVulture.html	Wed Jan 01 11:58:52 2020 +0100
+++ b/VultureChecker/Documentation/source/Plugin_Checker_Vulture.PluginVulture.html	Tue Jun 23 17:33:21 2020 +0200
@@ -18,41 +18,53 @@
 
 </style>
 </head>
-<body><a NAME="top" ID="top"></a>
+<body>
+<a NAME="top" ID="top"></a>
 <h1>Plugin_Checker_Vulture.PluginVulture</h1>
+
 <p>
 Module implementing the vulture plug-in.
 </p>
 <h3>Global Attributes</h3>
+
 <table>
-<tr><td>author</td></tr><tr><td>autoactivate</td></tr><tr><td>className</td></tr><tr><td>deactivateable</td></tr><tr><td>error</td></tr><tr><td>longDescription</td></tr><tr><td>name</td></tr><tr><td>needsRestart</td></tr><tr><td>packageName</td></tr><tr><td>pyqtApi</td></tr><tr><td>python2Compatible</td></tr><tr><td>shortDescription</td></tr><tr><td>version</td></tr>
+<tr><td>author</td></tr><tr><td>autoactivate</td></tr><tr><td>className</td></tr><tr><td>deactivateable</td></tr><tr><td>error</td></tr><tr><td>longDescription</td></tr><tr><td>name</td></tr><tr><td>needsRestart</td></tr><tr><td>packageName</td></tr><tr><td>pyqtApi</td></tr><tr><td>shortDescription</td></tr><tr><td>version</td></tr>
 </table>
 <h3>Classes</h3>
+
 <table>
+
 <tr>
 <td><a href="#VulturePlugin">VulturePlugin</a></td>
 <td>Class documentation goes here.</td>
 </tr>
 </table>
 <h3>Functions</h3>
+
 <table>
 <tr><td>None</td></tr>
 </table>
-<hr /><hr />
+<hr />
+<hr />
 <a NAME="VulturePlugin" ID="VulturePlugin"></a>
 <h2>VulturePlugin</h2>
+
 <p>
     Class documentation goes here.
-</p><h3>Signals</h3>
+</p>
+<h3>Signals</h3>
 <dl>
+
 <dt>analysisDone(str, dict)</dt>
 <dd>
 emitted when the code analysis has
         been completed for a file
-</dd><dt>batchFinished()</dt>
+</dd>
+<dt>batchFinished()</dt>
 <dd>
 emitted when a style check batch is done
-</dd><dt>error(str, str)</dt>
+</dd>
+<dt>error(str, str)</dt>
 <dd>
 emitted in case of an error
 </dd>
@@ -60,236 +72,289 @@
 <h3>Derived from</h3>
 QObject
 <h3>Class Attributes</h3>
+
 <table>
 <tr><td>None</td></tr>
 </table>
 <h3>Class Methods</h3>
+
 <table>
 <tr><td>None</td></tr>
 </table>
 <h3>Methods</h3>
+
 <table>
+
 <tr>
 <td><a href="#VulturePlugin.__init__">VulturePlugin</a></td>
 <td>Constructor</td>
-</tr><tr>
+</tr>
+<tr>
 <td><a href="#VulturePlugin.__initialize">__initialize</a></td>
 <td>Private slot to (re)initialize the plug-in.</td>
-</tr><tr>
+</tr>
+<tr>
 <td><a href="#VulturePlugin.__loadTranslator">__loadTranslator</a></td>
 <td>Private method to load the translation file.</td>
-</tr><tr>
+</tr>
+<tr>
 <td><a href="#VulturePlugin.__projectClosed">__projectClosed</a></td>
 <td>Private slot to handle closing a project.</td>
-</tr><tr>
+</tr>
+<tr>
 <td><a href="#VulturePlugin.__projectShowMenu">__projectShowMenu</a></td>
 <td>Private slot called, when the the project menu or a submenu is about to be shown.</td>
-</tr><tr>
+</tr>
+<tr>
 <td><a href="#VulturePlugin.__projectVultureCheck">__projectVultureCheck</a></td>
 <td>Private slot used to check the project for unused code.</td>
-</tr><tr>
+</tr>
+<tr>
 <td><a href="#VulturePlugin.__serviceError">__serviceError</a></td>
 <td>Private slot handling service errors.</td>
-</tr><tr>
+</tr>
+<tr>
 <td><a href="#VulturePlugin.activate">activate</a></td>
 <td>Public method to activate this plug-in.</td>
-</tr><tr>
+</tr>
+<tr>
 <td><a href="#VulturePlugin.batchJobDone">batchJobDone</a></td>
 <td>Public slot handling the completion of a batch job.</td>
-</tr><tr>
+</tr>
+<tr>
 <td><a href="#VulturePlugin.cancelVultureCheckBatch">cancelVultureCheckBatch</a></td>
 <td>Public method to cancel all batch jobs.</td>
-</tr><tr>
+</tr>
+<tr>
 <td><a href="#VulturePlugin.deactivate">deactivate</a></td>
 <td>Public method to deactivate this plug-in.</td>
-</tr><tr>
-<td><a href="#VulturePlugin.serviceErrorPy2">serviceErrorPy2</a></td>
-<td>Public slot handling service errors for Python 2.</td>
-</tr><tr>
+</tr>
+<tr>
 <td><a href="#VulturePlugin.serviceErrorPy3">serviceErrorPy3</a></td>
 <td>Public slot handling service errors for Python 3.</td>
-</tr><tr>
+</tr>
+<tr>
 <td><a href="#VulturePlugin.vultureCheck">vultureCheck</a></td>
 <td>Public method to prepare a vulture check for a Python project.</td>
-</tr><tr>
+</tr>
+<tr>
 <td><a href="#VulturePlugin.vultureCheckBatch">vultureCheckBatch</a></td>
 <td>Public method to prepare a vulture check for a Python project using the batch mode.</td>
-</tr><tr>
+</tr>
+<tr>
 <td><a href="#VulturePlugin.vultureCheckDone">vultureCheckDone</a></td>
 <td>Public slot to dispatch the result.</td>
 </tr>
 </table>
 <h3>Static Methods</h3>
+
 <table>
 <tr><td>None</td></tr>
 </table>
+
 <a NAME="VulturePlugin.__init__" ID="VulturePlugin.__init__"></a>
 <h4>VulturePlugin (Constructor)</h4>
 <b>VulturePlugin</b>(<i>ui</i>)
+
 <p>
         Constructor
-</p><dl>
+</p>
+<dl>
+
 <dt><i>ui</i></dt>
 <dd>
 reference to the user interface object (UI.UserInterface)
 </dd>
-</dl><a NAME="VulturePlugin.__initialize" ID="VulturePlugin.__initialize"></a>
+</dl>
+<a NAME="VulturePlugin.__initialize" ID="VulturePlugin.__initialize"></a>
 <h4>VulturePlugin.__initialize</h4>
 <b>__initialize</b>(<i></i>)
+
 <p>
         Private slot to (re)initialize the plug-in.
-</p><a NAME="VulturePlugin.__loadTranslator" ID="VulturePlugin.__loadTranslator"></a>
+</p>
+<a NAME="VulturePlugin.__loadTranslator" ID="VulturePlugin.__loadTranslator"></a>
 <h4>VulturePlugin.__loadTranslator</h4>
 <b>__loadTranslator</b>(<i></i>)
+
 <p>
         Private method to load the translation file.
-</p><a NAME="VulturePlugin.__projectClosed" ID="VulturePlugin.__projectClosed"></a>
+</p>
+<a NAME="VulturePlugin.__projectClosed" ID="VulturePlugin.__projectClosed"></a>
 <h4>VulturePlugin.__projectClosed</h4>
 <b>__projectClosed</b>(<i></i>)
+
 <p>
         Private slot to handle closing a project.
-</p><a NAME="VulturePlugin.__projectShowMenu" ID="VulturePlugin.__projectShowMenu"></a>
+</p>
+<a NAME="VulturePlugin.__projectShowMenu" ID="VulturePlugin.__projectShowMenu"></a>
 <h4>VulturePlugin.__projectShowMenu</h4>
 <b>__projectShowMenu</b>(<i>menuName, menu</i>)
+
 <p>
         Private slot called, when the the project menu or a submenu is
         about to be shown.
-</p><dl>
+</p>
+<dl>
+
 <dt><i>menuName</i> (str)</dt>
 <dd>
 name of the menu to be shown
-</dd><dt><i>menu</i> (QMenu)</dt>
+</dd>
+<dt><i>menu</i> (QMenu)</dt>
 <dd>
 reference to the menu
 </dd>
-</dl><a NAME="VulturePlugin.__projectVultureCheck" ID="VulturePlugin.__projectVultureCheck"></a>
+</dl>
+<a NAME="VulturePlugin.__projectVultureCheck" ID="VulturePlugin.__projectVultureCheck"></a>
 <h4>VulturePlugin.__projectVultureCheck</h4>
 <b>__projectVultureCheck</b>(<i></i>)
+
 <p>
         Private slot used to check the project for unused code.
-</p><a NAME="VulturePlugin.__serviceError" ID="VulturePlugin.__serviceError"></a>
+</p>
+<a NAME="VulturePlugin.__serviceError" ID="VulturePlugin.__serviceError"></a>
 <h4>VulturePlugin.__serviceError</h4>
 <b>__serviceError</b>(<i>fn, msg</i>)
+
 <p>
         Private slot handling service errors.
-</p><dl>
+</p>
+<dl>
+
 <dt><i>fn</i> (str)</dt>
 <dd>
 file name
-</dd><dt><i>msg</i> (str)</dt>
+</dd>
+<dt><i>msg</i> (str)</dt>
 <dd>
 message text
 </dd>
-</dl><a NAME="VulturePlugin.activate" ID="VulturePlugin.activate"></a>
+</dl>
+<a NAME="VulturePlugin.activate" ID="VulturePlugin.activate"></a>
 <h4>VulturePlugin.activate</h4>
 <b>activate</b>(<i></i>)
+
 <p>
         Public method to activate this plug-in.
-</p><dl>
+</p>
+<dl>
 <dt>Returns:</dt>
 <dd>
 tuple of None and activation status (boolean)
 </dd>
-</dl><a NAME="VulturePlugin.batchJobDone" ID="VulturePlugin.batchJobDone"></a>
+</dl>
+<a NAME="VulturePlugin.batchJobDone" ID="VulturePlugin.batchJobDone"></a>
 <h4>VulturePlugin.batchJobDone</h4>
 <b>batchJobDone</b>(<i>fx, lang</i>)
+
 <p>
         Public slot handling the completion of a batch job.
-</p><dl>
-<dt><i>fx</i> (str)</dt>
-<dd>
-service name
-</dd><dt><i>lang</i> (str)</dt>
-<dd>
-language
-</dd>
-</dl><a NAME="VulturePlugin.cancelVultureCheckBatch" ID="VulturePlugin.cancelVultureCheckBatch"></a>
-<h4>VulturePlugin.cancelVultureCheckBatch</h4>
-<b>cancelVultureCheckBatch</b>(<i></i>)
-<p>
-        Public method to cancel all batch jobs.
-</p><a NAME="VulturePlugin.deactivate" ID="VulturePlugin.deactivate"></a>
-<h4>VulturePlugin.deactivate</h4>
-<b>deactivate</b>(<i></i>)
-<p>
-        Public method to deactivate this plug-in.
-</p><a NAME="VulturePlugin.serviceErrorPy2" ID="VulturePlugin.serviceErrorPy2"></a>
-<h4>VulturePlugin.serviceErrorPy2</h4>
-<b>serviceErrorPy2</b>(<i>fx, lang, fn, msg</i>)
-<p>
-        Public slot handling service errors for Python 2.
-</p><dl>
+</p>
+<dl>
+
 <dt><i>fx</i> (str)</dt>
 <dd>
 service name
-</dd><dt><i>lang</i> (str)</dt>
+</dd>
+<dt><i>lang</i> (str)</dt>
 <dd>
 language
-</dd><dt><i>fn</i> (str)</dt>
+</dd>
+</dl>
+<a NAME="VulturePlugin.cancelVultureCheckBatch" ID="VulturePlugin.cancelVultureCheckBatch"></a>
+<h4>VulturePlugin.cancelVultureCheckBatch</h4>
+<b>cancelVultureCheckBatch</b>(<i></i>)
+
+<p>
+        Public method to cancel all batch jobs.
+</p>
+<a NAME="VulturePlugin.deactivate" ID="VulturePlugin.deactivate"></a>
+<h4>VulturePlugin.deactivate</h4>
+<b>deactivate</b>(<i></i>)
+
+<p>
+        Public method to deactivate this plug-in.
+</p>
+<a NAME="VulturePlugin.serviceErrorPy3" ID="VulturePlugin.serviceErrorPy3"></a>
+<h4>VulturePlugin.serviceErrorPy3</h4>
+<b>serviceErrorPy3</b>(<i>fx, lang, fn, msg</i>)
+
+<p>
+        Public slot handling service errors for Python 3.
+</p>
+<dl>
+
+<dt><i>fx</i> (str)</dt>
+<dd>
+service name
+</dd>
+<dt><i>lang</i> (str)</dt>
+<dd>
+language
+</dd>
+<dt><i>fn</i> (str)</dt>
 <dd>
 file name
-</dd><dt><i>msg</i> (str)</dt>
+</dd>
+<dt><i>msg</i> (str)</dt>
 <dd>
 message text
 </dd>
-</dl><a NAME="VulturePlugin.serviceErrorPy3" ID="VulturePlugin.serviceErrorPy3"></a>
-<h4>VulturePlugin.serviceErrorPy3</h4>
-<b>serviceErrorPy3</b>(<i>fx, lang, fn, msg</i>)
-<p>
-        Public slot handling service errors for Python 3.
-</p><dl>
-<dt><i>fx</i> (str)</dt>
-<dd>
-service name
-</dd><dt><i>lang</i> (str)</dt>
-<dd>
-language
-</dd><dt><i>fn</i> (str)</dt>
-<dd>
-file name
-</dd><dt><i>msg</i> (str)</dt>
-<dd>
-message text
-</dd>
-</dl><a NAME="VulturePlugin.vultureCheck" ID="VulturePlugin.vultureCheck"></a>
+</dl>
+<a NAME="VulturePlugin.vultureCheck" ID="VulturePlugin.vultureCheck"></a>
 <h4>VulturePlugin.vultureCheck</h4>
 <b>vultureCheck</b>(<i>lang, filename, source</i>)
+
 <p>
         Public method to prepare a vulture check for a Python project.
-</p><dl>
+</p>
+<dl>
+
 <dt><i>lang</i> (str or None)</dt>
 <dd>
 language of the files or None to determine by internal
             algorithm
-</dd><dt><i>filename</i> (str)</dt>
+</dd>
+<dt><i>filename</i> (str)</dt>
 <dd>
 name of the file to analyze
-</dd><dt><i>source</i> (str)</dt>
+</dd>
+<dt><i>source</i> (str)</dt>
 <dd>
 string containing the code
 </dd>
-</dl><a NAME="VulturePlugin.vultureCheckBatch" ID="VulturePlugin.vultureCheckBatch"></a>
+</dl>
+<a NAME="VulturePlugin.vultureCheckBatch" ID="VulturePlugin.vultureCheckBatch"></a>
 <h4>VulturePlugin.vultureCheckBatch</h4>
 <b>vultureCheckBatch</b>(<i>argumentsList</i>)
+
 <p>
         Public method to prepare a vulture check for a Python project using
         the batch mode.
-</p><dl>
+</p>
+<dl>
+
 <dt><i>argumentsList</i> ((str, str))</dt>
 <dd>
 list of arguments tuples with each tuple
             containing filename and source
 </dd>
-</dl><a NAME="VulturePlugin.vultureCheckDone" ID="VulturePlugin.vultureCheckDone"></a>
+</dl>
+<a NAME="VulturePlugin.vultureCheckDone" ID="VulturePlugin.vultureCheckDone"></a>
 <h4>VulturePlugin.vultureCheckDone</h4>
 <b>vultureCheckDone</b>(<i>filename, result</i>)
+
 <p>
         Public slot to dispatch the result.
-</p><dl>
+</p>
+<dl>
+
 <dt><i>filename</i> (str)</dt>
 <dd>
 name of the file the results belong to
-</dd><dt><i>result</i> (dict)</dt>
+</dd>
+<dt><i>result</i> (dict)</dt>
 <dd>
 result dictionary
 </dd>
--- a/VultureChecker/Documentation/source/Plugin_Checker_Vulture.VultureChecker.EditWhiteListDialog.html	Wed Jan 01 11:58:52 2020 +0100
+++ b/VultureChecker/Documentation/source/Plugin_Checker_Vulture.VultureChecker.EditWhiteListDialog.html	Tue Jun 23 17:33:21 2020 +0200
@@ -18,239 +18,317 @@
 
 </style>
 </head>
-<body><a NAME="top" ID="top"></a>
+<body>
+<a NAME="top" ID="top"></a>
 <h1>Plugin_Checker_Vulture.VultureChecker.EditWhiteListDialog</h1>
+
 <p>
 Module implementing the whitelist edit dialog.
 </p>
 <h3>Global Attributes</h3>
+
 <table>
 <tr><td>None</td></tr>
 </table>
 <h3>Classes</h3>
+
 <table>
+
 <tr>
 <td><a href="#EditWhiteListDialog">EditWhiteListDialog</a></td>
 <td>Class implementing the whitelist edit dialog.</td>
 </tr>
 </table>
 <h3>Functions</h3>
+
 <table>
 <tr><td>None</td></tr>
 </table>
-<hr /><hr />
+<hr />
+<hr />
 <a NAME="EditWhiteListDialog" ID="EditWhiteListDialog"></a>
 <h2>EditWhiteListDialog</h2>
+
 <p>
     Class implementing the whitelist edit dialog.
 </p>
 <h3>Derived from</h3>
 QDialog, Ui_EditWhiteListDialog
 <h3>Class Attributes</h3>
+
 <table>
 <tr><td>None</td></tr>
 </table>
 <h3>Class Methods</h3>
+
 <table>
 <tr><td>None</td></tr>
 </table>
 <h3>Methods</h3>
+
 <table>
+
 <tr>
 <td><a href="#EditWhiteListDialog.__init__">EditWhiteListDialog</a></td>
 <td>Constructor</td>
-</tr><tr>
+</tr>
+<tr>
 <td><a href="#EditWhiteListDialog.__getWhiteList">__getWhiteList</a></td>
 <td>Private method to get the whitelisted names from a list widget.</td>
-</tr><tr>
+</tr>
+<tr>
 <td><a href="#EditWhiteListDialog.__isPattern">__isPattern</a></td>
 <td>Private method to check, if a name is a wildcard pattern.</td>
-</tr><tr>
+</tr>
+<tr>
 <td><a href="#EditWhiteListDialog.__setButtonEnabledStates">__setButtonEnabledStates</a></td>
 <td>Private slot to set the state of various buttons.</td>
-</tr><tr>
+</tr>
+<tr>
 <td><a href="#EditWhiteListDialog.getWhiteLists">getWhiteLists</a></td>
 <td>Public methods to retrieve the various whitelists.</td>
-</tr><tr>
+</tr>
+<tr>
 <td><a href="#EditWhiteListDialog.on_addButton_clicked">on_addButton_clicked</a></td>
 <td>Private slot to add an entry to the current list.</td>
-</tr><tr>
+</tr>
+<tr>
 <td><a href="#EditWhiteListDialog.on_attributesList_itemSelectionChanged">on_attributesList_itemSelectionChanged</a></td>
 <td>Private slot to react upon a change of selection in the attributes list.</td>
-</tr><tr>
+</tr>
+<tr>
 <td><a href="#EditWhiteListDialog.on_classesList_itemSelectionChanged">on_classesList_itemSelectionChanged</a></td>
 <td>Private slot to react upon a change of selection in the classes list.</td>
-</tr><tr>
+</tr>
+<tr>
 <td><a href="#EditWhiteListDialog.on_functionsList_itemSelectionChanged">on_functionsList_itemSelectionChanged</a></td>
 <td>Private slot to react upon a change of selection in the functions list.</td>
-</tr><tr>
+</tr>
+<tr>
 <td><a href="#EditWhiteListDialog.on_importsList_itemSelectionChanged">on_importsList_itemSelectionChanged</a></td>
 <td>Private slot to react upon a change of selection in the imports list.</td>
-</tr><tr>
+</tr>
+<tr>
 <td><a href="#EditWhiteListDialog.on_listsWidget_currentChanged">on_listsWidget_currentChanged</a></td>
 <td>Private slot handling the selection of tab.</td>
-</tr><tr>
+</tr>
+<tr>
 <td><a href="#EditWhiteListDialog.on_patternsList_itemSelectionChanged">on_patternsList_itemSelectionChanged</a></td>
 <td>Private slot to react upon a change of selection in the patterns list.</td>
-</tr><tr>
+</tr>
+<tr>
 <td><a href="#EditWhiteListDialog.on_propertiesList_itemSelectionChanged">on_propertiesList_itemSelectionChanged</a></td>
 <td>Private slot to react upon a change of selection in the properties list.</td>
-</tr><tr>
+</tr>
+<tr>
 <td><a href="#EditWhiteListDialog.on_removeAllButton_clicked">on_removeAllButton_clicked</a></td>
 <td>Private slot to remove all entries from the current list.</td>
-</tr><tr>
+</tr>
+<tr>
 <td><a href="#EditWhiteListDialog.on_removeButton_clicked">on_removeButton_clicked</a></td>
 <td>Private slot to remove the selected entries from the current list.</td>
-</tr><tr>
+</tr>
+<tr>
 <td><a href="#EditWhiteListDialog.on_slotsList_itemSelectionChanged">on_slotsList_itemSelectionChanged</a></td>
 <td>Private slot to react upon a change of selection in the slots list.</td>
-</tr><tr>
+</tr>
+<tr>
 <td><a href="#EditWhiteListDialog.on_variablesList_itemSelectionChanged">on_variablesList_itemSelectionChanged</a></td>
 <td>Private slot to react upon a change of selection in the variables list.</td>
 </tr>
 </table>
 <h3>Static Methods</h3>
+
 <table>
 <tr><td>None</td></tr>
 </table>
+
 <a NAME="EditWhiteListDialog.__init__" ID="EditWhiteListDialog.__init__"></a>
 <h4>EditWhiteListDialog (Constructor)</h4>
 <b>EditWhiteListDialog</b>(<i>whitelists, parent=None</i>)
+
 <p>
         Constructor
-</p><dl>
+</p>
+<dl>
+
 <dt><i>whitelists</i> (dict of list of str)</dt>
 <dd>
 dictionary containing the whitelists
-</dd><dt><i>parent</i> (QWidget)</dt>
+</dd>
+<dt><i>parent</i> (QWidget)</dt>
 <dd>
 reference to the parent widget
 </dd>
-</dl><a NAME="EditWhiteListDialog.__getWhiteList" ID="EditWhiteListDialog.__getWhiteList"></a>
+</dl>
+<a NAME="EditWhiteListDialog.__getWhiteList" ID="EditWhiteListDialog.__getWhiteList"></a>
 <h4>EditWhiteListDialog.__getWhiteList</h4>
 <b>__getWhiteList</b>(<i>listWidget</i>)
+
 <p>
         Private method to get the whitelisted names from a list widget.
-</p><dl>
+</p>
+<dl>
+
 <dt><i>listWidget</i> (QListWidget)</dt>
 <dd>
 reference to the list widget
 </dd>
-</dl><dl>
+</dl>
+<dl>
 <dt>Returns:</dt>
 <dd>
 whitelisted names
 </dd>
-</dl><dl>
+</dl>
+<dl>
 <dt>Return Type:</dt>
 <dd>
 list of str
 </dd>
-</dl><a NAME="EditWhiteListDialog.__isPattern" ID="EditWhiteListDialog.__isPattern"></a>
+</dl>
+<a NAME="EditWhiteListDialog.__isPattern" ID="EditWhiteListDialog.__isPattern"></a>
 <h4>EditWhiteListDialog.__isPattern</h4>
 <b>__isPattern</b>(<i>name</i>)
+
 <p>
         Private method to check, if a name is a wildcard pattern.
-</p><dl>
+</p>
+<dl>
+
 <dt><i>name</i> (str)</dt>
 <dd>
 name to be checked
 </dd>
-</dl><dl>
+</dl>
+<dl>
 <dt>Returns:</dt>
 <dd>
 flag indicating a wildcard pattern
 </dd>
-</dl><dl>
+</dl>
+<dl>
 <dt>Return Type:</dt>
 <dd>
 bool
 </dd>
-</dl><a NAME="EditWhiteListDialog.__setButtonEnabledStates" ID="EditWhiteListDialog.__setButtonEnabledStates"></a>
+</dl>
+<a NAME="EditWhiteListDialog.__setButtonEnabledStates" ID="EditWhiteListDialog.__setButtonEnabledStates"></a>
 <h4>EditWhiteListDialog.__setButtonEnabledStates</h4>
 <b>__setButtonEnabledStates</b>(<i></i>)
+
 <p>
         Private slot to set the state of various buttons.
-</p><a NAME="EditWhiteListDialog.getWhiteLists" ID="EditWhiteListDialog.getWhiteLists"></a>
+</p>
+<a NAME="EditWhiteListDialog.getWhiteLists" ID="EditWhiteListDialog.getWhiteLists"></a>
 <h4>EditWhiteListDialog.getWhiteLists</h4>
 <b>getWhiteLists</b>(<i></i>)
+
 <p>
         Public methods to retrieve the various whitelists.
-</p><dl>
+</p>
+<dl>
 <dt>Returns:</dt>
 <dd>
 dictionary containing the whitelists
 </dd>
-</dl><dl>
+</dl>
+<dl>
 <dt>Return Type:</dt>
 <dd>
 dict of list of str
 </dd>
-</dl><a NAME="EditWhiteListDialog.on_addButton_clicked" ID="EditWhiteListDialog.on_addButton_clicked"></a>
+</dl>
+<a NAME="EditWhiteListDialog.on_addButton_clicked" ID="EditWhiteListDialog.on_addButton_clicked"></a>
 <h4>EditWhiteListDialog.on_addButton_clicked</h4>
 <b>on_addButton_clicked</b>(<i></i>)
+
 <p>
         Private slot to add an entry to the current list.
-</p><a NAME="EditWhiteListDialog.on_attributesList_itemSelectionChanged" ID="EditWhiteListDialog.on_attributesList_itemSelectionChanged"></a>
+</p>
+<a NAME="EditWhiteListDialog.on_attributesList_itemSelectionChanged" ID="EditWhiteListDialog.on_attributesList_itemSelectionChanged"></a>
 <h4>EditWhiteListDialog.on_attributesList_itemSelectionChanged</h4>
 <b>on_attributesList_itemSelectionChanged</b>(<i></i>)
+
 <p>
         Private slot to react upon a change of selection in the attributes
         list.
-</p><a NAME="EditWhiteListDialog.on_classesList_itemSelectionChanged" ID="EditWhiteListDialog.on_classesList_itemSelectionChanged"></a>
+</p>
+<a NAME="EditWhiteListDialog.on_classesList_itemSelectionChanged" ID="EditWhiteListDialog.on_classesList_itemSelectionChanged"></a>
 <h4>EditWhiteListDialog.on_classesList_itemSelectionChanged</h4>
 <b>on_classesList_itemSelectionChanged</b>(<i></i>)
+
 <p>
         Private slot to react upon a change of selection in the classes list.
-</p><a NAME="EditWhiteListDialog.on_functionsList_itemSelectionChanged" ID="EditWhiteListDialog.on_functionsList_itemSelectionChanged"></a>
+</p>
+<a NAME="EditWhiteListDialog.on_functionsList_itemSelectionChanged" ID="EditWhiteListDialog.on_functionsList_itemSelectionChanged"></a>
 <h4>EditWhiteListDialog.on_functionsList_itemSelectionChanged</h4>
 <b>on_functionsList_itemSelectionChanged</b>(<i></i>)
+
 <p>
         Private slot to react upon a change of selection in the functions list.
-</p><a NAME="EditWhiteListDialog.on_importsList_itemSelectionChanged" ID="EditWhiteListDialog.on_importsList_itemSelectionChanged"></a>
+</p>
+<a NAME="EditWhiteListDialog.on_importsList_itemSelectionChanged" ID="EditWhiteListDialog.on_importsList_itemSelectionChanged"></a>
 <h4>EditWhiteListDialog.on_importsList_itemSelectionChanged</h4>
 <b>on_importsList_itemSelectionChanged</b>(<i></i>)
+
 <p>
         Private slot to react upon a change of selection in the imports list.
-</p><a NAME="EditWhiteListDialog.on_listsWidget_currentChanged" ID="EditWhiteListDialog.on_listsWidget_currentChanged"></a>
+</p>
+<a NAME="EditWhiteListDialog.on_listsWidget_currentChanged" ID="EditWhiteListDialog.on_listsWidget_currentChanged"></a>
 <h4>EditWhiteListDialog.on_listsWidget_currentChanged</h4>
 <b>on_listsWidget_currentChanged</b>(<i>index</i>)
+
 <p>
         Private slot handling the selection of tab.
-</p><dl>
+</p>
+<dl>
+
 <dt><i>index</i> (int)</dt>
 <dd>
 index of the selected tab
 </dd>
-</dl><a NAME="EditWhiteListDialog.on_patternsList_itemSelectionChanged" ID="EditWhiteListDialog.on_patternsList_itemSelectionChanged"></a>
+</dl>
+<a NAME="EditWhiteListDialog.on_patternsList_itemSelectionChanged" ID="EditWhiteListDialog.on_patternsList_itemSelectionChanged"></a>
 <h4>EditWhiteListDialog.on_patternsList_itemSelectionChanged</h4>
 <b>on_patternsList_itemSelectionChanged</b>(<i></i>)
+
 <p>
         Private slot to react upon a change of selection in the patterns list.
-</p><a NAME="EditWhiteListDialog.on_propertiesList_itemSelectionChanged" ID="EditWhiteListDialog.on_propertiesList_itemSelectionChanged"></a>
+</p>
+<a NAME="EditWhiteListDialog.on_propertiesList_itemSelectionChanged" ID="EditWhiteListDialog.on_propertiesList_itemSelectionChanged"></a>
 <h4>EditWhiteListDialog.on_propertiesList_itemSelectionChanged</h4>
 <b>on_propertiesList_itemSelectionChanged</b>(<i></i>)
+
 <p>
         Private slot to react upon a change of selection in the properties
         list.
-</p><a NAME="EditWhiteListDialog.on_removeAllButton_clicked" ID="EditWhiteListDialog.on_removeAllButton_clicked"></a>
+</p>
+<a NAME="EditWhiteListDialog.on_removeAllButton_clicked" ID="EditWhiteListDialog.on_removeAllButton_clicked"></a>
 <h4>EditWhiteListDialog.on_removeAllButton_clicked</h4>
 <b>on_removeAllButton_clicked</b>(<i></i>)
+
 <p>
         Private slot to remove all entries from the current list.
-</p><a NAME="EditWhiteListDialog.on_removeButton_clicked" ID="EditWhiteListDialog.on_removeButton_clicked"></a>
+</p>
+<a NAME="EditWhiteListDialog.on_removeButton_clicked" ID="EditWhiteListDialog.on_removeButton_clicked"></a>
 <h4>EditWhiteListDialog.on_removeButton_clicked</h4>
 <b>on_removeButton_clicked</b>(<i></i>)
+
 <p>
         Private slot to remove the selected entries from the current list.
-</p><a NAME="EditWhiteListDialog.on_slotsList_itemSelectionChanged" ID="EditWhiteListDialog.on_slotsList_itemSelectionChanged"></a>
+</p>
+<a NAME="EditWhiteListDialog.on_slotsList_itemSelectionChanged" ID="EditWhiteListDialog.on_slotsList_itemSelectionChanged"></a>
 <h4>EditWhiteListDialog.on_slotsList_itemSelectionChanged</h4>
 <b>on_slotsList_itemSelectionChanged</b>(<i></i>)
+
 <p>
         Private slot to react upon a change of selection in the slots list.
-</p><a NAME="EditWhiteListDialog.on_variablesList_itemSelectionChanged" ID="EditWhiteListDialog.on_variablesList_itemSelectionChanged"></a>
+</p>
+<a NAME="EditWhiteListDialog.on_variablesList_itemSelectionChanged" ID="EditWhiteListDialog.on_variablesList_itemSelectionChanged"></a>
 <h4>EditWhiteListDialog.on_variablesList_itemSelectionChanged</h4>
 <b>on_variablesList_itemSelectionChanged</b>(<i></i>)
+
 <p>
         Private slot to react upon a change of selection in the variables list.
 </p>
--- a/VultureChecker/Documentation/source/Plugin_Checker_Vulture.VultureChecker.VultureCheckerDialog.html	Wed Jan 01 11:58:52 2020 +0100
+++ b/VultureChecker/Documentation/source/Plugin_Checker_Vulture.VultureChecker.VultureCheckerDialog.html	Tue Jun 23 17:33:21 2020 +0200
@@ -18,629 +18,826 @@
 
 </style>
 </head>
-<body><a NAME="top" ID="top"></a>
+<body>
+<a NAME="top" ID="top"></a>
 <h1>Plugin_Checker_Vulture.VultureChecker.VultureCheckerDialog</h1>
+
 <p>
 Module implementing a dialog to show the vulture check results.
 </p>
 <h3>Global Attributes</h3>
+
 <table>
 <tr><td>None</td></tr>
 </table>
 <h3>Classes</h3>
+
 <table>
+
 <tr>
 <td><a href="#VultureCheckerDialog">VultureCheckerDialog</a></td>
 <td>Class implementing a dialog to show the vulture check results.</td>
-</tr><tr>
+</tr>
+<tr>
 <td><a href="#VultureItem">VultureItem</a></td>
 <td>Class to hold the name, type, confidence and location of defined code.</td>
 </tr>
 </table>
 <h3>Functions</h3>
+
 <table>
 <tr><td>None</td></tr>
 </table>
-<hr /><hr />
+<hr />
+<hr />
 <a NAME="VultureCheckerDialog" ID="VultureCheckerDialog"></a>
 <h2>VultureCheckerDialog</h2>
+
 <p>
     Class implementing a dialog to show the vulture check results.
 </p>
 <h3>Derived from</h3>
 QDialog, Ui_VultureCheckerDialog
 <h3>Class Attributes</h3>
+
 <table>
 <tr><td>FilePathRole</td></tr><tr><td>TypeRole</td></tr>
 </table>
 <h3>Class Methods</h3>
+
 <table>
 <tr><td>None</td></tr>
 </table>
 <h3>Methods</h3>
+
 <table>
+
 <tr>
 <td><a href="#VultureCheckerDialog.__init__">VultureCheckerDialog</a></td>
 <td>Constructor</td>
-</tr><tr>
+</tr>
+<tr>
 <td><a href="#VultureCheckerDialog.__batchFinished">__batchFinished</a></td>
 <td>Private slot handling the completion of a batch job.</td>
-</tr><tr>
+</tr>
+<tr>
 <td><a href="#VultureCheckerDialog.__createErrorItem">__createErrorItem</a></td>
 <td>Private slot to create a new error item in the result list.</td>
-</tr><tr>
+</tr>
+<tr>
 <td><a href="#VultureCheckerDialog.__createFileItem">__createFileItem</a></td>
 <td>Private method to create a file item.</td>
-</tr><tr>
+</tr>
+<tr>
 <td><a href="#VultureCheckerDialog.__createResultItem">__createResultItem</a></td>
 <td>Private method to create a result item.</td>
-</tr><tr>
+</tr>
+<tr>
 <td><a href="#VultureCheckerDialog.__createResultItems">__createResultItems</a></td>
 <td>Private method to populate the list with the analysis result.</td>
-</tr><tr>
+</tr>
+<tr>
 <td><a href="#VultureCheckerDialog.__dict2Item">__dict2Item</a></td>
 <td>Private method to convert an item dictionary to a vulture item.</td>
-</tr><tr>
+</tr>
+<tr>
 <td><a href="#VultureCheckerDialog.__editWhiteList">__editWhiteList</a></td>
 <td>Private slot to edit the whitelist.</td>
-</tr><tr>
+</tr>
+<tr>
 <td><a href="#VultureCheckerDialog.__filteredList">__filteredList</a></td>
 <td>Private method to filter a list against the whitelist patterns returning items not matching the whitelist.</td>
-</tr><tr>
+</tr>
+<tr>
 <td><a href="#VultureCheckerDialog.__finish">__finish</a></td>
 <td>Private slot called when the action finished or the user pressed the cancel button.</td>
-</tr><tr>
+</tr>
+<tr>
 <td><a href="#VultureCheckerDialog.__getSelectedNonFileItems">__getSelectedNonFileItems</a></td>
 <td>Private method to get a list of selected non file items.</td>
-</tr><tr>
+</tr>
+<tr>
 <td><a href="#VultureCheckerDialog.__getUnusedItems">__getUnusedItems</a></td>
 <td>Private method to get a list of unused items.</td>
-</tr><tr>
+</tr>
+<tr>
 <td><a href="#VultureCheckerDialog.__prepareResultLists">__prepareResultLists</a></td>
 <td>Private method to prepare the result lists.</td>
-</tr><tr>
+</tr>
+<tr>
 <td><a href="#VultureCheckerDialog.__processError">__processError</a></td>
 <td>Private slot to process an error indication from the service.</td>
-</tr><tr>
+</tr>
+<tr>
 <td><a href="#VultureCheckerDialog.__processResult">__processResult</a></td>
 <td>Private slot called after performing a vulture analysis on one file.</td>
-</tr><tr>
+</tr>
+<tr>
 <td><a href="#VultureCheckerDialog.__resultCollapse">__resultCollapse</a></td>
 <td>Private slot to collapse all entries of the resultlist.</td>
-</tr><tr>
+</tr>
+<tr>
 <td><a href="#VultureCheckerDialog.__resultExpand">__resultExpand</a></td>
 <td>Private slot to expand all entries of the resultlist.</td>
-</tr><tr>
+</tr>
+<tr>
 <td><a href="#VultureCheckerDialog.__showContextMenu">__showContextMenu</a></td>
 <td>Private slot to show the context menu of the listview.</td>
-</tr><tr>
+</tr>
+<tr>
 <td><a href="#VultureCheckerDialog.__storeResult">__storeResult</a></td>
 <td>Private method to store the result of an analysis.</td>
-</tr><tr>
+</tr>
+<tr>
 <td><a href="#VultureCheckerDialog.__storeWhiteLists">__storeWhiteLists</a></td>
 <td>Private method to store the new whitelists, if they have changed.</td>
-</tr><tr>
+</tr>
+<tr>
 <td><a href="#VultureCheckerDialog.__unusedAttributes">__unusedAttributes</a></td>
 <td>Private method to get the list of unused attributes.</td>
-</tr><tr>
+</tr>
+<tr>
 <td><a href="#VultureCheckerDialog.__unusedClasses">__unusedClasses</a></td>
 <td>Private method to get the list of unused classes.</td>
-</tr><tr>
+</tr>
+<tr>
 <td><a href="#VultureCheckerDialog.__unusedFunctions">__unusedFunctions</a></td>
 <td>Private method to get the list of unused functions.</td>
-</tr><tr>
+</tr>
+<tr>
 <td><a href="#VultureCheckerDialog.__unusedImports">__unusedImports</a></td>
 <td>Private method to get a list of unused imports.</td>
-</tr><tr>
+</tr>
+<tr>
 <td><a href="#VultureCheckerDialog.__unusedProperties">__unusedProperties</a></td>
 <td>Private method to get the list of unused properties.</td>
-</tr><tr>
+</tr>
+<tr>
 <td><a href="#VultureCheckerDialog.__unusedSlots">__unusedSlots</a></td>
 <td>Private method to get the list of unused PyQt/PySide slots.</td>
-</tr><tr>
+</tr>
+<tr>
 <td><a href="#VultureCheckerDialog.__unusedVariables">__unusedVariables</a></td>
 <td>Private method to get the list of unused variables.</td>
-</tr><tr>
+</tr>
+<tr>
 <td><a href="#VultureCheckerDialog.__whiteList">__whiteList</a></td>
 <td>Private slot to add entries to the whitelist.</td>
-</tr><tr>
+</tr>
+<tr>
 <td><a href="#VultureCheckerDialog.clear">clear</a></td>
 <td>Public method to clear all results.</td>
-</tr><tr>
-<td><a href="#VultureCheckerDialog.filename">filename</a></td>
-<td></td>
-</tr><tr>
+</tr>
+<tr>
 <td><a href="#VultureCheckerDialog.on_buttonBox_clicked">on_buttonBox_clicked</a></td>
 <td>Private slot called by a button of the button box clicked.</td>
-</tr><tr>
+</tr>
+<tr>
 <td><a href="#VultureCheckerDialog.on_resultList_itemActivated">on_resultList_itemActivated</a></td>
 <td>Private slot to handle the activation of a result item.</td>
-</tr><tr>
+</tr>
+<tr>
 <td><a href="#VultureCheckerDialog.on_startButton_clicked">on_startButton_clicked</a></td>
 <td>Private slot to start a code metrics run.</td>
-</tr><tr>
+</tr>
+<tr>
 <td><a href="#VultureCheckerDialog.prepare">prepare</a></td>
 <td>Public method to prepare the dialog with a list of filenames.</td>
-</tr><tr>
+</tr>
+<tr>
 <td><a href="#VultureCheckerDialog.start">start</a></td>
 <td>Public slot to start the code metrics determination.</td>
-</tr><tr>
+</tr>
+<tr>
 <td><a href="#VultureCheckerDialog.vultureCheck">vultureCheck</a></td>
 <td>Public method to start a vulture check for one Python file.</td>
-</tr><tr>
+</tr>
+<tr>
 <td><a href="#VultureCheckerDialog.vultureCheckBatch">vultureCheckBatch</a></td>
 <td>Public method to start a vulture check batch job.</td>
 </tr>
 </table>
 <h3>Static Methods</h3>
+
 <table>
 <tr><td>None</td></tr>
 </table>
+
 <a NAME="VultureCheckerDialog.__init__" ID="VultureCheckerDialog.__init__"></a>
 <h4>VultureCheckerDialog (Constructor)</h4>
 <b>VultureCheckerDialog</b>(<i>vultureService, parent=None</i>)
+
 <p>
         Constructor
-</p><dl>
+</p>
+<dl>
+
 <dt><i>vultureService</i> (VulturePlugin)</dt>
 <dd>
 reference to the service
-</dd><dt><i>parent</i> (QWidget)</dt>
+</dd>
+<dt><i>parent</i> (QWidget)</dt>
 <dd>
 reference to the parent widget
 </dd>
-</dl><a NAME="VultureCheckerDialog.__batchFinished" ID="VultureCheckerDialog.__batchFinished"></a>
+</dl>
+<a NAME="VultureCheckerDialog.__batchFinished" ID="VultureCheckerDialog.__batchFinished"></a>
 <h4>VultureCheckerDialog.__batchFinished</h4>
 <b>__batchFinished</b>(<i></i>)
+
 <p>
         Private slot handling the completion of a batch job.
-</p><a NAME="VultureCheckerDialog.__createErrorItem" ID="VultureCheckerDialog.__createErrorItem"></a>
+</p>
+<a NAME="VultureCheckerDialog.__createErrorItem" ID="VultureCheckerDialog.__createErrorItem"></a>
 <h4>VultureCheckerDialog.__createErrorItem</h4>
 <b>__createErrorItem</b>(<i>filename, message</i>)
+
 <p>
         Private slot to create a new error item in the result list.
-</p><dl>
+</p>
+<dl>
+
 <dt><i>filename</i> (str)</dt>
 <dd>
 name of the file
-</dd><dt><i>message</i> (str)</dt>
+</dd>
+<dt><i>message</i> (str)</dt>
 <dd>
 error message
 </dd>
-</dl><a NAME="VultureCheckerDialog.__createFileItem" ID="VultureCheckerDialog.__createFileItem"></a>
+</dl>
+<a NAME="VultureCheckerDialog.__createFileItem" ID="VultureCheckerDialog.__createFileItem"></a>
 <h4>VultureCheckerDialog.__createFileItem</h4>
 <b>__createFileItem</b>(<i>filename</i>)
+
 <p>
         Private method to create a file item.
-</p><dl>
+</p>
+<dl>
+
 <dt><i>filename</i> (str)</dt>
 <dd>
 file name for the item
 </dd>
-</dl><dl>
+</dl>
+<dl>
 <dt>Returns:</dt>
 <dd>
 reference to the created item
 </dd>
-</dl><dl>
+</dl>
+<dl>
 <dt>Return Type:</dt>
 <dd>
 QTreeWidgetItem
 </dd>
-</dl><a NAME="VultureCheckerDialog.__createResultItem" ID="VultureCheckerDialog.__createResultItem"></a>
+</dl>
+<a NAME="VultureCheckerDialog.__createResultItem" ID="VultureCheckerDialog.__createResultItem"></a>
 <h4>VultureCheckerDialog.__createResultItem</h4>
 <b>__createResultItem</b>(<i>parent, item</i>)
+
 <p>
         Private method to create a result item.
-</p><dl>
+</p>
+<dl>
+
 <dt><i>parent</i> (QTreeWidgetItem)</dt>
 <dd>
 reference to the parent item
-</dd><dt><i>item</i> (VultureItem)</dt>
+</dd>
+<dt><i>item</i> (VultureItem)</dt>
 <dd>
 reference to the item
 </dd>
-</dl><a NAME="VultureCheckerDialog.__createResultItems" ID="VultureCheckerDialog.__createResultItems"></a>
+</dl>
+<a NAME="VultureCheckerDialog.__createResultItems" ID="VultureCheckerDialog.__createResultItems"></a>
 <h4>VultureCheckerDialog.__createResultItems</h4>
 <b>__createResultItems</b>(<i></i>)
+
 <p>
         Private method to populate the list with the analysis result.
-</p><a NAME="VultureCheckerDialog.__dict2Item" ID="VultureCheckerDialog.__dict2Item"></a>
+</p>
+<a NAME="VultureCheckerDialog.__dict2Item" ID="VultureCheckerDialog.__dict2Item"></a>
 <h4>VultureCheckerDialog.__dict2Item</h4>
 <b>__dict2Item</b>(<i>d</i>)
+
 <p>
         Private method to convert an item dictionary to a vulture item.
-</p><dl>
+</p>
+<dl>
+
 <dt><i>d</i> (dict)</dt>
 <dd>
 item dictionary
 </dd>
-</dl><dl>
+</dl>
+<dl>
 <dt>Returns:</dt>
 <dd>
 vulture item
 </dd>
-</dl><dl>
+</dl>
+<dl>
 <dt>Return Type:</dt>
 <dd>
 VultureItem
 </dd>
-</dl><a NAME="VultureCheckerDialog.__editWhiteList" ID="VultureCheckerDialog.__editWhiteList"></a>
+</dl>
+<a NAME="VultureCheckerDialog.__editWhiteList" ID="VultureCheckerDialog.__editWhiteList"></a>
 <h4>VultureCheckerDialog.__editWhiteList</h4>
 <b>__editWhiteList</b>(<i></i>)
+
 <p>
         Private slot to edit the whitelist.
-</p><a NAME="VultureCheckerDialog.__filteredList" ID="VultureCheckerDialog.__filteredList"></a>
+</p>
+<a NAME="VultureCheckerDialog.__filteredList" ID="VultureCheckerDialog.__filteredList"></a>
 <h4>VultureCheckerDialog.__filteredList</h4>
 <b>__filteredList</b>(<i>itemList</i>)
+
 <p>
         Private method to filter a list against the whitelist patterns
         returning items not matching the whitelist.
-</p><dl>
+</p>
+<dl>
+
 <dt><i>itemList</i> (list of VultureItem)</dt>
 <dd>
 list of items to be filtered
 </dd>
-</dl><dl>
+</dl>
+<dl>
 <dt>Returns:</dt>
 <dd>
 list of filtered items
 </dd>
-</dl><dl>
+</dl>
+<dl>
 <dt>Return Type:</dt>
 <dd>
 list of VultureItem
 </dd>
-</dl><a NAME="VultureCheckerDialog.__finish" ID="VultureCheckerDialog.__finish"></a>
+</dl>
+<a NAME="VultureCheckerDialog.__finish" ID="VultureCheckerDialog.__finish"></a>
 <h4>VultureCheckerDialog.__finish</h4>
 <b>__finish</b>(<i></i>)
+
 <p>
         Private slot called when the action finished or the user pressed the
         cancel button.
-</p><a NAME="VultureCheckerDialog.__getSelectedNonFileItems" ID="VultureCheckerDialog.__getSelectedNonFileItems"></a>
+</p>
+<a NAME="VultureCheckerDialog.__getSelectedNonFileItems" ID="VultureCheckerDialog.__getSelectedNonFileItems"></a>
 <h4>VultureCheckerDialog.__getSelectedNonFileItems</h4>
 <b>__getSelectedNonFileItems</b>(<i></i>)
+
 <p>
         Private method to get a list of selected non file items.
-</p><dl>
+</p>
+<dl>
 <dt>Returns:</dt>
 <dd>
 list of selected non file items
 </dd>
-</dl><dl>
+</dl>
+<dl>
 <dt>Return Type:</dt>
 <dd>
 list of QTreeWidgetItem
 </dd>
-</dl><a NAME="VultureCheckerDialog.__getUnusedItems" ID="VultureCheckerDialog.__getUnusedItems"></a>
+</dl>
+<a NAME="VultureCheckerDialog.__getUnusedItems" ID="VultureCheckerDialog.__getUnusedItems"></a>
 <h4>VultureCheckerDialog.__getUnusedItems</h4>
 <b>__getUnusedItems</b>(<i>defined, used</i>)
+
 <p>
         Private method to get a list of unused items.
-</p><dl>
+</p>
+<dl>
+
 <dt><i>defined</i> (list of VultureItem)</dt>
 <dd>
 list of defined items
-</dd><dt><i>used</i> (list of str)</dt>
+</dd>
+<dt><i>used</i> (list of str)</dt>
 <dd>
 list of used names
 </dd>
-</dl><dl>
+</dl>
+<dl>
 <dt>Returns:</dt>
 <dd>
 list of unused items
 </dd>
-</dl><dl>
+</dl>
+<dl>
 <dt>Return Type:</dt>
 <dd>
 list of VultureItem
 </dd>
-</dl><a NAME="VultureCheckerDialog.__prepareResultLists" ID="VultureCheckerDialog.__prepareResultLists"></a>
+</dl>
+<a NAME="VultureCheckerDialog.__prepareResultLists" ID="VultureCheckerDialog.__prepareResultLists"></a>
 <h4>VultureCheckerDialog.__prepareResultLists</h4>
 <b>__prepareResultLists</b>(<i></i>)
+
 <p>
         Private method to prepare the result lists.
-</p><a NAME="VultureCheckerDialog.__processError" ID="VultureCheckerDialog.__processError"></a>
+</p>
+<a NAME="VultureCheckerDialog.__processError" ID="VultureCheckerDialog.__processError"></a>
 <h4>VultureCheckerDialog.__processError</h4>
 <b>__processError</b>(<i>fn, msg</i>)
+
 <p>
         Private slot to process an error indication from the service.
-</p><dl>
+</p>
+<dl>
+
 <dt><i>fn</i> (str)</dt>
 <dd>
 filename of the file
-</dd><dt><i>msg</i> (str)</dt>
+</dd>
+<dt><i>msg</i> (str)</dt>
 <dd>
 error message
 </dd>
-</dl><a NAME="VultureCheckerDialog.__processResult" ID="VultureCheckerDialog.__processResult"></a>
+</dl>
+<a NAME="VultureCheckerDialog.__processResult" ID="VultureCheckerDialog.__processResult"></a>
 <h4>VultureCheckerDialog.__processResult</h4>
 <b>__processResult</b>(<i>fn, result</i>)
+
 <p>
         Private slot called after performing a vulture analysis on one file.
-</p><dl>
+</p>
+<dl>
+
 <dt><i>fn</i> (str)</dt>
 <dd>
 filename of the file
-</dd><dt><i>result</i> (dict)</dt>
+</dd>
+<dt><i>result</i> (dict)</dt>
 <dd>
 result dict
 </dd>
-</dl><a NAME="VultureCheckerDialog.__resultCollapse" ID="VultureCheckerDialog.__resultCollapse"></a>
+</dl>
+<a NAME="VultureCheckerDialog.__resultCollapse" ID="VultureCheckerDialog.__resultCollapse"></a>
 <h4>VultureCheckerDialog.__resultCollapse</h4>
 <b>__resultCollapse</b>(<i></i>)
+
 <p>
         Private slot to collapse all entries of the resultlist.
-</p><a NAME="VultureCheckerDialog.__resultExpand" ID="VultureCheckerDialog.__resultExpand"></a>
+</p>
+<a NAME="VultureCheckerDialog.__resultExpand" ID="VultureCheckerDialog.__resultExpand"></a>
 <h4>VultureCheckerDialog.__resultExpand</h4>
 <b>__resultExpand</b>(<i></i>)
+
 <p>
         Private slot to expand all entries of the resultlist.
-</p><a NAME="VultureCheckerDialog.__showContextMenu" ID="VultureCheckerDialog.__showContextMenu"></a>
+</p>
+<a NAME="VultureCheckerDialog.__showContextMenu" ID="VultureCheckerDialog.__showContextMenu"></a>
 <h4>VultureCheckerDialog.__showContextMenu</h4>
 <b>__showContextMenu</b>(<i>coord</i>)
+
 <p>
         Private slot to show the context menu of the listview.
-</p><dl>
+</p>
+<dl>
+
 <dt><i>coord</i> (QPoint)</dt>
 <dd>
 the position of the mouse pointer
 </dd>
-</dl><a NAME="VultureCheckerDialog.__storeResult" ID="VultureCheckerDialog.__storeResult"></a>
+</dl>
+<a NAME="VultureCheckerDialog.__storeResult" ID="VultureCheckerDialog.__storeResult"></a>
 <h4>VultureCheckerDialog.__storeResult</h4>
 <b>__storeResult</b>(<i>result</i>)
+
 <p>
         Private method to store the result of an analysis.
-</p><dl>
+</p>
+<dl>
+
 <dt><i>result</i> (dict)</dt>
 <dd>
 result dictionary
 </dd>
-</dl><a NAME="VultureCheckerDialog.__storeWhiteLists" ID="VultureCheckerDialog.__storeWhiteLists"></a>
+</dl>
+<a NAME="VultureCheckerDialog.__storeWhiteLists" ID="VultureCheckerDialog.__storeWhiteLists"></a>
 <h4>VultureCheckerDialog.__storeWhiteLists</h4>
 <b>__storeWhiteLists</b>(<i>whitelists</i>)
+
 <p>
         Private method to store the new whitelists, if they have changed.
-</p><dl>
+</p>
+<dl>
+
 <dt><i>whitelists</i> (dict of list of str)</dt>
 <dd>
 dictionary of lists of whitelisted names
 </dd>
-</dl><a NAME="VultureCheckerDialog.__unusedAttributes" ID="VultureCheckerDialog.__unusedAttributes"></a>
+</dl>
+<a NAME="VultureCheckerDialog.__unusedAttributes" ID="VultureCheckerDialog.__unusedAttributes"></a>
 <h4>VultureCheckerDialog.__unusedAttributes</h4>
 <b>__unusedAttributes</b>(<i></i>)
+
 <p>
         Private method to get the list of unused attributes.
-</p><dl>
+</p>
+<dl>
 <dt>Returns:</dt>
 <dd>
 list of unused attributes
 </dd>
-</dl><dl>
+</dl>
+<dl>
 <dt>Return Type:</dt>
 <dd>
 list of VultureItem
 </dd>
-</dl><a NAME="VultureCheckerDialog.__unusedClasses" ID="VultureCheckerDialog.__unusedClasses"></a>
+</dl>
+<a NAME="VultureCheckerDialog.__unusedClasses" ID="VultureCheckerDialog.__unusedClasses"></a>
 <h4>VultureCheckerDialog.__unusedClasses</h4>
 <b>__unusedClasses</b>(<i></i>)
+
 <p>
         Private method to get the list of unused classes.
-</p><dl>
+</p>
+<dl>
 <dt>Returns:</dt>
 <dd>
 list of unused classes
 </dd>
-</dl><dl>
+</dl>
+<dl>
 <dt>Return Type:</dt>
 <dd>
 list of VultureItem
 </dd>
-</dl><a NAME="VultureCheckerDialog.__unusedFunctions" ID="VultureCheckerDialog.__unusedFunctions"></a>
+</dl>
+<a NAME="VultureCheckerDialog.__unusedFunctions" ID="VultureCheckerDialog.__unusedFunctions"></a>
 <h4>VultureCheckerDialog.__unusedFunctions</h4>
 <b>__unusedFunctions</b>(<i></i>)
+
 <p>
         Private method to get the list of unused functions.
-</p><dl>
+</p>
+<dl>
 <dt>Returns:</dt>
 <dd>
 list of unused functions
 </dd>
-</dl><dl>
+</dl>
+<dl>
 <dt>Return Type:</dt>
 <dd>
 list of VultureItem
 </dd>
-</dl><a NAME="VultureCheckerDialog.__unusedImports" ID="VultureCheckerDialog.__unusedImports"></a>
+</dl>
+<a NAME="VultureCheckerDialog.__unusedImports" ID="VultureCheckerDialog.__unusedImports"></a>
 <h4>VultureCheckerDialog.__unusedImports</h4>
 <b>__unusedImports</b>(<i></i>)
+
 <p>
         Private method to get a list of unused imports.
-</p><dl>
+</p>
+<dl>
 <dt>Returns:</dt>
 <dd>
 list of unused imports
 </dd>
-</dl><dl>
+</dl>
+<dl>
 <dt>Return Type:</dt>
 <dd>
 list of VultureItem
 </dd>
-</dl><a NAME="VultureCheckerDialog.__unusedProperties" ID="VultureCheckerDialog.__unusedProperties"></a>
+</dl>
+<a NAME="VultureCheckerDialog.__unusedProperties" ID="VultureCheckerDialog.__unusedProperties"></a>
 <h4>VultureCheckerDialog.__unusedProperties</h4>
 <b>__unusedProperties</b>(<i></i>)
+
 <p>
         Private method to get the list of unused properties.
-</p><dl>
+</p>
+<dl>
 <dt>Returns:</dt>
 <dd>
 list of unused properties
 </dd>
-</dl><dl>
+</dl>
+<dl>
 <dt>Return Type:</dt>
 <dd>
 list of VultureItem
 </dd>
-</dl><a NAME="VultureCheckerDialog.__unusedSlots" ID="VultureCheckerDialog.__unusedSlots"></a>
+</dl>
+<a NAME="VultureCheckerDialog.__unusedSlots" ID="VultureCheckerDialog.__unusedSlots"></a>
 <h4>VultureCheckerDialog.__unusedSlots</h4>
 <b>__unusedSlots</b>(<i></i>)
+
 <p>
         Private method to get the list of unused PyQt/PySide slots.
-</p><dl>
+</p>
+<dl>
 <dt>Returns:</dt>
 <dd>
 list of unused PyQt/PySide slots
 </dd>
-</dl><dl>
+</dl>
+<dl>
 <dt>Return Type:</dt>
 <dd>
 list of VultureItem
 </dd>
-</dl><a NAME="VultureCheckerDialog.__unusedVariables" ID="VultureCheckerDialog.__unusedVariables"></a>
+</dl>
+<a NAME="VultureCheckerDialog.__unusedVariables" ID="VultureCheckerDialog.__unusedVariables"></a>
 <h4>VultureCheckerDialog.__unusedVariables</h4>
 <b>__unusedVariables</b>(<i></i>)
+
 <p>
         Private method to get the list of unused variables.
-</p><dl>
+</p>
+<dl>
 <dt>Returns:</dt>
 <dd>
 list of unused variables
 </dd>
-</dl><dl>
+</dl>
+<dl>
 <dt>Return Type:</dt>
 <dd>
 list of VultureItem
 </dd>
-</dl><a NAME="VultureCheckerDialog.__whiteList" ID="VultureCheckerDialog.__whiteList"></a>
+</dl>
+<a NAME="VultureCheckerDialog.__whiteList" ID="VultureCheckerDialog.__whiteList"></a>
 <h4>VultureCheckerDialog.__whiteList</h4>
 <b>__whiteList</b>(<i></i>)
+
 <p>
         Private slot to add entries to the whitelist.
-</p><a NAME="VultureCheckerDialog.clear" ID="VultureCheckerDialog.clear"></a>
+</p>
+<a NAME="VultureCheckerDialog.clear" ID="VultureCheckerDialog.clear"></a>
 <h4>VultureCheckerDialog.clear</h4>
 <b>clear</b>(<i></i>)
+
 <p>
         Public method to clear all results.
-</p><a NAME="VultureCheckerDialog.filename" ID="VultureCheckerDialog.filename"></a>
-<h4>VultureCheckerDialog.filename</h4>
-<b>filename</b>(<i></i>)
+</p>
 <a NAME="VultureCheckerDialog.on_buttonBox_clicked" ID="VultureCheckerDialog.on_buttonBox_clicked"></a>
 <h4>VultureCheckerDialog.on_buttonBox_clicked</h4>
 <b>on_buttonBox_clicked</b>(<i>button</i>)
+
 <p>
         Private slot called by a button of the button box clicked.
-</p><dl>
+</p>
+<dl>
+
 <dt><i>button</i> (QAbstractButton)</dt>
 <dd>
 button that was clicked
 </dd>
-</dl><a NAME="VultureCheckerDialog.on_resultList_itemActivated" ID="VultureCheckerDialog.on_resultList_itemActivated"></a>
+</dl>
+<a NAME="VultureCheckerDialog.on_resultList_itemActivated" ID="VultureCheckerDialog.on_resultList_itemActivated"></a>
 <h4>VultureCheckerDialog.on_resultList_itemActivated</h4>
 <b>on_resultList_itemActivated</b>(<i>item, column</i>)
+
 <p>
         Private slot to handle the activation of a result item.
-</p><dl>
+</p>
+<dl>
+
 <dt><i>item</i> (QTreeWidgetItem)</dt>
 <dd>
 reference to the activated item
-</dd><dt><i>column</i> (int)</dt>
+</dd>
+<dt><i>column</i> (int)</dt>
 <dd>
 column the item was activated in
 </dd>
-</dl><a NAME="VultureCheckerDialog.on_startButton_clicked" ID="VultureCheckerDialog.on_startButton_clicked"></a>
+</dl>
+<a NAME="VultureCheckerDialog.on_startButton_clicked" ID="VultureCheckerDialog.on_startButton_clicked"></a>
 <h4>VultureCheckerDialog.on_startButton_clicked</h4>
 <b>on_startButton_clicked</b>(<i></i>)
+
 <p>
         Private slot to start a code metrics run.
-</p><a NAME="VultureCheckerDialog.prepare" ID="VultureCheckerDialog.prepare"></a>
+</p>
+<a NAME="VultureCheckerDialog.prepare" ID="VultureCheckerDialog.prepare"></a>
 <h4>VultureCheckerDialog.prepare</h4>
 <b>prepare</b>(<i>fileList, project</i>)
+
 <p>
         Public method to prepare the dialog with a list of filenames.
-</p><dl>
+</p>
+<dl>
+
 <dt><i>fileList</i> (list of str)</dt>
 <dd>
 list of filenames
-</dd><dt><i>project</i> (Project)</dt>
+</dd>
+<dt><i>project</i> (Project)</dt>
 <dd>
 reference to the project object
 </dd>
-</dl><a NAME="VultureCheckerDialog.start" ID="VultureCheckerDialog.start"></a>
+</dl>
+<a NAME="VultureCheckerDialog.start" ID="VultureCheckerDialog.start"></a>
 <h4>VultureCheckerDialog.start</h4>
 <b>start</b>(<i>fn</i>)
+
 <p>
         Public slot to start the code metrics determination.
-</p><dl>
+</p>
+<dl>
+
 <dt><i>fn</i> (str or list of str)</dt>
 <dd>
 file or list of files or directory to show
             the code metrics for
 </dd>
-</dl><a NAME="VultureCheckerDialog.vultureCheck" ID="VultureCheckerDialog.vultureCheck"></a>
+</dl>
+<a NAME="VultureCheckerDialog.vultureCheck" ID="VultureCheckerDialog.vultureCheck"></a>
 <h4>VultureCheckerDialog.vultureCheck</h4>
 <b>vultureCheck</b>(<i></i>)
+
 <p>
         Public method to start a vulture check for one Python file.
-</p><p>
+</p>
+<p>
         The results are reported to the __processResult slot.
-</p><a NAME="VultureCheckerDialog.vultureCheckBatch" ID="VultureCheckerDialog.vultureCheckBatch"></a>
+</p>
+<a NAME="VultureCheckerDialog.vultureCheckBatch" ID="VultureCheckerDialog.vultureCheckBatch"></a>
 <h4>VultureCheckerDialog.vultureCheckBatch</h4>
 <b>vultureCheckBatch</b>(<i></i>)
+
 <p>
         Public method to start a vulture check batch job.
-</p><p>
+</p>
+<p>
         The results are reported to the __processResult slot.
 </p>
 <div align="right"><a href="#top">Up</a></div>
-<hr /><hr />
+<hr />
+<hr />
 <a NAME="VultureItem" ID="VultureItem"></a>
 <h2>VultureItem</h2>
+
 <p>
     Class to hold the name, type, confidence and location of defined code.
 </p>
 <h3>Derived from</h3>
 object
 <h3>Class Attributes</h3>
+
 <table>
 <tr><td>None</td></tr>
 </table>
 <h3>Class Methods</h3>
+
 <table>
 <tr><td>None</td></tr>
 </table>
 <h3>Methods</h3>
+
 <table>
+
 <tr>
 <td><a href="#VultureItem.__init__">VultureItem</a></td>
 <td>Constructor</td>
 </tr>
 </table>
 <h3>Static Methods</h3>
+
 <table>
 <tr><td>None</td></tr>
 </table>
+
 <a NAME="VultureItem.__init__" ID="VultureItem.__init__"></a>
 <h4>VultureItem (Constructor)</h4>
 <b>VultureItem</b>(<i>name, typ, filename, firstLineno, lastLineno, confidence</i>)
+
 <p>
         Constructor
-</p><dl>
+</p>
+<dl>
+
 <dt><i>name</i> (str)</dt>
 <dd>
 item name
-</dd><dt><i>typ</i> (str)</dt>
+</dd>
+<dt><i>typ</i> (str)</dt>
 <dd>
 item type
-</dd><dt><i>filename</i> (str)</dt>
+</dd>
+<dt><i>filename</i> (str)</dt>
 <dd>
 name of the file containing item
-</dd><dt><i>firstLineno</i> (int)</dt>
+</dd>
+<dt><i>firstLineno</i> (int)</dt>
 <dd>
 first line number
-</dd><dt><i>lastLineno</i> (int)</dt>
+</dd>
+<dt><i>lastLineno</i> (int)</dt>
 <dd>
 last line number
-</dd><dt><i>confidence</i> (int)</dt>
+</dd>
+<dt><i>confidence</i> (int)</dt>
 <dd>
 confidence level
 </dd>
--- a/VultureChecker/Documentation/source/Plugin_Checker_Vulture.VultureChecker.VultureCheckerService.html	Wed Jan 01 11:58:52 2020 +0100
+++ b/VultureChecker/Documentation/source/Plugin_Checker_Vulture.VultureChecker.VultureCheckerService.html	Tue Jun 23 17:33:21 2020 +0200
@@ -18,226 +18,289 @@
 
 </style>
 </head>
-<body><a NAME="top" ID="top"></a>
+<body>
+<a NAME="top" ID="top"></a>
 <h1>Plugin_Checker_Vulture.VultureChecker.VultureCheckerService</h1>
+
 <p>
 Module implementing the cyclomatic complexity service.
 </p>
 <h3>Global Attributes</h3>
+
 <table>
 <tr><td>None</td></tr>
 </table>
 <h3>Classes</h3>
+
 <table>
+
 <tr>
 <td><a href="#EricVulture">EricVulture</a></td>
 <td>Class to adopt the Vulture class to the eric plug-in functionality.</td>
 </tr>
 </table>
 <h3>Functions</h3>
+
 <table>
+
 <tr>
 <td><a href="#__analyze">__analyze</a></td>
 <td>Private function to analyze one Python file.</td>
-</tr><tr>
+</tr>
+<tr>
 <td><a href="#batchVultureCheck">batchVultureCheck</a></td>
 <td>Module function to analyze a batch of files.</td>
-</tr><tr>
+</tr>
+<tr>
 <td><a href="#initBatchService">initBatchService</a></td>
 <td>Initialize the batch service and return the entry point.</td>
-</tr><tr>
+</tr>
+<tr>
 <td><a href="#initService">initService</a></td>
 <td>Initialize the service and return the entry point.</td>
-</tr><tr>
+</tr>
+<tr>
 <td><a href="#vultureCheck">vultureCheck</a></td>
 <td>Private function to analyze one file.</td>
-</tr><tr>
+</tr>
+<tr>
 <td><a href="#worker">worker</a></td>
 <td>Module function acting as the parallel worker for the cyclomatic complexity calculation.</td>
 </tr>
 </table>
-<hr /><hr />
+<hr />
+<hr />
 <a NAME="EricVulture" ID="EricVulture"></a>
 <h2>EricVulture</h2>
+
 <p>
     Class to adopt the Vulture class to the eric plug-in functionality.
 </p>
 <h3>Derived from</h3>
 Vulture
 <h3>Class Attributes</h3>
+
 <table>
 <tr><td>None</td></tr>
 </table>
 <h3>Class Methods</h3>
+
 <table>
 <tr><td>None</td></tr>
 </table>
 <h3>Methods</h3>
+
 <table>
+
 <tr>
 <td><a href="#EricVulture.__item2Dict">__item2Dict</a></td>
 <td>Private method to convert a vulture item to a dictionary.</td>
-</tr><tr>
+</tr>
+<tr>
 <td><a href="#EricVulture.getResults">getResults</a></td>
 <td>Public method to get the scan results.</td>
 </tr>
 </table>
 <h3>Static Methods</h3>
+
 <table>
 <tr><td>None</td></tr>
 </table>
+
 <a NAME="EricVulture.__item2Dict" ID="EricVulture.__item2Dict"></a>
 <h4>EricVulture.__item2Dict</h4>
 <b>__item2Dict</b>(<i>item</i>)
+
 <p>
         Private method to convert a vulture item to a dictionary.
-</p><dl>
+</p>
+<dl>
+
 <dt><i>item</i> (vulture.Item)</dt>
 <dd>
 vulture item
 </dd>
-</dl><dl>
+</dl>
+<dl>
 <dt>Returns:</dt>
 <dd>
 item dictionary
 </dd>
-</dl><dl>
+</dl>
+<dl>
 <dt>Return Type:</dt>
 <dd>
 dict
 </dd>
-</dl><a NAME="EricVulture.getResults" ID="EricVulture.getResults"></a>
+</dl>
+<a NAME="EricVulture.getResults" ID="EricVulture.getResults"></a>
 <h4>EricVulture.getResults</h4>
 <b>getResults</b>(<i></i>)
+
 <p>
         Public method to get the scan results.
-</p><dl>
+</p>
+<dl>
 <dt>Returns:</dt>
 <dd>
 scan results
 </dd>
-</dl><dl>
+</dl>
+<dl>
 <dt>Return Type:</dt>
 <dd>
 dict
 </dd>
 </dl>
 <div align="right"><a href="#top">Up</a></div>
-<hr /><hr />
+<hr />
+<hr />
 <a NAME="__analyze" ID="__analyze"></a>
 <h2>__analyze</h2>
 <b>__analyze</b>(<i>filename, text=""</i>)
+
 <p>
     Private function to analyze one Python file.
-</p><dl>
+</p>
+<dl>
+
 <dt><i>filename</i> (str)</dt>
 <dd>
 source file name
-</dd><dt><i>text</i> (str)</dt>
+</dd>
+<dt><i>text</i> (str)</dt>
 <dd>
 source text
 </dd>
-</dl><dl>
+</dl>
+<dl>
 <dt>Returns:</dt>
 <dd>
 tuple containing the result dictionary
 </dd>
-</dl><dl>
+</dl>
+<dl>
 <dt>Return Type:</dt>
 <dd>
 (tuple of dict)
 </dd>
 </dl>
 <div align="right"><a href="#top">Up</a></div>
-<hr /><hr />
+<hr />
+<hr />
 <a NAME="batchVultureCheck" ID="batchVultureCheck"></a>
 <h2>batchVultureCheck</h2>
 <b>batchVultureCheck</b>(<i>argumentsList, send, fx, cancelled, maxProcesses=0</i>)
+
 <p>
     Module function to analyze a batch of files.
-</p><dl>
+</p>
+<dl>
+
 <dt><i>argumentsList</i> (list)</dt>
 <dd>
 list of arguments tuples as given for vultureCheck
-</dd><dt><i>send</i> (function)</dt>
+</dd>
+<dt><i>send</i> (function)</dt>
 <dd>
 reference to send function
-</dd><dt><i>fx</i> (str)</dt>
+</dd>
+<dt><i>fx</i> (str)</dt>
 <dd>
 registered service name
-</dd><dt><i>cancelled</i> (function)</dt>
+</dd>
+<dt><i>cancelled</i> (function)</dt>
 <dd>
 reference to function checking for a cancellation
-</dd><dt><i>maxProcesses</i> (int)</dt>
+</dd>
+<dt><i>maxProcesses</i> (int)</dt>
 <dd>
 number of processes to be used
 </dd>
 </dl>
 <div align="right"><a href="#top">Up</a></div>
-<hr /><hr />
+<hr />
+<hr />
 <a NAME="initBatchService" ID="initBatchService"></a>
 <h2>initBatchService</h2>
 <b>initBatchService</b>(<i></i>)
+
 <p>
     Initialize the batch service and return the entry point.
-</p><dl>
+</p>
+<dl>
 <dt>Returns:</dt>
 <dd>
 the entry point for the background client (function)
 </dd>
 </dl>
 <div align="right"><a href="#top">Up</a></div>
-<hr /><hr />
+<hr />
+<hr />
 <a NAME="initService" ID="initService"></a>
 <h2>initService</h2>
 <b>initService</b>(<i></i>)
+
 <p>
     Initialize the service and return the entry point.
-</p><dl>
+</p>
+<dl>
 <dt>Returns:</dt>
 <dd>
 the entry point for the background client (function)
 </dd>
 </dl>
 <div align="right"><a href="#top">Up</a></div>
-<hr /><hr />
+<hr />
+<hr />
 <a NAME="vultureCheck" ID="vultureCheck"></a>
 <h2>vultureCheck</h2>
 <b>vultureCheck</b>(<i>file, text=""</i>)
+
 <p>
     Private function to analyze one file.
-</p><dl>
+</p>
+<dl>
+
 <dt><i>file</i> (str)</dt>
 <dd>
 source filename
-</dd><dt><i>text</i> (str)</dt>
+</dd>
+<dt><i>text</i> (str)</dt>
 <dd>
 source text
 </dd>
-</dl><dl>
+</dl>
+<dl>
 <dt>Returns:</dt>
 <dd>
 tuple containing the result dictionary
 </dd>
-</dl><dl>
+</dl>
+<dl>
 <dt>Return Type:</dt>
 <dd>
 (tuple of dict)
 </dd>
 </dl>
 <div align="right"><a href="#top">Up</a></div>
-<hr /><hr />
+<hr />
+<hr />
 <a NAME="worker" ID="worker"></a>
 <h2>worker</h2>
 <b>worker</b>(<i>inputQueue, outputQueue</i>)
+
 <p>
     Module function acting as the parallel worker for the cyclomatic
     complexity calculation.
-</p><dl>
+</p>
+<dl>
+
 <dt><i>inputQueue</i> (multiprocessing.Queue)</dt>
 <dd>
 input queue
-</dd><dt><i>outputQueue</i> (multiprocessing.Queue)</dt>
+</dd>
+<dt><i>outputQueue</i> (multiprocessing.Queue)</dt>
 <dd>
 output queue
 </dd>
--- a/VultureChecker/Documentation/source/index-Plugin_Checker_Vulture.VultureChecker.html	Wed Jan 01 11:58:52 2020 +0100
+++ b/VultureChecker/Documentation/source/index-Plugin_Checker_Vulture.VultureChecker.html	Tue Jun 23 17:33:21 2020 +0200
@@ -20,6 +20,7 @@
 </head>
 <body>
 <h1>Plugin_Checker_Vulture.VultureChecker</h1>
+
 <p>
 Package containing the vulture dialog, supporting functions and data.
 </p>
@@ -27,13 +28,16 @@
 
 <h3>Modules</h3>
 <table>
+
 <tr>
 <td><a href="Plugin_Checker_Vulture.VultureChecker.EditWhiteListDialog.html">EditWhiteListDialog</a></td>
 <td>Module implementing the whitelist edit dialog.</td>
-</tr><tr>
+</tr>
+<tr>
 <td><a href="Plugin_Checker_Vulture.VultureChecker.VultureCheckerDialog.html">VultureCheckerDialog</a></td>
 <td>Module implementing a dialog to show the vulture check results.</td>
-</tr><tr>
+</tr>
+<tr>
 <td><a href="Plugin_Checker_Vulture.VultureChecker.VultureCheckerService.html">VultureCheckerService</a></td>
 <td>Module implementing the cyclomatic complexity service.</td>
 </tr>
--- a/VultureChecker/Documentation/source/index-Plugin_Checker_Vulture.html	Wed Jan 01 11:58:52 2020 +0100
+++ b/VultureChecker/Documentation/source/index-Plugin_Checker_Vulture.html	Tue Jun 23 17:33:21 2020 +0200
@@ -20,12 +20,14 @@
 </head>
 <body>
 <h1>Plugin_Checker_Vulture</h1>
+
 <p>
 Package implementing the vulture plug-in.
 </p>
 
 <h3>Packages</h3>
 <table>
+
 <tr>
 <td><a href="index-Plugin_Checker_Vulture.VultureChecker.html">VultureChecker</a></td>
 <td>Package containing the vulture dialog, supporting functions and data.</td>
@@ -34,6 +36,7 @@
 
 <h3>Modules</h3>
 <table>
+
 <tr>
 <td><a href="Plugin_Checker_Vulture.PluginVulture.html">PluginVulture</a></td>
 <td>Module implementing the vulture plug-in.</td>
--- a/VultureChecker/Documentation/source/index.html	Wed Jan 01 11:58:52 2020 +0100
+++ b/VultureChecker/Documentation/source/index.html	Tue Jun 23 17:33:21 2020 +0200
@@ -24,6 +24,7 @@
 
 <h3>Packages</h3>
 <table>
+
 <tr>
 <td><a href="index-Plugin_Checker_Vulture.html">Plugin_Checker_Vulture</a></td>
 <td>Package implementing the vulture plug-in.</td>
--- a/VultureChecker/EditWhiteListDialog.py	Wed Jan 01 11:58:52 2020 +0100
+++ b/VultureChecker/EditWhiteListDialog.py	Tue Jun 23 17:33:21 2020 +0200
@@ -7,8 +7,6 @@
 Module implementing the whitelist edit dialog.
 """
 
-from __future__ import unicode_literals
-
 from PyQt5.QtCore import pyqtSlot
 from PyQt5.QtWidgets import QDialog, QInputDialog, QLineEdit
 
@@ -120,12 +118,11 @@
         @return flag indicating a wildcard pattern
         @rtype bool
         """
-        isPattern = False
         for char in "*?[":
             if char in name:
-                isPattern = True
-                break
-        return isPattern
+                return True
+        
+        return False
     
     @pyqtSlot()
     def on_addButton_clicked(self):
@@ -203,7 +200,7 @@
         @return dictionary containing the whitelists
         @rtype dict of list of str
         """
-        whitelists = {
+        return {
             "class": self.__getWhiteList(self.classesList),
             "function": self.__getWhiteList(self.functionsList),
             "slot": self.__getWhiteList(self.slotsList),
@@ -213,4 +210,3 @@
             "import": self.__getWhiteList(self.importsList),
             "__patterns__": self.__getWhiteList(self.patternsList),
         }
-        return whitelists
--- a/VultureChecker/VultureCheckerDialog.py	Wed Jan 01 11:58:52 2020 +0100
+++ b/VultureChecker/VultureCheckerDialog.py	Tue Jun 23 17:33:21 2020 +0200
@@ -7,13 +7,6 @@
 Module implementing a dialog to show the vulture check results.
 """
 
-from __future__ import unicode_literals
-
-try:
-    str = unicode       # __IGNORE_EXCEPTION__ __IGNORE_WARNING__
-except NameError:
-    pass
-
 import os
 import fnmatch
 
@@ -243,7 +236,7 @@
             
             # now go through all the files
             self.progress = 0
-            if len(self.files) == 1 or not self.vultureService.hasBatch:
+            if len(self.files) == 1:
                 self.__batch = False
                 self.vultureCheck()
             else:
@@ -442,8 +435,8 @@
                       if f.strip()]
         if filterList:
             for fileFilter in filterList:
-                fileList = \
-                    [f for f in fileList if not fnmatch.fnmatch(f, fileFilter)]
+                fileList = [f for f in fileList
+                            if not fnmatch.fnmatch(f, fileFilter)]
         
         self.__slotsAreUsed = self.slotsCheckBox.isChecked()
         if self.__slotsAreUsed != self.__data["SlotsAreUsed"]:
@@ -545,7 +538,7 @@
             regExp = QRegExp(pattern, Qt.CaseSensitive, QRegExp.Wildcard)
             filteredList = [item for item in filteredList
                             if not regExp.exactMatch(item.name)]
-        return filteredList
+        return filteredList     # __IGNORE_WARNING_M834__
     
     def __getUnusedItems(self, defined, used):
         """
@@ -558,9 +551,7 @@
         @return list of unused items
         @rtype list of VultureItem
         """
-        unusedItems = [item for item in set(defined)
-                       if item.name not in used]
-        return unusedItems
+        return [item for item in set(defined) if item.name not in used]
 
     def __unusedFunctions(self):
         """
@@ -656,10 +647,7 @@
     def __createResultItems(self):
         """
         Private method to populate the list with the analysis result.
-        """         # __IGNORE_WARNING__
-        def filename(item):
-            return item.filename
-        
+        """
         lastFileItem = None
         lastFileName = ""
         items = (self.__unusedFunctions() +
@@ -670,7 +658,7 @@
                  self.__unusedAttributes())
         if not self.__slotsAreUsed:
             items += self.__unusedSlots()
-        for item in sorted(items, key=filename):
+        for item in sorted(items, key=lambda item: item.filename):
             if lastFileItem is None or lastFileName != item.filename:
                 lastFileItem = self.__createFileItem(item.filename)
                 lastFileName = item.filename
@@ -752,9 +740,8 @@
         @return list of selected non file items
         @rtype list of QTreeWidgetItem
         """
-        itmList = [i for i in self.resultList.selectedItems()
-                   if i.parent() is not None]
-        return itmList
+        return [i for i in self.resultList.selectedItems()
+                if i.parent() is not None]
     
     def __editWhiteList(self):
         """
--- a/VultureChecker/VultureCheckerService.py	Wed Jan 01 11:58:52 2020 +0100
+++ b/VultureChecker/VultureCheckerService.py	Tue Jun 23 17:33:21 2020 +0200
@@ -7,19 +7,7 @@
 Module implementing the cyclomatic complexity service.
 """
 
-from __future__ import unicode_literals
-
-try:
-    str = unicode       # __IGNORE_EXCEPTION__ __IGNORE_WARNING__
-except NameError:
-    pass
-
-try:
-    import Queue as queue   # Py2
-except ImportError:
-    import queue
-
-import sys
+import queue
 import multiprocessing
 
 from vulture import Vulture
@@ -94,8 +82,8 @@
 
     # Start worker processes
     for _ in range(NumberOfProcesses):
-        multiprocessing.Process(target=worker, args=(taskQueue, doneQueue))\
-            .start()
+        multiprocessing.Process(target=worker,
+                                args=(taskQueue, doneQueue)).start()
 
     # Get and send results
     endIndex = len(argumentsList) - initialTasks
@@ -153,13 +141,6 @@
     @return tuple containing the result dictionary
     @rtype (tuple of dict)
     """
-    # Check type for py2: if not str it's unicode
-    if sys.version_info[0] == 2:
-        try:
-            text = text.encode('utf-8')
-        except UnicodeError:
-            pass
-    
     try:
         v = EricVulture()
         v.scan(text, filename=filename)
@@ -182,7 +163,7 @@
         @return item dictionary
         @rtype dict
         """
-        d = {
+        return {
             "name": item.name,
             "type": item.typ,
             "file": item.filename,
@@ -190,7 +171,6 @@
             "last_line": item.last_lineno,
             "confidence": item.confidence,
         }
-        return d
     
     def getResults(self):
         """
--- a/VultureChecker/i18n/vulture_de.ts	Wed Jan 01 11:58:52 2020 +0100
+++ b/VultureChecker/i18n/vulture_de.ts	Tue Jun 23 17:33:21 2020 +0200
@@ -68,7 +68,7 @@
         <translation>Alle Entfernen</translation>
     </message>
     <message>
-        <location filename="../EditWhiteListDialog.py" line="135"/>
+        <location filename="../EditWhiteListDialog.py" line="132"/>
         <source>Enter a name or wildcard pattern to be added to the current whitelist:</source>
         <translation>Gib einen zur aktuellen Whitelist hinzuzufügenden Namen oder ein Wildcard Muster ein:</translation>
     </message>
@@ -83,7 +83,7 @@
         <translation>Imports</translation>
     </message>
     <message>
-        <location filename="../EditWhiteListDialog.py" line="135"/>
+        <location filename="../EditWhiteListDialog.py" line="132"/>
         <source>Add to Whitelist</source>
         <translation>Zur Whitelist Hinzufügen</translation>
     </message>
@@ -158,67 +158,67 @@
         <translation>%v/%m Dateien</translation>
     </message>
     <message>
-        <location filename="../VultureCheckerDialog.py" line="90"/>
+        <location filename="../VultureCheckerDialog.py" line="83"/>
         <source>Add to Whitelist</source>
         <translation>Zur Whitelist Hinzufügen</translation>
     </message>
     <message>
-        <location filename="../VultureCheckerDialog.py" line="93"/>
+        <location filename="../VultureCheckerDialog.py" line="86"/>
         <source>Edit Whitelist</source>
         <translation>Whitelist Bearbeiten</translation>
     </message>
     <message>
-        <location filename="../VultureCheckerDialog.py" line="96"/>
+        <location filename="../VultureCheckerDialog.py" line="89"/>
         <source>Collapse all</source>
         <translation>Alle Zuklappen</translation>
     </message>
     <message>
-        <location filename="../VultureCheckerDialog.py" line="98"/>
+        <location filename="../VultureCheckerDialog.py" line="91"/>
         <source>Expand all</source>
         <translation>Alle Aufklappen</translation>
     </message>
     <message>
-        <location filename="../VultureCheckerDialog.py" line="120"/>
+        <location filename="../VultureCheckerDialog.py" line="113"/>
         <source>Property</source>
         <translation>Eigenschaft</translation>
     </message>
     <message>
-        <location filename="../VultureCheckerDialog.py" line="121"/>
+        <location filename="../VultureCheckerDialog.py" line="114"/>
         <source>Function</source>
         <translation>Funktion</translation>
     </message>
     <message>
-        <location filename="../VultureCheckerDialog.py" line="122"/>
+        <location filename="../VultureCheckerDialog.py" line="115"/>
         <source>Slot</source>
         <translation>Slot</translation>
     </message>
     <message>
-        <location filename="../VultureCheckerDialog.py" line="123"/>
+        <location filename="../VultureCheckerDialog.py" line="116"/>
         <source>Attribute</source>
         <translation>Attribut</translation>
     </message>
     <message>
-        <location filename="../VultureCheckerDialog.py" line="124"/>
+        <location filename="../VultureCheckerDialog.py" line="117"/>
         <source>Variable</source>
         <translation>Variable</translation>
     </message>
     <message>
-        <location filename="../VultureCheckerDialog.py" line="125"/>
+        <location filename="../VultureCheckerDialog.py" line="118"/>
         <source>Class</source>
         <translation>Klasse</translation>
     </message>
     <message>
-        <location filename="../VultureCheckerDialog.py" line="139"/>
+        <location filename="../VultureCheckerDialog.py" line="132"/>
         <source>Errors</source>
         <translation>Fehler</translation>
     </message>
     <message>
-        <location filename="../VultureCheckerDialog.py" line="295"/>
+        <location filename="../VultureCheckerDialog.py" line="287"/>
         <source>Preparing files...</source>
         <translation>Bereite Dateien vor...</translation>
     </message>
     <message>
-        <location filename="../VultureCheckerDialog.py" line="315"/>
+        <location filename="../VultureCheckerDialog.py" line="307"/>
         <source>Transferring data...</source>
         <translation>Übertrage Daten...</translation>
     </message>
@@ -228,12 +228,12 @@
         <translation>Sicherheit</translation>
     </message>
     <message>
-        <location filename="../VultureCheckerDialog.py" line="126"/>
+        <location filename="../VultureCheckerDialog.py" line="119"/>
         <source>Import</source>
         <translation>Import</translation>
     </message>
     <message>
-        <location filename="../VultureCheckerDialog.py" line="408"/>
+        <location filename="../VultureCheckerDialog.py" line="400"/>
         <source>No unused code found.</source>
         <translation>Es wurde kein ungenutzter Code gefunden.</translation>
     </message>
@@ -243,30 +243,30 @@
     <message>
         <location filename="../../PluginVulture.py" line="128"/>
         <source>Python 2 batch job</source>
-        <translation>Python 2 Stapelverarbeitung</translation>
+        <translation type="obsolete">Python 2 Stapelverarbeitung</translation>
     </message>
     <message>
-        <location filename="../../PluginVulture.py" line="149"/>
+        <location filename="../../PluginVulture.py" line="105"/>
         <source>Python 3 batch job</source>
         <translation>Python 3 Stapelverarbeitung</translation>
     </message>
     <message>
-        <location filename="../../PluginVulture.py" line="253"/>
+        <location filename="../../PluginVulture.py" line="206"/>
         <source>Check Unused Code</source>
         <translation>Prüfe auf Ungenutzten Code</translation>
     </message>
     <message>
-        <location filename="../../PluginVulture.py" line="253"/>
+        <location filename="../../PluginVulture.py" line="206"/>
         <source>&amp;Unused Code...</source>
         <translation>&amp;Ungenutzter Code...</translation>
     </message>
     <message>
-        <location filename="../../PluginVulture.py" line="257"/>
+        <location filename="../../PluginVulture.py" line="210"/>
         <source>Check for unused code</source>
         <translation>Auf ungenutzten Code überprüfen</translation>
     </message>
     <message>
-        <location filename="../../PluginVulture.py" line="259"/>
+        <location filename="../../PluginVulture.py" line="212"/>
         <source>&lt;b&gt;Check Unused Code...&lt;/b&gt;&lt;p&gt;This checks a Python project for unused code.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Prüfe auf Ungenutzten Code...&lt;/b&gt;&lt;p&gt;Dies überprüft ein Python Projekt auf ungenutzten Code.&lt;/p&gt;</translation>
     </message>
--- a/VultureChecker/i18n/vulture_en.ts	Wed Jan 01 11:58:52 2020 +0100
+++ b/VultureChecker/i18n/vulture_en.ts	Tue Jun 23 17:33:21 2020 +0200
@@ -68,7 +68,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../EditWhiteListDialog.py" line="135"/>
+        <location filename="../EditWhiteListDialog.py" line="132"/>
         <source>Enter a name or wildcard pattern to be added to the current whitelist:</source>
         <translation type="unfinished"></translation>
     </message>
@@ -83,7 +83,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../EditWhiteListDialog.py" line="135"/>
+        <location filename="../EditWhiteListDialog.py" line="132"/>
         <source>Add to Whitelist</source>
         <translation type="unfinished"></translation>
     </message>
@@ -157,67 +157,67 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VultureCheckerDialog.py" line="90"/>
+        <location filename="../VultureCheckerDialog.py" line="83"/>
         <source>Add to Whitelist</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VultureCheckerDialog.py" line="93"/>
+        <location filename="../VultureCheckerDialog.py" line="86"/>
         <source>Edit Whitelist</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VultureCheckerDialog.py" line="96"/>
+        <location filename="../VultureCheckerDialog.py" line="89"/>
         <source>Collapse all</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VultureCheckerDialog.py" line="98"/>
+        <location filename="../VultureCheckerDialog.py" line="91"/>
         <source>Expand all</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VultureCheckerDialog.py" line="120"/>
+        <location filename="../VultureCheckerDialog.py" line="113"/>
         <source>Property</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VultureCheckerDialog.py" line="121"/>
+        <location filename="../VultureCheckerDialog.py" line="114"/>
         <source>Function</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VultureCheckerDialog.py" line="122"/>
+        <location filename="../VultureCheckerDialog.py" line="115"/>
         <source>Slot</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VultureCheckerDialog.py" line="123"/>
+        <location filename="../VultureCheckerDialog.py" line="116"/>
         <source>Attribute</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VultureCheckerDialog.py" line="124"/>
+        <location filename="../VultureCheckerDialog.py" line="117"/>
         <source>Variable</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VultureCheckerDialog.py" line="125"/>
+        <location filename="../VultureCheckerDialog.py" line="118"/>
         <source>Class</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VultureCheckerDialog.py" line="139"/>
+        <location filename="../VultureCheckerDialog.py" line="132"/>
         <source>Errors</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VultureCheckerDialog.py" line="295"/>
+        <location filename="../VultureCheckerDialog.py" line="287"/>
         <source>Preparing files...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VultureCheckerDialog.py" line="315"/>
+        <location filename="../VultureCheckerDialog.py" line="307"/>
         <source>Transferring data...</source>
         <translation type="unfinished"></translation>
     </message>
@@ -227,12 +227,12 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VultureCheckerDialog.py" line="126"/>
+        <location filename="../VultureCheckerDialog.py" line="119"/>
         <source>Import</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VultureCheckerDialog.py" line="408"/>
+        <location filename="../VultureCheckerDialog.py" line="400"/>
         <source>No unused code found.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -240,32 +240,27 @@
 <context>
     <name>VulturePlugin</name>
     <message>
-        <location filename="../../PluginVulture.py" line="128"/>
-        <source>Python 2 batch job</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../../PluginVulture.py" line="149"/>
+        <location filename="../../PluginVulture.py" line="105"/>
         <source>Python 3 batch job</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../PluginVulture.py" line="253"/>
+        <location filename="../../PluginVulture.py" line="206"/>
         <source>Check Unused Code</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../PluginVulture.py" line="253"/>
+        <location filename="../../PluginVulture.py" line="206"/>
         <source>&amp;Unused Code...</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../PluginVulture.py" line="257"/>
+        <location filename="../../PluginVulture.py" line="210"/>
         <source>Check for unused code</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../../PluginVulture.py" line="259"/>
+        <location filename="../../PluginVulture.py" line="212"/>
         <source>&lt;b&gt;Check Unused Code...&lt;/b&gt;&lt;p&gt;This checks a Python project for unused code.&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
--- a/VultureChecker/i18n/vulture_es.ts	Wed Jan 01 11:58:52 2020 +0100
+++ b/VultureChecker/i18n/vulture_es.ts	Tue Jun 23 17:33:21 2020 +0200
@@ -78,7 +78,7 @@
         <translation type="obsolete">Añadir Lista Blanca</translation>
     </message>
     <message>
-        <location filename="../EditWhiteListDialog.py" line="135"/>
+        <location filename="../EditWhiteListDialog.py" line="132"/>
         <source>Enter a name or wildcard pattern to be added to the current whitelist:</source>
         <translation>Introducir nombre o patrón con comodines para añadir a la lista blanca actual:</translation>
     </message>
@@ -93,7 +93,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../EditWhiteListDialog.py" line="135"/>
+        <location filename="../EditWhiteListDialog.py" line="132"/>
         <source>Add to Whitelist</source>
         <translation type="unfinished">Añadir a la Lista Blanca</translation>
     </message>
@@ -168,67 +168,67 @@
         <translation>Archivos %v/%m</translation>
     </message>
     <message>
-        <location filename="../VultureCheckerDialog.py" line="90"/>
+        <location filename="../VultureCheckerDialog.py" line="83"/>
         <source>Add to Whitelist</source>
         <translation>Añadir a la Lista Blanca</translation>
     </message>
     <message>
-        <location filename="../VultureCheckerDialog.py" line="93"/>
+        <location filename="../VultureCheckerDialog.py" line="86"/>
         <source>Edit Whitelist</source>
         <translation>Editar Lista Blanca</translation>
     </message>
     <message>
-        <location filename="../VultureCheckerDialog.py" line="96"/>
+        <location filename="../VultureCheckerDialog.py" line="89"/>
         <source>Collapse all</source>
         <translation>Contraer todo</translation>
     </message>
     <message>
-        <location filename="../VultureCheckerDialog.py" line="98"/>
+        <location filename="../VultureCheckerDialog.py" line="91"/>
         <source>Expand all</source>
         <translation>Expandir todo</translation>
     </message>
     <message>
-        <location filename="../VultureCheckerDialog.py" line="120"/>
+        <location filename="../VultureCheckerDialog.py" line="113"/>
         <source>Property</source>
         <translation>Propiedad</translation>
     </message>
     <message>
-        <location filename="../VultureCheckerDialog.py" line="121"/>
+        <location filename="../VultureCheckerDialog.py" line="114"/>
         <source>Function</source>
         <translation>Función</translation>
     </message>
     <message>
-        <location filename="../VultureCheckerDialog.py" line="122"/>
+        <location filename="../VultureCheckerDialog.py" line="115"/>
         <source>Slot</source>
         <translation>Slot</translation>
     </message>
     <message>
-        <location filename="../VultureCheckerDialog.py" line="123"/>
+        <location filename="../VultureCheckerDialog.py" line="116"/>
         <source>Attribute</source>
         <translation>Atributo</translation>
     </message>
     <message>
-        <location filename="../VultureCheckerDialog.py" line="124"/>
+        <location filename="../VultureCheckerDialog.py" line="117"/>
         <source>Variable</source>
         <translation>Variable</translation>
     </message>
     <message>
-        <location filename="../VultureCheckerDialog.py" line="125"/>
+        <location filename="../VultureCheckerDialog.py" line="118"/>
         <source>Class</source>
         <translation>Clase</translation>
     </message>
     <message>
-        <location filename="../VultureCheckerDialog.py" line="139"/>
+        <location filename="../VultureCheckerDialog.py" line="132"/>
         <source>Errors</source>
         <translation>Errores</translation>
     </message>
     <message>
-        <location filename="../VultureCheckerDialog.py" line="295"/>
+        <location filename="../VultureCheckerDialog.py" line="287"/>
         <source>Preparing files...</source>
         <translation>Preparando archivos...</translation>
     </message>
     <message>
-        <location filename="../VultureCheckerDialog.py" line="315"/>
+        <location filename="../VultureCheckerDialog.py" line="307"/>
         <source>Transferring data...</source>
         <translation>Transfiriendo datos...</translation>
     </message>
@@ -238,12 +238,12 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VultureCheckerDialog.py" line="126"/>
+        <location filename="../VultureCheckerDialog.py" line="119"/>
         <source>Import</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../VultureCheckerDialog.py" line="408"/>
+        <location filename="../VultureCheckerDialog.py" line="400"/>
         <source>No unused code found.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -253,30 +253,30 @@
     <message>
         <location filename="../../PluginVulture.py" line="128"/>
         <source>Python 2 batch job</source>
-        <translation>Trabajo por lotes de Python 2</translation>
+        <translation type="obsolete">Trabajo por lotes de Python 2</translation>
     </message>
     <message>
-        <location filename="../../PluginVulture.py" line="149"/>
+        <location filename="../../PluginVulture.py" line="105"/>
         <source>Python 3 batch job</source>
         <translation>Trabajo por lotes de Python 3</translation>
     </message>
     <message>
-        <location filename="../../PluginVulture.py" line="253"/>
+        <location filename="../../PluginVulture.py" line="206"/>
         <source>Check Unused Code</source>
         <translation>Comprobar Código no Usado</translation>
     </message>
     <message>
-        <location filename="../../PluginVulture.py" line="253"/>
+        <location filename="../../PluginVulture.py" line="206"/>
         <source>&amp;Unused Code...</source>
         <translation>Código no &amp;Usado...</translation>
     </message>
     <message>
-        <location filename="../../PluginVulture.py" line="257"/>
+        <location filename="../../PluginVulture.py" line="210"/>
         <source>Check for unused code</source>
         <translation>Comprobar código no usado</translation>
     </message>
     <message>
-        <location filename="../../PluginVulture.py" line="259"/>
+        <location filename="../../PluginVulture.py" line="212"/>
         <source>&lt;b&gt;Check Unused Code...&lt;/b&gt;&lt;p&gt;This checks a Python project for unused code.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Comprobar Código no Usado...&lt;/b&gt;&lt;p&gt;Comprueba un projecto Python buscando código no usado.&lt;/p&gt;</translation>
     </message>
--- a/VultureChecker/i18n/vulture_ru.ts	Wed Jan 01 11:58:52 2020 +0100
+++ b/VultureChecker/i18n/vulture_ru.ts	Tue Jun 23 17:33:21 2020 +0200
@@ -68,7 +68,7 @@
         <translation>Удалить все</translation>
     </message>
     <message>
-        <location filename="../EditWhiteListDialog.py" line="135"/>
+        <location filename="../EditWhiteListDialog.py" line="132"/>
         <source>Enter a name or wildcard pattern to be added to the current whitelist:</source>
         <translation>Задайте имя или метасимволы шаблона для добавления в текущий белый список:</translation>
     </message>
@@ -83,7 +83,7 @@
         <translation>Импорт</translation>
     </message>
     <message>
-        <location filename="../EditWhiteListDialog.py" line="135"/>
+        <location filename="../EditWhiteListDialog.py" line="132"/>
         <source>Add to Whitelist</source>
         <translation>Добавить в белый список</translation>
     </message>
@@ -158,67 +158,67 @@
         <translation>%v из %m файлов</translation>
     </message>
     <message>
-        <location filename="../VultureCheckerDialog.py" line="90"/>
+        <location filename="../VultureCheckerDialog.py" line="83"/>
         <source>Add to Whitelist</source>
         <translation>Добавить в белый список</translation>
     </message>
     <message>
-        <location filename="../VultureCheckerDialog.py" line="93"/>
+        <location filename="../VultureCheckerDialog.py" line="86"/>
         <source>Edit Whitelist</source>
         <translation>Правка белого списка</translation>
     </message>
     <message>
-        <location filename="../VultureCheckerDialog.py" line="96"/>
+        <location filename="../VultureCheckerDialog.py" line="89"/>
         <source>Collapse all</source>
         <translation>Свернуть все</translation>
     </message>
     <message>
-        <location filename="../VultureCheckerDialog.py" line="98"/>
+        <location filename="../VultureCheckerDialog.py" line="91"/>
         <source>Expand all</source>
         <translation>Развернуть все</translation>
     </message>
     <message>
-        <location filename="../VultureCheckerDialog.py" line="120"/>
+        <location filename="../VultureCheckerDialog.py" line="113"/>
         <source>Property</source>
         <translation>Свойство</translation>
     </message>
     <message>
-        <location filename="../VultureCheckerDialog.py" line="121"/>
+        <location filename="../VultureCheckerDialog.py" line="114"/>
         <source>Function</source>
         <translation>Функция</translation>
     </message>
     <message>
-        <location filename="../VultureCheckerDialog.py" line="122"/>
+        <location filename="../VultureCheckerDialog.py" line="115"/>
         <source>Slot</source>
         <translation>Слот</translation>
     </message>
     <message>
-        <location filename="../VultureCheckerDialog.py" line="123"/>
+        <location filename="../VultureCheckerDialog.py" line="116"/>
         <source>Attribute</source>
         <translation>Атрибут</translation>
     </message>
     <message>
-        <location filename="../VultureCheckerDialog.py" line="124"/>
+        <location filename="../VultureCheckerDialog.py" line="117"/>
         <source>Variable</source>
         <translation>Переменная</translation>
     </message>
     <message>
-        <location filename="../VultureCheckerDialog.py" line="125"/>
+        <location filename="../VultureCheckerDialog.py" line="118"/>
         <source>Class</source>
         <translation>Класс</translation>
     </message>
     <message>
-        <location filename="../VultureCheckerDialog.py" line="139"/>
+        <location filename="../VultureCheckerDialog.py" line="132"/>
         <source>Errors</source>
         <translation>Ошибки</translation>
     </message>
     <message>
-        <location filename="../VultureCheckerDialog.py" line="295"/>
+        <location filename="../VultureCheckerDialog.py" line="287"/>
         <source>Preparing files...</source>
         <translation>Подготовка файлов...</translation>
     </message>
     <message>
-        <location filename="../VultureCheckerDialog.py" line="315"/>
+        <location filename="../VultureCheckerDialog.py" line="307"/>
         <source>Transferring data...</source>
         <translation>Передача данных...</translation>
     </message>
@@ -228,12 +228,12 @@
         <translation>Достоверность</translation>
     </message>
     <message>
-        <location filename="../VultureCheckerDialog.py" line="126"/>
+        <location filename="../VultureCheckerDialog.py" line="119"/>
         <source>Import</source>
         <translation>Импорт</translation>
     </message>
     <message>
-        <location filename="../VultureCheckerDialog.py" line="408"/>
+        <location filename="../VultureCheckerDialog.py" line="400"/>
         <source>No unused code found.</source>
         <translation>Неиспользуемый код не найден.</translation>
     </message>
@@ -243,30 +243,30 @@
     <message>
         <location filename="../../PluginVulture.py" line="128"/>
         <source>Python 2 batch job</source>
-        <translation>Пакетное задание Python 2</translation>
+        <translation type="obsolete">Пакетное задание Python 2</translation>
     </message>
     <message>
-        <location filename="../../PluginVulture.py" line="149"/>
+        <location filename="../../PluginVulture.py" line="105"/>
         <source>Python 3 batch job</source>
         <translation>Пакетное задание Python 3</translation>
     </message>
     <message>
-        <location filename="../../PluginVulture.py" line="253"/>
+        <location filename="../../PluginVulture.py" line="206"/>
         <source>Check Unused Code</source>
         <translation>Проверка неиспользуемого кода</translation>
     </message>
     <message>
-        <location filename="../../PluginVulture.py" line="253"/>
+        <location filename="../../PluginVulture.py" line="206"/>
         <source>&amp;Unused Code...</source>
         <translation>&amp;Неиспользованный код...</translation>
     </message>
     <message>
-        <location filename="../../PluginVulture.py" line="257"/>
+        <location filename="../../PluginVulture.py" line="210"/>
         <source>Check for unused code</source>
         <translation>Проверка неиспользуемого кода</translation>
     </message>
     <message>
-        <location filename="../../PluginVulture.py" line="259"/>
+        <location filename="../../PluginVulture.py" line="212"/>
         <source>&lt;b&gt;Check Unused Code...&lt;/b&gt;&lt;p&gt;This checks a Python project for unused code.&lt;/p&gt;</source>
         <translation>&lt;b&gt;Проверка неиспользуемого кода...&lt;/b&gt;&lt;p&gt;Эта проверка позволяет выявить в проекте Python неиспользованный код.&lt;/p&gt;</translation>
     </message>

eric ide

mercurial