Hydra is a framework for elegantly configuring complex applications
This report summarizes scanner evidence for hydra-ecosystem/hydra, a Python project with 10,694 GitHub stars. SynthScan examined 145,121 lines of code across 1579 source files, recording 1514 pattern matches distributed across 18 syntactic categories. The legacy adjusted pattern signal is 12.0 (Moderate pattern signal); it is not an authorship estimate.
Use the findings to ask whether maintainers can explain intent, verify dependencies, simplify unnecessary scaffolding, and focus review effort. Risk Payload v1 adds ownership, supply-chain, over-engineering, and review-effort vectors when available. These are prompts for human verification, not probabilities, security findings, or measured maintenance costs.
Use each vector to guide manual verification of the underlying findings.
Can maintainers explain intent, assumptions, and trade-offs? 1306 finding(s).
Are imports declared and package/API names verified? 59 finding(s).
Are wrappers, guards, and repeated structures necessary? 1319 finding(s).
Which changes need focused human review? 1514 finding(s).
This chart tracks the legacy adjusted pattern score across scan runs. Changes can reflect source changes, scan coverage, or detector/scoring versions; they do not measure AI adoption or prove that a team refactored code. Compare runs only when their scoring versions are compatible. The dashed line tracks the raw pattern-hit count.
Groups findings by configured severity weight. Severity is not a confidence estimate, security rating, or proof that a package is missing. Verify imports against the project's manifests and inspect each finding in its local design context.
This horizontal bar chart shows where configured pattern scores accumulate across directories. Treat the bars as locations to inspect, not as evidence of authorship or code quality. Use the file-level findings to decide whether a directory needs a focused ownership, dependency, complexity, or review check.
The scanner identified 1514 distinct pattern matches across 18 syntactic categories. Each entry below represents a discrete location in the source code where the engine recorded a detector match to inspect in context. 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 configured finding weight (CRITICAL / HIGH / MEDIUM / LOW). The Context column identifies whether the match occurred inside executable code, an inline comment, or a string literal — legacy comment-context matches receive a ×1.5 score weight. The ⚡ bolt icon marks clustered matches: three or more patterns within a 10-line window, each receiving an additional ×1.5 density multiplier under the legacy scoring model.
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | noxfile.py | 125 | def log_installed_package_version(session: Session, package_name: str) -> None: | CODE |
| LOW | noxfile.py | 167 | def install_plugin_test_requirements(session: Session, plugin: Plugin) -> None: | CODE |
| LOW | noxfile.py | 186 | def get_setup_python_versions(classifiers: list[str]) -> list[str]: | CODE |
| LOW | noxfile.py | 264 | def select_plugins_under_directory(session: Session, directory: str) -> list[Plugin]: | CODE |
| LOW | noxfile.py | 492 | def lint_plugin_if_compatible(session: Session, plugin: Plugin) -> None: | CODE |
| LOW | noxfile.py | 568 | def _get_standalone_apps_dirs() -> list[str | Path]: | CODE |
| LOW⚡ | tools/release/test_release.py | 56 | def test_validate_local_version_accepts_expected_version() -> None: | CODE |
| LOW⚡ | tools/release/test_release.py | 62 | def test_validate_local_version_rejects_unexpected_version() -> None: | CODE |
| LOW⚡ | tools/release/test_release.py | 72 | def test_validate_dev_version_accepts_dev_version() -> None: | CODE |
| LOW⚡ | tools/release/test_release.py | 76 | def test_validate_dev_version_rejects_non_dev_version() -> None: | CODE |
| LOW⚡ | tools/release/test_release.py | 84 | def test_format_dev_release_package_table_includes_publish_plan() -> None: | CODE |
| LOW | tools/release/test_release.py | 34 | def test_publishable_when_local_version_is_older_than_latest_but_unpublished() -> None: | CODE |
| LOW | tools/release/test_release.py | 45 | def test_not_publishable_when_local_version_is_already_published() -> None: | CODE |
| LOW | tools/release/test_release.py | 107 | def test_fail_if_any_target_version_published_rejects_published_package() -> None: | CODE |
| LOW | tools/release/test_release.py | 125 | def test_filter_packages_keeps_requested_packages_in_order() -> None: | CODE |
| LOW | tools/release/test_release.py | 137 | def test_filter_packages_rejects_unknown_packages() -> None: | CODE |
| LOW | tools/release/test_release.py | 153 | def test_dispatch_publish_workflow_reports_approval_link(monkeypatch, caplog) -> None: | CODE |
| LOW | tools/release/test_release.py | 206 | def test_publish_workflow_gates_only_the_pypi_upload() -> None: | CODE |
| LOW | tools/release/test_release.py | 217 | def test_publish_workflow_cleans_up_transient_artifacts() -> None: | CODE |
| LOW | tools/release/test_release.py | 271 | def test_publish_plan_pins_dispatched_branch_tip_without_a_commit_input() -> None: | CODE |
| LOW | tools/release/test_release.py | 278 | def test_publish_plan_pins_the_requested_commit() -> None: | CODE |
| LOW | tools/release/test_release.py | 294 | def test_publish_plan_rejects_a_commit_that_is_not_a_full_sha(commit: str) -> None: | CODE |
| LOW | tools/release/test_release.py | 301 | def test_dev_release_dispatches_the_commit_it_reports_after_bumping( | CODE |
| LOW | tools/release/test_release.py | 373 | def test_dev_release_pins_initial_current_commit_when_no_bump_is_needed( | CODE |
| LOW | tools/release/test_release.py | 422 | def test_missing_remote_commit_exits_with_clean_error(monkeypatch) -> None: | CODE |
| LOW | tools/release/test_release.py | 445 | def test_publish_commit_check_queries_exact_sha_on_github(monkeypatch) -> None: | CODE |
| LOW | tools/release/test_release.py | 480 | def test_dev_release_checks_selected_commit_on_remote_first( | CODE |
| LOW | tools/release/test_release.py | 540 | def test_validate_release_commit_rejects_invalid_commit(commit: str) -> None: | CODE |
| LOW | tools/release/test_release.py | 545 | def test_archive_release_workspace_uses_selected_sapling_commit( | CODE |
| LOW | tools/release/test_release.py | 569 | def test_archive_release_workspace_uses_selected_git_commit( | CODE |
| LOW | tools/release/test_release.py | 610 | def test_dev_release_dispatches_requested_commit_without_mutating_checkout( | CODE |
| LOW | tools/release/test_release.py | 684 | def test_check_build_artifacts_upgrades_smoke_environment_pip( | CODE |
| LOW | tools/release/test_release.py | 728 | def test_get_remote_url_accepts_sapling_path_output_formats( | CODE |
| LOW | tools/release/test_release.py | 746 | def test_get_github_repo_slug_accepts_common_github_remote_urls(remote_url) -> None: | CODE |
| LOW | tools/release/test_release.py | 776 | def test_release_build_checks_bundled_jar_licenses( | CODE |
| LOW | tools/release/release.py | 231 | def collect_dev_release_package_info( | CODE |
| LOW | tools/release/release.py | 256 | def format_dev_release_package_table(infos: list[DevReleasePackageInfo]) -> str: | CODE |
| LOW | tools/release/release.py | 289 | def fail_if_any_target_version_published(infos: list[DevReleasePackageInfo]) -> None: | CODE |
| LOW | tools/release/release.py | 391 | def validate_package_versions( | CODE |
| LOW | tools/release/release.py | 432 | def check_bundled_jar_licenses(artifacts: list[Path]) -> None: | CODE |
| LOW | tools/release/release.py | 482 | def validate_dev_release_artifacts( | CODE |
| LOW | tools/release/release.py | 529 | def archive_release_workspace( | CODE |
| LOW | tools/release/release.py | 609 | def ensure_publish_commit_exists_on_remote( | CODE |
| LOW | tools/release/release.py | 651 | def dispatch_publish_workflow( | CODE |
| LOW | tools/release/release.py | 694 | def selected_package_set_name() -> str: | CODE |
| LOW | tools/copyright/test_check_new_files.py | 28 | def test_accepts_new_header_after_shebang(tmp_path: Path) -> None: | STRING |
| LOW | tools/copyright/test_check_new_files.py | 34 | def test_rejects_legacy_header(tmp_path: Path) -> None: | STRING |
| LOW | tools/copyright/test_check_new_files.py | 47 | def test_rejects_meta_header_even_with_new_header(tmp_path: Path) -> None: | STRING |
| LOW⚡ | tools/copyright/test_check_new_files.py | 60 | def test_rejects_meta_header_without_platforms(tmp_path: Path) -> None: | STRING |
| LOW⚡ | tools/copyright/test_check_new_files.py | 69 | def test_rejects_missing_header(tmp_path: Path) -> None: | STRING |
| LOW⚡ | tools/copyright/test_check_new_files.py | 78 | def test_rejects_spdx_text_outside_leading_comments(tmp_path: Path) -> None: | STRING |
| LOW | tools/copyright/test_check_new_files.py | 92 | def test_ignores_non_python_and_excluded_files(tmp_path: Path) -> None: | STRING |
| LOW | tools/copyright/test_check_new_files.py | 102 | def test_added_paths_uses_nul_delimited_git_diff(tmp_path: Path) -> None: | STRING |
| LOW | tools/copyright/test_check_new_files.py | 131 | def test_main_skips_an_all_zero_base() -> None: | STRING |
| LOW | tools/copyright/test_check_new_files.py | 135 | def test_shared_docusaurus_exemption_is_scoped(tmp_path: Path) -> None: | STRING |
| LOW | tools/landscape/test_refresh_landscape_metadata.py | 10 | def test_default_input_uses_analyzer_output() -> None: | CODE |
| LOW | tools/landscape/test_refresh_landscape_metadata.py | 14 | def test_read_repositories_keeps_successful_unique_rows(tmp_path: Path) -> None: | CODE |
| LOW | tools/landscape/test_refresh_landscape_metadata.py | 25 | def test_read_repositories_accepts_included_decisions(tmp_path: Path) -> None: | CODE |
| LOW | tools/landscape/test_refresh_landscape_metadata.py | 39 | def test_parse_response_preserves_live_maintenance_evidence() -> None: | CODE |
| LOW | tools/landscape/test_refresh_landscape_metadata.py | 80 | def test_fetch_batch_uses_one_graphql_request( | CODE |
| 1106 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | plugins/hydra_rq_launcher/tests/test_rq_launcher.py | 0 | run this launcher through the integration test suite. | STRING |
| HIGH | …ns/hydra_joblib_launcher/tests/test_joblib_launcher.py | 0 | run this launcher through the integration test suite. | STRING |
| HIGH | plugins/hydra_ray_launcher/tests/test_ray_launcher.py | 0 | run this launcher through the integration test suite. | STRING |
| HIGH | …_ray_launcher/tests/ray_aws_launcher_tests_disabled.py | 0 | run this launcher through the integration test suite. | STRING |
| HIGH | tests/test_basic_launcher.py | 0 | run this launcher through the integration test suite. | STRING |
| HIGH | …_launcher_plugin/tests/test_example_launcher_plugin.py | 0 | run this launcher through the integration test suite. | STRING |
| HIGH | …a_rq_launcher/hydra_plugins/hydra_rq_launcher/_core.py | 0 | :param job_overrides: a list of list<string>, where each inner list is the arguments for one job run. :param initial_job | STRING |
| HIGH | …_launcher/hydra_plugins/hydra_joblib_launcher/_core.py | 0 | :param job_overrides: a list of list<string>, where each inner list is the arguments for one job run. :param initial_job | STRING |
| HIGH | …ra_plugins/example_launcher_plugin/example_launcher.py | 0 | :param job_overrides: a list of list<string>, where each inner list is the arguments for one job run. :param initial_job | STRING |
| HIGH | website/docs/advanced/compose_api.md | 0 | :param config_name: the name of the config (usually the file name without the .yaml extension) :param overrides: list of | STRING |
| HIGH | …ite/versioned_docs/version-1.1/advanced/compose_api.md | 0 | :param config_name: the name of the config (usually the file name without the .yaml extension) :param overrides: list of | STRING |
| HIGH | …ite/versioned_docs/version-1.3/advanced/compose_api.md | 0 | :param config_name: the name of the config (usually the file name without the .yaml extension) :param overrides: list of | STRING |
| HIGH | …ite/versioned_docs/version-1.2/advanced/compose_api.md | 0 | :param config_name: the name of the config (usually the file name without the .yaml extension) :param overrides: list of | STRING |
| HIGH | hydra/compose.py | 0 | :param config_name: the name of the config (usually the file name without the .yaml extension) :param overrides: list of | STRING |
| HIGH | website/docs/advanced/compose_api.md | 0 | initializes hydra and add the config_path to the config search path. config_path is relative to the parent of the caller | STRING |
| HIGH | hydra/initialize.py | 0 | initializes hydra and add the config_path to the config search path. config_path is relative to the parent of the caller | STRING |
| HIGH | …rsioned_docs/version-1.0/experimental/hydra_compose.md | 0 | initializes hydra and add the config_path to the config search path. config_path is relative to the parent of the caller | STRING |
| HIGH | …ite/versioned_docs/version-1.1/advanced/compose_api.md | 0 | initializes hydra and add the config_path to the config search path. config_path is relative to the parent of the caller | STRING |
| HIGH | …ite/versioned_docs/version-1.3/advanced/compose_api.md | 0 | initializes hydra and add the config_path to the config search path. config_path is relative to the parent of the caller | STRING |
| HIGH | …ite/versioned_docs/version-1.2/advanced/compose_api.md | 0 | initializes hydra and add the config_path to the config search path. config_path is relative to the parent of the caller | STRING |
| HIGH | website/docs/advanced/plugins/develop.md | 0 | hydra users should call this function before invoking @hydra.main | STRING |
| HIGH | …versioned_docs/version-1.3/advanced/plugins/develop.md | 0 | hydra users should call this function before invoking @hydra.main | STRING |
| HIGH | …versioned_docs/version-1.2/advanced/plugins/develop.md | 0 | hydra users should call this function before invoking @hydra.main | STRING |
| HIGH | website/docs/advanced/override_grammar/extended.md | 0 | a glob selects from all options in the config group. inputs are in glob format. e.g: *, foo*, *foo. :param include: a st | STRING |
| HIGH | …docs/version-1.0/advanced/override_grammar/extended.md | 0 | a glob selects from all options in the config group. inputs are in glob format. e.g: *, foo*, *foo. :param include: a st | STRING |
| HIGH | …docs/version-1.1/advanced/override_grammar/extended.md | 0 | a glob selects from all options in the config group. inputs are in glob format. e.g: *, foo*, *foo. :param include: a st | STRING |
| HIGH | …docs/version-1.3/advanced/override_grammar/extended.md | 0 | a glob selects from all options in the config group. inputs are in glob format. e.g: *, foo*, *foo. :param include: a st | STRING |
| HIGH | …docs/version-1.2/advanced/override_grammar/extended.md | 0 | a glob selects from all options in the config group. inputs are in glob format. e.g: *, foo*, *foo. :param include: a st | STRING |
| HIGH | hydra/_internal/grammar/grammar_functions.py | 0 | a glob selects from all options in the config group. inputs are in glob format. e.g: *, foo*, *foo. :param include: a st | STRING |
| HIGH | website/docs/advanced/override_grammar/extended.md | 0 | range is defines a sweeep over a range of integer or floating-point values. for a positive step, the contents of a range | STRING |
| HIGH | …docs/version-1.0/advanced/override_grammar/extended.md | 0 | range is defines a sweeep over a range of integer or floating-point values. for a positive step, the contents of a range | STRING |
| HIGH | …docs/version-1.1/advanced/override_grammar/extended.md | 0 | range is defines a sweeep over a range of integer or floating-point values. for a positive step, the contents of a range | STRING |
| HIGH | …docs/version-1.3/advanced/override_grammar/extended.md | 0 | range is defines a sweeep over a range of integer or floating-point values. for a positive step, the contents of a range | STRING |
| HIGH | …docs/version-1.2/advanced/override_grammar/extended.md | 0 | range is defines a sweeep over a range of integer or floating-point values. for a positive step, the contents of a range | STRING |
| HIGH | website/docs/advanced/override_grammar/extended.md | 0 | a continuous interval between two floating point values. value=interval(x,y) is interpreted as x <= value < y | STRING |
| HIGH | …docs/version-1.0/advanced/override_grammar/extended.md | 0 | a continuous interval between two floating point values. value=interval(x,y) is interpreted as x <= value < y | STRING |
| HIGH | …docs/version-1.1/advanced/override_grammar/extended.md | 0 | a continuous interval between two floating point values. value=interval(x,y) is interpreted as x <= value < y | STRING |
| HIGH | …docs/version-1.3/advanced/override_grammar/extended.md | 0 | a continuous interval between two floating point values. value=interval(x,y) is interpreted as x <= value < y | STRING |
| HIGH | …docs/version-1.2/advanced/override_grammar/extended.md | 0 | a continuous interval between two floating point values. value=interval(x,y) is interpreted as x <= value < y | STRING |
| HIGH | hydra/_internal/grammar/grammar_functions.py | 0 | a continuous interval between two floating point values. value=interval(x,y) is interpreted as x <= value < y | STRING |
| HIGH | website/docs/advanced/override_grammar/extended.md | 0 | sort an input list or sweep. reverse=true reverses the order | STRING |
| HIGH | …docs/version-1.0/advanced/override_grammar/extended.md | 0 | sort an input list or sweep. reverse=true reverses the order | STRING |
| HIGH | …docs/version-1.1/advanced/override_grammar/extended.md | 0 | sort an input list or sweep. reverse=true reverses the order | STRING |
| HIGH | …docs/version-1.3/advanced/override_grammar/extended.md | 0 | sort an input list or sweep. reverse=true reverses the order | STRING |
| HIGH | …docs/version-1.2/advanced/override_grammar/extended.md | 0 | sort an input list or sweep. reverse=true reverses the order | STRING |
| HIGH | hydra/_internal/grammar/grammar_functions.py | 0 | sort an input list or sweep. reverse=true reverses the order | STRING |
| HIGH | website/docs/advanced/override_grammar/extended.md | 0 | shuffle input list or sweep (does not support interval) | STRING |
| HIGH | …docs/version-1.0/advanced/override_grammar/extended.md | 0 | shuffle input list or sweep (does not support interval) | STRING |
| HIGH | …docs/version-1.1/advanced/override_grammar/extended.md | 0 | shuffle input list or sweep (does not support interval) | STRING |
| HIGH | …docs/version-1.3/advanced/override_grammar/extended.md | 0 | shuffle input list or sweep (does not support interval) | STRING |
| HIGH | …docs/version-1.2/advanced/override_grammar/extended.md | 0 | shuffle input list or sweep (does not support interval) | STRING |
| HIGH | hydra/_internal/grammar/grammar_functions.py | 0 | shuffle input list or sweep (does not support interval) | STRING |
| HIGH | …rsioned_docs/version-1.0/experimental/hydra_compose.md | 0 | initializes hydra and add the config_module to the config search path. the config module must be importable (an __init__ | STRING |
| HIGH | …ite/versioned_docs/version-1.1/advanced/compose_api.md | 0 | initializes hydra and add the config_module to the config search path. the config module must be importable (an __init__ | STRING |
| HIGH | …ite/versioned_docs/version-1.3/advanced/compose_api.md | 0 | initializes hydra and add the config_module to the config search path. the config module must be importable (an __init__ | STRING |
| HIGH | …ite/versioned_docs/version-1.2/advanced/compose_api.md | 0 | initializes hydra and add the config_module to the config search path. the config module must be importable (an __init__ | STRING |
| HIGH | …rsioned_docs/version-1.0/experimental/hydra_compose.md | 0 | initializes hydra and add an absolute config dir to the to the config search path. the config_dir is always a path on th | STRING |
| HIGH | …ite/versioned_docs/version-1.1/advanced/compose_api.md | 0 | initializes hydra and add an absolute config dir to the to the config search path. the config_dir is always a path on th | STRING |
| HIGH | hydra/initialize.py | 0 | initializes hydra and add an absolute config dir to the to the config search path. the config_dir is always a path on th | STRING |
| HIGH | …ite/versioned_docs/version-1.3/advanced/compose_api.md | 0 | initializes hydra and add an absolute config dir to the to the config search path. the config_dir is always a path on th | STRING |
| 32 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | noxfile.py | 539 | CODE | |
| LOW | tools/release/release.py | 432 | CODE | |
| LOW | tools/release/release.py | 795 | CODE | |
| LOW | tools/landscape/analyze_hydra_usage.py | 464 | CODE | |
| LOW | tools/landscape/analyze_hydra_usage.py | 673 | CODE | |
| LOW | tools/landscape/analyze_hydra_usage.py | 725 | CODE | |
| LOW | tools/landscape/analyze_hydra_usage.py | 796 | CODE | |
| LOW | tools/landscape/analyze_hydra_usage.py | 1088 | CODE | |
| LOW | tools/landscape/analyze_hydra_usage.py | 174 | CODE | |
| LOW | tools/landscape/analyze_hydra_usage.py | 231 | CODE | |
| LOW | tools/configen/configen/configen.py | 92 | CODE | |
| LOW | tools/configen/configen/configen.py | 157 | CODE | |
| LOW | tools/configen/configen/utils.py | 20 | CODE | |
| LOW | …dra_ax_sweeper/hydra_plugins/hydra_ax_sweeper/_core.py | 48 | CODE | |
| LOW | …dra_ax_sweeper/hydra_plugins/hydra_ax_sweeper/_core.py | 308 | CODE | |
| LOW | …dra_ax_sweeper/hydra_plugins/hydra_ax_sweeper/_core.py | 358 | CODE | |
| LOW | …na_sweeper/hydra_plugins/hydra_optuna_sweeper/_impl.py | 276 | CODE | |
| LOW | …na_sweeper/hydra_plugins/hydra_optuna_sweeper/_impl.py | 303 | CODE | |
| LOW | …sweeper/hydra_plugins/hydra_nevergrad_sweeper/_impl.py | 56 | CODE | |
| LOW | …sweeper/hydra_plugins/hydra_nevergrad_sweeper/_impl.py | 147 | CODE | |
| LOW | …_launcher/hydra_plugins/hydra_joblib_launcher/_core.py | 98 | CODE | |
| LOW | …/integration_test_tools/create_integration_test_ami.py | 34 | CODE | |
| LOW | tests/test_overrides_parser.py | 2001 | CODE | |
| LOW | tests/test_pkg_config_source.py | 19 | CODE | |
| LOW | tests/test_config_store.py | 106 | CODE | |
| LOW | .github/docusaurus/tests/test_docusaurus_standard.py | 115 | CODE | |
| LOW | .github/docusaurus/tests/test_docusaurus_standard.py | 557 | CODE | |
| LOW | .github/docusaurus/tests/test_docusaurus_standard.py | 677 | CODE | |
| LOW | .github/docusaurus/tests/test_docusaurus_standard.py | 841 | CODE | |
| LOW | .github/docusaurus/tests/test_docusaurus_standard.py | 928 | CODE | |
| LOW | .github/docusaurus/tests/test_docusaurus_standard.py | 1292 | CODE | |
| LOW | .github/docusaurus/tests/test_docusaurus_standard.py | 1361 | CODE | |
| LOW | .github/docusaurus/tests/test_docusaurus_standard.py | 1506 | CODE | |
| LOW | .github/docusaurus/tests/test_docusaurus_standard.py | 116 | CODE | |
| LOW | .github/docusaurus/tests/test_docusaurus_standard.py | 596 | CODE | |
| LOW | .github/docusaurus/tests/test_docusaurus_standard.py | 693 | CODE | |
| LOW | .github/docusaurus/tests/test_docusaurus_standard.py | 846 | CODE | |
| LOW | .github/docusaurus/tests/test_docusaurus_standard.py | 934 | CODE | |
| LOW | .github/docusaurus/tests/test_docusaurus_standard.py | 1303 | CODE | |
| LOW | .github/docusaurus/tests/test_docusaurus_standard.py | 1378 | CODE | |
| LOW | .github/docusaurus/tests/test_docusaurus_standard.py | 1523 | CODE | |
| LOW | …/docusaurus/tests/test_dependency_audit_release_age.py | 229 | CODE | |
| LOW | …/docusaurus/tests/test_dependency_audit_release_age.py | 255 | CODE | |
| LOW | …thub/docusaurus/tests/test_dependency_audit_repairs.py | 327 | CODE | |
| LOW | …thub/docusaurus/tests/test_dependency_audit_repairs.py | 345 | CODE | |
| LOW | .github/docusaurus/templates/dependency_audit.py | 119 | CODE | |
| LOW | .github/docusaurus/templates/dependency_audit.py | 142 | CODE | |
| LOW | .github/docusaurus/templates/dependency_audit.py | 175 | CODE | |
| LOW | .github/docusaurus/templates/dependency_audit.py | 691 | CODE | |
| LOW | .github/docusaurus/templates/dependency_audit.py | 736 | CODE | |
| LOW | .github/docusaurus/templates/dependency_audit.py | 1017 | CODE | |
| LOW | build_helpers/build_helpers.py | 36 | CODE | |
| LOW | build_helpers/build_helpers.py | 101 | CODE | |
| LOW | hydra/_internal/config_search_path_impl.py | 26 | CODE | |
| LOW | hydra/_internal/config_repository.py | 116 | CODE | |
| LOW | hydra/_internal/config_repository.py | 165 | CODE | |
| LOW | hydra/_internal/defaults_list.py | 502 | CODE | |
| LOW | hydra/_internal/defaults_list.py | 562 | CODE | |
| LOW | hydra/_internal/defaults_list.py | 609 | CODE | |
| LOW | hydra/_internal/defaults_list.py | 878 | CODE | |
| 53 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | …_launcher/hydra_plugins/hydra_joblib_launcher/_core.py | 137 | except ValueError: | CODE |
| HIGH | hydra/_internal/utils.py | 94 | except KeyError: | CODE |
| HIGH | hydra/_internal/callbacks.py | 32 | except BaseException: | CODE |
| HIGH | hydra/_internal/execution_policy.py | 1287 | except BaseException: | CODE |
| HIGH | hydra/_internal/grammar/utils.py | 35 | except KeyError: | CODE |
| HIGH | hydra/core/plugins.py | 67 | except ImportError: | CODE |
| HIGH | hydra/core/utils.py | 849 | except BaseException: | CODE |
| HIGH | hydra/core/utils.py | 920 | except Exception: | CODE |
| HIGH | hydra/core/utils.py | 776 | except BaseException: | CODE |
| HIGH | hydra/core/utils.py | 796 | except BaseException: | CODE |
| HIGH | hydra/core/utils.py | 768 | except ImportError: | CODE |
| HIGH | hydra/core/utils.py | 234 | except Exception: | CODE |
| HIGH | hydra/core/utils.py | 238 | except Exception: | CODE |
| HIGH | hydra/plugins/completion_plugin.py | 240 | except ConfigCompositionException: | CODE |
| HIGH | hydra/plugins/completion_plugin.py | 286 | except ConfigCompositionException: | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH⚡ | .github/docusaurus/tests/test_docusaurus_standard.py | 1424 | ("renderer@1.0.0 || 1.0.1", True), | CODE |
| HIGH⚡ | .github/docusaurus/tests/test_docusaurus_standard.py | 1427 | ("renderer@1.0.0 || 2.0.0", True), | CODE |
| HIGH⚡ | .github/docusaurus/tests/test_docusaurus_standard.py | 1466 | if union == "renderer@1.0.0 || 1.0.1": | CODE |
| HIGH⚡ | .github/docusaurus/tests/test_docusaurus_standard.py | 1475 | if union == "renderer@1.0.0 || 1.0.1": | CODE |
| HIGH⚡ | .github/docusaurus/tests/test_docusaurus_standard.py | 1482 | assert bool(notes) == (union == "renderer@1.0.0 || 2.0.0") | CODE |
| HIGH | .github/docusaurus/tests/test_docusaurus_standard.py | 1357 | ("renderer@1.0.1 || 2.0.0", True, True), | CODE |
| HIGH | hydra/_internal/core_plugins/bash_completion.py | 15 | f"export _HYDRA_OLD_COMP=$(complete -p {self._get_exec()} 2> /dev/null)\n" | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | tools/copyright/check_new_files.py | 8 | CODE | |
| LOW | tools/landscape/analyze_hydra_projects.py | 13 | CODE | |
| LOW | tools/landscape/build_public_landscape.py | 7 | CODE | |
| LOW | tools/landscape/analyze_hydra_usage.py | 16 | CODE | |
| LOW | tools/landscape/refresh_landscape_metadata.py | 7 | CODE | |
| LOW | tools/landscape/build_landscape_review.py | 7 | CODE | |
| LOW | …/configen/example/config/configen/samples/my_module.py | 8 | CODE | |
| LOW | tools/configen/tests/test_modules/future_annotations.py | 2 | CODE | |
| LOW | …configen/tests/test_modules/default_flags/recursive.py | 8 | CODE | |
| LOW | …s/configen/tests/test_modules/default_flags/convert.py | 8 | CODE | |
| LOW | …s/configen/tests/test_modules/default_flags/noflags.py | 8 | CODE | |
| LOW | tools/configen/tests/test_modules/default_flags/both.py | 8 | CODE | |
| LOW | …ncher/hydra_plugins/hydra_ray_launcher/ray_launcher.py | 9 | CODE | |
| LOW | tests/instantiate/__init__.py | 6 | CODE | |
| LOW | tests/instantiate/__init__.py | 6 | CODE | |
| LOW | tests/instantiate/__init__.py | 6 | CODE | |
| LOW | tests/instantiate/__init__.py | 212 | CODE | |
| LOW | build_helpers/__init__.py | 2 | CODE | |
| LOW | hydra/__init__.py | 5 | CODE | |
| LOW | hydra/__init__.py | 6 | CODE | |
| LOW | hydra/__init__.py | 7 | CODE | |
| LOW | hydra/__init__.py | 8 | CODE | |
| LOW | hydra/__init__.py | 10 | CODE | |
| LOW | hydra/__init__.py | 11 | CODE | |
| LOW | hydra/__init__.py | 11 | CODE | |
| LOW | hydra/__init__.py | 11 | CODE | |
| LOW | hydra/__init__.py | 11 | CODE | |
| LOW | hydra/types.py | 10 | CODE | |
| LOW | hydra/types.py | 11 | CODE | |
| LOW | hydra/utils.py | 12 | CODE | |
| LOW | hydra/utils.py | 15 | CODE | |
| LOW | hydra/_internal/hydra.py | 51 | CODE | |
| LOW | hydra/_internal/hydra.py | 53 | CODE | |
| LOW | hydra/_internal/utils.py | 35 | CODE | |
| LOW | hydra/_internal/callbacks.py | 10 | CODE | |
| LOW | hydra/core/global_hydra.py | 5 | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW⚡ | …a_rq_launcher/hydra_plugins/hydra_rq_launcher/_core.py | 240 | except Exception: | CODE |
| LOW | …na_sweeper/hydra_plugins/hydra_optuna_sweeper/_impl.py | 411 | except Exception as e: | CODE |
| LOW | …sweeper/hydra_plugins/hydra_nevergrad_sweeper/_impl.py | 209 | except Exception as e: | CODE |
| LOW | …her/hydra_plugins/hydra_ray_launcher/_remote_invoke.py | 86 | except Exception as e: | CODE |
| MEDIUM | …her/hydra_plugins/hydra_ray_launcher/_remote_invoke.py | 79 | def _get_instance_id() -> str: | CODE |
| LOW | tests/test_core_utils.py | 594 | except Exception as error: | CODE |
| LOW | tests/test_core_utils.py | 665 | except Exception as cause: | CODE |
| LOW | hydra/utils.py | 50 | except Exception as e: | CODE |
| LOW | hydra/utils.py | 77 | except Exception as e: | CODE |
| LOW | hydra/utils.py | 102 | except Exception as e: | CODE |
| LOW | hydra/_internal/logging_config.py | 349 | except Exception: | CODE |
| LOW | hydra/_internal/logging_config.py | 372 | except Exception as exc: | CODE |
| LOW | hydra/_internal/utils.py | 407 | except Exception: | CODE |
| LOW | hydra/_internal/utils.py | 421 | except Exception as ex: | CODE |
| LOW | hydra/_internal/utils.py | 435 | except Exception as ex2: | CODE |
| MEDIUM | hydra/_internal/utils.py | 100 | def is_notebook() -> bool: | CODE |
| LOW | hydra/_internal/callbacks.py | 27 | except Exception as e: | CODE |
| LOW | hydra/_internal/_locate.py | 29 | except Exception as exc_import: | CODE |
| LOW | hydra/_internal/_locate.py | 50 | except Exception as exc_import: | CODE |
| LOW | hydra/_internal/execution_policy.py | 1832 | except Exception: | CODE |
| LOW | hydra/_internal/execution_policy.py | 1932 | except Exception as error: | CODE |
| LOW | …dra/_internal/core_plugins/structured_config_source.py | 18 | except Exception as e: | CODE |
| LOW | hydra/_internal/instantiate/_instantiate2.py | 264 | except Exception as e: | CODE |
| LOW | hydra/_internal/instantiate/_instantiate2.py | 270 | except Exception as e: | CODE |
| LOW | hydra/core/plugins.py | 80 | except Exception as e: | CODE |
| LOW | hydra/core/config_loader.py | 33 | except Exception: | CODE |
| LOW⚡ | hydra/core/utils.py | 225 | except Exception as e: | CODE |
| LOW⚡ | hydra/core/utils.py | 234 | except Exception: | CODE |
| LOW⚡ | hydra/core/utils.py | 238 | except Exception: | CODE |
| LOW | hydra/core/utils.py | 920 | except Exception: | STRING |
| LOW | hydra/core/override_parser/overrides_visitor.py | 265 | except Exception as e: | CODE |
| LOW | hydra/test_utils/test_utils.py | 390 | except Exception as e: | STRING |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | …uncher/hydra_plugins/hydra_submitit_launcher/config.py | 72 | # Eg: {"mail-user": "user@example.com", "mail-type": "BEGIN"} | COMMENT |
| LOW⚡ | tests/defaults_list/test_defaults_list.py | 1478 | "placeholder", | CODE |
| LOW⚡ | tests/defaults_list/test_defaults_list.py | 1480 | [ResultDefault(config_path="placeholder", package="", is_self=True)], | CODE |
| LOW⚡ | tests/defaults_list/test_defaults_list.py | 1481 | id="placeholder", | CODE |
| LOW⚡ | tests/defaults_list/test_defaults_list.py | 1484 | "placeholder", | CODE |
| LOW⚡ | tests/defaults_list/test_defaults_list.py | 1488 | config_path="group1/file1", package="group1", parent="placeholder" | CODE |
| LOW⚡ | tests/defaults_list/test_defaults_list.py | 1490 | ResultDefault(config_path="placeholder", package="", is_self=True), | CODE |
| LOW⚡ | tests/defaults_list/test_defaults_tree.py | 1778 | "placeholder", | CODE |
| LOW⚡ | tests/defaults_list/test_defaults_tree.py | 1781 | node=ConfigDefault(path="placeholder"), | CODE |
| LOW⚡ | tests/defaults_list/test_defaults_tree.py | 1787 | id="placeholder", | CODE |
| LOW⚡ | tests/defaults_list/test_defaults_tree.py | 1790 | "placeholder", | CODE |
| LOW⚡ | tests/defaults_list/test_defaults_tree.py | 1793 | node=ConfigDefault(path="placeholder"), | CODE |
| LOW | tests/defaults_list/test_defaults_tree.py | 1808 | node=GroupDefault(group="group1", value="placeholder"), | CODE |
| LOW | tests/defaults_list/test_defaults_tree.py | 1826 | node=GroupDefault(group="group1", value="placeholder"), | CODE |
| LOW | tests/defaults_list/test_defaults_tree.py | 3144 | node=GroupDefault(group="group1", value="placeholder"), | CODE |
| LOW | tests/defaults_list/test_defaults_tree.py | 3153 | {"group1": "placeholder", "group1/group2": None}, | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | tools/configen/conf/configen.yaml | 21 | - name: configen.samples.my_module | COMMENT |
| LOW | …ugins/hydra_ax_sweeper/tests/test_ax_sweeper_plugin.py | 21 | WARNING_FILTERS = [ | COMMENT |
| LOW | …weeper/hydra_plugins/hydra_nevergrad_sweeper/config.py | 41 | # - "CMA" very good algorithm, but may require a significant budget (> 120) | COMMENT |
| LOW | …uncher/hydra_plugins/hydra_submitit_launcher/config.py | 61 | # USR1 signal delay before timeout | COMMENT |
| LOW | …y_launcher/hydra_plugins/hydra_ray_launcher/_config.py | 221 | cluster_name: str = "default" | COMMENT |
| LOW | …pload_download/conf/hydra/launcher/custom_ray_aws.yaml | 1 | defaults: | COMMENT |
| LOW | …ion_test_tools/create_integration_test_ami_config.yaml | 41 | ray.worker.default: | COMMENT |
| LOW | website/docs/configure_hydra/app_help.md | 61 | Powered by Hydra (https://hydra.cc) | COMMENT |
| LOW | …ersioned_docs/version-0.11/configure_hydra/app_help.md | 41 | COMMENT | |
| LOW | …ure_hydra/custom_help/conf/hydra/help/my_app_help.yaml | 1 | # App name, override to match the name your app is known by | COMMENT |
| LOW | hydra/_internal/execution_policy.py | 341 | "os.spawn", | COMMENT |
| LOW | hydra/conf/hydra/hydra_help/default.yaml | 1 | # Help header. | COMMENT |
| LOW | hydra/conf/hydra/help/default.yaml | 1 | # App name, override to match the name your app is known by | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | tools/release/release.py | 386 | def set_package_versions(cfg: Config, hydra_root: str, target_version: str) -> None: | CODE |
| LOW | …/integration_test_tools/create_integration_test_ami.py | 34 | def set_up_machine(cfg: DictConfig) -> None: | CODE |
| LOW | hydra/__init__.py | 18 | __all__ = [ | CODE |
| LOW | hydra/_internal/defaults_list.py | 322 | def update_package_header(repo: IConfigRepository, node: InputDefault) -> None: | CODE |
| LOW | hydra/experimental/callback.py | 10 | logger = logging.getLogger(__name__) | CODE |
| LOW | hydra/core/global_hydra.py | 36 | def set_instance(instance: "GlobalHydra") -> None: | CODE |
| LOW | hydra/core/utils.py | 842 | def _set_job_return_handoff(error: BaseException, job_return: JobReturn) -> None: | CODE |
| LOW | hydra/core/singleton.py | 33 | def set_state(state: Any) -> None: | CODE |
| LOW | hydra/core/hydra_config.py | 14 | def set_config(self, cfg: DictConfig) -> None: | CODE |
| LOW | hydra/core/default_element.py | 108 | def set_package_header(self, package_header: str | None) -> None: | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | …dra_optuna_sweeper/tests/test_optuna_sweeper_plugin.py | 393 | # to make the test robust against the detailed implementation of the sampler. | COMMENT |
| MEDIUM | …weeper/hydra_plugins/hydra_nevergrad_sweeper/config.py | 39 | # - "OnePlusOne" extremely simple and robust, especially at low budget, but | COMMENT |
| LOW | …y_launcher/hydra_plugins/hydra_ray_launcher/_config.py | 303 | # you should just use file_mounts. Only use this if you know what you're doing! | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | …cs/version-1.0/tutorials/structured_config/5_schema.md | 58 | # In this example it comes from config.yaml | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | tools/landscape/analyze_hydra_usage.py | 1360 | CODE | |
| LOW | …a_rq_launcher/hydra_plugins/hydra_rq_launcher/_core.py | 60 | CODE | |
| LOW | plugins/hydra_ax_sweeper/tests/apps/polynomial.py | 17 | CODE | |
| LOW | …her/hydra_plugins/hydra_ray_launcher/_launcher_util.py | 81 | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | …a_sweeper/hydra_plugins/hydra_optuna_sweeper/config.py | 189 | # For example, you can use SQLite if you set 'sqlite:///example.db' | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | …her/hydra_plugins/hydra_ray_launcher/_remote_invoke.py | 3 | # This file is to be rsynced to ray cluster and invoke on the cluster. | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | .github/backlog-atlas/config.yaml | 2 | # Set done_expire_days to null to keep done items indefinitely. | COMMENT |
| LOW | hydra/_internal/defaults_list.py | 1018 | # Check if the failure is caused by relying on the old slash-containing group defaults behavior | STRING |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | hydra/plugins/completion_plugin.py | 4 | # TODO: Add tests for completion with +prefix (should suggest config groups that are not listed) | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | tests/test_overrides_parser.py | 2178 | def test_function(value: Any, expected_value: Any) -> None: | CODE |