Skip to content

bmad-loop-setup docs invoke PEP 723 scripts with python3; merge-config.py fails without uv run #259

Description

@jmsundar

Summary

bmad-loop-setup documents its helper scripts as python3 ./scripts/<name>.py …, but merge-config.py is a PEP 723 script with an inline pyyaml dependency. Under bare python3 it exits with an error; it only works via uv run.

Environment

  • bmad-loop 0.9.0, macOS, uv-managed Python

Repro

$ python3 ./scripts/merge-config.py --help
Error: pyyaml is required (PEP 723 dependency)

$ uv run ./scripts/merge-config.py --help
usage: merge-config.py ...   # works — uv provisions the inline deps

merge-config.py header:

# /// script
# requires-python = ">=3.9"
# dependencies = ["pyyaml"]
# ///

merge-help-csv.py has no third-party deps, so it runs fine under python3 — which masks the inconsistency across the two documented commands.

Suggested fix

Document/use uv run for the PEP 723 scripts (BMAD's own resolve_config.py header already notes BMAD is "standardizing on uv run"), or drop the pyyaml dependency in favor of the stdlib.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions