| Commit message (Collapse) | Author | Age |
... | |
|
|
|
|
|
|
| |
Some flags are relatively immune to repeated mentions, since only the last mention ends up mattering, but in some cases, the values are accumulated. Expanding the same config twice may lead to surprising results, so provide a friendly warning.
RELNOTES: None
PiperOrigin-RevId: 176422758
|
|
|
|
|
| |
RELNOTES: none
PiperOrigin-RevId: 176405273
|
|
|
|
|
|
|
| |
Configs are recursive, but let's be reasonable. If there's an absurdly long list of configs inheritance, warn about it. It is probably unnecessary, and might very well be unintentional and surprising to the user.
RELNOTES: None.
PiperOrigin-RevId: 176405183
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The `set` constructor used to be deprecated, but it was still possible to use
it by providing --incompatible_disallow_set_constructor=false.
It's still allowed to have `set` in parts of the code that are not executed, this will be deprecated later.
RELNOTES[INC]: The deprecated `set` constructor is removed, along with the
migration flag --incompatible_disallow_set_constructor. It is still temporarily
allowed to refer to `set` from within unexecuted code.
PiperOrigin-RevId: 176375859
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
--expand_configs_in_place.
--config options were expanded in a fix-point expansion, where in practice, the flags that --config values expanded to ended up between the normal bazelrc options and the command line's explicit options. Since the options parser has an order-based priority scheme and it accepts multiple mentions of a single-valued option, this conflicts with users' expectations of being able to override these config expansions by using the order in which they are mentioned.
This change makes it possible to expand the config values defined in your bazelrc (or blazerc) files to occur in-place: --stuff --config=something --laterstuff will interpret the options that --config=something expands to as if they had been mentioned explicitly between --stuff and --laterstuff.
In order to not break users relying on complex flag combinations to configure their builds, this behavior will not yet be turned on by default. Instead, use --expand_configs_in_place as a startup flag to test this feature. --announce_rc may be helpful for debugging any differences between the fixed point and in-place expansions. Once you've debugged your problems, add "startup --expand_configs_in_place" to your blazerc to stick to the new behavior.
RELNOTES: Use --expand_configs_in_place as a startup argument to change the order in which --config expansions are interpreted.
PiperOrigin-RevId: 176371289
|
|
|
|
|
|
|
|
|
| |
repository.
Part of #4056.
Change-Id: I4b8e41660b0a135e23aa572bbfeea27a7cda0581
PiperOrigin-RevId: 176362103
|
|
|
|
|
|
|
|
|
|
| |
Fix for #4035
@laszlocsomor
Closes #4110.
PiperOrigin-RevId: 176346381
|
|
|
|
|
|
|
|
| |
platform-based toolchain selection to match legacy behavior.
This is a change over previous behavior in the platform case, which was to throw if either of those attributes is not present. The default_toolchain field in CROSSTOOL gives a mapping from cc_toolchain.cpu values to toolchains - this map should be used with compiler and libc are not specified, as is currently the non-platforms, legacy behavior.
PiperOrigin-RevId: 176246316
|
|
|
|
|
|
|
|
| |
Designed by
https://docs.google.com/document/d/1hK2mWl3TYNL9oJYX_S020TKkXZvBw1aBoYERvTHVyfg/edit#
Change-Id: I025adf555a9827c55a90acc3f254cbd105e224c6
PiperOrigin-RevId: 176114968
|
|
|
|
|
|
| |
RELNOTES: None.
PiperOrigin-RevId: 176109497
|
|
|
|
|
|
|
| |
https://github.com/bazelbuild/bazel/commit/75d8fe1d347b45f4dd808a76c3a73b24f9728284.
RELNOTES: None
PiperOrigin-RevId: 176107565
|
|
|
|
|
| |
RELNOTES: None
PiperOrigin-RevId: 176047128
|
|
|
|
|
| |
RELNOTES: None.
PiperOrigin-RevId: 176025413
|
|
|
|
|
|
| |
Fixes #1479.
PiperOrigin-RevId: 175979487
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Also, add a fake databinding processor target.
Bazel users will need to do something like this:
# WORKSPACE
local_repository(
name = "databinding",
path = "./databinding",
)
bind(
name = "databinding_annotation_processor",
actual = "@databinding//:annotation_processor",
)
# databinding/BUILD
java_plugin(
name = "annotation_processor",
...
)
...
https://github.com/bazelbuild/bazel/issues/2694
RELNOTES: None
PiperOrigin-RevId: 175975110
|
|
|
|
|
|
|
| |
This is not used by ASwB, and it also doesn't make sense to live in AndroidBinary since android_binary does nothing with it's data deps and they should be removed (b/69371443).
RELNOTES: None
PiperOrigin-RevId: 175877850
|
|
|
|
|
| |
RELNOTES: none
PiperOrigin-RevId: 175866310
|
|
|
|
|
|
|
| |
Also, fix it to not rely on the Android split transition being disabled.
RELNOTES: None
PiperOrigin-RevId: 175861670
|
|
|
|
|
| |
RELNOTES: None
PiperOrigin-RevId: 175858467
|
|
|
|
| |
PiperOrigin-RevId: 175832159
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
*** Reason for rollback ***
Causing Bazel server to crash when running bazel clean --expunge
https://github.com/bazelbuild/bazel/issues/3956
*** Original change description ***
Delayed rollforward of commit 8fb311b4dced234b2f799c16c7d08148619f4087.
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 Tensor...
***
ROLLBACK_OF=172361085
RELNOTES:None
PiperOrigin-RevId: 175821671
|
|
|
|
|
|
|
|
|
|
|
| |
does not depend on AutoCloseable, as it is not available before API 19.
This CL includes the following:
1. A type inference algorithm based on ASM. It relies on the stack map frames to compute type information at the entry of basic blocks.
2. The type inference is used to infer the types of the resources to be closed. Then for each concrete resource type, we specialize the synthetic $closeResource method to $closeResource(Throwable, <concrete resource type>).
RELNOTES: None
PiperOrigin-RevId: 175731437
|
|
|
|
| |
PiperOrigin-RevId: 175682806
|
|
|
|
|
|
|
|
|
|
|
| |
Quote empty args in the command argument vector
otherwise the command's executable would not
recognize them as arguments.
Fixes https://github.com/bazelbuild/bazel/issues/3973
Change-Id: Iccfb59e75c748247c8df7d52fb8cf4227eae6fa7
PiperOrigin-RevId: 175672201
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
*** Reason for rollback ***
Breaks Google-internal targets, sadly.
*** Original change description ***
Ban middlemen from runfiles artifacts.
Previous changes have removed all middlemen from runfiles
artifacts. This CL locks it down and removes various now-redundant
*WithoutMiddlemen() methods from Runfiles.
I put a check for middlemen in ConflictChecker.put, which should be a
chokepoint for runfiles artifacts. It's unfortunate we can't detect
middlemen earlier than execution, but I can't see a way to efficiently
check every runfiles artifact earlier.
Cha...
***
RELNOTES: None.
PiperOrigin-RevId: 175650018
|
|
|
|
|
|
|
| |
GITHUB: #903
RELNOTES: None.
PiperOrigin-RevId: 175600267
|
|
|
|
|
|
| |
configuration.
PiperOrigin-RevId: 175532550
|
|
|
|
| |
PiperOrigin-RevId: 175531318
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
memory-saving non-incremental mode independent of --batch and --discard_analysis_cache.
A command run with --nokeep_incrementality_data will discard data that would be needed for incremental builds. Subsequent commands can be sent to the same server, but they will not get the benefit of incrementality from this command. However, if --keep_incrementality_data is specified on a subsequent command, the commands after that will get the benefits of incrementality.
There are two benefits to not being dependent on --batch. First, this allows Bazel servers to be run in extreme memory-saving mode without the startup penalties (JVM startup, JITting) that --batch execution imposes. Second, this allows Bazel developers to inspect the state of a Bazel server after an extreme memory-saving build.
In order to avoid discarding data unnecessarily (for instance, on a "bazel info used-heap-size-after-gc" or "bazel dump --skyframe=summary") the actual resetting of the graph is done lazily, right before its use in SequencedSkyframeExecutor#sync. This is morally a partial rollback of https://github.com/bazelbuild/bazel/commit/98cd82cbdcac7c48164a611c5a9aa8fc2f1720ef.
For now, our tests specify all of the flags. After this change sticks, I plan to get rid of the --batch flag from these tests, which should allow for some clean-ups. Eventually --batch and --discard_analysis_cache may not imply that we don't keep incremental state: we can require that it be specified explicitly.
PiperOrigin-RevId: 175335075
|
|
|
|
|
|
|
|
|
|
|
| |
It was added long ago, for reasons which are no longer relevant or
useful.
Also remove the build variable it controlled ("skip_mostly_static")
from CROSSTOOL files.
RELNOTES: None.
PiperOrigin-RevId: 175325225
|
|
|
|
|
|
|
|
|
|
| |
Also changed truth.SubjectFactory to truth.Subject.Factory (plain renaming) and use method reference instead of anonymous class to create the factory when applicable.
FailureMetadata, an opaque object to its users, is introduced to replace FailureStrategy in in custom Subject in order to resolve some existing flaws of FailureStrategy as well as enable new features to be added to Truth.
New API is available in Truth-0.36, if there is a build/pom.xml, it's also updated to use this version.
PiperOrigin-RevId: 175308179
|
|
|
|
|
|
|
| |
Accept warnings specified by flag. This flag will cause a warning to be printed like a standard Option deprecation warning or any other warning from options parsing. This can be used to deprecate definitions of config expansion or bazelrc files. This should not be used to deprecate internal option specifications.
RELNOTES: None.
PiperOrigin-RevId: 175231963
|
|
|
|
|
|
|
|
|
|
|
| |
Reorganize the BlazeOptionHandler to make it easy to exchange out how the config options are expanded using the definitions in the blazerc.
Also change the getOptionsMap call to actually structure the rc options in the order that we parse them: we expand them in command order (for the test command, first add all "common" options, then "build," then "test") and then within each command, we expand the options in the rc order. This somewhat simplifies the rc expansion code, and avoids the two-phase regrouping that used to happen.
This change should not change the semantics of rc option ordering. A followup change will add an alternative implementation for --config's expansion.
RELNOTES: None.
PiperOrigin-RevId: 175208971
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Previous changes have removed all middlemen from runfiles
artifacts. This CL locks it down and removes various now-redundant
*WithoutMiddlemen() methods from Runfiles.
I put a check for middlemen in ConflictChecker.put, which should be a
chokepoint for runfiles artifacts. It's unfortunate we can't detect
middlemen earlier than execution, but I can't see a way to efficiently
check every runfiles artifact earlier.
Change-Id: I57fcb51b02e40adf3ebc4591c26bf5492c89352f
PiperOrigin-RevId: 175206157
|
|
|
|
|
|
|
| |
This feature is experimental, and thus left mostly undocumented.
RELNOTES: None.
PiperOrigin-RevId: 175187791
|
|
|
|
|
|
|
| |
It's not needed by the new plan for android_instrumentation_test.
RELNOTES: None
PiperOrigin-RevId: 175166913
|
|
|
|
|
| |
RELNOTES: None.
PiperOrigin-RevId: 175153541
|
|
|
|
|
|
|
|
| |
DexFileMerger tool
RELNOTES: None.
PiperOrigin-RevId: 175082253
|
|
|
|
|
|
|
|
|
|
|
|
| |
Addresses #3661 and fixes #3770 bug
Changes:
- Properly escape the download URL. `GitCloner` used to incorrectly escape `/` delimiters as `%2F`. This change was originally introduced in #3770 but [rolled back](https://github.com/akira-baruah/bazel/commit/58c003cf98b81d433603eeeb3874c7dbba33e1f0) due to a bug that is now fixed below.
- Omit an initial "v" from a version tag (e.g. `v1.2.3`) in the archive prefix. GitHub seems to do this.
Closes #4002.
PiperOrigin-RevId: 175047685
|
|
|
|
|
|
|
| |
to breaking some existing genrules.
RELNOTES: None.
PiperOrigin-RevId: 175034625
|
|
|
|
|
|
|
|
| |
Blaze had its own class to avoid GC from varargs array creation for the precondition happy path. Guava now (mostly) implements these, making it unnecessary to maintain our own.
This change was almost entirely automated by search-and-replace. A few BUILD files needed fixing up since I removed an export of preconditions from lib:util, which was all done by add_deps. There was one incorrect usage of Preconditions that was caught by error prone (which checks Guava's version of Preconditions) that I had to change manually.
PiperOrigin-RevId: 175033526
|
|
|
|
|
| |
RELNOTES: None
PiperOrigin-RevId: 175033155
|
|
|
|
|
|
|
|
|
|
| |
BES.
- Add a prefix to user provided keywords, so it can be distinguished from
keywords provided directly by Bazel.
- Keywords are also stored in a Set to avoid duplicates.
PiperOrigin-RevId: 174872442
|
|
|
|
|
|
| |
//tools/cpp:toolchain_type as the canonical c++ toolchain.
PiperOrigin-RevId: 174759558
|
|
|
|
|
|
|
|
|
|
|
| |
Characterizing this correctly this time: Target patterns are evaluated with two different sets of semantics. For determining which targets to build, only test suites in exclusion target patterns are expanded. For determining which tests to run (or determining which targets to build if --build_tests_only is set), test suites in all target patterns are expanded. In each case, test suites are expanded for each target pattern individually, not for the whole set of targets after the list of target patterns is processed.
Also update a related code comment.
The newer implementation for this logic already has equivalent tests for this behavior, in particular testFilterNegativeTestFromTestSuite and testNegativeTestSuiteExpanded in LoadingPhaseRunnerTest.
RELNOTES: None
PiperOrigin-RevId: 174756583
|
|
|
|
|
|
|
|
| |
These libs are exposed externally, implying that the vfs is also exposed externally.
We break out PathFragment from vfs to still use this in their interface. This class is a much smaller dependency than the entire vfs.
PiperOrigin-RevId: 174729373
|
|
|
|
|
|
|
| |
TerminationStatus, and also add a TerminationStatus.Builder and tests.
RELNOTES: None.
PiperOrigin-RevId: 174557303
|
|
|
|
|
|
|
| |
and make cumulative execution times available in ActionResults.
RELNOTES: None
PiperOrigin-RevId: 174553272
|
|
|
|
|
| |
RELNOTES: Late-bound attributes are exposed to skylark. This is a new API (`configuration_field()`) to depend on certain configuration-defined targets from skylark rules.
PiperOrigin-RevId: 174534104
|
|
|
|
|
|
|
| |
This changes the order in which expansions happen, which could change the
semantics in subtle ways.
PiperOrigin-RevId: 174518778
|