diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 08772850dddd2a5db6b48e39ae9772b991373a08..c2f06f9a58f6b9ba2a89f4950b377b45fd8fbe9f 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -9,7 +9,7 @@ mdcheck:
     - mdl *.md
 
 pylint:
-  allow_failure: true
+        #allow_failure: true
   stage: test
   image: it4innovations/docker-pycheck:latest
   script:
diff --git a/pipupgradedependencies/__init__.py b/pipupgradedependencies/__init__.py
index de40ea7ca058e07a399acf61529d418c07eeee61..06e92937270afd1fa2e207d3e14a61293ad041c2 100644
--- a/pipupgradedependencies/__init__.py
+++ b/pipupgradedependencies/__init__.py
@@ -1 +1,4 @@
+"""
+pipupgradedependencies init
+"""
 __import__('pkg_resources').declare_namespace(__name__)
diff --git a/pipupgradedependencies/pipupgradedependencies.py b/pipupgradedependencies/pipupgradedependencies.py
index 19c0a5c8ab19e96d79038e53ea27b4464cb4a4c9..a5f1becfc0e7f51b4ed1d5748161ed4e529d6868 100644
--- a/pipupgradedependencies/pipupgradedependencies.py
+++ b/pipupgradedependencies/pipupgradedependencies.py
@@ -1,3 +1,6 @@
+"""
+pipupgradedependencies
+"""
 import argparse
 import json
 import os
@@ -6,69 +9,95 @@ import subprocess
 import sys
 
 def find_dependencies(json_input, package):
+    """
+    find package dependencies in json tree
+    """
     if isinstance(json_input, dict):
-      keys = json_input.keys()
-      if 'package_name' in keys and 'required_version' in keys:
-        if re.search(r'^%s$' % package, json_input['package_name'], re.IGNORECASE):
-          yield json_input['required_version']
-      for child_val in find_dependencies(json_input['dependencies'], package):
-          yield child_val
+        keys = json_input.keys()
+        if 'package_name' in keys and 'required_version' in keys:
+            if re.search(r'^%s$' % package, json_input['package_name'], re.IGNORECASE):
+                yield json_input['required_version']
+        for child_val in find_dependencies(json_input['dependencies'], package):
+            yield child_val
     elif isinstance(json_input, list):
         for item in json_input:
             for item_val in find_dependencies(item, package):
                 yield item_val
+
 def arg_parse():
-  parser = argparse.ArgumentParser(description="Pipupgradedependencies upgrades all outdated packages with respect to existing dependencies.")
-  parser_args = parser.parse_args()
+    """
+    argument parser
+    """
+    parser = argparse.ArgumentParser(
+        description="Pipupgradedependencies upgrades all outdated packages with respect to \
+                     existing dependencies."
+    )
+    parser.parse_args()
 
 def main():
-  arg_parse()
-  os.environ["PYTHONWARNINGS"] = "ignore:DEPRECATION"
-
-  try:
-    subprocess.check_call(["pip", "install", "--upgrade", "pip"], stderr=subprocess.STDOUT)
-  except subprocess.CalledProcessError:
-    sys.exit(1)
+    """
+    main function
+    """
+    arg_parse()
+    os.environ["PYTHONWARNINGS"] = "ignore:DEPRECATION"
 
-  finished_upgrades = []
-  while True:
     try:
-      outdated_packages = subprocess.check_output(["pip", "list", "--outdated"], stderr=subprocess.STDOUT)
+        subprocess.check_call(["pip", "install", "--upgrade", "pip"], stderr=subprocess.STDOUT)
     except subprocess.CalledProcessError:
-      sys.exit(1)
-    outdated_packages = [line.split()[0] for line in outdated_packages.strip().split("\n")[2:]]
+        sys.exit(1)
 
-    try:
-      pipdeptree = subprocess.check_output(["pipdeptree", "--json-tree"], stderr=subprocess.STDOUT)
-    except subprocess.CalledProcessError:
-      sys.exit(1)
-    pipdeptree = pipdeptree.strip()
-    jsonpipdeptree = json.loads(pipdeptree)
+    finished_upgrades = []
+    while True:
+        try:
+            outdated_packages = subprocess.check_output(
+                ["pip", "list", "--outdated"],
+                stderr=subprocess.STDOUT
+            )
+        except subprocess.CalledProcessError:
+            sys.exit(1)
+        outdated_packages = [line.split()[0] for line in outdated_packages.strip().split("\n")[2:]]
 
-    possible_upgrades = []
-    for package in outdated_packages:
-      if package in finished_upgrades:
-        continue
-      package_dependencies = [ _ for _ in find_dependencies(jsonpipdeptree, package)]
-      package_dependencies = list(set(package_dependencies))
-      if len(filter(lambda dependency: re.search(r'(^==.*|^\d.*)', dependency), package_dependencies)) == 0:
-        possible_upgrades.append({'package': package, 'dependencies': [ dependency for dependency in package_dependencies if 'Any' not in dependency]})
+        try:
+            pipdeptree = subprocess.check_output(
+                ["pipdeptree", "--json-tree"],
+                stderr=subprocess.STDOUT
+            )
+        except subprocess.CalledProcessError:
+            sys.exit(1)
+        pipdeptree = pipdeptree.strip()
+        jsonpipdeptree = json.loads(pipdeptree)
 
-    try:
-      package = possible_upgrades[-1]
-    except IndexError:
-      break
-    finished_upgrades.append(package['package'])
+        possible_upgrades = []
+        for package in outdated_packages:
+            if package in finished_upgrades:
+                continue
+            dependencies = [_ for _ in find_dependencies(jsonpipdeptree, package)]
+            dependencies = list(set(dependencies))
+            if not [dep for dep in dependencies if re.search(r'(^==.*|^\d.*)', dep) is not None]:
+                possible_upgrades.append(
+                    {'package': package,
+                     'dependencies': [dep for dep in dependencies if 'Any' not in dep]}
+                )
 
-    try:
-      subprocess.check_call(["pip", "install", "--upgrade", "%s%s" % (package['package'], "".join(package['dependencies']))], stderr=subprocess.STDOUT)
-    except subprocess.CalledProcessError:
-      sys.exit(1)
+        try:
+            package = possible_upgrades[-1]
+        except IndexError:
+            break
+        finished_upgrades.append(package['package'])
+
+        try:
+            subprocess.check_call(
+                ["pip", "install", "--upgrade",
+                 "%s%s" % (package['package'], "".join(package['dependencies']))],
+                stderr=subprocess.STDOUT
+            )
+        except subprocess.CalledProcessError:
+            sys.exit(1)
 
-    if len(possible_upgrades) == len(finished_upgrades):
-      break
+        if len(possible_upgrades) == len(finished_upgrades):
+            break
 
-  print "Done."
+    print "Done."
 
 if __name__ == "__main__":
-  main()
+    main()