pyscn Analysis Report

Generated: 2025-09-10 12:40:33

Health Score: 0/100 (Grade: F)

Analysis Summary

14
Total Files
14
Analyzed Files
1.99
Avg Complexity
15
Dead Code Issues
3332
Clone Pairs
49.4%
Code Duplication
39
Total Classes
0
High Dependencies
0.18
Avg Dependencies

Complexity Analysis

177
Total Functions
1.99
Average
33
Maximum

Top Complex Functions

Function File Complexity Risk
AbstractClass.abstract_method testdata/python/simple/classes.py 2 low
AbstractClass.concrete_method testdata/python/simple/classes.py 1 low
AsyncClass.async_class_method testdata/python/complex/async_await.py 1 low
AsyncClass.async_method testdata/python/complex/async_await.py 1 low
AsyncClass.async_static_method testdata/python/complex/async_await.py 1 low
AsyncContextManager.__aenter__ testdata/python/complex/async_await.py 1 low
AsyncContextManager.__aexit__ testdata/python/complex/async_await.py 1 low
AsyncRange.__aiter__ testdata/python/complex/async_await.py 1 low
AsyncRange.__anext__ testdata/python/complex/async_await.py 3 low
AsyncRange.__init__ testdata/python/complex/async_await.py 1 low

Showing top 10 of 177 functions

Dead Code Detection

15
Total Issues
14
Critical
1
Warnings

Top Dead Code Issues

File Function Lines Severity Reason
unknown context_manager_dead_code 74-74 critical unreachable_after_raise
unknown finally_block_patterns 168-168 critical unreachable_after_return
unknown finally_block_patterns 172-172 critical unreachable_after_return
unknown finally_block_patterns 179-179 warning unreachable_branch
unknown async_dead_code 57-58 critical unreachable_after_return
unknown exception_hierarchy_dead_code 160-160 critical unreachable_after_return
unknown complex_control_flow 30-31 critical unreachable_after_return
unknown generator_with_dead_code 45-46 critical unreachable_after_return
unknown unreachable_after_break 54-55 critical unreachable_after_break
unknown unreachable_after_continue 69-70 critical unreachable_after_continue
unknown nested_dead_code 101-101 critical unreachable_after_return
unknown __init__ 117-118 critical unreachable_after_return
unknown nested_return_dead_code 60-60 critical unreachable_after_return
unknown simple_dead_code 12-13 critical unreachable_after_return
unknown loop_with_dead_code 34-34 critical unreachable_after_break

Showing top 10 of 15 dead code issues

Clone Detection

3332
Clone Pairs
2
Clone Groups
0.76
Avg Similarity

Major Clone Pairs

File 1 File 2 Lines 1 Lines 2 Similarity Type
testdata/python/complex/dead_code_complex.py testdata/python/edge_cases/dead_code_examples.py 102-107 113-118 1.000 Type-1
testdata/python/complex/decorators.py testdata/python/complex/decorators.py 8-12 157-161 1.000 Type-1
testdata/python/edge_cases/nested_structures.py testdata/python/edge_cases/nested_structures.py 90-94 171-180 1.000 Type-1
testdata/python/simple/dead_code_simple.py testdata/python/edge_cases/dead_code_examples.py 56-63 97-104 1.000 Type-1
testdata/python/simple/control_flow.py testdata/python/edge_cases/python310_features.py 133-146 116-129 0.993 Type-1
testdata/python/edge_cases/python310_features.py testdata/python/edge_cases/python310_features.py 143-154 49-60 0.992 Type-1
testdata/python/edge_cases/python310_features.py testdata/python/edge_cases/python310_features.py 32-41 94-103 0.990 Type-1
testdata/python/edge_cases/python310_features.py testdata/python/edge_cases/python310_features.py 22-29 106-113 0.988 Type-1
testdata/python/complex/dead_code_complex.py testdata/python/complex/dead_code_complex.py 61-77 98-122 0.987 Type-1
testdata/python/complex/comprehensions.py testdata/python/edge_cases/nested_structures.py 52-58 155-164 0.987 Type-1
testdata/python/complex/dead_code_complex.py testdata/python/edge_cases/dead_code_examples.py 9-35 76-90 0.987 Type-1
testdata/python/complex/dead_code_complex.py testdata/python/complex/dead_code_complex.py 80-95 98-122 0.987 Type-1
testdata/python/complex/decorators.py testdata/python/complex/exceptions.py 128-138 171-180 0.987 Type-1
testdata/python/complex/decorators.py testdata/python/complex/decorators.py 7-13 156-162 0.986 Type-1
testdata/python/complex/dead_code_complex.py testdata/python/edge_cases/nested_structures.py 113-119 155-164 0.985 Type-1

Showing top 15 of 3332 clone pairs

Dependency Analysis

Class coupling metrics (CBO - Coupling Between Objects)

39
Total Classes
0
High Risk Classes
0.18
Average Dependencies
2
Max Dependencies

Most Dependent Classes

Class File Dependencies Risk Level Dependent Classes
MultipleInheritance testdata/python/simple/classes.py 2 low SimpleClass, EmptyClass
ValidationError testdata/python/complex/exceptions.py 1 low CustomError
ClassWithMagicMethods testdata/python/simple/classes.py 1 low ClassWithMagicMethods
InheritedClass testdata/python/simple/classes.py 1 low SimpleClass
ComplexClass testdata/python/edge_cases/nested_structures.py 1 low MethodClass
InnerClass testdata/python/edge_cases/nested_structures.py 1 low MethodClass
MaxCalls testdata/python/complex/decorators.py 0 low
Container testdata/python/edge_cases/python310_features.py 0 low
CountCalls testdata/python/complex/decorators.py 0 low
AsyncRange testdata/python/complex/async_await.py 0 low

Showing top 10 of 39 classes