Parallel computing with task scheduling
This report presents the forensic synthetic code analysis of dask/dask, a Python project with 13,856 GitHub stars. SynthScan v2.0 examined 198,016 lines of code across 413 source files, recording 3416 pattern matches distributed across 16 syntactic categories. The overall adjusted score of 15.6 places this repository in the Moderate AI signal band.
The scanner applied 160+ deterministic lexical heuristics, multi-line block detectors, abstract syntax tree depth profilers, and a cross-file Jaccard similarity matrix to construct a statistically normalised synthetic code estimate. All matches are individually weighted by severity coefficient and contextual multiplier before summation, and the resulting headline score is temporally discounted to account for the repository's development history relative to the commercial emergence of large language model coding tooling (November 2022 onward).
This chart maps the temporal evolution of the adjusted synthetic code score across successive scan runs. An upward trajectory indicates ongoing incorporation of AI-generated code or expanding LLM-assisted scaffolding; a stable or declining trajectory may reflect active human refactoring, code removal, or the adoption of stricter authorship policies. The dashed secondary line (right axis) independently tracks total raw pattern hit count, which can diverge from the normalised score when codebase size changes significantly between scans.
Classifies detected patterns by their diagnostic confidence and structural impact. CRITICAL patterns (coefficient 10) represent definitive synthetic signatures — hallucinated imports, explicit LLM attribution metadata — virtually never produced by human authors. HIGH (5) indicates strong structural tells such as cross-file repetition or cross-linguistic idioms. MEDIUM (2) covers recognisable conversational padding and AI-specific vocabulary. LOW (1) captures subtle indicators like tautological comments and generic boilerplate that require density to carry independent signal.
This horizontal bar chart decomposes the repository's raw synthetic code score by top-level directory, allowing you to pinpoint precisely which modules or components carry the highest AI authorship density. Directories with disproportionately high scores relative to their size warrant targeted manual review: concentrated AI signatures often trace back to mass-generated configuration layers, auto-ported test suites, LLM-scaffolded boilerplate classes, or entire subsystems authored under heavy copilot assistance. Use this view to prioritise your human code-review effort.
The scanner identified 3416 distinct pattern matches across 16 syntactic categories. Each entry below represents a discrete location in the source code where the engine recorded a statistically significant AI authorship indicator. Expand any category row to inspect the individual file paths, line numbers, code snippets, and the lexical context (CODE, COMMENT, or STRING) in which each match was detected.
Reading the findings table: The Severity column indicates the diagnostic confidence level (CRITICAL / HIGH / MEDIUM / LOW). The Context column identifies whether the match occurred inside executable code, an inline comment, or a string literal — comment-context matches receive a ×1.5 weight because LLMs systematically over-annotate. The ⚡ bolt icon marks clustered matches: three or more patterns within a 10-line window, each receiving an additional ×1.5 density multiplier as dense clusters constitute far stronger evidence of synthetic authorship than isolated hits.
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | conftest.py | 72 | def pytest_assertrepr_compare(op, left, right): | CODE |
| LOW | conftest.py | 102 | def allow_distributed_async_clients(): | CODE |
| LOW | dask/conftest.py | 23 | def pytest_collection_modifyitems(config, items): | CODE |
| LOW | dask/_expr.py | 96 | def _tree_repr_argument_construction(self, i, op, header): | CODE |
| LOW | dask/system.py | 17 | def _try_extract_cgroup_cpu_quota(): | CODE |
| LOW | dask/config.py | 700 | def expand_environment_variables(config: Any) -> Any: | CODE |
| LOW | dask/utils_test.py | 76 | def test_data_not_in_dict_is_ok(self): | CODE |
| LOW | dask/utils_test.py | 86 | def test_get_with_list_top_level(self): | CODE |
| LOW | dask/utils_test.py | 102 | def test_get_with_nested_list(self): | CODE |
| LOW | dask/utils_test.py | 108 | def test_get_works_with_unhashables_in_values(self): | CODE |
| LOW | dask/optimization.py | 71 | def default_fused_linear_keys_renamer(keys): | CODE |
| LOW | dask/optimization.py | 409 | def default_fused_keys_renamer(keys, max_fused_key_length=120): | CODE |
| LOW | dask/_pandas_compat.py | 96 | def check_groupby_axis_deprecation(): | CODE |
| LOW | dask/_pandas_compat.py | 110 | def check_observed_deprecation(): | CODE |
| LOW | dask/_pandas_compat.py | 124 | def check_convert_dtype_deprecation(): | CODE |
| LOW | dask/_pandas_compat.py | 138 | def check_apply_dataframe_deprecation(): | CODE |
| LOW | dask/_pandas_compat.py | 154 | def is_any_real_numeric_dtype(arr_or_dtype) -> bool: | CODE |
| LOW | dask/delayed.py | 77 | def _finalize_args_collections(args, collections): | CODE |
| LOW | dask/utils.py | 2222 | def get_default_shuffle_method() -> str: | CODE |
| LOW | dask/blockwise.py | 1423 | def zero_broadcast_dimensions(lol, nblocks): | CODE |
| LOW | dask/highlevelgraph.py | 34 | def compute_layer_dependencies(layers): | CODE |
| LOW | dask/highlevelgraph.py | 37 | def _find_layer_containing_key(key): | CODE |
| LOW⚡ | dask/_compatibility.py | 50 | def import_optional_dependency( | CODE |
| LOW⚡ | dask/_compatibility.py | 60 | def import_optional_dependency( | CODE |
| LOW⚡ | dask/_compatibility.py | 69 | def import_optional_dependency( | CODE |
| LOW⚡ | dask/layers.py | 110 | def normalize_array_slice_dep(dep): | CODE |
| LOW⚡ | dask/layers.py | 115 | def normalize_array_block_id_dep(dep): | CODE |
| LOW⚡ | dask/layers.py | 120 | def normalize_array_values_dep(dep): | CODE |
| LOW | dask/layers.py | 256 | def _expand_keys_around_center(k, dims, name=None, axes=None): | CODE |
| LOW | dask/sizeof.py | 115 | def sizeof_numba_devicendarray(x): | CODE |
| LOW | dask/sizeof.py | 255 | def sizeof_pyarrow_chunked_array(data): | CODE |
| LOW | dask/sizeof.py | 304 | def _register_entry_point_plugins(): | CODE |
| LOW | dask/tokenize.py | 83 | def _maybe_raise_nondeterministic(msg: str) -> None: | CODE |
| LOW | dask/tokenize.py | 185 | def normalize_builtin_function_or_method(func): | CODE |
| LOW⚡ | dask/tokenize.py | 350 | def normalize_extension_array(arr): | CODE |
| LOW⚡ | dask/tokenize.py | 357 | def normalize_extension_array(arr): | CODE |
| LOW⚡ | dask/tokenize.py | 364 | def normalize_categorical_dtype(dtype): | CODE |
| LOW | dask/multiprocessing.py | 25 | def _reduce_method_descriptor(m): | CODE |
| LOW | dask/multiprocessing.py | 263 | def initialize_worker_process(user_initializer=None): | CODE |
| LOW | dask/base.py | 483 | def _rebuild_composite_collection( | CODE |
| LOW | dask/dataframe/accessor.py | 105 | def register_dataframe_accessor(name): | CODE |
| LOW | dask/dataframe/_pyarrow.py | 42 | def is_object_string_dataframe(x) -> bool: | CODE |
| LOW | dask/dataframe/methods.py | 191 | def describe_numeric_aggregate( | CODE |
| LOW | dask/dataframe/methods.py | 238 | def describe_nonnumeric_aggregate(stats, name): | CODE |
| LOW | dask/dataframe/multi.py | 254 | def _is_index_level_reference(x, key): | CODE |
| LOW | dask/dataframe/multi.py | 278 | def _is_column_label_reference(df, key): | CODE |
| LOW | dask/dataframe/core.py | 64 | def _get_divisions_map_partitions( | CODE |
| LOW | dask/dataframe/core.py | 271 | def _map_freq_to_period_start(freq): | CODE |
| LOW | dask/dataframe/core.py | 445 | def _sqrt_and_convert_to_timedelta(partition, axis, dtype=None, *args, **kwargs): | CODE |
| LOW⚡ | dask/dataframe/shuffle.py | 216 | def ensure_cleanup_on_exception(p): | CODE |
| LOW⚡ | dask/dataframe/backends.py | 237 | def get_pyarrow_schema_pandas(obj, preserve_index=None): | CODE |
| LOW⚡ | dask/dataframe/backends.py | 242 | def get_pyarrow_table_from_pandas(obj, **kwargs): | CODE |
| LOW⚡ | dask/dataframe/backends.py | 248 | def get_pandas_dataframe_from_pyarrow(meta, table, **kwargs): | CODE |
| LOW | dask/dataframe/backends.py | 274 | def make_meta_pandas_datetime_tz(x, index=None): | CODE |
| LOW | dask/dataframe/backends.py | 502 | def _meta_lib_from_array_numpy(x): | CODE |
| LOW | dask/dataframe/backends.py | 510 | def union_categoricals_pandas(to_union, sort_categories=False, ignore_order=False): | CODE |
| LOW | dask/dataframe/backends.py | 524 | def get_parallel_type_dataframe(_): | CODE |
| LOW | dask/dataframe/backends.py | 586 | def _union_categoricals_wrapper( | CODE |
| LOW | dask/dataframe/backends.py | 782 | def is_categorical_dtype_pandas(obj): | CODE |
| LOW | dask/dataframe/backends.py | 803 | def to_pandas_dispatch_from_pandas(data, **kwargs): | CODE |
| 1985 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | conftest.py | 1 | CODE | |
| LOW | conftest.py | 27 | CODE | |
| LOW | conftest.py | 32 | CODE | |
| LOW | conftest.py | 37 | CODE | |
| LOW | conftest.py | 42 | CODE | |
| LOW | conftest.py | 47 | CODE | |
| LOW | conftest.py | 52 | CODE | |
| LOW | dask/threaded.py | 7 | CODE | |
| LOW | dask/conftest.py | 1 | CODE | |
| LOW | dask/system.py | 1 | CODE | |
| LOW | dask/config.py | 1 | CODE | |
| LOW | dask/utils_test.py | 1 | CODE | |
| LOW | dask/local.py | 110 | CODE | |
| LOW | dask/order.py | 1 | CODE | |
| LOW | dask/optimization.py | 1 | CODE | |
| LOW | dask/_pandas_compat.py | 7 | CODE | |
| LOW | dask/datasets.py | 1 | CODE | |
| LOW | dask/cache.py | 1 | CODE | |
| LOW | dask/__init__.py | 1 | CODE | |
| LOW | dask/__init__.py | 3 | CODE | |
| LOW | dask/__init__.py | 3 | CODE | |
| LOW | dask/__init__.py | 4 | CODE | |
| LOW | dask/__init__.py | 4 | CODE | |
| LOW | dask/__init__.py | 4 | CODE | |
| LOW | dask/__init__.py | 4 | CODE | |
| LOW | dask/__init__.py | 13 | CODE | |
| LOW | dask/__init__.py | 13 | CODE | |
| LOW | dask/__init__.py | 13 | CODE | |
| LOW | dask/__init__.py | 13 | CODE | |
| LOW | dask/__init__.py | 13 | CODE | |
| LOW | dask/__init__.py | 13 | CODE | |
| LOW | dask/__init__.py | 13 | CODE | |
| LOW | dask/__init__.py | 22 | CODE | |
| LOW | dask/__init__.py | 23 | CODE | |
| LOW | dask/__init__.py | 24 | CODE | |
| LOW | dask/core.py | 1 | CODE | |
| LOW | dask/_dispatch.py | 1 | CODE | |
| LOW | dask/ml.py | 1 | CODE | |
| LOW | dask/_collections.py | 1 | CODE | |
| LOW | dask/backends.py | 1 | CODE | |
| LOW | dask/distributed.py | 1 | CODE | |
| LOW | dask/distributed.py | 11 | CODE | |
| LOW | dask/context.py | 5 | CODE | |
| LOW | dask/delayed.py | 1 | CODE | |
| LOW | dask/cli.py | 1 | CODE | |
| LOW | dask/utils.py | 1 | CODE | |
| LOW | dask/callbacks.py | 1 | CODE | |
| LOW | dask/task_spec.py | 1 | CODE | |
| LOW | dask/task_spec.py | 3 | CODE | |
| LOW | dask/task_spec.py | 3 | CODE | |
| LOW | dask/task_spec.py | 3 | CODE | |
| LOW | dask/task_spec.py | 3 | CODE | |
| LOW | dask/task_spec.py | 3 | CODE | |
| LOW | dask/task_spec.py | 3 | CODE | |
| LOW | dask/graph_manipulation.py | 6 | CODE | |
| LOW | dask/dot.py | 1 | CODE | |
| LOW | dask/_compatibility.py | 1 | CODE | |
| LOW | dask/typing.py | 1 | CODE | |
| LOW | dask/sizeof.py | 1 | CODE | |
| LOW | dask/rewrite.py | 1 | CODE | |
| 842 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | dask/threaded.py | 62 | CODE | |
| LOW | dask/_expr.py | 299 | CODE | |
| LOW | dask/_expr.py | 367 | CODE | |
| LOW | dask/_expr.py | 612 | CODE | |
| LOW | dask/_expr.py | 1161 | CODE | |
| LOW | dask/_expr.py | 1237 | CODE | |
| LOW | dask/config.py | 209 | CODE | |
| LOW | dask/config.py | 499 | CODE | |
| LOW | dask/config.py | 439 | CODE | |
| LOW | dask/local.py | 144 | CODE | |
| LOW | dask/local.py | 382 | CODE | |
| LOW | dask/order.py | 81 | CODE | |
| LOW | dask/order.py | 618 | CODE | |
| LOW | dask/order.py | 226 | CODE | |
| LOW | dask/order.py | 299 | CODE | |
| LOW | dask/order.py | 446 | CODE | |
| LOW | dask/optimization.py | 20 | CODE | |
| LOW | dask/optimization.py | 86 | CODE | |
| LOW | dask/optimization.py | 378 | CODE | |
| LOW | dask/optimization.py | 458 | CODE | |
| LOW | dask/core.py | 111 | CODE | |
| LOW | dask/core.py | 323 | CODE | |
| LOW | dask/core.py | 362 | CODE | |
| LOW | dask/delayed.py | 414 | CODE | |
| LOW | dask/utils.py | 147 | CODE | |
| LOW | dask/utils.py | 334 | CODE | |
| LOW | dask/utils.py | 379 | CODE | |
| LOW | dask/utils.py | 465 | CODE | |
| LOW | dask/utils.py | 225 | CODE | |
| LOW | dask/utils.py | 2269 | CODE | |
| LOW | dask/utils.py | 227 | CODE | |
| LOW | dask/blockwise.py | 914 | CODE | |
| LOW | dask/blockwise.py | 1109 | CODE | |
| LOW | dask/blockwise.py | 1262 | CODE | |
| LOW | dask/blockwise.py | 657 | CODE | |
| LOW | dask/blockwise.py | 746 | CODE | |
| LOW | dask/highlevelgraph.py | 127 | CODE | |
| LOW | dask/highlevelgraph.py | 201 | CODE | |
| LOW | dask/highlevelgraph.py | 238 | CODE | |
| LOW | dask/dot.py | 64 | CODE | |
| LOW | dask/dot.py | 126 | CODE | |
| LOW | dask/dot.py | 318 | CODE | |
| LOW | dask/_compatibility.py | 69 | CODE | |
| LOW | dask/layers.py | 323 | CODE | |
| LOW | dask/base.py | 90 | CODE | |
| LOW | dask/base.py | 428 | CODE | |
| LOW | dask/base.py | 515 | CODE | |
| LOW | dask/base.py | 877 | CODE | |
| LOW | dask/base.py | 1225 | CODE | |
| LOW | dask/base.py | 547 | CODE | |
| LOW | dask/_task_spec.py | 117 | CODE | |
| LOW | dask/_task_spec.py | 203 | CODE | |
| LOW | dask/_task_spec.py | 276 | CODE | |
| LOW | dask/_task_spec.py | 620 | CODE | |
| LOW | dask/_task_spec.py | 647 | CODE | |
| LOW | dask/_task_spec.py | 938 | CODE | |
| LOW | dask/dataframe/multi.py | 77 | CODE | |
| LOW | dask/dataframe/multi.py | 296 | CODE | |
| LOW | dask/dataframe/backends.py | 279 | CODE | |
| LOW | dask/dataframe/backends.py | 378 | CODE | |
| 166 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | dask/base.py | 1273 | # If undefined, fallback to `config` or worst case CPU_COUNT. | STRING |
| HIGH | dask/dataframe/core.py | 146 | and columns.equals(df.columns) | CODE |
| HIGH | dask/dataframe/groupby.py | 50 | return df.index.equals(by.index) | CODE |
| HIGH⚡ | dask/dataframe/dask_expr/io/parquet.py | 133 | if part_expr.equals(pc.scalar(True)): | CODE |
| HIGH⚡ | dask/dataframe/dask_expr/io/parquet.py | 136 | if pqformat.read_options.equals(pa_ds.ParquetFileFormat().read_options): | CODE |
| HIGH⚡ | dask/dataframe/dask_expr/io/parquet.py | 140 | assert fs.equals(self._fragment.filesystem) | CODE |
| HIGH | dask/dataframe/io/parquet/core.py | 531 | # Start conventional (non-null) filtering | COMMENT |
| HIGH⚡ | dask/dataframe/tests/test_groupby.py | 1460 | assert res0_a.equals(res0_b) | CODE |
| HIGH⚡ | dask/dataframe/tests/test_groupby.py | 1461 | assert res1_a.equals(res1_b) | CODE |
| HIGH⚡ | dask/dataframe/tests/test_dataframe.py | 4467 | assert res.dtypes.equals(ddf2.dtypes) | CODE |
| HIGH | dask/dataframe/tests/test_dataframe.py | 5214 | assert schema.equals(table.schema) | CODE |
| HIGH | dask/dataframe/tests/test_dataframe.py | 5231 | assert schema.equals(table.schema) | CODE |
| HIGH | dask/array/stats.py | 440 | # If df is undefined, variances are zero (assumes n1 > 0 & n2 > 0). | COMMENT |
| HIGH | dask/array/overlap.py | 943 | return bn.push(array, limit, axis) | CODE |
| HIGH | dask/array/tests/test_overlap.py | 769 | expected = bottleneck.push(array, axis=0, n=n) | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | dask/system.py | 27 | except Exception: | CODE |
| LOW | dask/system.py | 39 | except Exception: | CODE |
| LOW | dask/config.py | 184 | except Exception as exc: | CODE |
| LOW | dask/core.py | 339 | except Exception: | CODE |
| LOW | dask/backends.py | 141 | except Exception as e: | CODE |
| LOW | dask/cli.py | 178 | except Exception as e: | CODE |
| LOW | dask/utils.py | 685 | except Exception: | CODE |
| LOW | dask/utils.py | 690 | except Exception: | CODE |
| LOW | dask/utils.py | 753 | except Exception: | CODE |
| LOW | dask/utils.py | 1116 | except Exception as e: | CODE |
| LOW | dask/utils.py | 1137 | except Exception as e: | CODE |
| LOW | dask/utils.py | 1900 | except Exception: | CODE |
| LOW | dask/utils.py | 1998 | except Exception: | CODE |
| MEDIUM | dask/utils.py | 785 | def __doc__(self): | CODE |
| MEDIUM | dask/utils.py | 1897 | def has_keyword(func, keyword): | CODE |
| LOW | dask/sizeof.py | 310 | except Exception: | CODE |
| LOW | dask/rewrite.py | 408 | except Exception: | CODE |
| LOW | dask/tokenize.py | 211 | except Exception: | CODE |
| LOW | dask/tokenize.py | 247 | except Exception: | CODE |
| LOW | dask/tokenize.py | 253 | except Exception: | CODE |
| LOW | dask/tokenize.py | 474 | except Exception: | CODE |
| MEDIUM | dask/tokenize.py | 350 | def normalize_extension_array(arr): | CODE |
| LOW | dask/multiprocessing.py | 120 | except Exception as e: | CODE |
| LOW | dask/_task_spec.py | 787 | except Exception: | CODE |
| LOW | dask/dataframe/accessor.py | 20 | except Exception: | CODE |
| LOW | dask/dataframe/accessor.py | 41 | except Exception: | CODE |
| LOW | dask/dataframe/core.py | 44 | except Exception: | CODE |
| LOW | dask/dataframe/core.py | 85 | except Exception: | CODE |
| LOW⚡ | dask/dataframe/shuffle.py | 225 | except Exception: | CODE |
| LOW⚡ | dask/dataframe/shuffle.py | 230 | except Exception: | CODE |
| MEDIUM | dask/dataframe/shuffle.py | 110 | def set_partitions_pre(s, divisions, ascending=True, na_position="last"): | CODE |
| LOW | dask/dataframe/backends.py | 334 | except Exception: | CODE |
| LOW | dask/dataframe/backends.py | 659 | except Exception: | CODE |
| LOW | dask/dataframe/utils.py | 150 | except Exception as e: | CODE |
| LOW | dask/dataframe/groupby.py | 571 | except Exception: | CODE |
| LOW | dask/dataframe/partitionquantiles.py | 322 | except Exception: | CODE |
| MEDIUM | dask/dataframe/dask_expr/_expr.py | 153 | def __getattr__(self, key): | CODE |
| LOW | dask/dataframe/dask_expr/_expr.py | 456 | except Exception: | CODE |
| LOW | dask/dataframe/dask_expr/_expr.py | 871 | except Exception: | CODE |
| LOW | dask/dataframe/io/csv.py | 119 | except Exception as e: | CODE |
| LOW | dask/dataframe/tests/test_utils_dataframe.py | 388 | except Exception as e: | CODE |
| LOW | dask/dataframe/tests/test_utils_dataframe.py | 397 | except Exception as e: | CODE |
| MEDIUM | dask/dataframe/tests/test_utils_dataframe.py | 384 | def test_raise_on_meta_error(): | CODE |
| LOW | dask/dataframe/tests/test_dataframe.py | 4515 | except Exception: | CODE |
| LOW | dask/array/core.py | 489 | except Exception as e: | CODE |
| LOW | dask/array/core.py | 841 | except Exception: | CODE |
| LOW | dask/array/core.py | 5180 | except Exception: | CODE |
| LOW | dask/array/utils.py | 97 | except Exception: | CODE |
| LOW | dask/array/utils.py | 163 | except Exception: | CODE |
| LOW | dask/array/_array_expr/_map_blocks.py | 310 | except Exception: | CODE |
| LOW | dask/array/_array_expr/_blockwise.py | 280 | except Exception: | CODE |
| LOW | dask/array/_array_expr/_utils.py | 64 | except Exception: | CODE |
| LOW | dask/tests/test_callbacks.py | 53 | except Exception as e: | CODE |
| LOW | dask/tests/test_callbacks.py | 62 | except Exception as e: | CODE |
| LOW | dask/diagnostics/profile.py | 279 | except Exception: # could be a few different exceptions | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | dask/local.py | 382 | CODE | |
| LOW | dask/utils.py | 2122 | CODE | |
| LOW | dask/dot.py | 126 | CODE | |
| LOW | dask/dot.py | 421 | CODE | |
| LOW | dask/dataframe/groupby.py | 593 | CODE | |
| LOW | dask/dataframe/dask_expr/_reductions.py | 1219 | CODE | |
| LOW | dask/dataframe/dask_expr/_collection.py | 5140 | CODE | |
| LOW | dask/dataframe/dask_expr/_collection.py | 5594 | CODE | |
| LOW | dask/dataframe/dask_expr/_collection.py | 5687 | CODE | |
| LOW | dask/dataframe/dask_expr/_collection.py | 1636 | CODE | |
| LOW | dask/dataframe/dask_expr/_collection.py | 1801 | CODE | |
| LOW | dask/dataframe/dask_expr/_collection.py | 2132 | CODE | |
| LOW | dask/dataframe/dask_expr/_collection.py | 2407 | CODE | |
| LOW | dask/dataframe/dask_expr/_collection.py | 2859 | CODE | |
| LOW | dask/dataframe/dask_expr/_collection.py | 3342 | CODE | |
| LOW | dask/dataframe/dask_expr/_collection.py | 3534 | CODE | |
| LOW | dask/dataframe/dask_expr/io/parquet.py | 337 | CODE | |
| LOW | dask/dataframe/io/csv.py | 418 | CODE | |
| LOW | dask/dataframe/io/csv.py | 764 | CODE | |
| LOW | dask/dataframe/io/csv.py | 715 | CODE | |
| LOW | dask/dataframe/io/sql.py | 195 | CODE | |
| LOW | dask/dataframe/io/sql.py | 422 | CODE | |
| LOW | dask/dataframe/io/json.py | 20 | CODE | |
| LOW | dask/dataframe/io/json.py | 108 | CODE | |
| LOW | dask/dataframe/io/parquet/core.py | 226 | CODE | |
| LOW | dask/array/numpy_compat.py | 170 | CODE | |
| LOW | dask/array/creation.py | 857 | CODE | |
| LOW | dask/array/creation.py | 1144 | CODE | |
| LOW | dask/array/creation.py | 1210 | CODE | |
| LOW | dask/array/core.py | 551 | CODE | |
| LOW | dask/array/core.py | 3468 | CODE | |
| LOW | dask/array/gufunc.py | 172 | CODE | |
| LOW | dask/array/gufunc.py | 647 | CODE | |
| LOW | dask/array/utils.py | 299 | CODE | |
| LOW | dask/array/blockwise.py | 17 | CODE | |
| LOW | dask/array/reductions.py | 83 | CODE | |
| LOW | dask/array/reductions.py | 1517 | CODE | |
| LOW | dask/array/reductions.py | 1561 | CODE | |
| LOW | dask/array/reductions.py | 1640 | CODE | |
| LOW | dask/array/reductions.py | 1839 | CODE | |
| LOW | dask/array/routines.py | 538 | CODE | |
| LOW | dask/array/routines.py | 1958 | CODE | |
| LOW | dask/array/_reductions_generic.py | 25 | CODE | |
| LOW | dask/array/_array_expr/_map_blocks.py | 16 | CODE | |
| LOW | dask/array/_array_expr/_gufunc.py | 173 | CODE | |
| LOW | dask/array/_array_expr/_gufunc.py | 683 | CODE | |
| LOW | dask/array/_array_expr/_reductions.py | 199 | CODE | |
| LOW | dask/array/_array_expr/_reductions.py | 25 | CODE | |
| LOW | dask/array/_array_expr/_collection.py | 694 | CODE | |
| LOW | dask/array/_array_expr/_collection.py | 1005 | CODE | |
| LOW | dask/bag/text.py | 17 | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | dask/local.py | 635 | """Sorting key function that is robust to different types | STRING |
| MEDIUM | dask/utils.py | 1974 | # If we convert the key, recurse to utilize LRU cache better | COMMENT |
| LOW | dask/blockwise.py | 1282 | # Fast path: if there's only one input we can just use it as-is. | COMMENT |
| LOW | dask/dot.py | 228 | # IPython can't display this format natively, so just return None. | COMMENT |
| MEDIUM | dask/dataframe/dask_expr/_quantile.py | 111 | # Add 0 and 100 during calculation for more robust behavior (hopefully) | COMMENT |
| MEDIUM | dask/dataframe/dask_expr/_merge.py | 303 | # 1. Add/leverage partition statistics | COMMENT |
| LOW | dask/dataframe/dask_expr/_reductions.py | 1071 | # Drop all of the columns, just pass through the index | COMMENT |
| LOW | dask/dataframe/dask_expr/io/parquet.py | 1432 | # empty dataframe - just use meta | COMMENT |
| LOW | dask/dataframe/io/parquet/arrow.py | 1327 | # Check if this is a very simple case where we can just return | COMMENT |
| LOW | dask/dataframe/tests/test_groupby.py | 2225 | # just pass the pandas result as meta for convenience | COMMENT |
| LOW | dask/array/slicing.py | 257 | # No lists, hooray! just use slice_slices_and_integers | COMMENT |
| LOW | dask/array/core.py | 6001 | # output has a zero dimension, just create a new zero-shape array with the | COMMENT |
| LOW | dask/array/gufunc.py | 479 | # NOTE: we likely could just use `meta` instead of `tmp._meta`, | COMMENT |
| LOW | dask/array/utils.py | 156 | # min/max functions have no identity, just use the same input type when there's only one | COMMENT |
| MEDIUM | dask/array/percentile.py | 177 | # Add 0 and 100 during calculation for more robust behavior (hopefully) | COMMENT |
| MEDIUM⚡ | dask/array/tests/test_array_core.py | 2349 | # disabled things are nuanced and hardware-dependent. Don't risk it. | COMMENT |
| MEDIUM | dask/array/tests/test_array_core.py | 2330 | # disabled things are nuanced and hardware-dependent. Don't risk it. | COMMENT |
| LOW | dask/array/_array_expr/_slicing.py | 299 | # No lists, hooray! just use slice_slices_and_integers | COMMENT |
| LOW | dask/array/_array_expr/_gufunc.py | 457 | # NOTE: we likely could just use `meta` instead of `tmp._meta`, | COMMENT |
| LOW | dask/array/_array_expr/_utils.py | 57 | # min/max functions have no identity, just use the same input type when there's only one | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | dask/_expr.py | 386 | # Check if we've already simplified for these dependents | COMMENT |
| LOW | dask/_expr.py | 615 | # Check if we are replacing a literal | COMMENT |
| LOW | dask/dataframe/dask_expr/_collection.py | 3098 | # Check if key is in columns if key | COMMENT |
| LOW | dask/dataframe/dask_expr/_collection.py | 5936 | # Check if `func` supports column projection | COMMENT |
| LOW | dask/dataframe/dask_expr/_groupby.py | 1536 | # Check if we can project columns | COMMENT |
| LOW | dask/dataframe/io/utils.py | 188 | # Check if we are using `fsspec.parquet`. | COMMENT |
| LOW | dask/dataframe/io/tests/test_parquet.py | 3040 | # Check if we can avoid writing an actual file | COMMENT |
| LOW | dask/dataframe/io/orc/arrow.py | 73 | # Check if we can aggregate adjacent parts together | COMMENT |
| LOW | dask/dataframe/io/parquet/arrow.py | 326 | # Check if we need to generate a fragment for filtering. | COMMENT |
| LOW | dask/dataframe/io/parquet/arrow.py | 454 | # Check if filesystem was specified as a dataset option | COMMENT |
| LOW | dask/dataframe/io/parquet/arrow.py | 1327 | # Check if this is a very simple case where we can just return | COMMENT |
| LOW | dask/dataframe/io/parquet/arrow.py | 1449 | # Check if we are using a simple file-partition map | COMMENT |
| LOW | dask/dataframe/io/parquet/arrow.py | 1583 | # Check if we have empty parts to return | COMMENT |
| LOW | dask/dataframe/io/parquet/arrow.py | 1646 | # Check if we have partitioning information. | COMMENT |
| LOW | dask/dataframe/io/parquet/arrow.py | 1649 | # Check if we need to generate a fragment. | COMMENT |
| LOW | dask/dataframe/io/parquet/utils.py | 59 | # Check if fs was specified as a dataset option | COMMENT |
| LOW | dask/array/core.py | 3409 | # Check if dtype.itemsize is greater than 0 | COMMENT |
| LOW | dask/array/gufunc.py | 429 | #### Check if core dimensions consist of only one chunk | COMMENT |
| LOW | dask/array/gufunc.py | 436 | #### Check if loop dimensions consist of same chunksizes, when they have sizes > 1 | COMMENT |
| LOW | dask/array/tests/test_array_function.py | 169 | # Check if it's an equivalent array | COMMENT |
| LOW⚡ | dask/array/tests/test_routines.py | 765 | # Check if the sum of the bins equals the number of samples | COMMENT |
| LOW⚡ | dask/array/tests/test_routines.py | 792 | # Check if return type is same as hist | COMMENT |
| LOW | dask/array/_array_expr/_gufunc.py | 431 | #### Check if core dimensions consist of only one chunk | COMMENT |
| LOW | dask/array/_array_expr/_gufunc.py | 438 | #### Check if loop dimensions consist of same chunksizes, when they have sizes > 1 | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | continuous_integration/pixi-recipes/s3fs/recipe.yaml | 1 | package: | COMMENT |
| LOW | dask/order.py | 401 | known_runnable_paths[current] = [path] | COMMENT |
| LOW | dask/order.py | 461 | return True | COMMENT |
| LOW | dask/order.py | 481 | # dependencies are in result | COMMENT |
| LOW | dask/order.py | 501 | # 1. Determine the target node by calling ``get_target`` and append the | COMMENT |
| LOW | dask/order.py | 521 | # Given this, the algorithm is as follows: | COMMENT |
| LOW | dask/multiprocessing.py | 41 | # By default, tracebacks can't be serialized using pickle. However, the | COMMENT |
| LOW | dask/_task_spec.py | 301 | # user is requesting and by collapsing we'd no longer be able to | COMMENT |
| LOW | dask/dataframe/_pyarrow_compat.py | 1 | from __future__ import annotations | COMMENT |
| LOW | dask/dataframe/partitionquantiles.py | 321 | return np.array(None, dtype=dtype) | COMMENT |
| LOW | dask/dataframe/dask_expr/_expr.py | 2141 | # anymore. Otherwise, a chain of Filters might block Projections | COMMENT |
| LOW | dask/dataframe/io/parquet/arrow.py | 1001 | except StopIteration: | COMMENT |
| LOW | dask/dataframe/io/parquet/arrow.py | 1021 | # | F | True | None | 1 row-group per partition | | COMMENT |
| LOW | dask/dataframe/io/parquet/core.py | 301 | agg_name = f"agg-{name}" | COMMENT |
| LOW | dask/array/reshape.py | 141 | # The previous step squashed the whole dimension into a single | COMMENT |
| LOW | dask/array/slicing.py | 1341 | # of the result of the original slice. | COMMENT |
| LOW | dask/array/slicing.py | 1561 | """ | COMMENT |
| LOW | dask/array/slicing.py | 1681 | if is_dask_collection(index): | COMMENT |
| LOW | dask/array/slicing.py | 1721 | f"of shape {tuple(implied_shape)}" | COMMENT |
| LOW | dask/array/slicing.py | 1741 | # For example: | COMMENT |
| LOW | dask/array/slicing.py | 1761 | # array. An element of `None` will end up | COMMENT |
| LOW | dask/array/slicing.py | 1841 | in_keys = list(flatten(array.__dask_keys__())) | COMMENT |
| LOW | dask/array/rechunk.py | 81 | indicator with a corresponding cumulative sum, | COMMENT |
| LOW | dask/array/stats.py | 21 | # | COMMENT |
| LOW | dask/array/routines.py | 1461 | # This tuple of zeros represents the chunk index along the columns | COMMENT |
| LOW | dask/array/tests/test_reshape.py | 201 | (2, 2, 3, 4), | COMMENT |
| LOW | dask/array/_array_expr/_gufunc.py | 501 | # output_shape = loop_output_shape + core_output_shape | COMMENT |
| LOW | docs/source/conf.py | 1 | # | COMMENT |
| LOW | docs/source/conf.py | 81 | # General information about the project. | COMMENT |
| LOW | docs/source/conf.py | 101 | # default_role = None | COMMENT |
| LOW | docs/source/conf.py | 121 | COMMENT | |
| LOW | docs/source/conf.py | 141 | COMMENT | |
| LOW | docs/source/conf.py | 161 | COMMENT | |
| LOW | docs/source/conf.py | 181 | # If true, "Created using Sphinx" is shown in the HTML footer. Default is True. | COMMENT |
| LOW | docs/source/conf.py | 201 | latex_elements: dict[str, str] = { | COMMENT |
| LOW | docs/source/conf.py | 221 | # not chapters. | COMMENT |
| LOW | docs/source/conf.py | 281 | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | dask/dataframe/io/io.py | 173 | # Create a mapping of chunk number in the incoming array to | COMMENT |
| MEDIUM | dask/dataframe/io/tests/test_parquet.py | 3059 | # Create a Dask DataFrame if size (100, 10) with 5 partitions and write to local | COMMENT |
| MEDIUM | dask/dataframe/io/tests/test_parquet.py | 3088 | # Create a Dask DataFrame with 5 partitions and write to local, partitioning on the column A and column B | COMMENT |
| MEDIUM | dask/dataframe/io/tests/test_parquet.py | 3903 | # Create a pandas-metadata-free partitioned parquet. By default it will | COMMENT |
| MEDIUM | dask/dataframe/io/tests/test_sql.py | 131 | # Create an empty table in a different schema. | STRING |
| MEDIUM | dask/dataframe/io/tests/test_sql.py | 143 | # Create the schema and the table. | STRING |
| MEDIUM | dask/array/slicing.py | 1319 | # Initialize output variables | STRING |
| MEDIUM | dask/array/slicing.py | 1843 | # Create a new "setitem" dask entry for each block in the array | STRING |
| MEDIUM | dask/array/slicing.py | 2006 | # Create the part of the full assignment value that is to be | STRING |
| MEDIUM | dask/array/slicing.py | 2019 | # Define the assignment function for this block. | STRING |
| MEDIUM | dask/array/tests/test_array_core.py | 5207 | # Create a dask array with chunks that don't align with shards | COMMENT |
| MEDIUM | dask/array/tests/test_array_core.py | 5228 | # Create a sharded zarr array | COMMENT |
| MEDIUM | dask/tests/test_spark_compat.py | 37 | # Create a spark session. Note that we set the timezone to UTC to avoid | COMMENT |
| MEDIUM | dask/tests/test_delayed.py | 394 | # Create a list with a dask value, and test that it's not computed | COMMENT |
| MEDIUM | docs/source/conf.py | 5 | # This file is execfile()d with the current directory set to its containing dir. | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | dask/dataframe/methods.py | 38 | # --------------------------------- | COMMENT |
| MEDIUM | dask/dataframe/methods.py | 40 | # --------------------------------- | COMMENT |
| MEDIUM | dask/dataframe/methods.py | 428 | # --------------------------------- | COMMENT |
| MEDIUM | dask/dataframe/methods.py | 430 | # --------------------------------- | COMMENT |
| MEDIUM | dask/dataframe/io/tests/test_parquet.py | 268 | # ---------- | COMMENT |
| MEDIUM | dask/dataframe/io/parquet/core.py | 20 | # ---------------------------------------------------------------------- | COMMENT |
| MEDIUM | dask/array/stats.py | 85 | # ----------------- | COMMENT |
| MEDIUM | dask/array/stats.py | 87 | # ----------------- | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | dask/delayed.py | 48 | __all__ = ["Delayed", "delayed"] | CODE |
| LOW | dask/callbacks.py | 7 | __all__ = ["Callback", "add_callbacks"] | CODE |
| LOW | dask/task_spec.py | 5 | __all__ = [ | CODE |
| LOW | dask/sizeof.py | 16 | logger = logging.getLogger(__name__) | CODE |
| LOW | dask/dataframe/__init__.py | 75 | __all__ = [ | CODE |
| LOW | dask/dataframe/shuffle.py | 13 | logger = logging.getLogger(__name__) | CODE |
| LOW | dask/dataframe/extensions.py | 20 | __all__ = [ | CODE |
| LOW | dask/dataframe/_compat.py | 50 | __all__ = [ | CODE |
| LOW | dask/dataframe/dask_expr/datasets.py | 16 | __all__ = ["timeseries"] | CODE |
| LOW | dask/dataframe/dask_expr/diagnostics/__init__.py | 6 | __all__ = ["analyze", "explain"] | CODE |
| LOW | dask/dataframe/io/demo.py | 18 | __all__ = [ | CODE |
| LOW | dask/array/__init__.py | 46 | __all__ = [ | CODE |
| LOW | dask/array/stats.py | 70 | __all__ = [ | CODE |
| LOW | dask/bag/__init__.py | 3 | __all__ = [ | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| CRITICAL | dask/dataframe/dask_expr/tests/test_merge.py | 282 | assert sorted(result.expr.frame.frame.left.operand("columns")) == ["b", "x"] | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | dask/_task_spec.py | 913 | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | dask/dataframe/tests/test_accessors.py | 161 | # make sure to pass through args & kwargs | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | dask/local.py | 246 | def execute_task(key, task_info, dumps, loads, get_id, pack_exception): | CODE |