ParaToolsInc / taucmdr

Performance engineering for the rest of us.
http://www.taucommander.com
Other
29 stars 11 forks source link

Fix libdwarf requirements #411

Closed PlatinumCD closed 2 years ago

PlatinumCD commented 2 years ago

This branch is a response to issue #410. When a user tries tau init --libelf None, libelf is removed from the dependency sources however libdwarf tries to reference libelf in the dependency sources when it isn't available. By ensuring that libelf is being used before libdwarf references it, the error won't occur.

A test case for --libelf None is also created.

codecov[bot] commented 2 years ago

Codecov Report

Merging #411 (96eab90) into master (eae3ae7) will decrease coverage by 0.45%. The diff coverage is 100.00%.

Impacted file tree graph

@@            Coverage Diff             @@
##           master     #411      +/-   ##
==========================================
- Coverage   69.23%   68.77%   -0.46%     
==========================================
  Files          98       98              
  Lines        8619     8619              
  Branches     1692     1692              
==========================================
- Hits         5967     5928      -39     
- Misses       2138     2180      +42     
+ Partials      514      511       -3     
Flag Coverage Δ
CI 68.77% <100.00%> (-0.46%) :arrow_down:
unittests 68.77% <100.00%> (-0.46%) :arrow_down:

Flags with carried forward coverage won't be shown. Click here to find out more.

Impacted Files Coverage Δ
packages/taucmdr/cf/software/tau_installation.py 55.19% <100.00%> (-0.56%) :arrow_down:
packages/taucmdr/util.py 62.87% <0.00%> (-6.38%) :arrow_down:
packages/taucmdr/cf/software/installation.py 62.99% <0.00%> (-1.53%) :arrow_down:
github-actions[bot] commented 2 years ago

Pylint Output

Report

8719 statements analysed.

Statistics by type

type number old number difference %documented %badname
module 99 NC NC 100.00 0.00
class 129 NC NC 99.22 0.00
method 695 NC NC 98.71 0.86
function 114 NC NC 97.37 0.88

Raw metrics

type number % previous difference
code 10598 51.39 NC NC
docstring 5389 26.13 NC NC
comment 2945 14.28 NC NC
empty 1690 8.20 NC NC

Duplication

now previous difference
nb duplicated lines 0 NC NC
percent duplicated lines 0.000 NC NC

Messages by category

type number previous difference
convention 106 NC NC
refactor 82 NC NC
warning 100 NC NC
error 0 NC NC

Messages

message id occurrences
import-outside-toplevel 80
raise-missing-from 60
no-else-return 32
unspecified-encoding 12
missing-function-docstring 12
no-else-raise 11
consider-using-with 10
inconsistent-return-statements 8
invalid-name 7
arguments-differ 7
line-too-long 4
useless-super-delegation 3
no-else-continue 3
logging-fstring-interpolation 3
fixme 3
duplicate-code 3
consider-using-in 3
use-implicit-booleaness-not-len 2
unused-variable 2
unused-argument 2
too-many-nested-blocks 2
too-many-locals 2
invalid-overridden-method 2
use-list-literal 1
use-dict-literal 1
use-a-generator 1
unused-import 1
too-many-public-methods 1
simplifiable-if-expression 1
redefined-builtin 1
raising-format-tuple 1
no-else-break 1
missing-class-docstring 1
logging-not-lazy 1
consider-using-dict-comprehension 1
condition-evals-to-constant 1
broad-except 1
bad-indentation 1

Your code has been rated at 9.21/10

Per-file output (click to expand)
************* Module taucmdr.error
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/error.py:75:4: C0116: Missing function or method docstring (missing-function-docstring)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/error.py:122:20: R1734: Consider using [] instead of list() (use-list-literal)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/error.py:168:8: C0415: Import outside toplevel (taucmdr.cli.commands.project.create.COMMAND) (import-outside-toplevel)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/error.py:169:8: C0415: Import outside toplevel (taucmdr.cli.commands.project.select.COMMAND) (import-outside-toplevel)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/error.py:170:8: C0415: Import outside toplevel (taucmdr.cli.commands.project.list.COMMAND) (import-outside-toplevel)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/error.py:182:8: C0415: Import outside toplevel (taucmdr.cli.commands.select.COMMAND) (import-outside-toplevel)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/error.py:183:8: C0415: Import outside toplevel (taucmdr.cli.commands.experiment.create.COMMAND) (import-outside-toplevel)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/error.py:184:8: C0415: Import outside toplevel (taucmdr.cli.commands.dashboard.COMMAND) (import-outside-toplevel)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/error.py:185:8: C0415: Import outside toplevel (taucmdr.cli.commands.project.list.COMMAND) (import-outside-toplevel)
************* Module taucmdr
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/__init__.py:103:4: C0415: Import outside toplevel (platform) (import-outside-toplevel)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/__init__.py:104:4: C0415: Import outside toplevel (socket) (import-outside-toplevel)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/__init__.py:105:4: C0415: Import outside toplevel (datetime.datetime) (import-outside-toplevel)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/__init__.py:106:4: C0415: Import outside toplevel (taucmdr.logger) (import-outside-toplevel)
************* Module taucmdr.progress
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/progress.py:45:9: W1514: Using open without explicitly specifying an encoding (unspecified-encoding)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/progress.py:130:8: C0415: Import outside toplevel (taucmdr.util) (import-outside-toplevel)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/progress.py:142:8: C0415: Import outside toplevel (taucmdr.util) (import-outside-toplevel)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/progress.py:177:4: C0116: Missing function or method docstring (missing-function-docstring)
************* Module taucmdr.cli
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cli/__init__.py:128:8: R1705: Unnecessary "elif" after "return" (no-else-return)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cli/__init__.py:239:4: R1705: Unnecessary "elif" after "return" (no-else-return)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cli/__init__.py:230:0: R1710: Either all return statements in a function should return an expression, or none of them should. (inconsistent-return-statements)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cli/__init__.py:271:8: W0707: Consider explicitly re-raising using the 'from' keyword (raise-missing-from)
************* Module taucmdr.logger
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/logger.py:112:8: C0415: Import outside toplevel (ctypes.windll, ctypes.create_string_buffer) (import-outside-toplevel)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/logger.py:120:8: C0415: Import outside toplevel (struct) (import-outside-toplevel)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/logger.py:138:8: C0415: Import outside toplevel (subprocess) (import-outside-toplevel)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/logger.py:139:15: R1732: Consider using 'with' for resource-allocating operations (consider-using-with)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/logger.py:143:15: R1732: Consider using 'with' for resource-allocating operations (consider-using-with)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/logger.py:167:12: C0415: Import outside toplevel (fcntl) (import-outside-toplevel)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/logger.py:168:12: C0415: Import outside toplevel (termios) (import-outside-toplevel)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/logger.py:169:12: C0415: Import outside toplevel (struct) (import-outside-toplevel)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/logger.py:272:12: W0707: Consider explicitly re-raising using the 'from' keyword (raise-missing-from)
************* Module taucmdr.cli.cli_view
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cli/cli_view.py:171:12: C0415: Import outside toplevel (taucmdr.cli.commands.project.edit.COMMAND) (import-outside-toplevel)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cli/cli_view.py:548:8: R1705: Unnecessary "elif" after "return" (no-else-return)
************* Module taucmdr.cli.commands.rewrite
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cli/commands/rewrite.py:67:8: R1720: Unnecessary "elif" after "raise" (no-else-raise)
************* Module taucmdr.cli.arguments
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cli/arguments.py:475:0: C0301: Line too long (123/120) (line-too-long)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cli/arguments.py:145:12: W0707: Consider explicitly re-raising using the 'from' keyword (raise-missing-from)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cli/arguments.py:280:8: R1705: Unnecessary "else" after "return" (no-else-return)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cli/arguments.py:480:20: W0707: Consider explicitly re-raising using the 'from' keyword (raise-missing-from)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cli/arguments.py:507:12: W0707: Consider explicitly re-raising using the 'from' keyword (raise-missing-from)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cli/arguments.py:528:8: W0707: Consider explicitly re-raising using the 'from' keyword (raise-missing-from)
************* Module taucmdr.cli.commands.__main__
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cli/commands/__main__.py:136:8: C0415: Import outside toplevel (taucmdr.model.project.Project) (import-outside-toplevel)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cli/commands/__main__.py:151:8: R1705: Unnecessary "else" after "return" (no-else-return)
************* Module taucmdr.util
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/util.py:80:12: W0622: Redefining built-in 'dir' (redefined-builtin)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/util.py:82:12: W0612: Unused variable 'src' (unused-variable)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/util.py:110:11: R1732: Consider using 'with' for resource-allocating operations (consider-using-with)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/util.py:144:0: R1710: Either all return statements in a function should return an expression, or none of them should. (inconsistent-return-statements)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/util.py:269:16: W0707: Consider explicitly re-raising using the 'from' keyword (raise-missing-from)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/util.py:263:49: W0612: Unused variable 'progress_bar' (unused-variable)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/util.py:293:19: R1732: Consider using 'with' for resource-allocating operations (consider-using-with)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/util.py:331:8: W0707: Consider explicitly re-raising using the 'from' keyword (raise-missing-from)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/util.py:329:14: R1732: Consider using 'with' for resource-allocating operations (consider-using-with)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/util.py:378:15: C0103: Variable name "v" doesn't conform to '[a-z_][a-z0-9_]{2,30}$' pattern (invalid-name)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/util.py:379:12: R1705: Unnecessary "elif" after "return" (no-else-return)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/util.py:391:12: C0103: Variable name "v" doesn't conform to '[a-z_][a-z0-9_]{2,30}$' pattern (invalid-name)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/util.py:497:4: R1705: Unnecessary "else" after "return" (no-else-return)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/util.py:507:21: W1514: Using open without explicitly specifying an encoding (unspecified-encoding)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/util.py:507:21: R1732: Consider using 'with' for resource-allocating operations (consider-using-with)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/util.py:561:15: R1732: Consider using 'with' for resource-allocating operations (consider-using-with)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/util.py:633:15: R1732: Consider using 'with' for resource-allocating operations (consider-using-with)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/util.py:683:8: R1705: Unnecessary "elif" after "return" (no-else-return)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/util.py:779:11: R1732: Consider using 'with' for resource-allocating operations (consider-using-with)
************* Module taucmdr.cli.commands.select
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cli/commands/select.py:117:4: R1710: Either all return statements in a function should return an expression, or none of them should. (inconsistent-return-statements)
************* Module taucmdr.cli.commands.dashboard
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cli/commands/dashboard.py:68:16: C0415: Import outside toplevel (taucmdr.cli.commands.project.create.COMMAND) (import-outside-toplevel)
************* Module taucmdr.cli.commands.experiment.edit
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cli/commands/experiment/edit.py:38:0: C0115: Missing class docstring (missing-class-docstring)
************* Module taucmdr.cli.commands.help
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cli/commands/help.py:164:12: R1720: Unnecessary "else" after "raise" (no-else-raise)
************* Module taucmdr.cli.commands.project.edit
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cli/commands/project/edit.py:163:8: C0415: Import outside toplevel (taucmdr.cli.commands.project.list.COMMAND) (import-outside-toplevel)
************* Module taucmdr.cli.commands.trial.renumber
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cli/commands/trial/renumber.py:80:8: W1201: Use lazy % formatting in logging functions (logging-not-lazy)
************* Module taucmdr.cli.commands.trial.list
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cli/commands/trial/list.py:63:11: R1714: Consider merging these comparisons with "in" to "key in ('environment', 'output')" (consider-using-in)
************* Module taucmdr.cli.commands.target.edit
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cli/commands/target/edit.py:105:8: C0415: Import outside toplevel (taucmdr.cli.commands.target.copy.COMMAND) (import-outside-toplevel)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cli/commands/target/edit.py:106:8: C0415: Import outside toplevel (taucmdr.cli.commands.experiment.delete.COMMAND) (import-outside-toplevel)
************* Module taucmdr.model.project
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/model/project.py:47:4: C0415: Import outside toplevel (taucmdr.model.target.Target) (import-outside-toplevel)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/model/project.py:48:4: C0415: Import outside toplevel (taucmdr.model.application.Application) (import-outside-toplevel)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/model/project.py:49:4: C0415: Import outside toplevel (taucmdr.model.measurement.Measurement) (import-outside-toplevel)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/model/project.py:50:4: C0415: Import outside toplevel (taucmdr.model.experiment.Experiment) (import-outside-toplevel)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/model/project.py:97:4: W0221: Number of parameters was 3 in 'Controller.delete' and is now 2 in overridden 'ProjectController.delete' method (arguments-differ)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/model/project.py:129:12: W0707: Consider explicitly re-raising using the 'from' keyword (raise-missing-from)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/model/project.py:142:8: C0415: Import outside toplevel (taucmdr.model.experiment.Experiment) (import-outside-toplevel)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/model/project.py:143:8: C0415: Import outside toplevel (taucmdr.model.compiler.Compiler) (import-outside-toplevel)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/model/project.py:149:8: R1702: Too many nested blocks (8/5) (too-many-nested-blocks)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/model/project.py:205:12: W0707: Consider explicitly re-raising using the 'from' keyword (raise-missing-from)
************* Module taucmdr.cli.commands.target.create
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cli/commands/target/create.py:108:13: W1514: Using open without explicitly specifying an encoding (unspecified-encoding)
************* Module taucmdr.model.measurement
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/model/measurement.py:53:4: C0415: Import outside toplevel (taucmdr.model.project.Project) (import-outside-toplevel)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/model/measurement.py:54:4: C0415: Import outside toplevel (taucmdr.model.target.Target) (import-outside-toplevel)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/model/measurement.py:55:4: C0415: Import outside toplevel (taucmdr.model.application.Application) (import-outside-toplevel)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/model/measurement.py:56:4: C0415: Import outside toplevel (taucmdr.cf.platforms.HOST_OS, taucmdr.cf.platforms.DARWIN, taucmdr.cf.platforms.IBM_CNK) (import-outside-toplevel)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/model/measurement.py:57:4: C0415: Import outside toplevel (taucmdr.cf.compiler.mpi.MPI_CC, taucmdr.cf.compiler.mpi.MPI_CXX, taucmdr.cf.compiler.mpi.MPI_FC) (import-outside-toplevel)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/model/measurement.py:58:4: C0415: Import outside toplevel (taucmdr.cf.compiler.shmem.SHMEM_CC, taucmdr.cf.compiler.shmem.SHMEM_CXX, taucmdr.cf.compiler.shmem.SHMEM_FC) (import-outside-toplevel)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/model/measurement.py:302:44: C1802: Do not use `len(SEQUENCE)` without comparison to determine if a sequence is empty (use-implicit-booleaness-not-len)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/model/measurement.py:511:8: C0415: Import outside toplevel (taucmdr.error.ImmutableRecordError) (import-outside-toplevel)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/model/measurement.py:512:8: C0415: Import outside toplevel (taucmdr.model.experiment.Experiment) (import-outside-toplevel)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/model/measurement.py:544:12: W0707: Consider explicitly re-raising using the 'from' keyword (raise-missing-from)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/model/measurement.py:556:8: C0415: Import outside toplevel (taucmdr.error.ImmutableRecordError) (import-outside-toplevel)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/model/measurement.py:557:8: C0415: Import outside toplevel (taucmdr.model.experiment.Experiment) (import-outside-toplevel)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/model/measurement.py:568:16: W0707: Consider explicitly re-raising using the 'from' keyword (raise-missing-from)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/model/measurement.py:587:8: C0415: Import outside toplevel (taucmdr.model.project.Project) (import-outside-toplevel)
************* Module taucmdr.model.target
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/model/target.py:726:9: W0511: FIXME: not implemented (fixme)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/model/target.py:88:12: W0707: Consider explicitly re-raising using the 'from' keyword (raise-missing-from)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/model/target.py:118:4: R1705: Unnecessary "elif" after "return" (no-else-return)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/model/target.py:149:13: W1514: Using open without explicitly specifying an encoding (unspecified-encoding)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/model/target.py:159:0: R0914: Too many local variables (23/20) (too-many-locals)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/model/target.py:168:4: C0415: Import outside toplevel (taucmdr.model.project.Project) (import-outside-toplevel)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/model/target.py:169:4: C0415: Import outside toplevel (taucmdr.cli.arguments.ParsePackagePathAction) (import-outside-toplevel)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/model/target.py:170:4: C0415: Import outside toplevel (taucmdr.cf.compiler.host.CC, taucmdr.cf.compiler.host.CXX, taucmdr.cf.compiler.host.FC, taucmdr.cf.compiler.host.UPC, taucmdr.cf.compiler.host.INTEL, taucmdr.cf.compiler.host.PGI, taucmdr.cf.compiler.host.GNU) (import-outside-toplevel)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/model/target.py:171:4: C0415: Import outside toplevel (taucmdr.cf.compiler.mpi.MPI_CC, taucmdr.cf.compiler.mpi.MPI_CXX, taucmdr.cf.compiler.mpi.MPI_FC, taucmdr.cf.compiler.mpi.INTEL) (import-outside-toplevel)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/model/target.py:172:4: C0415: Import outside toplevel (taucmdr.cf.compiler.shmem.SHMEM_CC, taucmdr.cf.compiler.shmem.SHMEM_CXX, taucmdr.cf.compiler.shmem.SHMEM_FC) (import-outside-toplevel)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/model/target.py:173:4: C0415: Import outside toplevel (taucmdr.cf.compiler.cuda.CUDA_CXX, taucmdr.cf.compiler.cuda.CUDA_FC) (import-outside-toplevel)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/model/target.py:174:4: C0415: Import outside toplevel (taucmdr.cf.compiler.caf.CAF_FC) (import-outside-toplevel)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/model/target.py:175:4: C0415: Import outside toplevel (taucmdr.cf.compiler.python.PY) (import-outside-toplevel)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/model/target.py:532:8: C0415: Import outside toplevel (taucmdr.error.ImmutableRecordError) (import-outside-toplevel)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/model/target.py:533:8: C0415: Import outside toplevel (taucmdr.model.experiment.Experiment) (import-outside-toplevel)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/model/target.py:562:8: C0415: Import outside toplevel (taucmdr.error.ImmutableRecordError) (import-outside-toplevel)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/model/target.py:563:8: C0415: Import outside toplevel (taucmdr.model.experiment.Experiment) (import-outside-toplevel)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/model/target.py:574:16: W0707: Consider explicitly re-raising using the 'from' keyword (raise-missing-from)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/model/target.py:591:8: C0415: Import outside toplevel (taucmdr.model.project.Project) (import-outside-toplevel)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/model/target.py:723:4: R1710: Either all return statements in a function should return an expression, or none of them should. (inconsistent-return-statements)
************* Module taucmdr.model.application
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/model/application.py:49:0: C0116: Missing function or method docstring (missing-function-docstring)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/model/application.py:50:4: C0415: Import outside toplevel (taucmdr.model.project.Project) (import-outside-toplevel)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/model/application.py:51:4: C0415: Import outside toplevel (taucmdr.model.target.Target) (import-outside-toplevel)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/model/application.py:52:4: C0415: Import outside toplevel (taucmdr.model.measurement.Measurement) (import-outside-toplevel)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/model/application.py:53:4: C0415: Import outside toplevel (taucmdr.cf.platforms.DARWIN, taucmdr.cf.platforms.HOST_OS, taucmdr.cf.platforms.CRAY_CNL) (import-outside-toplevel)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/model/application.py:179:8: C0415: Import outside toplevel (taucmdr.error.ImmutableRecordError) (import-outside-toplevel)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/model/application.py:180:8: C0415: Import outside toplevel (taucmdr.model.experiment.Experiment) (import-outside-toplevel)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/model/application.py:198:8: C0415: Import outside toplevel (taucmdr.error.ImmutableRecordError) (import-outside-toplevel)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/model/application.py:199:8: C0415: Import outside toplevel (taucmdr.model.experiment.Experiment) (import-outside-toplevel)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/model/application.py:210:16: W0707: Consider explicitly re-raising using the 'from' keyword (raise-missing-from)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/model/application.py:220:8: C0415: Import outside toplevel (taucmdr.model.project.Project) (import-outside-toplevel)
************* Module taucmdr.model.compiler
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/model/compiler.py:204:8: R1720: Unnecessary "else" after "raise" (no-else-raise)
************* Module taucmdr.cf.objects
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cf/objects.py:66:0: W0613: Unused argument 'args' (unused-argument)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cf/objects.py:66:0: W0613: Unused argument 'kwargs' (unused-argument)
************* Module taucmdr.model.trial
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/model/trial.py:58:4: C0415: Import outside toplevel (taucmdr.model.experiment.Experiment) (import-outside-toplevel)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/model/trial.py:159:8: R1720: Unnecessary "else" after "raise" (no-else-raise)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/model/trial.py:382:8: R1705: Unnecessary "elif" after "return" (no-else-return)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/model/trial.py:352:4: R1710: Either all return statements in a function should return an expression, or none of them should. (inconsistent-return-statements)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/model/trial.py:412:12: W0707: Consider explicitly re-raising using the 'from' keyword (raise-missing-from)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/model/trial.py:525:12: W0707: Consider explicitly re-raising using the 'from' keyword (raise-missing-from)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/model/trial.py:530:4: R0914: Too many local variables (23/20) (too-many-locals)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/model/trial.py:566:12: W0707: Consider explicitly re-raising using the 'from' keyword (raise-missing-from)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/model/trial.py:588:24: W0715: Exception arguments suggest string formatting might be intended (raising-format-tuple)
************* Module taucmdr.cf.platforms
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cf/platforms.py:77:17: W1514: Using open without explicitly specifying an encoding (unspecified-encoding)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cf/platforms.py:79:20: R1724: Unnecessary "elif" after "continue" (no-else-continue)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cf/platforms.py:125:16: C0415: Import outside toplevel (platform) (import-outside-toplevel)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cf/platforms.py:130:20: W0707: Consider explicitly re-raising using the 'from' keyword (raise-missing-from)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cf/platforms.py:179:16: C0415: Import outside toplevel (platform) (import-outside-toplevel)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cf/platforms.py:184:20: W0707: Consider explicitly re-raising using the 'from' keyword (raise-missing-from)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cf/platforms.py:234:16: W0707: Consider explicitly re-raising using the 'from' keyword (raise-missing-from)
************* Module taucmdr.cf.storage.project
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cf/storage/project.py:79:8: C0415: Import outside toplevel (taucmdr.cf.storage.levels.USER_STORAGE) (import-outside-toplevel)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cf/storage/project.py:85:16: W0707: Consider explicitly re-raising using the 'from' keyword (raise-missing-from)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cf/storage/project.py:90:16: W0707: Consider explicitly re-raising using the 'from' keyword (raise-missing-from)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cf/storage/project.py:93:17: W1514: Using open without explicitly specifying an encoding (unspecified-encoding)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cf/storage/project.py:125:8: C0415: Import outside toplevel (taucmdr.cf.storage.levels.USER_STORAGE, taucmdr.cf.storage.levels.SYSTEM_STORAGE) (import-outside-toplevel)
************* Module taucmdr.model.experiment
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/model/experiment.py:50:4: C0415: Import outside toplevel (taucmdr.model.target.Target) (import-outside-toplevel)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/model/experiment.py:51:4: C0415: Import outside toplevel (taucmdr.model.application.Application) (import-outside-toplevel)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/model/experiment.py:52:4: C0415: Import outside toplevel (taucmdr.model.measurement.Measurement) (import-outside-toplevel)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/model/experiment.py:108:4: W0221: Number of parameters was 2 in 'Controller.one' and is now 3 in overridden 'ExperimentController.one' method (arguments-differ)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/model/experiment.py:112:4: W0221: Number of parameters was 1 in 'Controller.all' and is now 2 in overridden 'ExperimentController.all' method (arguments-differ)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/model/experiment.py:116:4: W0221: Number of parameters was 2 in 'Controller.count' and is now 1 in overridden 'ExperimentController.count' method (arguments-differ)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/model/experiment.py:122:4: W0221: Number of parameters was 2 in 'Controller.search' and is now 3 in overridden 'ExperimentController.search' method (arguments-differ)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/model/experiment.py:126:4: W0221: Number of parameters was 3 in 'Controller.exists' and is now 2 in overridden 'ExperimentController.exists' method (arguments-differ)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/model/experiment.py:133:4: W0235: Useless super delegation in method 'create' (useless-super-delegation)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/model/experiment.py:136:4: W0235: Useless super delegation in method 'update' (useless-super-delegation)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/model/experiment.py:139:4: W0235: Useless super delegation in method 'unset' (useless-super-delegation)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/model/experiment.py:142:4: W0221: Number of parameters was 3 in 'Controller.delete' and is now 2 in overridden 'ExperimentController.delete' method (arguments-differ)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/model/experiment.py:178:8: R1720: Unnecessary "elif" after "raise" (no-else-raise)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/model/experiment.py:197:12: R1705: Unnecessary "elif" after "return" (no-else-return)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/model/experiment.py:242:12: W0707: Consider explicitly re-raising using the 'from' keyword (raise-missing-from)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/model/experiment.py:272:8: C0415: Import outside toplevel (taucmdr.cf.software.tau_installation.TauInstallation) (import-outside-toplevel)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/model/experiment.py:433:4: C0116: Missing function or method docstring (missing-function-docstring)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/model/experiment.py:434:8: C0415: Import outside toplevel (taucmdr.cf.software.tau_installation.TauInstallation) (import-outside-toplevel)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/model/experiment.py:440:11: R1714: Consider merging these comparisons with "in" to "rewrite_package in ('maqao', 'pebil')" (consider-using-in)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/model/experiment.py:532:8: R1705: Unnecessary "else" after "return" (no-else-return)
************* Module taucmdr.cf.storage.storage_dispatch
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cf/storage/storage_dispatch.py:330:0: W0311: Bad indentation. Found 10 spaces, expected 12 (bad-indentation)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cf/storage/storage_dispatch.py:93:8: R1705: Unnecessary "elif" after "return" (no-else-return)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cf/storage/storage_dispatch.py:156:4: W0236: Method 'prefix' was expected to be 'method', found it instead as 'property' (invalid-overridden-method)
************* Module taucmdr.cf.storage.levels
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cf/storage/levels.py:64:0: C0116: Missing function or method docstring (missing-function-docstring)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cf/storage/levels.py:73:12: W0707: Consider explicitly re-raising using the 'from' keyword (raise-missing-from)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cf/storage/levels.py:43:0: W0611: Unused import os (unused-import)
************* Module taucmdr.cf.storage.local_file
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cf/storage/local_file.py:72:27: W1514: Using open without explicitly specifying an encoding (unspecified-encoding)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cf/storage/local_file.py:72:27: R1732: Consider using 'with' for resource-allocating operations (consider-using-with)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cf/storage/local_file.py:80:8: R1720: Unnecessary "else" after "raise" (no-else-raise)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cf/storage/local_file.py:168:16: W0707: Consider explicitly re-raising using the 'from' keyword (raise-missing-from)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cf/storage/local_file.py:186:16: W0707: Consider explicitly re-raising using the 'from' keyword (raise-missing-from)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cf/storage/local_file.py:200:4: W0236: Method 'prefix' was expected to be 'method', found it instead as 'property' (invalid-overridden-method)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cf/storage/local_file.py:228:4: R1710: Either all return statements in a function should return an expression, or none of them should. (inconsistent-return-statements)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cf/storage/local_file.py:294:8: R1705: Unnecessary "elif" after "return" (no-else-return)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cf/storage/local_file.py:334:8: R1705: Unnecessary "elif" after "return" (no-else-return)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cf/storage/local_file.py:374:8: R1705: Unnecessary "elif" after "return" (no-else-return)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cf/storage/local_file.py:406:8: R1705: Unnecessary "elif" after "return" (no-else-return)
************* Module taucmdr.cf.storage.sqlite3_project
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cf/storage/sqlite3_project.py:59:8: C0415: Import outside toplevel (taucmdr.cf.storage.levels.USER_STORAGE) (import-outside-toplevel)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cf/storage/sqlite3_project.py:65:16: W0707: Consider explicitly re-raising using the 'from' keyword (raise-missing-from)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cf/storage/sqlite3_project.py:70:16: W0707: Consider explicitly re-raising using the 'from' keyword (raise-missing-from)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cf/storage/sqlite3_project.py:73:17: W1514: Using open without explicitly specifying an encoding (unspecified-encoding)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cf/storage/sqlite3_project.py:105:8: C0415: Import outside toplevel (taucmdr.cf.storage.levels.USER_STORAGE, taucmdr.cf.storage.levels.SYSTEM_STORAGE) (import-outside-toplevel)
************* Module taucmdr.cf.software.sqlite3_installation
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cf/software/sqlite3_installation.py:50:0: C0301: Line too long (121/120) (line-too-long)
************* Module taucmdr.cf.software.libunwind_installation
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cf/software/libunwind_installation.py:68:16: W0707: Consider explicitly re-raising using the 'from' keyword (raise-missing-from)
************* Module taucmdr.cf.compiler
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cf/compiler/__init__.py:139:8: C0415: Import outside toplevel (taucmdr.cf.platforms.HOST_TAU_MAGIC) (import-outside-toplevel)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cf/compiler/__init__.py:316:28: R1705: Unnecessary "else" after "return" (no-else-return)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cf/compiler/__init__.py:298:8: R1702: Too many nested blocks (6/5) (too-many-nested-blocks)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cf/compiler/__init__.py:368:8: R1705: Unnecessary "elif" after "return" (no-else-return)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cf/compiler/__init__.py:552:12: W0707: Consider explicitly re-raising using the 'from' keyword (raise-missing-from)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cf/compiler/__init__.py:596:16: R1705: Unnecessary "elif" after "return" (no-else-return)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cf/compiler/__init__.py:660:4: C0116: Missing function or method docstring (missing-function-docstring)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cf/compiler/__init__.py:697:16: W0707: Consider explicitly re-raising using the 'from' keyword (raise-missing-from)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cf/compiler/__init__.py:702:16: W0707: Consider explicitly re-raising using the 'from' keyword (raise-missing-from)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cf/compiler/__init__.py:730:13: W1514: Using open without explicitly specifying an encoding (unspecified-encoding)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cf/compiler/__init__.py:804:12: W0707: Consider explicitly re-raising using the 'from' keyword (raise-missing-from)
************* Module taucmdr.cf.software.papi_installation
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cf/software/papi_installation.py:62:16: W0707: Consider explicitly re-raising using the 'from' keyword (raise-missing-from)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cf/software/papi_installation.py:76:8: C0103: Variable name "cc" doesn't conform to '[a-z_][a-z0-9_]{2,30}$' pattern (invalid-name)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cf/software/papi_installation.py:122:16: R1723: Unnecessary "elif" after "break" (no-else-break)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cf/software/papi_installation.py:146:12: W0707: Consider explicitly re-raising using the 'from' keyword (raise-missing-from)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cf/software/papi_installation.py:167:15: R1714: Consider merging these comparisons with "in" to "event_type in ('PRESET', 'NATIVE')" (consider-using-in)
************* Module taucmdr.cf.software.binutils_installation
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cf/software/binutils_installation.py:62:16: W0707: Consider explicitly re-raising using the 'from' keyword (raise-missing-from)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cf/software/binutils_installation.py:68:8: C0415: Import outside toplevel (taucmdr.cf.platforms.DARWIN, taucmdr.cf.platforms.IBM_BGP, taucmdr.cf.platforms.IBM_BGQ, taucmdr.cf.platforms.INTEL_KNC) (import-outside-toplevel)
************* Module taucmdr.cf.storage.sqlite3_file
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cf/storage/sqlite3_file.py:536:9: W0511: TODO This could be made more efficient if we make this function less general. (fixme)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cf/storage/sqlite3_file.py:679:13: W0511: TODO Change this to use a single operation (fixme)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cf/storage/sqlite3_file.py:109:16: W1203: Use lazy % formatting in logging functions (logging-fstring-interpolation)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cf/storage/sqlite3_file.py:133:12: W1203: Use lazy % formatting in logging functions (logging-fstring-interpolation)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cf/storage/sqlite3_file.py:273:4: C0116: Missing function or method docstring (missing-function-docstring)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cf/storage/sqlite3_file.py:292:4: C0116: Missing function or method docstring (missing-function-docstring)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cf/storage/sqlite3_file.py:384:16: W0707: Consider explicitly re-raising using the 'from' keyword (raise-missing-from)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cf/storage/sqlite3_file.py:416:12: R1705: Unnecessary "else" after "return" (no-else-return)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cf/storage/sqlite3_file.py:465:8: R1705: Unnecessary "elif" after "return" (no-else-return)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cf/storage/sqlite3_file.py:498:8: R1705: Unnecessary "elif" after "return" (no-else-return)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cf/storage/sqlite3_file.py:539:8: R1720: Unnecessary "elif" after "raise" (no-else-raise)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cf/storage/sqlite3_file.py:570:8: R1705: Unnecessary "elif" after "return" (no-else-return)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cf/storage/sqlite3_file.py:672:8: R1705: Unnecessary "elif" after "return" (no-else-return)
************* Module taucmdr.cf.software.scorep_installation
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cf/software/scorep_installation.py:178:12: W0707: Consider explicitly re-raising using the 'from' keyword (raise-missing-from)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cf/software/scorep_installation.py:184:12: R1724: Unnecessary "elif" after "continue" (no-else-continue)
************* Module taucmdr.cf.software.pdt_installation
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cf/software/pdt_installation.py:191:16: W0707: Consider explicitly re-raising using the 'from' keyword (raise-missing-from)
************* Module taucmdr.mvc.controller
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/mvc/controller.py:46:8: R1705: Unnecessary "elif" after "return" (no-else-return)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/mvc/controller.py:54:0: C0116: Missing function or method docstring (missing-function-docstring)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/mvc/controller.py:66:12: R1705: Unnecessary "elif" after "return" (no-else-return)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/mvc/controller.py:221:8: R1705: Unnecessary "else" after "return" (no-else-return)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/mvc/controller.py:232:12: W0707: Consider explicitly re-raising using the 'from' keyword (raise-missing-from)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/mvc/controller.py:271:19: R1727: Boolean condition ''model' or 'collection' in self.model.attributes[attr]' will always evaluate to ''model'' (condition-evals-to-constant)
************* Module taucmdr.mvc.model
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/mvc/model.py:44:40: R1735: Consider using {} instead of dict() (use-dict-literal)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/mvc/model.py:53:16: W0707: Consider explicitly re-raising using the 'from' keyword (raise-missing-from)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/mvc/model.py:73:4: C0116: Missing function or method docstring (missing-function-docstring)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/mvc/model.py:84:16: W0707: Consider explicitly re-raising using the 'from' keyword (raise-missing-from)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/mvc/model.py:172:8: R1705: Unnecessary "else" after "return" (no-else-return)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/mvc/model.py:213:16: W0707: Consider explicitly re-raising using the 'from' keyword (raise-missing-from)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/mvc/model.py:225:20: W0707: Consider explicitly re-raising using the 'from' keyword (raise-missing-from)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/mvc/model.py:272:24: W0707: Consider explicitly re-raising using the 'from' keyword (raise-missing-from)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/mvc/model.py:287:28: W0707: Consider explicitly re-raising using the 'from' keyword (raise-missing-from)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/mvc/model.py:297:24: W0707: Consider explicitly re-raising using the 'from' keyword (raise-missing-from)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/mvc/model.py:603:8: C0415: Import outside toplevel (taucmdr.cli.arguments.ArgumentsNamespace) (import-outside-toplevel)
************* Module taucmdr.cf.software.installation
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cf/software/installation.py:67:12: W0707: Consider explicitly re-raising using the 'from' keyword (raise-missing-from)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cf/software/installation.py:157:20: W0707: Consider explicitly re-raising using the 'from' keyword (raise-missing-from)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cf/software/installation.py:322:8: R1720: Unnecessary "else" after "raise" (no-else-raise)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cf/software/installation.py:355:12: W0707: Consider explicitly re-raising using the 'from' keyword (raise-missing-from)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cf/software/installation.py:399:8: C0415: Import outside toplevel (taucmdr.cf.software) (import-outside-toplevel)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cf/software/installation.py:420:16: R1720: Unnecessary "elif" after "raise" (no-else-raise)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cf/software/installation.py:421:20: W0707: Consider explicitly re-raising using the 'from' keyword (raise-missing-from)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cf/software/installation.py:607:12: W0707: Consider explicitly re-raising using the 'from' keyword (raise-missing-from)
************* Module taucmdr.cf.software.tau_installation
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cf/software/tau_installation.py:428:0: C0301: Line too long (136/120) (line-too-long)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cf/software/tau_installation.py:430:0: C0301: Line too long (122/120) (line-too-long)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cf/software/tau_installation.py:431:46: C1802: Do not use `len(SEQUENCE)` without comparison to determine if a sequence is empty (use-implicit-booleaness-not-len)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cf/software/tau_installation.py:477:12: W0707: Consider explicitly re-raising using the 'from' keyword (raise-missing-from)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cf/software/tau_installation.py:518:8: R1705: Unnecessary "else" after "return" (no-else-return)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cf/software/tau_installation.py:542:39: R1719: The if expression can be replaced with 'bool(test)' (simplifiable-if-expression)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cf/software/tau_installation.py:571:13: W1514: Using open without explicitly specifying an encoding (unspecified-encoding)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cf/software/tau_installation.py:573:16: R1724: Unnecessary "elif" after "continue" (no-else-continue)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cf/software/tau_installation.py:802:16: W0707: Consider explicitly re-raising using the 'from' keyword (raise-missing-from)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cf/software/tau_installation.py:830:16: C0103: Variable name "g" doesn't conform to '[a-z_][a-z0-9_]{2,30}$' pattern (invalid-name)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cf/software/tau_installation.py:834:20: C0103: Variable name "g" doesn't conform to '[a-z_][a-z0-9_]{2,30}$' pattern (invalid-name)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cf/software/tau_installation.py:927:4: C0116: Missing function or method docstring (missing-function-docstring)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cf/software/tau_installation.py:978:16: R1720: Unnecessary "elif" after "raise" (no-else-raise)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cf/software/tau_installation.py:979:20: W0707: Consider explicitly re-raising using the 'from' keyword (raise-missing-from)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cf/software/tau_installation.py:996:20: W1203: Use lazy % formatting in logging functions (logging-fstring-interpolation)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cf/software/tau_installation.py:999:27: W0703: Catching too general exception Exception (broad-except)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cf/software/tau_installation.py:1004:24: R1720: Unnecessary "else" after "raise" (no-else-raise)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cf/software/tau_installation.py:1004:31: R1729: Use a generator instead 'all(os.path.exists(path[1]) for path in err.args[0])' (use-a-generator)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cf/software/tau_installation.py:954:4: R1710: Either all return statements in a function should return an expression, or none of them should. (inconsistent-return-statements)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cf/software/tau_installation.py:1144:16: R1705: Unnecessary "elif" after "return" (no-else-return)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cf/software/tau_installation.py:1209:15: R1717: Consider using a dictionary comprehension (consider-using-dict-comprehension)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cf/software/tau_installation.py:1470:20: W0707: Consider explicitly re-raising using the 'from' keyword (raise-missing-from)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cf/software/tau_installation.py:1479:13: W1514: Using open without explicitly specifying an encoding (unspecified-encoding)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cf/software/tau_installation.py:1479:45: W1514: Using open without explicitly specifying an encoding (unspecified-encoding)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cf/software/tau_installation.py:1591:12: W0707: Consider explicitly re-raising using the 'from' keyword (raise-missing-from)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cf/software/tau_installation.py:1600:12: W0707: Consider explicitly re-raising using the 'from' keyword (raise-missing-from)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cf/software/tau_installation.py:1625:8: R1705: Unnecessary "elif" after "return" (no-else-return)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cf/software/tau_installation.py:1662:16: W0707: Consider explicitly re-raising using the 'from' keyword (raise-missing-from)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cf/software/tau_installation.py:1736:4: R1710: Either all return statements in a function should return an expression, or none of them should. (inconsistent-return-statements)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cf/software/tau_installation.py:1885:4: C0116: Missing function or method docstring (missing-function-docstring)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cf/software/tau_installation.py:1910:8: C0103: Variable name "p" doesn't conform to '[a-z_][a-z0-9_]{2,30}$' pattern (invalid-name)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cf/software/tau_installation.py:1911:8: C0103: Variable name "m" doesn't conform to '[a-z_][a-z0-9_]{2,30}$' pattern (invalid-name)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cf/software/tau_installation.py:167:0: R0904: Too many public methods (27/25) (too-many-public-methods)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cf/software/tau_installation.py:1:0: R0801: Similar lines in 2 files
==taucmdr.cli.commands.target.copy:[43:79]
==taucmdr.cli.commands.target.edit:[45:81]
    @staticmethod
    def _compiler_flag_action_call(family_attr):
        def call(self, parser, namespace, value, *args, **kwargs):
            try:
                delattr(namespace, family_attr)
            except AttributeError:
                pass
            return self.__action_call__(parser, namespace, value, *args, **kwargs)
        return call

    @staticmethod
    def _family_flag_action(kbase, family_attr):
        class Action(arguments.Action):
            # pylint: disable=too-few-public-methods
            def __call__(self, parser, namespace, value, *args, **kwargs):
                try:
                    delattr(namespace, family_attr)
                except AttributeError:
                    pass
                family = InstalledCompilerFamily(kbase.families[value])
                for comp in family:
                    setattr(namespace, comp.info.role.keyword, comp.absolute_path)
        return Action

    def _configure_argument_group(self, group, kbase, family_flag, family_attr):
        # Add the compiler family flag. If the knowledgebase keyword isn't all-caps then show in lower case.
        keyword = kbase.keyword
        if keyword.upper() != keyword:
            keyword = keyword.lower()
        group.add_argument(family_flag,
                           help=("select all %(kw)s compilers automatically from the given family, "
                                 "ignored if at least one %(kw)s compiler is specified") % {'kw': keyword},
                           metavar='',
                           dest=family_attr,
                           default=arguments.SUPPRESS,
                           choices=kbase.family_names(), (duplicate-code)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cf/software/tau_installation.py:1:0: R0801: Similar lines in 2 files
==taucmdr.cf.storage.project:[84:133]
==taucmdr.cf.storage.sqlite3_project:[64:113]
                raise StorageError("Cannot create project in home directory. "
                                   "Use '-@ user' option for user level storage.")
            try:
                util.mkdirp(project_prefix)
            except Exception as err:
                raise StorageError("Failed to access %s filesystem prefix '%s': %s" %
                                   (self.name, project_prefix, err))
            # Exclude project storage directory from git
            with open(os.path.join(self.prefix, '.gitignore'), 'w+') as fout:
                fout.write('/*\n')
            LOGGER.debug("Initialized %s filesystem prefix '%s'", self.name, project_prefix)

    def destroy(self, *args, **kwargs):
        """Disconnects the database and filesystem and recursively deletes the filesystem.

        Args:
            *args: Passed through to :any:`disconnect_filesystem`.
            **kwargs: Keyword arguments for :any:`disconnect_filesystem` or :any:`shutil.rmtree`.
        """
        self.disconnect_filesystem(*args, **kwargs)
        ignore_errors = kwargs.pop('ignore_errors', False)
        onerror = kwargs.pop('onerror', None)
        if self._prefix:
            util.rmtree(self._prefix, ignore_errors=ignore_errors, onerror=onerror)
            self._prefix = None

    @property
    def prefix(self):
        """Searches the current directory and its parents for a TAU Commander project directory.

        This method **does not** create or modify files.  If the project directory cannot be found
        then an error is raised.  It's up to the caller to determine how the error should be handled.

        Returns:
            str: The project directory, i.e. this storage container's filesystem prefix.

        Raises:
            ProjectStorageError: Neither the current directory nor any of its parent directories contain
                                 a TAU Commander project directory.
        """
        from taucmdr.cf.storage.levels import USER_STORAGE, SYSTEM_STORAGE
        if self._prefix:
            return self._prefix
        cwd = os.getcwd()
        if self._force_cwd:
            # Only check current working directory for project directory
            prefix = os.path.realpath(os.path.join(cwd, PROJECT_DIR))
            if os.path.isdir(prefix):
                for exclude_storage in USER_STORAGE, SYSTEM_STORAGE: (duplicate-code)
/home/runner/work/taucmdr/taucmdr/packages/taucmdr/cf/software/tau_installation.py:1:0: R0801: Similar lines in 2 files
==taucmdr.cli.commands.target.copy:[43:67]
==taucmdr.cli.commands.target.create:[52:76]
    @staticmethod
    def _compiler_flag_action_call(family_attr):
        def call(self, parser, namespace, value, *args, **kwargs):
            try:
                delattr(namespace, family_attr)
            except AttributeError:
                pass
            return self.__action_call__(parser, namespace, value, *args, **kwargs)
        return call

    @staticmethod
    def _family_flag_action(kbase, family_attr):
        class Action(arguments.Action):
            # pylint: disable=too-few-public-methods
            def __call__(self, parser, namespace, value, *args, **kwargs):
                try:
                    delattr(namespace, family_attr)
                except AttributeError:
                    pass
                family = InstalledCompilerFamily(kbase.families[value])
                for comp in family:
                    setattr(namespace, comp.info.role.keyword, comp.absolute_path)
        return Action
 (duplicate-code)
Stderr