I think the idea of stuffing everything on a Distribution doesn't really make sense anymore. The rough roadmap for dowsing 1.0 is:
>>> metadata.declared.packages.provenance
[
(["find:"], source.SETUP_PY, "setup.py"),
]
>>> metadata.interpreted.packages.value
["frozenlist"]
>>> metadata.interpreted.packages.provenance
[
(["frozenlist"], source.SETUP_PY, "setup.py"),
]
>>> metadata.interpreted.source_map_globs.value # for subdir_glob in starlark, potentially
[
(subdir="", dir="frozenlist", globs=("*.py", "*.so")),
]
# or
>>> metadata.interpreted.name.provenance
[
("foo", source.PEP_621, "pyproject.toml"),
]