Add stub_shebang to py_runtime#11434
Closed
Conversation
Added a `stub_shebang` to `py_runtime` to allow users to specify a custom "shebang" expression used by the Python stub script. Motivation is to support environments where `#!/usr/bin/env python` isn't valid (ex: no `/usr/bin/python`, but there's a `/usr/bin/python3`). Closes #8685. Guided tour =========== - Added field to `PyRuntimeInfoApi` inc. default value. - Added field to `PyRuntimeInfo` provider inc. tests. - Added field to `py_runtime` Starlark rule inc tests. - Replaced static `#!/usr/bin/env python` in the stub w/ `%shebang%`. - There are a few redundancies w/r/t declaring defaults and documentation. This is because there are a few separate public APIs (ex: `PyRuntimeInfo(...)`, `py_runtime(...)`), and I want to make sure defaults appear in the generated docs. Testing Done: - `bazelisk test src/test/java/com/google/devtools/build/lib/bazel/rules/python/...` `bazelisk test src/test/java/com/google/devtools/build/lib/rules/python/...`
|
@brandjon Sorry to hand this to you, but you're the best person to route it if it's not yours to look at. |
Closed
Contributor
lberki
approved these changes
Apr 22, 2021
Member
|
Reviewed, looks good to me. lberki will merge. |
katre
pushed a commit
that referenced
this pull request
Jul 12, 2021
Added a `stub_shebang` to `py_runtime` to allow users to specify a custom "shebang" expression used by the Python stub script. Motivation is to support environments where `#!/usr/bin/env python` isn't valid (ex: no `/usr/bin/python`, but there's a `/usr/bin/python3`). Closes #8685. ### Guided tour - Added field to `PyRuntimeInfoApi` inc. default value. - Added field to `PyRuntimeInfo` provider inc. tests. - Added field to `py_runtime` Starlark rule inc tests. - Replaced static `#!/usr/bin/env python` in the stub w/ `%shebang%`. - There are a few redundancies w/r/t declaring defaults and documentation. This is because there are a few separate public APIs (ex: `PyRuntimeInfo(...)`, `py_runtime(...)`), and I want to make sure defaults appear in the generated docs. Testing Done: - `bazelisk test src/test/java/com/google/devtools/build/lib/bazel/rules/python/...` `bazelisk test src/test/java/com/google/devtools/build/lib/rules/python/...` Closes #11434. PiperOrigin-RevId: 370622012
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Added a
stub_shebangtopy_runtimeto allow users to specify a custom"shebang" expression used by the Python stub script. Motivation is to
support environments where
#!/usr/bin/env pythonisn't valid (ex:no
/usr/bin/python, but there's a/usr/bin/python3).Closes #8685.
Guided tour
PyRuntimeInfoApiinc. default value.PyRuntimeInfoprovider inc. tests.py_runtimeStarlark rule inc tests.#!/usr/bin/env pythonin the stub w/%shebang%.This is because there are a few separate public APIs (ex:
PyRuntimeInfo(...),py_runtime(...)), and I want to make sure defaultsappear in the generated docs.
Testing Done:
bazelisk test src/test/java/com/google/devtools/build/lib/bazel/rules/python/...bazelisk test src/test/java/com/google/devtools/build/lib/rules/python/...