| Commit message (Collapse) | Author | Age |
|
|
|
|
|
|
|
|
|
| |
Fixes https://github.com/bazelbuild/bazel/issues/5720
Change-Id: I4270c395029691bcc9f4a3931a4401923edf2441
Closes #5739.
PiperOrigin-RevId: 207225362
|
|
|
|
|
|
|
|
| |
There is only one argument, so this shouldn't affect Python 2.
Closes #5653.
PiperOrigin-RevId: 207200473
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The old list was, in order:
- %workspace%/tools/bazel.rc (unless --nomaster_bazelrc)
- %binary_dir%/bazel.bazelrc (unless --nomaster_bazelrc)
- system rc, /etc/bazel.bazelrc or in %ProgramData% for Windows (unless --nomaster_bazelrc)
- the first of the following gets called the "user" bazelrc
- path passed by flag --bazelrc
- %workspace%/.bazelrc
- $HOME/.bazelrc
The new list is hopefully a bit more consistent, as:
- system rc (unless --nosystem_rc)
- workspace, %workspace%/.bazelrc (unless --noworkspace_rc)
- user, $HOME/.bazelrc (unless --nohome_rc)
- command-line provided, passed as --bazelrc or nothing if the flag is absent.
This list removes two less than useful locations, duplication in the Workspace directory, and the rc next to the bazel binary. This location made sense at Google but is generally nonsensical elsewhere so we are removing it. It also stops the user local rc file from being overriden by passing in a custom file in --bazelrc.
In both old and new, --ignore_all_rc_files disables all of the above.
For a transition period, any file that you would have loaded but was not read will cause a WARNING to be printed. If you want the old file to still be read without moving its location, you can always import it into one of the new standard locations, or create a symlink.
Closes #4502, except for cleanup to remove the warning after a transition period of 1 Bazel version has passed.
RELNOTES[INC]: New bazelrc file list.
PiperOrigin-RevId: 207189212
|
|
|
|
| |
PiperOrigin-RevId: 207178336
|
|
|
|
|
| |
RELNOTES: None
PiperOrigin-RevId: 207176404
|
|
|
|
|
| |
RELNOTES: None
PiperOrigin-RevId: 207171755
|
|
|
|
|
|
| |
performance reasons.
PiperOrigin-RevId: 207171305
|
|
|
|
|
|
|
|
| |
The way documentation reads, it sounds like 'shell' format is single line (especially because the other format is called multiline).
Currently it seems like the implementation only uses new line but assuming Bazel doesn't want to promise on that, this patch updates the documentation to point that whitespace could be space, tab or newline - which mimics the documentation of ParameterFileType.SHELL_QUOTED.
RELNOTES: None.
PiperOrigin-RevId: 207142679
|
|
|
|
|
|
| |
https://github.com/bazelbuild/bazel/commit/129c3e2fd3dfdfe1cd312826988f0944bdd69236.
PiperOrigin-RevId: 207140930
|
|
|
|
|
|
|
| |
At the moment, an identity path resolver is passed. This will later be replaced by a contextual path resolver.
RELNOTES: None
PiperOrigin-RevId: 207138772
|
|
|
|
|
| |
RELNOTES: None
PiperOrigin-RevId: 207137932
|
|
|
|
|
| |
RELNOTES: None
PiperOrigin-RevId: 207134083
|
|
|
|
|
| |
RELNOTES: None
PiperOrigin-RevId: 207133488
|
|
|
|
|
|
|
| |
shrinking without tool attributes.
RELNOTES:
PiperOrigin-RevId: 207132534
|
|
|
|
|
|
|
| |
parameter.
RELNOTES: None
PiperOrigin-RevId: 207127862
|
| |
|
|
|
|
|
| |
RELNOTES: None
PiperOrigin-RevId: 207107667
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
When --trim_test_configuration is on and the only options which have changed
are from the (trimmed) TestOptions (not counting trim_test_configuration itself),
preserve the analysis cache rather than dropping it all.
This means that as long as no non-test options change, non-test rules will
not need to be reanalyzed. This also applies to test rules which were
analyzed with this configuration since the last time non-test options changed.
For example:
--test_arg=A //test (//test and its dependencies are analyzed)
--test_arg=B //test (only //test is reanalyzed)
--test_arg=A //test (no reanalysis needed)
--test_arg=A --define=Test=A //test (full reanalysis)
--test_arg=A //test (full reanalysis)
RELNOTES: None.
PiperOrigin-RevId: 207105915
|
|
|
|
| |
PiperOrigin-RevId: 207104261
|
|
|
|
|
|
|
| |
used in the function call.
RELNOTES: None
PiperOrigin-RevId: 207102812
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Internal change
END_PUBLIC
Automated rollback of commit 81a2dddbcfd4a9c7ea9c664195f2f44ae8abeb55.
*** Reason for rollback ***
fix forward
*** Original change description ***
Automated rollback of commit 75810d5910073aa7a1550bbd36544971f3c95ae1.
*** Reason for rollback ***
[]
*** Original change description ***
Remove the gen_jars output group
RELNOTES: Removed the gen_jars output group
PiperOrigin-RevId: 207099489
|
|
|
|
|
|
| |
RELNOTES[NEW]: The aquery command now supports --output=text.
PiperOrigin-RevId: 207096607
|
|
|
|
|
|
|
|
| |
Otherwise Docker will not be able to read the configuration of the current user and might fail to download containers from registries that require authentication.
Closes #5721.
PiperOrigin-RevId: 207094268
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Add support for tree artifacts (ctx.action.declare_directory(...)) in
runfiles. Before this change we would throw away the information
about the files inside a tree artifact before executing an action.
That's fine for local execution where the sandbox just copies/symlinks
a directory and doesn't care much what's inside. However, in remote
execution we actually need to upload each individual file and so
we need to be aware of all individual files not just directories.
This change makes it so that this information is made available to a
SpawnRunner via the SpawnInputExpander.
RELNOTES: None
PiperOrigin-RevId: 207091668
|
|
|
|
|
|
|
|
|
|
| |
Attempt to fix #5711, "java.util.concurrent.RejectedExecutionException: event executor terminated", by having `HttpBlobStore.close()` no-op when called more than once.
I'm rolling a patched version of bazel for us internally based on 0.15.2. Should be able to say definitively in a couple days whether or not this addresses the issue, but it seems like it should (and @buchgr agrees).
Closes #5725.
PiperOrigin-RevId: 207089681
|
|
|
|
|
|
|
|
|
| |
Java's iterator overhead is significant (2X slower than using indices), so
it's worthwhile to use indices for hot code.
Closes #5737.
PiperOrigin-RevId: 207088309
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
*** Reason for rollback ***
Breaks FDO builds, see http://b/112112125
*** Original change description ***
Remove PerActionFileCache
Instead, make ActionMetadataHandler implement the MetadataProvider interface.
This fixes an issue where an action that runs two spawns where one depends on
an output of the other was unable to get the metadata for the intermediate
output.
We don't currently have actions that do this, but we will have in a future
change (which will also implicitly act as a regression test).
PiperOrigin-RevId: 207084179
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This adds a new PrepareAnalysisPhaseFunction, which started out as a copy of
some existing code from SkyframeExecutor, BuildView, AnalysisPhaseRunner,
AnalysisUtils, and ConfigurationResolver, which was then modified to work
inside Skyframe.
Most of our tests already work with the new code, except for some of the tests
related to configuration trimming in combination with dependency cycles. The
reason for this is that we can only recover from dependency cycles at the end
of a Skyframe invocation, but never inside a Skyframe invocation. The new code
therefore cannot return partial results like the old code.
This seems to make null builds a bit faster. In my testing, I saw null build
times for a single test target go from ~50ms to ~40ms. This is probably due to
slightly better caching - it seems that computing the configuration transitions
and top-level targets is non-negligible, even if there's only a single
top-level configuration for a single top-level target.
This might be an even bigger win if there are a lot of top-level targets and
configurations.
PiperOrigin-RevId: 207083192
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
According to JMH using `ImmutableList.of` or `Arrays.asList` is ~2X faster
than using existing approach of creating an empty `ArrayList` with expected
size and populating it using `add` method. This is most likely due to extra
range and capacity checks.
Returning `ImmutableList` instead of `ArrayList` avoids the need to copy it
again in order to create a `SkylarkTuple`.
These changes speed up the function by ~3X.
Closes #5736.
PiperOrigin-RevId: 207079605
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
According to JMH and JIT assembly generated for iterators and index
accesses, iterator methods like `hasNext` and `next` are not optimized
away and result in 3-4X slower execution.
Not using an iterator reduces Buck parse time for FB's internal Android
apps by 7%+.
Closes #5735.
PiperOrigin-RevId: 207073078
|
|
|
|
|
|
|
| |
through JavaInfo, instead of returning them also through ConfiguredTarget. Since these providers can not be found in ConfiguredTarget anymore they have to be retrieved from JavaInfo instead.
RELNOTES: None.
PiperOrigin-RevId: 207068520
|
|
|
|
|
|
|
|
| |
In some cases, we may be reporting a lot of actions, and this has shown up as a hotspot in our profiling. LinkedHashSet should be just as fast for insertion, keep order as Deque, and be faster for removal.
There are a couple of more aggressive steps we can take if this doesn't help.
PiperOrigin-RevId: 207064758
|
|
|
|
|
|
|
|
|
| |
We continue to support the jvm property -Dbazel.DigestFunction, for backwards compatibility, but this will go away. The startup-option is marked experimental for now as we iron out issues. (note: leaving this out of release notes until the experimental tag is removed)
As part of this refactor, the default constructor calls for FileSystem and derived classes will now use this default. This should remove the need for constructors that accept custom hash functions.
RELNOTES: None.
PiperOrigin-RevId: 207035217
|
|
|
|
|
|
|
| |
name>" to "@".
RELNOTES: None
PiperOrigin-RevId: 207010178
|
|
|
|
|
|
|
|
|
| |
--experimental_enable_tools_defaults_package flipped to
false
RELNOTES:none
PiperOrigin-RevId: 206982558
|
|
|
|
|
|
|
| |
If the output artifact is backed by a different file system then we need to use that file system later.
RELNOTES: None
PiperOrigin-RevId: 206981369
|
|
|
|
|
| |
Specifically: mention trimming less and rule transitions more.
PiperOrigin-RevId: 206980126
|
|
|
|
|
|
|
| |
Previously, two successive builds of targets A and B would fail if the two sets had conflicting actions. Now, only fail such builds if the targets from the current build has action conflicts.
RELNOTES: None
PiperOrigin-RevId: 206974011
|
|
|
|
|
|
|
|
| |
out of it.
Setting up the package cache is necessary for proper loading. In the future, BuildConfiguration.Option options will be targets that need to be loaded in order to be parsed. Thus, we will need to be able to do loading before BuildConfiguration.Options are parsed.
PiperOrigin-RevId: 206964473
|
|
|
|
|
|
|
|
| |
Since builtin include directories affect validation, they have to be part of the
action key.
RELNOTES: None.
PiperOrigin-RevId: 206960988
|
|
|
|
|
|
|
|
|
|
|
| |
logging is turned off.
WARNINGs, ERRORs, and simple USER messages get printed to stderr when debug logging is disabled, which it is by default. However, before this change, these were lost if they were sent to BAZEL_LOG before Bazel knew whether or not debug logging was requested. This fixes that by maintaining separate buffers, and dumping only the appropriate one to stderr once we know whether or not it is wanted.
Maintaining the separate buffer also allows for it to be easy to, in the future, allow logging to multiple places, if we are logging details to a file and user-level details to stderr, for example.
RELNOTES: None.
PiperOrigin-RevId: 206960686
|
|
|
|
| |
PiperOrigin-RevId: 206960449
|
|
|
|
|
| |
RELNOTES: None
PiperOrigin-RevId: 206960066
|
|
|
|
|
|
|
|
|
| |
Keep the usage of Streams in place.
Keep the test in place, updated it with the new expected values.
Only removed the neverlink filter.
RELNOTES: none.
PiperOrigin-RevId: 206951071
|
|
|
|
|
|
|
|
|
|
|
| |
This raises the minimum version with which xcode-locator must be built
to Xcode 7.
Changes suggested by davg@ during the review of another change to the
xcode-locator.
RELNOTES: None.
PiperOrigin-RevId: 206949696
|
|
|
|
|
| |
RELNOTES: None
PiperOrigin-RevId: 206949407
|
|
|
|
|
|
|
| |
formatted apk
RELNOTES: None
PiperOrigin-RevId: 206945173
|
|
|
|
|
|
| |
Fixes #5601
PiperOrigin-RevId: 206942639
|
|
|
|
|
|
|
|
|
|
|
| |
This change comes as a preparation for using gcov for Bazel C++ coverage
instead of lcov.
See documentation of gcov intermediate format at https://gcc.gnu.org/onlinedocs/gcc/Invoking-Gcov.html#Invoking-Gcov
under --intermediate-format.
Change-Id: I6cd2df8b3a6611b187a2b0c161b14388413bc670
PiperOrigin-RevId: 206940660
|
|
|
|
|
|
| |
tools/buils_defs/cc/BUILD.
PiperOrigin-RevId: 206939687
|