load("@fbcode_macros//build_defs:rust_library.bzl", "rust_library")

oncall("sapling")

rust_library(
    name = "drawdag",
    srcs = glob(["src/**/*.rs"]),
    autocargo = {"cargo_toml_config": {
        "lib": {"name": "drawdag"},
        "package": {
            "authors": ["Meta Source Control Team <sourcecontrol-dev@meta.com>"],
            "description": "Parse an ASCII DAG into graph edges.",
            "homepage": "https://sapling-scm.com/docs/dev/internals/drawdag",
            "license": "MIT",
            "name": "sapling-drawdag",
            "repository": "https://github.com/facebook/sapling",
        },
    }},
    crate_root = "src/lib.rs",
    # A test inside this target is using #[should_panic], setting the backtrace
    # to false here, otherwise the test binary will try to extract the backtrace
    # and the test will fail with leak sanatizer.
    test_env = {"RUST_BACKTRACE": "0"},
    test_labels = ["tpx-rust-no-backtrace-workaround"],
)
