dbt-labs/dbt-core · error

--info must parse on show

Error message

--info must parse on show

What it means

Test-only assertion in show_info_parses_and_conflicts_with_inline: `dbt show --info <arg>` must parse successfully. Fires only if the --info flag on the show command is removed or its argument definition changes incompatibly.

Solutions

  1. Restore the --info flag on ShowArgs
  2. Check the conflicts/argument definition around show --info
  3. Update the test if the flag surface intentionally changes
Defensive patterns

Strategy: validation

When it happens

Trigger: Thrown at crates/dbt-clap-core/src/lib.rs:3275 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of dbt-labs/dbt-core@0267ce9170 (2026-09-07). Data as JSON: /api/errors/8688dd46651626e2. Report an issue: GitHub.

Appendix: source

Thrown at crates/dbt-clap-core/src/lib.rs:3275

            "--write-index",
            "--write-metadata",
        ])
        .expect("hidden artifact flags must remain accepted");
        assert!(parsed.write_catalog);
        assert!(parsed.write_lineage);
        assert!(parsed.write_index);
        assert!(parsed.write_metadata);

        assert!(
            CommonArgs::try_parse_from(["dbt", "--lineage"]).is_err(),
            "--lineage is not a clap flag"
        );
    }

    #[test]
    fn show_info_parses_and_conflicts_with_inline() {
        let parsed = ShowArgs::try_parse_from(["show", "--info", "models"])
            .expect("--info must parse on show");
        assert_eq!(parsed.info.as_deref(), Some("models"));

        assert!(
            ShowArgs::try_parse_from(["show", "--info", "models", "--inline", "select 1"]).is_err(),
            "--info must conflict with --inline"
        );
        assert!(
            ShowArgs::try_parse_from(["show", "--info", "models", "--adapter", "lakecompute"])
                .is_err(),
            "--info must conflict with --adapter"
        );
    }

    #[test]
    fn manage_state_defaults_to_false() {
        let project_dir = tempfile::tempdir().unwrap();
        let common_args = CommonArgs::default();

View on GitHub (pinned to 0267ce9170)