| Commit message (Collapse) | Author | Age |
|
|
|
|
| |
RELNOTES: None
PiperOrigin-RevId: 172801656
|
|
|
|
|
|
|
|
|
| |
If bazel is asked to only load target, but not perform an analysis
phase, correctly report this as the cause why the obtained targets wer
never configured.
Change-Id: Ib630a6dc1b955b810a6cc40254c0ae746e2eca1e
PiperOrigin-RevId: 172787777
|
|
|
|
|
|
|
|
| |
This works better with UnionFileSystem, as (eg.) different mapped file systems might not agree on whether they are read-only.
No actual code changes have been made that actually uses this argument, so this should be a behaviour no-op.
PiperOrigin-RevId: 172782759
|
|
|
|
|
|
| |
The former is *technically* more formally correct, but other debuggers (VS Code and V8, among others) already use the term "scope" to refer to the same concept so aligning with those existing debuggers has value.
PiperOrigin-RevId: 172778821
|
|
|
|
|
|
|
|
|
|
|
| |
This provides a composition-based alternative to the existing inheritance-based
testing style. The inheritance style has been showing its age/has become quite
cumbersome when multiple codecs are in the same class or codecs are colocated
with their encoded class. This will hopefully get rid of some friction when
adding new codecs.
RELNOTES: None
PiperOrigin-RevId: 172778555
|
|
|
|
|
|
|
|
|
| |
This is also an example of the versatility of dynamic configurations: this feature
only requires changes to rules/python/...
Issue #3871
PiperOrigin-RevId: 172775001
|
|
|
|
|
|
| |
Futures.dereference is being deprecated and deleted, because it has a race condition where cancellation is not propagated.
PiperOrigin-RevId: 172748120
|
|
|
|
|
|
|
|
|
|
| |
Now that the experimental_ui is enabled by default in commit
784bb52613feb484221c3aa6756de, we do not need to enable it in the
(recommended) bazelrc file anymore. While there, also move the default
number of actions shown in the experimental_ui to the flag default.
Change-Id: I74673a0d677b6d832c9fb5e2983f97c0dcbc44e4
PiperOrigin-RevId: 172736977
|
|
|
|
|
|
|
|
|
| |
toolchain identifier.
This is necessary because we don't want BuildConfiguration to depend on BUILD and CROSSTOOL files anymore and this is possible because the toolchain ID was conceived as a unique identifier for the configuration in the build event stream, which it isn't anyway, and this way it's at least more human-readable.
RELNOTES: None.
PiperOrigin-RevId: 172725386
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
In this commit:
- fix the Windows JNI library to only use UTF-16
strings
Converting between multi-byte strings (UTF-8) and
wstrings (UTF-16) always carries the risk of
incorrectly handling the strings. It also takes
time, even if not much.
Not converting the strings but using the raw Java
strings (which are in fact UTF-16 strings)
simplifies the code and allows using non-ASCII
paths (at least in the JNI module, even if Bazel
as a whole doesn't support non-ASCII characters).
Change-Id: I827fbe92a1bbefac049a1e34ac1738c965ed2e9c
PiperOrigin-RevId: 172715277
|
|
|
|
|
|
|
|
|
|
|
| |
AppleConfiguration.Loader.
Fixes #3424.
RELNOTES[INC]: Selecting on "xcode_version" and
"{ios,tvos,macos,watchos}_sdk_version" is not supported anymore. What was config_setting(values={"$FOO_version": $VALUE}) is now config_setting(flag_values={"@bazel_tools//tools/osx:$FOO_version_flag": $VALUE}).
PiperOrigin-RevId: 172714477
|
|
|
|
|
|
|
|
|
| |
external repo dependencies.
This fixes https://github.com/cgrushko/proto_library/issues/4.
RELNOTES: [Bazel] {java,cc}_proto_library now look for dependencies in @com_google_protobuf, instead of in @com_google_protobuf_$LANG
PiperOrigin-RevId: 172685722
|
|
|
|
|
|
| |
accurate results. Some refactoring done to get custom query code out of BuildView and into resolvers.
PiperOrigin-RevId: 172647838
|
|
|
|
| |
PiperOrigin-RevId: 172639055
|
|
|
|
|
|
| |
general interface.
PiperOrigin-RevId: 172606623
|
|
|
|
|
|
|
|
| |
false and make the option a no-op.
RELNOTES[INC]: C++ toolchain identifiers are not in the name of the output directory anymore.
PiperOrigin-RevId: 172594237
|
|
|
|
|
|
|
| |
Builds using c++-module-codegen actions stopped working after https://github.com/bazelbuild/bazel/commit/5518ce1f0d9a5a12dbf54ba3a6bc2e10d1cae979. This cl fixes that.
RELNOTES: None
PiperOrigin-RevId: 172587344
|
|
|
|
| |
PiperOrigin-RevId: 172569624
|
|
|
|
|
|
|
|
|
|
|
| |
This adds two dump command, bazel dump --rules and bazel dump --skylark_memory.
dump --rules outputs a summary of the count, action count, and memory consumption of each rule and aspect class.
dump --skylark_memory outputs a pprof-compatible file with all Skylark analysis allocations. Users can then use pprof as per normal to analyse their builds.
RELNOTES: Add memory profiler.
PiperOrigin-RevId: 172558600
|
|
|
|
|
|
|
| |
(possibly empty) set of SpawnResults created during execution of the Action.
RELNOTES: None.
PiperOrigin-RevId: 172529328
|
|
|
|
|
|
|
|
|
| |
It was added as a potential fix for --config (an expansion flag with values), but this would have required forcing the parser to know the config's expansions at parsing time, which is not currently possible. Instead, we will use the new addition of option-location tracking to make sure we expand options at a the correct place, even if the expansion is triggered after the fact.
This is mostly a straight forward undoing of https://github.com/bazelbuild/bazel/commit/7c7255ec8d6da20526c2c4078c57aadaf3dd3612, except where the context has changed. Notably, implicit requirements are effectively treated like expansion flags, so special casing in OptionDescription could be removed.
RELNOTES: None.
PiperOrigin-RevId: 172514997
|
|
|
|
|
|
|
| |
Also adds a method which can be used to tell if this behavior actually applied,
for more performance-sensitive users.
PiperOrigin-RevId: 172512011
|
|
|
|
|
|
|
| |
Note that cc_toolchain_suite is not changed this way, but that rule doesn't currently serve as a proxy for cc_toolchain (unlike java_runtime_suite for java_runtime), so that's OK.
RELNOTES: None.
PiperOrigin-RevId: 172502279
|
|
|
|
|
|
|
| |
files.
RELNOTES: None.
PiperOrigin-RevId: 172485548
|
|
|
|
|
|
|
| |
ShellQuotedParamsFilePreProcessor. This covers all of the tools packaged in the ResourceProcessorBusyBox.
RELNOTES: None.
PiperOrigin-RevId: 172485486
|
| |
|
|
|
|
|
|
|
|
| |
Adds a legacy flag so clients can continue to use both
experimental_auto_cpu_environment_group and auto_cpu_environment_group until
uses can be cleaned up.
PiperOrigin-RevId: 172470616
|
|
|
|
|
|
|
|
|
|
|
|
| |
In cmd.exe it's not enough to `cd` into a
directory to change the shell's current working
directory: you also have to change to the right
drive.
Fixes https://github.com/bazelbuild/bazel/issues/3906
Change-Id: I4dd1a17e8b6b4a0db8fb7a56239ed78de3efae95
PiperOrigin-RevId: 172437822
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This means we no longer keep large action inputs or outputs in memory
during upload.
I adjusted the SimpleBlogStore interface to require clients to pass in
the InputStream length. That allows us to always set Content-length on
uploads. It's polite to do so, so that the server may, e.g.,
preallocate space for the blob.
Fixes https://github.com/bazelbuild/bazel/issues/3250.
Change-Id: I944c9dbc35fa2fa80dce523b0133ea9757bb3973
PiperOrigin-RevId: 172433522
|
|
|
|
|
| |
RELNOTES: Enable experimental UI by default.
PiperOrigin-RevId: 172432464
|
|
|
|
|
|
|
|
|
|
| |
ctx.fragments.apple .
Progress towards #3424.
RELNOTES[INC]: the target_apple_env and apple_host_system_env methods on ctx.fragments.apple are not supported anymore. The same information is accessible through apple_common.target_apple_env and apple_common.apple_host_system_env . They need the Xcode configuration as an argument, which can be obtained by declaring an implicit dependency on it (i.e. attr.label(default=Label("@bazel_tools//tools/osx:current_xcode_config")) and then calling e.g. apple_common.apple_host_system_env(ctx.attr._xcode_config[apple_common.XcodeVersionConfig]).
PiperOrigin-RevId: 172430475
|
|
|
|
|
|
|
|
| |
Even if the test action produced no output, which it really shouldn't, Bazel should create an empty test.log file.
TESTED=unit tests
RELNOTES: Fixes #3834
PiperOrigin-RevId: 172412615
|
|
|
|
|
|
|
|
| |
We should only fall back if a remote execution error occurred, not if the command itself failed.
TESTED=better unit tests
RELNOTES: None
PiperOrigin-RevId: 172406687
|
|
|
|
|
| |
RELNOTES: None.
PiperOrigin-RevId: 172394552
|
|
|
|
|
|
|
| |
in RuleErrorConsumers
RELNOTES: None.
PiperOrigin-RevId: 172387755
|
|
|
|
|
|
|
|
|
| |
An option has precedence over previous options at the same enum-valued priority. Track its placement in this ordering explicitly.
This will allow after-the-fact expansion of expansion options such that they correctly take precedence or not compared to other mentions of the same flag. This is needed to fix --config's expansion.
RELNOTES: None.
PiperOrigin-RevId: 172367996
|
|
|
|
|
|
|
|
|
|
|
|
| |
Cuts back a lot of unnecessary copying. All construction is funneled through copyOf and
wrapUnsafe. copyOf is the traditional construction mechanism, taking defensive copies of
the input and determining if GlobList information needs to be retained. wrapUnsafe takes
full ownership of the supplied ArrayList, allowing us to skip a lot of copies in trusted
situations. This is particularly useful for common built in functions which return a list,
range() being one common example.
RELNOTES: None
PiperOrigin-RevId: 172361367
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This was rolled back due to Tensorflow breakage but the patch I exported to gerrit (https://bazel-review.googlesource.com/c/bazel/+/18590) passed Tensorflow (https://ci.bazel.io/job/bazel/job/presubmit/52/Downstream_projects/). Confirmed with jcater@ that the "newly failing" projects in the Global Tests are known issues. I think we can check this in now.
Additionally I had attempted to reproduce any tensorflow issues with this by building and testing TensorFlow locally with this patch, and all tests which passed with the released bazel had also passed with this patch.
================= Original change description ==========================
Reinstate idleness checks where the server self-terminates when it's idle and there is either too much memory pressure or the workspace directory is gone.
Arguably, it should kill itself when the workspace directory is gone regardless of whether it's idle or not, but let's first get us back to a known good state, then we can think about improvements.
RELNOTES: None.
PiperOrigin-RevId: 172361085
|
|
|
|
|
|
|
| |
older than 3.14-rc1 (2014-02-02).
RELNOTES: N/A
PiperOrigin-RevId: 172356826
|
|
|
|
|
|
|
|
|
|
|
| |
For tools that wrap Bazel in some way, the original way that the tool was invoked can be a useful piece of information to track when logging what Bazel did and why.
In order to output this information in the same way that Bazel outputs its command lines, we accept --tool_command_line in the structure command line format that Bazel uses in the BEP. These structured command lines are protos that we expect as a base64 encoded byte array. For simple scripts that wish to use this feature without compiling the proto, we will also accept any old string (that cannot be interpreted as a base64 encoding) as a single "chunk" in a structured command line.
This is experimental for now and users should not get attached to the format. We will remove the experimental_ prefix when it is stable.
RELNOTES: None.
PiperOrigin-RevId: 172341216
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Every build and test action that creates a Spawn
will now have platform-specific environment
variables for temp directories:
- on Windows: TMP and TEMP
- on Linux/Darwin: TMPDIR
This is particularly important on Windows where
e.g. Java programs cannot create temp directories
unless there's a valid TMP or TEMP environment
variable set.
Fixes:
- https://github.com/bazelbuild/bazel/issues/1590
- https://github.com/bazelbuild/bazel/issues/2349
- https://github.com/bazelbuild/bazel/issues/2870
Change-Id: Ib758307daf6b3a51b0f71ae5e65e5bb564dad643
PiperOrigin-RevId: 172326371
|
|
|
|
|
|
|
|
|
|
| |
- Delete "infinite" loop that always ran once.
- Remove erroneous comment about resolving symlinks. This hasn't been
true since 58ee85afcab07374dabc5493c780cbe3369b644f ("Don't follow
symlink when looking for python module space")
Change-Id: Ibfaddc3aa2b3f89b180c74f86796c0d39f4092d3
PiperOrigin-RevId: 172321824
|
|
|
|
|
|
| |
--crosstool_top to find the crosstool package.
PiperOrigin-RevId: 172320513
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
If we receive an event indicating that the build is over, we first
post that event and then clear up all pending event by stating that
their prerequisite event was aborted (which we can safely assert, as
we know we will not process any further events).
Now, if a build is aborted (e.g., user interruption) before the build
starting event is generated, the streamer can receive a build-finished
event while still having an event (e.g., the raw command line) blocked
on the build-starting event. So the canonical order of clearing the stream
would send a build-finished event before the build-starting event, which
can be confusing to consumers of the stream. Therefore, if have to generate
an artificial aborted build-starting event, do so first (including clearing
the events blocked on the build-starting event) and only afterwards post
the build-finished event in the stream.
Change-Id: Ib33f16f74b7bee7a963df94bbcad7a56db9f07e3
PiperOrigin-RevId: 172305114
|
|
|
|
|
|
|
|
|
|
| |
There is a conceptual difference between the (maybe unsuccessful) completion
of a top-level target and a label as the root cause for a failure (i.e., a
missing source file). Indicate that difference as such, by having a separate
message for failures associated with an unconfigured label.
Change-Id: I3f2e20d4dc85782eb11b104a7baf089e66d972e7
PiperOrigin-RevId: 172299938
|
|
|
|
|
|
|
|
|
| |
opposed to only through ctx.fragments.apple)
Progress towards #3424.
RELNOTES: None.
PiperOrigin-RevId: 172299240
|
|
|
|
|
|
| |
TESTED=added remote test
RELNOTES: Fixes #2574
PiperOrigin-RevId: 172294781
|
|
|
|
| |
PiperOrigin-RevId: 172199420
|
|
|
|
|
|
|
| |
This will make it easier to pass only error-handling functionality into support classes.
RELNOTES: None.
PiperOrigin-RevId: 172148072
|
|
|
|
|
| |
RELNOTES: None
PiperOrigin-RevId: 172133468
|