Showing 3,272 of 4,939 total issues

Function analyzeAssignmentToReadOnlyProperty has a Cognitive Complexity of 7 (exceeds 5 allowed). Consider refactoring.
Open

    private function analyzeAssignmentToReadOnlyProperty(Property $property, Node $node): void
    {
        $is_from_phpdoc = $property->isFromPHPDoc();
        $context = $property->getContext();
        if (!$is_from_phpdoc && $this->context->isInFunctionLikeScope()) {
Severity: Minor
Found in src/Phan/Analysis/AssignmentVisitor.php - About 35 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

Function visitInstanceof has a Cognitive Complexity of 7 (exceeds 5 allowed). Consider refactoring.
Open

    public function visitInstanceof(Node $node): Context
    {
        //$this->checkVariablesDefined($node);
        // Only look at things of the form
        // `$variable instanceof ClassName`
Severity: Minor
Found in src/Phan/Analysis/NegatedConditionVisitor.php - About 35 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

Function analyze has a Cognitive Complexity of 7 (exceeds 5 allowed). Consider refactoring.
Open

    public function analyze(Context $context, CodeBase $code_base): Context
    {
        // Don't do anything if we care about being
        // fast
        if (Config::get_quick_mode()) {
Severity: Minor
Found in src/Phan/Analysis/Analyzable.php - About 35 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

Function visitFuncDecl has a Cognitive Complexity of 7 (exceeds 5 allowed). Consider refactoring.
Open

    public function visitFuncDecl(Node $node): Context
    {
        $function_name = (string)$node->children['name'];
        $context = $this->context;
        $code_base = $this->code_base;
Severity: Minor
Found in src/Phan/Parse/ParseVisitor.php - About 35 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

Function visitBreak has a Cognitive Complexity of 7 (exceeds 5 allowed). Consider refactoring.
Open

    public function visitBreak(Node $node): Context
    {
        $depth = $node->children['depth'] ?? 1;
        if (!\is_int($depth)) {
            return $this->context;
Severity: Minor
Found in src/Phan/Analysis/PostOrderAnalysisVisitor.php - About 35 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

Function analyzeMethodVisibility has a Cognitive Complexity of 7 (exceeds 5 allowed). Consider refactoring.
Open

    private function analyzeMethodVisibility(
        Method $method,
        Node $node
    ): void {
        if ($method->isPublic()) {
Severity: Minor
Found in src/Phan/Analysis/PostOrderAnalysisVisitor.php - About 35 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

Function recordOutputReferences has a Cognitive Complexity of 7 (exceeds 5 allowed). Consider refactoring.
Open

    private static function recordOutputReferences(FunctionInterface $method): void
    {
        foreach ($method->getOutputReferenceParamNames() as $output_param_name) {
            foreach ($method->getRealParameterList() as $parameter) {
                // TODO: Emit an issue if the (at)phan-output-reference is on a non-reference (at)param?
Severity: Minor
Found in src/Phan/Analysis/ParameterTypesAnalyzer.php - About 35 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

Function toShortString has a Cognitive Complexity of 7 (exceeds 5 allowed). Consider refactoring.
Open

    public static function toShortString($node): string
    {
        if (!($node instanceof Node)) {
            if ($node === null) {
                // use lowercase 'null' instead of 'NULL'
Severity: Minor
Found in src/Phan/AST/ASTReverter.php - About 35 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

Function deduplicateUnionTypes has a Cognitive Complexity of 7 (exceeds 5 allowed). Consider refactoring.
Open

    private static function deduplicateUnionTypes($types): \Generator
    {
        $unique_types = [];
        foreach ($types as $lineno => $details) {
            $type = $details[0];
Severity: Minor
Found in src/Phan/Analysis/PostOrderAnalysisVisitor.php - About 35 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

Function emitInstance has a Cognitive Complexity of 7 (exceeds 5 allowed). Consider refactoring.
Open

    public static function emitInstance(
        $node,
        CodeBase $code_base,
        Context $context,
        string $issue_name,
Severity: Minor
Found in src/Phan/Analysis/RedundantCondition.php - About 35 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

Function testClassAccess has a Cognitive Complexity of 7 (exceeds 5 allowed). Consider refactoring.
Open

    private static function testClassAccess(
        Clazz $source_class,
        Clazz $target_class,
        CodeBase $code_base
    ): void {
Severity: Minor
Found in src/Phan/Analysis/ClassInheritanceAnalyzer.php - About 35 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

Function checkCanCastToReturnType has a Cognitive Complexity of 7 (exceeds 5 allowed). Consider refactoring.
Open

    private function checkCanCastToReturnType(UnionType $expression_type, UnionType $method_return_type): bool
    {
        if ($expression_type->hasRealTypeSet() && $method_return_type->hasRealTypeSet()) {
            $real_expression_type = $expression_type->getRealUnionType();
            $real_method_return_type = $method_return_type->getRealUnionType();
Severity: Minor
Found in src/Phan/Analysis/PostOrderAnalysisVisitor.php - About 35 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

Function removeLiteralScalarFromVariable has a Cognitive Complexity of 7 (exceeds 5 allowed). Consider refactoring.
Open

    final protected function removeLiteralScalarFromVariable(
        Node $var_node,
        Context $context,
        $value,
        bool $strict_equality
Severity: Minor
Found in src/Phan/Analysis/ConditionVisitorUtil.php - About 35 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

Function analyzeReturnInGenerator has a Cognitive Complexity of 7 (exceeds 5 allowed). Consider refactoring.
Open

    private function analyzeReturnInGenerator(
        FunctionInterface $method,
        Node $node
    ): void {
        $method_generator_type = $method->getReturnTypeAsGeneratorTemplateType();
Severity: Minor
Found in src/Phan/Analysis/PostOrderAnalysisVisitor.php - About 35 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

Function checkPassingPropertyByReference has a Cognitive Complexity of 7 (exceeds 5 allowed). Consider refactoring.
Open

    private static function checkPassingPropertyByReference(CodeBase $code_base, Context $context, FunctionInterface $method, Parameter $parameter, Node $argument, Property $property, int $parameter_offset): void
    {
        $parameter_type = $parameter->getNonVariadicUnionType();
        $expr_node = $argument->children['expr'] ?? null;
        if ($expr_node instanceof Node &&
Severity: Minor
Found in src/Phan/Analysis/PostOrderAnalysisVisitor.php - About 35 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

Function createConverter has a Cognitive Complexity of 7 (exceeds 5 allowed). Consider refactoring.
Open

    private static function createConverter(string $file_path, string $file_contents, Request $request = null): TolerantASTConverter
    {
        if ($request) {
            if ($request->shouldUseMappingPolyfill($file_path)) {
                // TODO: Rename to something better
Severity: Minor
Found in src/Phan/AST/Parser.php - About 35 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

Function print has a Cognitive Complexity of 7 (exceeds 5 allowed). Consider refactoring.
Open

    public function print(IssueInstance $instance): void
    {
        $issue = $instance->getIssue();
        $message = HTML::htmlTemplate(
            $issue->getTemplateRaw(),
Severity: Minor
Found in src/Phan/Output/Printer/HTMLPrinter.php - About 35 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

Function flush has a Cognitive Complexity of 7 (exceeds 5 allowed). Consider refactoring.
Open

    public function flush(): void
    {
        $document = new \DOMDocument('1.0', 'ISO-8859-15');

        $checkstyle = new \DOMElement('checkstyle');
Severity: Minor
Found in src/Phan/Output/Printer/CheckstylePrinter.php - About 35 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

Function visitClassConst has a Cognitive Complexity of 7 (exceeds 5 allowed). Consider refactoring.
Open

    public function visitClassConst(Node $node): UnionType
    {
        $class_node = $node->children['class'];
        if (!$class_node instanceof Node || $class_node->kind !== ast\AST_NAME) {
            // ignore nonsense like (0)::class, and dynamic accesses such as $var::CLASS
Severity: Minor
Found in src/Phan/AST/FallbackUnionTypeVisitor.php - About 35 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

Function visitClassNameNode has a Cognitive Complexity of 7 (exceeds 5 allowed). Consider refactoring.
Open

    private function visitClassNameNode(Node $node): ?UnionType
    {
        // Things of the form `new $className()`, `new $obj()`, `new (foo())()`, etc.
        if ($node->kind !== \ast\AST_NAME) {
            return null;
Severity: Minor
Found in src/Phan/AST/FallbackUnionTypeVisitor.php - About 35 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

Severity
Category
Status
Source
Language