-
Notifications
You must be signed in to change notification settings - Fork 4k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
bazel run: no longer requires Bash for simple case #8241
Closed
Closed
Conversation
This file contains 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
laszlocsomor
force-pushed
the
bashless-bazel-run
branch
from
May 6, 2019 09:04
5a7ae73
to
af4aa0d
Compare
laszlocsomor
changed the title
bazel run: no longer requires Bash for simple case
WIP: bazel run: no longer requires Bash for simple case
May 6, 2019
This flag enables Bash-less "bazel run" for simple cases (no `--run_under`, no `--script_path`). When enabled, "bazel run //foo:bin" no longer requires Bash, and works with `--shell_executable=""`. Bash is still required with --run_under="foo" and with --script_path=<path>. Fixes bazelbuild#8229 See bazelbuild#8240 Change-Id: I36b9951674bf8651216178d6b34f28a496e724b9
laszlocsomor
force-pushed
the
bashless-bazel-run
branch
from
May 6, 2019 09:12
af4aa0d
to
b769f31
Compare
Change-Id: I93c26e6d782ed7bb32d59e4ff52329ecd81106e3
laszlocsomor
changed the title
WIP: bazel run: no longer requires Bash for simple case
bazel run: no longer requires Bash for simple case
May 8, 2019
meteorcloudy
approved these changes
May 8, 2019
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Very cool!
laszlocsomor
added a commit
to laszlocsomor/bazel
that referenced
this pull request
May 10, 2019
To "bazel run" a binary, the RunCommand creates an ExecRequest and sends it to the Bazel client, which then fulfills the request. In PR bazelbuild#8241, RunCommand merged all command line arguments and added that to the request as a single argv entry. The client uses the first argv element as the executable, but if all arguments are joined into one string then argv0 contains the whole argument vector as a single string. Unfortunately the test didn't catch this because it didn't attempt passing any arguments. Fixes bazelbuild#8229 See bazelbuild#8240
bazel-io
pushed a commit
that referenced
this pull request
May 10, 2019
To "bazel run" a binary, the RunCommand creates an ExecRequest and sends it to the Bazel client, which then runs the binary as the client's subprocess. In PR #8241, RunCommand merged all command line arguments and added that to the request as a single argv entry. The client uses the first argv element as the executable, but if all arguments are joined into one string then argv0 contains the whole argument vector as a single string. Unfortunately the test didn't catch this because it didn't attempt passing any arguments. Fixes #8229 See #8240 Closes #8287. PiperOrigin-RevId: 247590904
irengrig
pushed a commit
to irengrig/bazel
that referenced
this pull request
Jun 18, 2019
To "bazel run" a binary, the RunCommand creates an ExecRequest and sends it to the Bazel client, which then runs the binary as the client's subprocess. In PR bazelbuild#8241, RunCommand merged all command line arguments and added that to the request as a single argv entry. The client uses the first argv element as the executable, but if all arguments are joined into one string then argv0 contains the whole argument vector as a single string. Unfortunately the test didn't catch this because it didn't attempt passing any arguments. Fixes bazelbuild#8229 See bazelbuild#8240 Closes bazelbuild#8287. PiperOrigin-RevId: 247590904
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.
Windows: add --incompatible_bashless_run_command
This flag enables Bash-less "bazel run" for simple
cases (no
--run_under
, no--script_path
).When enabled, "bazel run //foo:bin" no longer
requires Bash, and works with
--shell_executable=""
.Bash is still required with
--run_under="foo"
and with
--script_path=<path>
.Fixes #8229
See #8240