File Complexity Overall
  • There are 101 files with units, with 24,545 lines of code.
    • 3 very complex files (McCabe index sum 251+; 6,052 lines of code)
    • 1 complex files (McCabe index sum 126-250; 985 lines of code)
    • 17 medium complex files (McCabe index sum 51-125; 8,569 lines of code)
    • 11 slightly complex files (McCabe index sum 26-50; 2,571 lines of code)
    • 69 simple files (McCabe index sum 1-25; 6,368 lines of code)
  • 39 main files have no units (e.g. languages without unit analysis, or files without functions) and are not classified.
system24% | 4% | 34% | 10% | 25%
Legend:
251+
126-250
51-125
26-50
1-25


explore: grouped by folders | grouped by complexity
File Complexity per Extension
251+
126-250
51-125
26-50
1-25
py24% | 4% | 34% | 10% | 25%
File Complexity per Logical Decomposition
primary
251+
126-250
51-125
26-50
1-25
metaflow-netflixext37% | 6% | 21% | 9% | 25%
metaflow-functions0% | 0% | 58% | 16% | 24%
metaflow-prebuilt0% | 0% | 63% | 0% | 36%
Most Complex Files (Top 50)

The McCabe index of a file grows with its size: per 100 lines tells a large but plain file from a dense one, and most complex unit whether the complexity sits in one unit or is spread over many.

File# lines# unitsMcCabe index
(sum)
per 100
lines
most complex
unit
terminal_menu.py
in metaflow-netflixext/metaflow_extensions/netflixext/plugins/conda
2497 99 400 16 118
env_descr.py
in metaflow-netflixext/metaflow_extensions/netflixext/plugins/conda
1228 124 298 24 20
conda.py
in metaflow-netflixext/metaflow_extensions/netflixext/plugins/conda
2327 87 272 12 40
utils.py
in metaflow-netflixext/metaflow_extensions/netflixext/plugins/conda
985 57 199 20 17
prebuilt_build_install.py
in metaflow-prebuilt/metaflow_extensions/prebuilt/plugins/conda
444 15 107 24 31
runtime.py
in metaflow-functions/metaflow_extensions/nflx/plugins/functions/backends/memory
411 25 106 26 17
conda_flow_mutator.py
in metaflow-netflixext/metaflow_extensions/netflixext/plugins/conda
554 29 104 19 15
conda_common_decorator.py
in metaflow-netflixext/metaflow_extensions/netflixext/plugins/conda
395 56 95 24 9
factory.py
in metaflow-functions/metaflow_extensions/nflx/plugins/functions
463 22 90 19 14
conda_environment.py
in metaflow-netflixext/metaflow_extensions/netflixext/plugins/conda
639 26 86 13 22
function.py
in metaflow-functions/metaflow_extensions/nflx/plugins/functions/core
551 32 83 15 19
memory.py
in metaflow-functions/metaflow_extensions/nflx/plugins/functions/memory
466 38 82 18 14
function_pipeline.py
in metaflow-functions/metaflow_extensions/nflx/plugins/functions/core
449 26 79 18 15
prebuilt_conda_environment.py
in metaflow-prebuilt/metaflow_extensions/prebuilt/plugins/conda
930 39 78 8 7
function_parameters.py
in metaflow-functions/metaflow_extensions/nflx/plugins/functions/core
236 18 78 33 16
memory_backend.py
in metaflow-functions/metaflow_extensions/nflx/plugins/functions/backends/memory
611 21 67 11 14
huggingface_decorator.py
in metaflow-netflixext/metaflow_extensions/netflixext/plugins/huggingface
442 29 67 15 7
ray_backend.py
in metaflow-functions/metaflow_extensions/nflx/plugins/functions/backends/ray
298 14 64 21 14
utils.py
in metaflow-functions/metaflow_extensions/nflx/plugins/functions
264 14 59 22 10
environment_cli.py
in metaflow-netflixext/metaflow_extensions/netflixext/plugins
560 12 59 11 35
envsresolver.py
in metaflow-netflixext/metaflow_extensions/netflixext/plugins/conda
856 14 59 7 26
environment.py
in metaflow-functions/metaflow_extensions/nflx/plugins/functions
197 12 42 21 19
runtime.py
in metaflow-functions/metaflow_extensions/nflx/plugins/functions/backends/local
151 10 39 26 7
generate_vendor.py
in metaflow-netflixext/metaflow_extensions/netflixext
165 8 39 24 7
debug_stub_generator.py
in metaflow-netflixext/metaflow_extensions/netflixext/cmd/debug
85 9 35 41 18
debug_script_generator.py
in metaflow-netflixext/metaflow_extensions/netflixext/cmd/debug
240 16 35 15 13
environment_cmd.py
in metaflow-netflixext/metaflow_extensions/netflixext/cmd/environment
1038 13 34 3 10
function_payload.py
in metaflow-functions/metaflow_extensions/nflx/plugins/functions/core
170 10 33 19 10
registry.py
in metaflow-functions/metaflow_extensions/nflx/plugins/functions/serializers
160 19 33 21 7
supervisor.py
in metaflow-functions/metaflow_extensions/nflx/plugins/functions/backends/memory/supervisor
115 13 31 27 7
logger.py
in metaflow-functions/metaflow_extensions/nflx/plugins/functions/logger
111 9 27 24 6
local_backend.py
in metaflow-functions/metaflow_extensions/nflx/plugins/functions/backends/local
139 11 26 19 9
conda_step_decorator.py
in metaflow-netflixext/metaflow_extensions/netflixext/plugins/conda
382 18 24 6 5
serializers.py
in metaflow-functions/metaflow_extensions/nflx/plugins/avro_function
74 7 23 31 10
package.py
in metaflow-functions/metaflow_extensions/nflx/plugins/functions
127 9 23 18 8
abstract_component.py
in metaflow-functions/metaflow_extensions/nflx/plugins/functions/components
65 11 23 35 8
concurrency.py
in metaflow-functions/metaflow_extensions/nflx/plugins/functions/memory
79 10 22 28 3
runtime_metrics.py
in metaflow-functions/metaflow_extensions/nflx/plugins/functions/components
81 9 22 27 6
parsers.py
in metaflow-netflixext/metaflow_extensions/netflixext/plugins/conda
315 6 21 7 7
function_pipeline_spec.py
in metaflow-functions/metaflow_extensions/nflx/plugins/functions/core
38 4 20 53 10
import_interceptor.py
in metaflow-functions/metaflow_extensions/nflx/plugins/functions/serializers
118 9 20 17 6
function_spec.py
in metaflow-functions/metaflow_extensions/nflx/plugins/functions/core
117 7 19 16 5
kaniko_service.py
in metaflow-prebuilt/metaflow_extensions/prebuilt/plugins/conda/services
188 4 16 9 11
config.py
in metaflow-functions/metaflow_extensions/nflx/plugins/functions/serializers
35 5 16 46 8
pylock_toml_resolver.py
in metaflow-netflixext/metaflow_extensions/netflixext/plugins/conda/resolvers
606 9 16 3 4
generate_coveragerc.py
in metaflow-netflixext/metaflow_extensions/netflixext/plugins/coverage
66 3 16 24 10
nflx_compat.py
in metaflow-netflixext/metaflow_extensions/netflixext
48 6 16 33 8
local_registry.py
in metaflow-prebuilt/metaflow_extensions/prebuilt/plugins/conda/registries
74 13 15 20 2
setup_coverage.py
in metaflow-netflixext/metaflow_extensions/netflixext/plugins/coverage
94 6 15 16 5
current_stub_generator.py
in metaflow-netflixext/metaflow_extensions/netflixext/cmd/debug
48 14 14 29 1
About This Analysis
  • File complexity is the sum of the McCabe indexes (conditional complexity) of the units (methods, functions...) in a file.
  • Files are classified in five categories based on that sum: 1-25 (simple files), 26-50 (slightly complex files), 51-125 (medium complex files), 126-250 (complex files), 251+ (very complex files). The default bands are five times the unit complexity bands, as a file is a group of units.
  • Only main code files with units are classified. Files without units (languages without unit analysis, or files without functions) have no complexity to measure and are left out rather than counted as simple.
  • A very complex file holds many decisions, which often means it has too many responsibilities: a candidate to split, and a place where changes need more testing.
Learn more...