bazel-contrib / bazel-contrib/rules_python
doc how to access entry points / bin / scripts from wheels
- Dominant language
- Starlark
- Stars
- 688
- Forks
- 721
- Avg merge
- 15h 7m
- Merged PRs (30d)
- 76
Description
In a non-bazel venv, distributions make executables available by putting them in `$venv/bin`, which gets added to PATH. In older versions of rules python, py_binary's were generated for these. It isn't obvious how to do similar in the latest versions.
I think the entry-points doc is the relevant part? https://rules-python.readthedocs.io/en/latest/pypi/use.html#entry-points
I suspect the term "entry point", while correct, is too jargon. In [this Slack post](https://bazelbuild.slack.com/archives/CA306CEV6/p1749710911117809), the user described it more in terms of "I want to run a binary from the package".
I'd suggest rephrasing the docs to be use-case oriented in the user's terms, e.g.
* I want to run a binary from a wheel in e.g. `genrule(cmd="$(location )")`
* I want to run a binary from a wheel from another program
* I want a binary to be available on PATH so I can run it like in a normal venv.
Maybe a table that maps non-bazel idioms to bazel idioms would be helpful?
Contributor guide
Assessment
This issue has not been assessed yet.