simonkowallik/tmconfpy

View on GitHub

Showing 35 of 35 total issues

Avoid deeply nested control flow statements.
Open

                        if line == "    {":
                            line = line.replace("{", f"{arr_idx} {{")
                            arr_idx += 1
                        coerce_arr.append(line)

    Avoid deeply nested control flow statements.
    Open

                            if line == "    {":
                                line = line.replace("{", f"{arr_idx} {{")
                                arr_idx += 1
                            coerce_arr.append(line)
    Severity: Major
    Found in tmconfpy/parser.py - About 45 mins to fix

      Avoid deeply nested control flow statements.
      Open

                              for char in updated_line:
                                  if char == '"' and previous_char != "\\":
                                      quoted = not quoted
                                  if not quoted and char == "{" and previous_char != "\\":
                                      subcount += 1
      Severity: Major
      Found in tmconfpy/parser.py - About 45 mins to fix

        Avoid deeply nested control flow statements.
        Open

                                if self._is_irule(line):
                                    c -= 1
                                    bracket_count = 0
                                bracket_count += subcount
        Severity: Major
        Found in tmconfpy/parser.py - About 45 mins to fix

          Avoid deeply nested control flow statements.
          Open

                                  if (
                                      key.startswith("gtm monitor external")
                                      and "user-defined" in tmp
                                  ):
                                      if "user-defined" not in obj:
          Severity: Major
          Found in tmconfpy/parser.py - About 45 mins to fix

            Avoid deeply nested control flow statements.
            Open

                                    for char in updated_line:
                                        if char == '"' and previous_char != "\\":
                                            quoted = not quoted
                                        if not quoted and char == "{" and previous_char != "\\":
                                            subcount += 1

              Avoid deeply nested control flow statements.
              Open

                                      if self._is_irule(line):
                                          c -= 1
                                          bracket_count = 0
                                      bracket_count += subcount

                Avoid deeply nested control flow statements.
                Open

                                        if (
                                            key.startswith("gtm monitor external")
                                            and "user-defined" in tmp
                                        ):
                                            if "user-defined" not in obj:

                  Avoid deeply nested control flow statements.
                  Open

                                          if (i + c) >= len(arr):
                                              raise ValueError(
                                                  f"Missing or mis-indented '}}' for line number {i+1}: '{arr[i]}'"
                                              )
                                      sub_obj_arr = self._remove_indent(arr[i : i + c + 1])
                  Severity: Major
                  Found in tmconfpy/parser.py - About 45 mins to fix

                    Avoid deeply nested control flow statements.
                    Open

                                            while arr[i + c] and arr[i + c].count('"') % 2 != 1:
                                                c += 1
                    
                    
                    Severity: Major
                    Found in tmconfpy/parser.py - About 45 mins to fix

                      Avoid deeply nested control flow statements.
                      Open

                                              while arr[i + c] and arr[i + c].count('"') % 2 != 1:
                                                  c += 1
                      
                      

                        Function cli has a Cognitive Complexity of 6 (exceeds 5 allowed). Consider refactoring.
                        Open

                        def cli():
                            """Handle CLI interaction."""
                            args = _cli_arg_parser()
                        
                            tmconf_content = args.file_path.read() if args.file_path is not None else ""
                        Severity: Minor
                        Found in tmconfpy/cli.py - About 25 mins to fix

                        Cognitive Complexity

                        Cognitive Complexity is a measure of how difficult a unit of code is to intuitively understand. Unlike Cyclomatic Complexity, which determines how difficult your code will be to test, Cognitive Complexity tells you how difficult your code will be to read and comprehend.

                        A method's cognitive complexity is based on a few simple rules:

                        • Code is not considered more complex when it uses shorthand that the language provides for collapsing multiple statements into one
                        • Code is considered more complex for each "break in the linear flow of the code"
                        • Code is considered more complex when "flow breaking structures are nested"

                        Further reading

                        File not formatted according to black style guide
                        Open

                            main()

                        File not formatted according to black style guide
                        Open

                            main()

                        Remove this commented out code.
                        Open

                        #from deepdiff import DeepDiff

                        Programmers should not comment out code as it bloats programs and reduces readability.

                        Unused code should be deleted and can be retrieved from source control history if required.

                        See

                        • MISRA C:2004, 2.4 - Sections of code should not be "commented out".
                        • MISRA C++:2008, 2-7-2 - Sections of code shall not be "commented out" using C-style comments.
                        • MISRA C++:2008, 2-7-3 - Sections of code should not be "commented out" using C++ comments.
                        • MISRA C:2012, Dir. 4.4 - Sections of code should not be "commented out"
                        Severity
                        Category
                        Status
                        Source
                        Language