Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

py_binary targets added to py_wheel.deps end up including the binary in the wheel. Sounds like WAI but it was surprising to me #2923

Copy link
Copy link
@dougthor42

Description

@dougthor42
Issue body actions

🐞 bug report

Affected Rule

  • py_wheel

Is this a regression?

Nope, not that I can tell at least.

Description

Adding a py_binary target as a dep to py_wheel results in both the binary's srcs being added to the wheel and the binary itself. It's this latter part that is unexpected (at least to me, haha).

Maybe I'm missing an option that causes the bazel binaries to be excluded?

🔬 Minimal Reproduction

py_binary(
    name = "foo",
    srcs = ["foo.py"],
)

py_wheel(
    ...,
    distribution = "our_tables",
    deps = [":foo"],
)
$ less bazel-bin/path/to/foo/foo-0.0.1-py3-none-any.whl | cat
Metadata-Version: 2.1
Name: our_tables
Version: 0.0.1

Archive:  bazel-bin/path/to/foo/our_tables-0.0.1-py3-none-any.whl
 Length   Method    Size  Cmpr    Date    Time   CRC-32   Name
--------  ------  ------- ---- ---------- ----- --------  ----
   24451  Defl:N     7964  67% 1980-01-01 00:00 2d00cf53  our_tables/foo
    5124  Defl:N     1787  65% 1980-01-01 00:00 4846e197  our_tables/foo.py
      91  Defl:N       86   6% 1980-01-01 00:00 4f1122ec  our_tables-0.0.3.dist-info/WHEEL
    9031  Defl:N     3390  63% 1980-01-01 00:00 e00f51c6  our_tables-0.0.3.dist-info/METADATA
     698  Defl:N      445  36% 1980-01-01 00:00 8c16618f  our_tables-0.0.3.dist-info/RECORD
--------          -------  ---                            -------
   47408            16577  65%                            5 files

It's that our_tables/foo that's strange to me. IMO it should not be included by default.

🔥 Exception or Error

N/A

🌍 Your Environment

Operating System:

gLinux

Output of bazel version:

$ bazel version
Bazelisk version: v1.20.0
Build label: 7.6.1
Build target: @@//src/main/java/com/google/devtools/build/lib/bazel:BazelServer
Build time: Mon Mar 31 17:08:56 2025 (1743440936)
Build timestamp: 1743440936
Build timestamp as int: 1743440936

Rules_python version:

1.4.1

Anything else relevant?

Metadata

Metadata

Assignees

No one assigned

    Labels

    Good first issueA good first issue for people looking to contributeA good first issue for people looking to contributepackaging

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions

      Morty Proxy This is a proxified and sanitized view of the page, visit original site.