Pylint output %%%%%%%%%%%%% Please keep in mind, that linting is, at it's heart, pendanticism so boneheaded, even a computer can do it. Don't take what the linter tells you as a command ;). If you look at the ``Makefile`` in the docs directory, you will see that I have dissabled many warnings. Some of the warnings, like too many local variables, are quite absurd! I have removed pylint's "Global Evaluation" field from the output. This is because such ratings are truely misguided. Code quality cannot be analized by a linter. However, in Python, linting can be helpfull to point out the most trivial mistakes. It also provides us some nice statistics about how many lines of code/modules/classes subuser has. This linter gets run every time the website is updated. It was last run: 2017-02-07 22:09:59 - Module subuserlib.test + W: 14, 2: Reimport 'os' (imported line 8) (reimported) - Module subuserlib.removeOldImages + E: 7, 0: invalid syntax (syntax-error) - Module subuserlib.permissions + W: 11, 0: Unused import os (unused-import) - Module subuserlib.verify + W: 21, 0: Dangerous default value [] as argument (dangerous-default-value) + W: 85, 2: Redefining name 'exceptions' from outer scope (line 18) (redefined-outer-name) + W:107,34: Unused argument 'user' (unused-argument) + E:180, 9: Undefined variable 'FileNotFoundError' (undefined-variable) + W: 18, 0: Unused import exceptions (unused-import) - Module subuserlib.subprocessExtras + W: 12, 0: Unused import subuserlib (unused-import) - Module subuserlib.lock + W: 17,30: Unused argument 'frame' (unused-argument) + W: 17,22: Unused argument 'signum' (unused-argument) + W: 11, 0: Unused import errno (unused-import) + W: 8, 0: Unused import os (unused-import) - Module subuserlib.print + W: 10, 0: TODO, utf-16 should also be supported. (fixme) + E: 14, 6: Instance of 'file' has no 'buffer' member (no-member) - Module subuserlib.version + W: 13, 0: Unused import DockerDaemon (unused-import) - Module subuserlib.update + W: 13, 0: Redefining built-in 'all' (redefined-builtin) + W: 20, 2: Redefining name 'subusers' from outer scope (line 24) (redefined-outer-name) + W: 24,18: Redefining name 'subusers' from outer scope (line 24) (redefined-outer-name) + E: 39, 2: No name 'registry' in module 'subuserlib.classes' (no-name-in-module) + F: 39, 2: Unable to import 'subuserlib.classes.registry' (invalid syntax (, line 18)) (import-error) - Module subuserlib.subuser + W: 48, 4: No exception type(s) specified (bare-except) + W: 16, 0: Unused import exceptions (unused-import) - Module subuserlib.loadMultiFallbackJsonConfigFile + W: 11, 0: Unused import subuserlib (unused-import) - Module subuserlib.executablePath + W: 27, 2: Using global for 'programs' but no assignment is done (global-variable-not-assigned) + W: 40,19: Redefining built-in 'list' (redefined-builtin) - Module subuserlib.paths + F: 39, 4: Unable to import 'pkg_resources' (import-error) - Module subuserlib.docker + W: 23, 2: Using global for 'executable' but no assignment is done (global-variable-not-assigned) + W: 36, 2: Using the global statement (global-statement) + W: 37, 2: Using the global statement (global-statement) + W: 65,22: Redefining built-in 'hash' (redefined-builtin) + W: 11, 0: Unused import grp (unused-import) + W: 10, 0: Unused import getpass (unused-import) - Module subuserlib.classes.service + W: 15, 0: Unused import shutil (unused-import) - Module subuserlib.classes.config + W: 14, 2: __init__ method from base class 'dict' is not called (super-init-not-called) - Module subuserlib.classes.endUser + C:112, 0: Trailing whitespace (trailing-whitespace) + E:136,13: Undefined variable 'FileNotFoundError' (undefined-variable) + W: 14, 0: Unused import paths (unused-import) + W: 9, 0: Unused import sys (unused-import) - Module subuserlib.classes.imageSource + E: 17, 0: invalid syntax (syntax-error) - Module subuserlib.classes.repository + W:157, 0: Bad indentation. Found 10 spaces, expected 8 (bad-indentation) + E: 13, 0: No name 'imageSource' in module 'subuserlib.classes' (no-name-in-module) + F: 13, 0: Unable to import 'subuserlib.classes.imageSource' (invalid syntax (, line 17)) (import-error) + R: 19, 0: Too many instance attributes (8/7) (too-many-instance-attributes) + W: 20, 2: __init__ method from base class 'dict' is not called (super-init-not-called) + W:200,11: Catching too general exception Exception (broad-except) - Module subuserlib.classes.repositories + W: 21, 0: TODO rename and document these variables (fixme) + W: 26, 0: TODO how does this work on windows? (fixme) + R:128, 2: Method could be a function (no-self-use) - Module subuserlib.classes.fileStructure + W: 98, 0: TODO - what about symlinks? (fixme) + W: 99, 0: TODO - what about devices? (fixme) + W:100, 0: TODO - what about hard link loops? (fixme) + W:101, 0: TODO - what about sockets? (fixme) + W:102, 0: TODO - what about named pipes? (fixme) - Module subuserlib.classes.subusers + E: 16, 0: No name 'imageSource' in module 'subuserlib.classes' (no-name-in-module) + F: 16, 0: Unable to import 'subuserlib.classes.imageSource' (invalid syntax (, line 17)) (import-error) + W: 22, 2: __init__ method from base class 'dict' is not called (super-init-not-called) + W: 66,19: Cell variable subuserAttributes defined in loop (cell-var-from-loop) + W: 67,17: Cell variable subuserAttributes defined in loop (cell-var-from-loop) + W: 11, 0: Unused import sys (unused-import) + W: 16, 0: Unused import subuserlib (unused-import) - Module subuserlib.classes.installationTask + R: 58, 2: Too many return statements (8/6) (too-many-return-statements) + W: 8, 0: Unused import sys (unused-import) - Module subuserlib.classes.uhttpConnection + F: 13, 2: Unable to import 'http.client' (import-error) - Module subuserlib.classes.registry + E: 18, 0: invalid syntax (syntax-error) - Module subuserlib.classes.gitRepository + W:121, 2: Dangerous default value [] as argument (dangerous-default-value) + W:159, 2: Dangerous default value [] as argument (dangerous-default-value) + W:188, 2: Dangerous default value [] as argument (dangerous-default-value) + W:188, 2: Arguments number differs from overridden method (arguments-differ) + W: 9, 0: Unused import tempfile (unused-import) - Module subuserlib.classes.subuser + W:204, 0: TODO clean this up so that we aren't forwarding arguments in needless fluff. (fixme) + E: 19, 0: No name 'x11Bridge' in module 'subuserlib.classes.subuserSubmodules.run' (no-name-in-module) + F: 19, 0: Unable to import 'subuserlib.classes.subuserSubmodules.run.x11Bridge' (invalid syntax (, line 264)) (import-error) + R: 23, 0: Too many instance attributes (16/7) (too-many-instance-attributes) - Module subuserlib.classes.user + E: 13, 0: No name 'registry' in module 'subuserlib.classes' (no-name-in-module) + R: 21, 0: Too many instance attributes (8/7) (too-many-instance-attributes) + W: 71,24: Redefining name 'registry' from outer scope (line 13) (redefined-outer-name) + W: 8, 0: Unused import getpass (unused-import) + W: 19, 0: Unused import paths (unused-import) + W: 10, 0: Unused import sys (unused-import) + W: 11, 0: Unused import pwd (unused-import) - Module subuserlib.classes.installedImages + W: 18, 2: __init__ method from base class 'dict' is not called (super-init-not-called) - Module subuserlib.classes.permissionsAccepters.acceptPermissionsAtCLI + E: 13, 0: invalid syntax (syntax-error) - Module subuserlib.classes.docker.mockDockerDaemon + E: 14, 0: invalid syntax (syntax-error) - Module subuserlib.classes.docker.container + E: 42,30: Module 'urllib' has no 'parse' member (no-member) - Module subuserlib.classes.docker.dockerDaemon + F: 19, 2: Unable to import 'http.client' (import-error) + E:114,13: Undefined variable 'PermissionError' (undefined-variable) + E:120,28: Module 'urllib' has no 'parse' member (no-member) + E:178,28: Module 'urllib' has no 'parse' member (no-member) + R:226, 2: Method could be a function (no-self-use) + E:250, 2: No name 'mockDockerDaemon' in module 'subuserlib.classes.docker' (no-name-in-module) + F:250, 2: Unable to import 'subuserlib.classes.docker.mockDockerDaemon' (invalid syntax (, line 14)) (import-error) + W: 22, 2: Unused import StringIO (unused-import) - Module subuserlib.classes.subuserSubmodules.run.runReadyImage + W: 8, 0: Unused import os (unused-import) - Module subuserlib.classes.subuserSubmodules.run.x11Bridge + E:264, 0: invalid syntax (syntax-error) - Module subuserlib.classes.subuserSubmodules.run.runtimeCache + W: 15, 2: __init__ method from base class 'dict' is not called (super-init-not-called) - Module subuserlib.classes.subuserSubmodules.run.runtime + R: 26, 0: Too many instance attributes (10/7) (too-many-instance-attributes) + R: 70, 2: Method could be a function (no-self-use) + R: 86, 2: Method could be a function (no-self-use) + R: 99, 2: Method could be a function (no-self-use) + E:156,40: Undefined variable 'getSubuserDir' (undefined-variable) - Module subuserlib.builtInCommands.list + E: 13, 0: invalid syntax (syntax-error) - Module subuserlib.builtInCommands.repository + W: 59, 0: Bad indentation. Found 5 spaces, expected 4 (bad-indentation) - Module subuserlib.builtInCommands.ps + W: 9, 0: Unused import uuid (unused-import) + W: 8, 0: Unused import os (unused-import) + W: 5, 0: Unused import sys (unused-import) + W: 7, 0: Unused import json (unused-import) - Module subuserlib.builtInCommands.remove-old-images + E: 9, 0: No name 'removeOldImages' in module 'subuserlib' (no-name-in-module) + F: 9, 0: Unable to import 'subuserlib.removeOldImages' (invalid syntax (, line 7)) (import-error) + E: 37, 4: Module 'subuserlib' has no 'removeOldImages' member (no-member) - Module subuserlib.builtInCommands.pkg + E: 68, 0: invalid syntax (syntax-error) - Module subuserlib.builtInCommands.version + W: 5, 0: Unused import sys (unused-import) - Module subuserlib.builtInCommands.repair + E: 11, 0: No name 'acceptPermissionsAtCLI' in module 'subuserlib.classes.permissionsAccepters' (no-name-in-module) + F: 11, 0: Unable to import 'subuserlib.classes.permissionsAccepters.acceptPermissionsAtCLI' (invalid syntax (, line 13)) (import-error) + W: 4, 0: Unused import sys (unused-import) - Module subuserlib.builtInCommands.run + C: 32, 0: Old-style class defined. (old-style-class) - Module subuserlib.builtInCommands.print-dependency-info + E: 12, 0: invalid syntax (syntax-error) - Module subuserlib.builtInCommands.describe + E: 12, 0: invalid syntax (syntax-error) - Module subuserlib.builtInCommands.registry + R: 37, 0: Too many statements (54/50) (too-many-statements) - Module subuserlib.builtInCommands.update + E: 11, 0: No name 'acceptPermissionsAtCLI' in module 'subuserlib.classes.permissionsAccepters' (no-name-in-module) + F: 11, 0: Unable to import 'subuserlib.classes.permissionsAccepters.acceptPermissionsAtCLI' (invalid syntax (, line 13)) (import-error) - Module subuserlib.builtInCommands.subuser + W:108, 0: Bad indentation. Found 10 spaces, expected 8 (bad-indentation) + W:109, 0: Bad indentation. Found 10 spaces, expected 8 (bad-indentation) + E: 9, 0: No name 'acceptPermissionsAtCLI' in module 'subuserlib.classes.permissionsAccepters' (no-name-in-module) + F: 9, 0: Unable to import 'subuserlib.classes.permissionsAccepters.acceptPermissionsAtCLI' (invalid syntax (, line 13)) (import-error) + W: 6, 0: Unused import os (unused-import) + R: 19, 0: Abstract class not referenced (abstract-class-not-used) - Module subuserlib.classes.permissionsAccepters.permissionsAccepter + R: 13, 0: Abstract class not referenced (abstract-class-not-used) + R: 1, 0: Cyclic import (subuserlib.classes.installationTask -> subuserlib.verify) (cyclic-import) + R: 1, 0: Cyclic import (subuserlib.classes.docker.dockerDaemon -> subuserlib.test -> subuserlib.classes.user) (cyclic-import) + R: 1, 0: Cyclic import (subuserlib.classes.user -> subuserlib.test) (cyclic-import) + R: 1, 0: Cyclic import (subuserlib.classes.docker.dockerDaemon -> subuserlib.test -> subuserlib.classes.user -> subuserlib.classes.installedImages -> subuserlib.classes.installedImage) (cyclic-import) + R: 1, 0: Cyclic import (subuserlib.classes.docker.dockerDaemon -> subuserlib.docker -> subuserlib.subprocessExtras -> subuserlib.test -> subuserlib.classes.user) (cyclic-import) + R: 1, 0: Cyclic import (subuserlib.classes.endUser -> subuserlib.test -> subuserlib.classes.user) (cyclic-import) + R: 1, 0: Similar lines in 2 files ==subuserlib.classes.docker.container:23 ==subuserlib.classes.docker.dockerDaemon:219 if not response.status == 200: response.read() # Read the response and discard it to prevent the server from getting locked up: http://stackoverflow.com/questions/3231543/python-httplib-responsenotready return None else: return json.loads(response.read().decode("utf-8")) (duplicate-code) + R: 1, 0: Similar lines in 2 files ==subuserlib.builtInCommands.dev:4 ==subuserlib.builtInCommands.ps:4 import sys import optparse import json import os import uuid (duplicate-code) + R: 1, 0: Similar lines in 2 files ==subuserlib.classes.docker.dockerDaemon:15 ==subuserlib.classes.uhttpConnection:9 try: import httplib except ImportError: import http.client httplib = http.client (duplicate-code) Report ====== 3058 statements analysed. Statistics by type ------------------ +---------+-------+-----------+-----------+------------+---------+ |type |number |old number |difference |%documented |%badname | +=========+=======+===========+===========+============+=========+ |module |62 |62 |= |70.97 |35.48 | +---------+-------+-----------+-----------+------------+---------+ |class |39 |39 |= |15.38 |0.00 | +---------+-------+-----------+-----------+------------+---------+ |method |261 |261 |= |57.85 |68.20 | +---------+-------+-----------+-----------+------------+---------+ |function |115 |115 |= |41.74 |83.48 | +---------+-------+-----------+-----------+------------+---------+ Duplication ----------- +-------------------------+------+---------+-----------+ | |now |previous |difference | +=========================+======+=========+===========+ |nb duplicated lines |16 |16 |= | +-------------------------+------+---------+-----------+ |percent duplicated lines |0.311 |0.311 |+0.00 | +-------------------------+------+---------+-----------+ Raw metrics ----------- +----------+-------+------+---------+-----------+ |type |number |% |previous |difference | +==========+=======+======+=========+===========+ |code |3453 |68.50 |3455 |-2.00 | +----------+-------+------+---------+-----------+ |docstring |943 |18.71 |943 |= | +----------+-------+------+---------+-----------+ |comment |190 |3.77 |190 |= | +----------+-------+------+---------+-----------+ |empty |455 |9.03 |455 |= | +----------+-------+------+---------+-----------+ Messages by category -------------------- +-----------+-------+---------+-----------+ |type |number |previous |difference | +===========+=======+=========+===========+ |convention |2 |2 |= | +-----------+-------+---------+-----------+ |refactor |22 |22 |= | +-----------+-------+---------+-----------+ |warning |72 |72 |= | +-----------+-------+---------+-----------+ |error |29 |29 |= | +-----------+-------+---------+-----------+ % errors / warnings by module ----------------------------- +---------------------------------------------------------------+------+--------+---------+-----------+ |module |error |warning |refactor |convention | +===============================================================+======+========+=========+===========+ |subuserlib.classes.docker.dockerDaemon |13.79 |1.39 |4.55 |0.00 | +---------------------------------------------------------------+------+--------+---------+-----------+ |subuserlib.builtInCommands.remove-old-images |6.90 |0.00 |0.00 |0.00 | +---------------------------------------------------------------+------+--------+---------+-----------+ |subuserlib.classes.user |3.45 |6.94 |4.55 |0.00 | +---------------------------------------------------------------+------+--------+---------+-----------+ |subuserlib.classes.subusers |3.45 |6.94 |0.00 |0.00 | +---------------------------------------------------------------+------+--------+---------+-----------+ |subuserlib.verify |3.45 |5.56 |0.00 |0.00 | +---------------------------------------------------------------+------+--------+---------+-----------+ |subuserlib.builtInCommands.subuser |3.45 |4.17 |50.00 |0.00 | +---------------------------------------------------------------+------+--------+---------+-----------+ |subuserlib.classes.repository |3.45 |4.17 |4.55 |0.00 | +---------------------------------------------------------------+------+--------+---------+-----------+ |subuserlib.update |3.45 |4.17 |0.00 |0.00 | +---------------------------------------------------------------+------+--------+---------+-----------+ |subuserlib.classes.endUser |3.45 |2.78 |0.00 |50.00 | +---------------------------------------------------------------+------+--------+---------+-----------+ |subuserlib.classes.subuser |3.45 |1.39 |4.55 |0.00 | +---------------------------------------------------------------+------+--------+---------+-----------+ |subuserlib.print |3.45 |1.39 |0.00 |0.00 | +---------------------------------------------------------------+------+--------+---------+-----------+ |subuserlib.builtInCommands.repair |3.45 |1.39 |0.00 |0.00 | +---------------------------------------------------------------+------+--------+---------+-----------+ |subuserlib.classes.subuserSubmodules.run.runtime |3.45 |0.00 |18.18 |0.00 | +---------------------------------------------------------------+------+--------+---------+-----------+ |subuserlib.removeOldImages |3.45 |0.00 |0.00 |0.00 | +---------------------------------------------------------------+------+--------+---------+-----------+ |subuserlib.classes.subuserSubmodules.run.x11Bridge |3.45 |0.00 |0.00 |0.00 | +---------------------------------------------------------------+------+--------+---------+-----------+ |subuserlib.classes.registry |3.45 |0.00 |0.00 |0.00 | +---------------------------------------------------------------+------+--------+---------+-----------+ |subuserlib.classes.permissionsAccepters.acceptPermissionsAtCLI |3.45 |0.00 |0.00 |0.00 | +---------------------------------------------------------------+------+--------+---------+-----------+ |subuserlib.classes.imageSource |3.45 |0.00 |0.00 |0.00 | +---------------------------------------------------------------+------+--------+---------+-----------+ |subuserlib.classes.docker.mockDockerDaemon |3.45 |0.00 |0.00 |0.00 | +---------------------------------------------------------------+------+--------+---------+-----------+ |subuserlib.classes.docker.container |3.45 |0.00 |0.00 |0.00 | +---------------------------------------------------------------+------+--------+---------+-----------+ |subuserlib.builtInCommands.update |3.45 |0.00 |0.00 |0.00 | +---------------------------------------------------------------+------+--------+---------+-----------+ |subuserlib.builtInCommands.print-dependency-info |3.45 |0.00 |0.00 |0.00 | +---------------------------------------------------------------+------+--------+---------+-----------+ |subuserlib.builtInCommands.pkg |3.45 |0.00 |0.00 |0.00 | +---------------------------------------------------------------+------+--------+---------+-----------+ |subuserlib.builtInCommands.list |3.45 |0.00 |0.00 |0.00 | +---------------------------------------------------------------+------+--------+---------+-----------+ |subuserlib.builtInCommands.describe |3.45 |0.00 |0.00 |0.00 | +---------------------------------------------------------------+------+--------+---------+-----------+ |subuserlib.docker |0.00 |8.33 |0.00 |0.00 | +---------------------------------------------------------------+------+--------+---------+-----------+ |subuserlib.classes.gitRepository |0.00 |6.94 |0.00 |0.00 | +---------------------------------------------------------------+------+--------+---------+-----------+ |subuserlib.classes.fileStructure |0.00 |6.94 |0.00 |0.00 | +---------------------------------------------------------------+------+--------+---------+-----------+ |subuserlib.lock |0.00 |5.56 |0.00 |0.00 | +---------------------------------------------------------------+------+--------+---------+-----------+ |subuserlib.builtInCommands.ps |0.00 |5.56 |0.00 |0.00 | +---------------------------------------------------------------+------+--------+---------+-----------+ |subuserlib.classes.repositories |0.00 |2.78 |4.55 |0.00 | +---------------------------------------------------------------+------+--------+---------+-----------+ |subuserlib.subuser |0.00 |2.78 |0.00 |0.00 | +---------------------------------------------------------------+------+--------+---------+-----------+ |subuserlib.executablePath |0.00 |2.78 |0.00 |0.00 | +---------------------------------------------------------------+------+--------+---------+-----------+ |subuserlib.classes.installationTask |0.00 |1.39 |4.55 |0.00 | +---------------------------------------------------------------+------+--------+---------+-----------+ |subuserlib.version |0.00 |1.39 |0.00 |0.00 | +---------------------------------------------------------------+------+--------+---------+-----------+ |subuserlib.test |0.00 |1.39 |0.00 |0.00 | +---------------------------------------------------------------+------+--------+---------+-----------+ |subuserlib.subprocessExtras |0.00 |1.39 |0.00 |0.00 | +---------------------------------------------------------------+------+--------+---------+-----------+ |subuserlib.permissions |0.00 |1.39 |0.00 |0.00 | +---------------------------------------------------------------+------+--------+---------+-----------+ |subuserlib.loadMultiFallbackJsonConfigFile |0.00 |1.39 |0.00 |0.00 | +---------------------------------------------------------------+------+--------+---------+-----------+ |subuserlib.classes.subuserSubmodules.run.runtimeCache |0.00 |1.39 |0.00 |0.00 | +---------------------------------------------------------------+------+--------+---------+-----------+ |subuserlib.classes.subuserSubmodules.run.runReadyImage |0.00 |1.39 |0.00 |0.00 | +---------------------------------------------------------------+------+--------+---------+-----------+ |subuserlib.classes.service |0.00 |1.39 |0.00 |0.00 | +---------------------------------------------------------------+------+--------+---------+-----------+ |subuserlib.classes.installedImages |0.00 |1.39 |0.00 |0.00 | +---------------------------------------------------------------+------+--------+---------+-----------+ |subuserlib.classes.config |0.00 |1.39 |0.00 |0.00 | +---------------------------------------------------------------+------+--------+---------+-----------+ |subuserlib.builtInCommands.version |0.00 |1.39 |0.00 |0.00 | +---------------------------------------------------------------+------+--------+---------+-----------+ |subuserlib.builtInCommands.repository |0.00 |1.39 |0.00 |0.00 | +---------------------------------------------------------------+------+--------+---------+-----------+ Messages -------- +-----------------------------+------------+ |message id |occurrences | +=============================+============+ |unused-import |30 | +-----------------------------+------------+ |import-error |12 | +-----------------------------+------------+ |syntax-error |10 | +-----------------------------+------------+ |no-name-in-module |10 | +-----------------------------+------------+ |fixme |9 | +-----------------------------+------------+ |cyclic-import |6 | +-----------------------------+------------+ |super-init-not-called |5 | +-----------------------------+------------+ |no-self-use |5 | +-----------------------------+------------+ |no-member |5 | +-----------------------------+------------+ |undefined-variable |4 | +-----------------------------+------------+ |too-many-instance-attributes |4 | +-----------------------------+------------+ |redefined-outer-name |4 | +-----------------------------+------------+ |dangerous-default-value |4 | +-----------------------------+------------+ |bad-indentation |4 | +-----------------------------+------------+ |unused-argument |3 | +-----------------------------+------------+ |redefined-builtin |3 | +-----------------------------+------------+ |duplicate-code |3 | +-----------------------------+------------+ |global-variable-not-assigned |2 | +-----------------------------+------------+ |global-statement |2 | +-----------------------------+------------+ |cell-var-from-loop |2 | +-----------------------------+------------+ |abstract-class-not-used |2 | +-----------------------------+------------+ |trailing-whitespace |1 | +-----------------------------+------------+ |too-many-statements |1 | +-----------------------------+------------+ |too-many-return-statements |1 | +-----------------------------+------------+ |reimported |1 | +-----------------------------+------------+ |old-style-class |1 | +-----------------------------+------------+ |broad-except |1 | +-----------------------------+------------+ |bare-except |1 | +-----------------------------+------------+ |arguments-differ |1 | +-----------------------------+------------+ External dependencies --------------------- :: subuserlib \-builtInCommands (subuserlib.commands) \-classes | \-config (subuserlib.classes.user) | \-describable (subuserlib.classes.repository,subuserlib.classes.installedImage,subuserlib.classes.subuser) | \-docker | | \-container (subuserlib.classes.docker.dockerDaemon) | | \-dockerDaemon (subuserlib.classes.installedImage,subuserlib.version,subuserlib.classes.user) | \-endUser (subuserlib.classes.user) | \-exceptions (subuserlib.classes.installationTask,subuserlib.classes.docker.dockerDaemon,subuserlib.verify,subuserlib.classes.subuserSubmodules.run.runReadyImage,subuserlib.subuser) | \-fileBackedObject (subuserlib.classes.subuserSubmodules.run.runtimeCache,subuserlib.classes.permissions,subuserlib.classes.subusers,subuserlib.classes.installedImages,subuserlib.classes.repositories) | \-fileStructure (subuserlib.classes.repository,subuserlib.classes.gitRepository) | \-gitRepository (subuserlib.classes.repository,subuserlib.version) | \-installationTask (subuserlib.verify) | \-installedImage (subuserlib.classes.installationTask,subuserlib.classes.installedImages) | \-installedImages (subuserlib.classes.user) | \-permissions (subuserlib.classes.subuser) | \-registry (subuserlib.classes.user) | \-repository (subuserlib.resolve,subuserlib.classes.repositories,subuserlib.repository) | \-subuser (subuserlib.verify,subuserlib.classes.subusers,subuserlib.subuser) | \-subuserSubmodules | | \-run | | \-runReadyImage (subuserlib.classes.subuser) | | \-runtime (subuserlib.classes.subuser) | | \-runtimeCache (subuserlib.classes.subuser) | \-uhttpConnection (subuserlib.classes.docker.dockerDaemon) | \-user (subuserlib.builtInCommands.dev,subuserlib.builtInCommands.repository,subuserlib.update,subuserlib.builtInCommands.version,subuserlib.builtInCommands.subuser,subuserlib.builtInCommands.registry,subuserlib.builtInCommands.remove-old-images,subuserlib.builtInCommands.ps,subuserlib.test,subuserlib.builtInCommands.run,subuserlib.builtInCommands.repair,subuserlib.builtInCommands.update) | \-userOwnedObject (subuserlib.classes.subuserSubmodules.run.runtimeCache,subuserlib.classes.config,subuserlib.classes.docker.container,subuserlib.classes.installationTask,subuserlib.classes.permissions,subuserlib.classes.docker.dockerDaemon,subuserlib.classes.installedImage,subuserlib.classes.subusers,subuserlib.classes.subuser,subuserlib.classes.repository,subuserlib.classes.subuserSubmodules.run.runReadyImage,subuserlib.classes.installedImages,subuserlib.classes.subuserSubmodules.run.runtime,subuserlib.classes.gitRepository,subuserlib.classes.service,subuserlib.classes.endUser,subuserlib.classes.repositories) \-commandLineArguments (subuserlib.builtInCommands.dev,subuserlib.builtInCommands.repository,subuserlib.builtInCommands.version,subuserlib.builtInCommands.subuser,subuserlib.builtInCommands.registry,subuserlib.builtInCommands.remove-old-images,subuserlib.builtInCommands.repair,subuserlib.builtInCommands.run,subuserlib.builtInCommands.ps,subuserlib.builtInCommands.update) \-docker (subuserlib.classes.subuserSubmodules.run.runReadyImage,subuserlib.classes.docker.dockerDaemon) \-executablePath (subuserlib.docker,subuserlib.classes.gitRepository,subuserlib.paths,subuserlib.commands) \-loadMultiFallbackJsonConfigFile (subuserlib.classes.config,subuserlib.classes.repositories) \-paths (subuserlib.builtInCommands.dev,subuserlib.classes.config,subuserlib.classes.user,subuserlib.commands,subuserlib.version,subuserlib.loadMultiFallbackJsonConfigFile,subuserlib.classes.endUser,subuserlib.classes.repositories) \-permissions (subuserlib.classes.permissions,subuserlib.classes.subuser) \-profile (subuserlib.builtInCommands.dev,subuserlib.builtInCommands.repository,subuserlib.builtInCommands.version,subuserlib.builtInCommands.subuser,subuserlib.builtInCommands.registry,subuserlib.builtInCommands.remove-old-images,subuserlib.builtInCommands.repair,subuserlib.builtInCommands.run,subuserlib.builtInCommands.ps,subuserlib.builtInCommands.update) \-registry (subuserlib.builtInCommands.registry) \-repository (subuserlib.builtInCommands.repository) \-resolve (subuserlib.builtInCommands.repository,subuserlib.subuser,subuserlib.repository) \-subprocessExtras (subuserlib.docker) \-subuser (subuserlib.builtInCommands.subuser) \-test (subuserlib.classes.fileStructure,subuserlib.classes.user,subuserlib.version,subuserlib.classes.docker.dockerDaemon,subuserlib.classes.gitRepository,subuserlib.subprocessExtras,subuserlib.classes.subuserSubmodules.run.runtime,subuserlib.classes.endUser) \-update (subuserlib.builtInCommands.update,subuserlib.subuser) \-verify (subuserlib.update,subuserlib.builtInCommands.subuser,subuserlib.builtInCommands.repair,subuserlib.registry,subuserlib.subuser,subuserlib.classes.installationTask) \-version (subuserlib.classes.repository,subuserlib.builtInCommands.version)