Skip to content

pip wheel entrypoint scripts needlessly include an incorrect shebang #1055

Closed
@danny-skydio

Description

@danny-skydio

🐞 bug report

Affected Rule

install_deps / entrypoint

Is this a regression?

No

Description

The generated py_binary scripts for wheel entrypoints don't reference the current python toolchain. After being worried for a second that this would mean that the scripts would use the wrong version of python, I then remembered that it was wrapped in a py_binary, which does use the toolchain, and will listen to the stub_shebang attribute defined on a py_runtime when launching the .py file. (Shout-out to that incredibly useful attribute!)

The generation function is here:
https://github.com/bazelbuild/rules_python/blob/6bcee35fd72af6c7374318ab24aa71367e5100be/python/pip_install/tools/wheel_installer/wheel_installer.py#L106-L108

The kwarg is never set when it's used:
https://github.com/bazelbuild/rules_python/blob/6bcee35fd72af6c7374318ab24aa71367e5100be/python/pip_install/tools/wheel_installer/wheel_installer.py#L341

I'm filing this issue to hopefully save someone the same investigation time later, it's not a big deal, but was certainly confusing to me.

🔬 Minimal Reproduction

I don't think this is necessary.

🔥 Exception or Error

None! I was expecting one, but it's fine!

Metadata

Metadata

Assignees

No one assigned

    Labels

    Can Close?Will close in 30 days if there is no new activity

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions