aboutsummaryrefslogtreecommitdiffhomepage
path: root/src
Commit message (Collapse)AuthorAge
* Add CommandLineItem interface.Gravatar tomlu2018-01-25
| | | | | | | | This interface makes it clearer in the type system exactly how items that go into a CustomCommandLine are turned into strings. It is a preparatory change to allow command line fingerprints to be more cheaply calculated, but it is valuable in itself from a code quality standpoint. PiperOrigin-RevId: 183274022
* Move .includes files, which are required for include scanning, out of theGravatar cpeyser2018-01-25
| | | | | | | | includes output directory, which is wiped for every symlink action. Instead, put .includes files in genfiles. TESTED=manually using repro instructions in b/64534488#comment15 PiperOrigin-RevId: 183268700
* Add the ability to output the resource table as a protocol buffer to the ↵Gravatar corysmith2018-01-25
| | | | | | | | | Aapt2ResourcePackagingAction Ensure that the custom package is respected in aapt2. This only impact the srcjar, as the classes are generated via another method. RELNOTES: None PiperOrigin-RevId: 183260369
* Add a test verifying --experimental_repository_cacheGravatar Klaus Aehlig2018-01-25
| | | | | | | | ...works as expected, caching only based on the predicted sha256 sum and also is available for bazel query. Closes #2780. Change-Id: I64f09728d9def561a6ac3960f8fa36540aba31dc PiperOrigin-RevId: 183257435
* Remove ios_test from Bazel. ios_test is an old rule and this removal is part ↵Gravatar kaipi2018-01-25
| | | | | | of the final steps of the migration process into Skylark. If you were using ios_test, please take a look at ios_unit_test provided by the github.com/bazelbuild/rules_apple project. PiperOrigin-RevId: 183251623
* Serializer implementations for Guava CollectionsGravatar shahan2018-01-25
| | | | PiperOrigin-RevId: 183248133
* Static libraries are not a valid input to arGravatar Googler2018-01-25
| | | | | RELNOTES: None PiperOrigin-RevId: 183246711
* Remove ConfiguredTarget.getTarget() from AspectFunction and replace it with aGravatar mjhalupka2018-01-25
| | | | | | ConfiguredTargetAndTarget.getTarget(). PiperOrigin-RevId: 183241259
* Delete documentation for --analysis_warnings_as_errors.Gravatar Benjamin Peterson2018-01-25
| | | | | | | This option has no effect, so don't give documentation readers false hope. Change-Id: Ibbc0d2f62375fd146fedaa113a39027bd7d65d6c PiperOrigin-RevId: 183240947
* Unmark InterruptibleTest as flaky, it hasn't flaked in a month.Gravatar ccalvarin2018-01-25
| | | | | | | I've attempted to recreate the flakiness, to see if changing the test from a wait-based approach to actual locking would improve the flakiness, but the test seems to not have flaked since it was broken out into its own target, so it seems that might just add unnecessary complexity. RELNOTES: None. PiperOrigin-RevId: 183235405
* Set $DISPLAY=:0 by default for android_instrumentation_test for Android ↵Gravatar jingwen2018-01-24
| | | | | | | emulators to show up. RELNOTES: None. PiperOrigin-RevId: 183188581
* Change JavaBuilder and Turbine command lines to not require CustomMultiArgv.Gravatar tomlu2018-01-24
| | | | | | | | | | | | | | | | | | | | Instead of passing: --direct_dependency jar1 jarowner1 aspect1 --indirect_dependency jar2 jarowner2 aspect2 --classpath jar1 jar2 we pass --dependencies jar1 jarowner1;aspect1 jar2 jarowner2:aspect2 --direct_dependencies jar1 This formats doesn't need to inspect each item in the incoming nested set, and thus doesn't need CustomMultiArgv. This change needs to be rolled out in phases, so this CL changes JavaBuilder and Turbine to accept either format. RELNOTES: None PiperOrigin-RevId: 183155036
* SerializerAdapterGravatar shahan2018-01-24
| | | | | | Allows ObjectCodec to be registered as a Kryo Serializer. PiperOrigin-RevId: 183149177
* Add codecs for TestConfiguration, ConfiguredFragmentValue, and ↵Gravatar janakr2018-01-24
| | | | | | | | TestConfigFragment. Thanks to shahan@ for the TestConfigFragment code. PiperOrigin-RevId: 183127152
* Remove some references to configuredTarget.getTarget() by getting the target ↵Gravatar mjhalupka2018-01-24
| | | | | | from package. PiperOrigin-RevId: 183121812
* Automated rollback of commit 8e006399c42830855da11898db6707ac9f759762.Gravatar eaftan2018-01-24
| | | | | | | | | | | | | | | | | *** Reason for rollback *** Made obsolete by https://github.com/bazelbuild/bazel/commit/e734c479956df7a675c61f531d769609d3af3e5d *** Original change description *** Blaze now passes an extra flag to JavaBuilder, --testonly, to mark compilations of test code. We plan to use this for Error Prone checks that need to distinguish between test and production code, such as enforcing @VisibleForTesting. PiperOrigin-RevId: 183121768
* Automatic code cleanup.Gravatar Googler2018-01-24
| | | | PiperOrigin-RevId: 183118434
* Stop storing the base configuration in AspectKey. As with ↵Gravatar janakr2018-01-24
| | | | | | | | https://github.com/bazelbuild/bazel/commit/3863b536bcab8de2000f342c85c31c7ea91cccbe, we don't want to have to serialize/deserialize a BuildConfiguration in a SkyKey. Cutting the edge to the aspect configuration will come in a follow-up. PiperOrigin-RevId: 183117915
* RELNOTES: Fix how libraries to link is specified to archiver actions.Gravatar Googler2018-01-24
| | | | | | start-lib/end-lib should not be passed to ar. Fix how the libraries to link are passed to ar by not using the generic feature "libraries_to_link" PiperOrigin-RevId: 183107904
* Store a SkyKey inside BuildInfoCollectionValue.KeyAndConfig instead of a ↵Gravatar janakr2018-01-24
| | | | | | | | BuildConfiguration: BuildConfigurations are too heavy to be in SkyKeys. This adds an extra dependency for BuildInfoCollectionValues, but there are not many in the graph, and the dep request is now batched, which is better than before. PiperOrigin-RevId: 183106788
* Add codecs for SkyKeys that are needed for null build.Gravatar janakr2018-01-24
| | | | PiperOrigin-RevId: 183102476
* PiperOrigin-RevId: 183094604Gravatar ajmichael2018-01-24
|
* Introduce a wrapper around the ImmutableSortedSet<Class<? extends ↵Gravatar janakr2018-01-24
| | | | | | | | BuildConfiguration.Fragment>> set of Fragment classes that is part of the BuildConfigurationValue.Key. This class allows us to compute a fingerprint of the wrapped ImmutableSortedSet, making equality comparisons fast. The number of additional wrapper objects is the number of distinct sets of fragment classes, so 1. (In fact, we don't even need to compute a fingerprint, since reference equality does the job for us here, but we do it just to be conservative.) This CL has a performance benefit for Bazel currently, but has a bigger performance benefit in the following changes, where there are more BuildConfigurationValue.Key objects to compare. PiperOrigin-RevId: 183090122
* Remove android_instrumentation_test.test_args and pass ↵Gravatar jingwen2018-01-24
| | | | | | | | | | | | | | | | | android_instrumentation_test.args dictionary into the DeviceBroker in the stub template. Also remove extra %test_label% assignment This allows users to pass arguments in the form of: ``` args = [ "--enable_display=false", ... ] ``` GITHUB: #903 RELNOTES: None. PiperOrigin-RevId: 183089901
* Support negated flags in SearchNullaryOption with last-wins semantics.Gravatar ajmichael2018-01-24
| | | | | | | `blaze --nomaster_bazelrc --master_bazelrc` now uses the master bazelrc. RELNOTES: None PiperOrigin-RevId: 183083839
* Makes @AutoCodec preserve map order when it sees Map or ImmutableMap raw ↵Gravatar shahan2018-01-24
| | | | | | types instead of sorting. PiperOrigin-RevId: 183083445
* Remove Bazel's Docker tests.Gravatar Philipp Wollermann2018-01-24
| | | | | | | | | | | | | | We'll just replace them with either native support for running tests inside Docker containers on CI or with VMs running the operating system. This gets rid of the "let's download 8 GB of Docker images" step when running `bazel build //...`. RELNOTES: None. Closes #4506. PiperOrigin-RevId: 183078052
* Remove an unused argument.Gravatar lberki2018-01-24
| | | | | RELNOTES: None. PiperOrigin-RevId: 183069509
* Fix "Could not reserve enough space for object heap" error on Windows during ↵Gravatar philwo2018-01-24
| | | | | | Bazel bootstrap. PiperOrigin-RevId: 183065122
* http_archive: demonstrate that query works offlineGravatar Klaus Aehlig2018-01-24
| | | | | | | | | Add a test verifying that http_archive from @bazel_tools caches repositories, also for subsequent queries. Provides a workaround for #2780. Change-Id: Ie842c2abf47f42f75e146e454be4ab52efd12ada PiperOrigin-RevId: 183063093
* Adds codecs for types in test classes, ConfigSettingTest, LateBoundSplitUtil ↵Gravatar shahan2018-01-23
| | | | | | | | and fixes codec in RunUnderConverter. PiperOrigin-RevId: 183003383
* Remove unnecessary arg when building runfiles support.Gravatar ajmichael2018-01-23
| | | | | RELNOTES: None PiperOrigin-RevId: 182986489
* Explicitly make fragments option to BuildConfigurationValue#key an ↵Gravatar janakr2018-01-23
| | | | | | | | ImmutableSortedSet wherever possible, and use a known explicit ImmutableSortedSet in the case of two sets being equal. This is mainly a cosmetic cleanup for the sequel changes. Also rename test-only methods in SkyframeExecutor to indicate that, and do a drive-by clean-up of a test that reported hard crashes confusingly because it wrapped RuntimeExceptions. PiperOrigin-RevId: 182984572
* ThinLTO: Add support for merged object files.Gravatar Googler2018-01-23
| | | | | | | | | | | | | Merged object files are needed when we use -flto-unit. It's created during the LTO indexing step and needs to be passed to the final link. LLVM already can create merged object files we just need to pass "-Wl,-plugin-opt,obj-path=" into LLVM gold plugin. "-flto-unit" emits IR to support LTO unit features needed for CFI (Control Flow Integrity). RELNOTES: Add support for merged object files needed for -flto-unit. PiperOrigin-RevId: 182964781
* Pass the correct path of aapt_binary and merge its data runfiles into ↵Gravatar jingwen2018-01-23
| | | | | | | | android_instrumentation_test's runfiles. GITHUB: #903 RELNOTES: None. PiperOrigin-RevId: 182940009
* Refine return type of STRUCT factory methodsGravatar brandjon2018-01-23
| | | | | RELNOTES: None PiperOrigin-RevId: 182937363
* Move all code to lookup JavaRuntimeInfo to static methods onGravatar John Cater2018-01-23
| | | | | | | JavaRuntimeInfo. Change-Id: Ic338dc9b3e5efa2fee92dba722a46cab743db40c PiperOrigin-RevId: 182919931
* bazel_bootstrap_distfile_test: don't find & chmodGravatar Laszlo Csomor2018-01-23
| | | | | | | | | | | | | | | | Do not run "find & chmod" on the extracted files, because: (a) it's unnecessary, we can delete them in the trap statement just fine, and (b) it takes an impressive 20 minutes on Windows, probably because process creation is a lot slower on Windows than on Unixes and each `chmod` runs as a subprocess of `find` See https://github.com/bazelbuild/bazel/issues/4503 Change-Id: I47d97f00b875716997c197a51602fb6ea7728109 PiperOrigin-RevId: 182905086
* Add JavaRuntimeToolchainInfo class to wrap JavaRuntimeInfo for toolchains ↵Gravatar John Cater2018-01-23
| | | | | | | access. Change-Id: I6041c51823fa52d6ae55dfe06afd1754ce05ab98 PiperOrigin-RevId: 182904580
* Report unsuccessful error code if bazel fetch fails in "keep going" mode.Gravatar dslomov2018-01-23
| | | | | | | | Fixes #3234. Rollforward of commit dafe71390340224e06eab0ac7afcebb2f5219f5a with a bugfix PiperOrigin-RevId: 182903117
* Create function createJavaInfo with new API. Implement ↵Gravatar dbabkin2018-01-23
| | | | | | | | | | | JavaRuleOutputJarsProvider. Added tests for checking JavaRuleOutputJarsProvider state. Moved all test cases related to JavaInfo to new file JavaInfoSkylarkApiTest.java Created RuleBuilder inside JavaInfoSkylarkApiTest to reduce duplication of code. RELNOTES:none PiperOrigin-RevId: 182901118
* http_archive: allow using the shipped BUILD fileGravatar Klaus Aehlig2018-01-23
| | | | | | | | | | Bazel may also depend on external repositories that already contain build files. When using http_archive from @bazel_tools also support that use case, by supporting simply omitting `build_file` and `build_file_contents`. Change-Id: I40a9b85ae0aba850c73104d2e2fe7f7ee814e093 PiperOrigin-RevId: 182893460
* Add codec for TestFilter, and clean up some things: use ↵Gravatar janakr2018-01-22
| | | | | | java.util.function.Predicate and move some code that was only called by TestFilter inside it. PiperOrigin-RevId: 182884550
* PiperOrigin-RevId: 182859586Gravatar eaftan2018-01-22
|
* Consolidate Error Prone resource handlingGravatar cushon2018-01-22
| | | | | | Fixes bazelbuild/bazel#4483 PiperOrigin-RevId: 182847474
* Quick blanket replacement of getTarget().getLabel() with .getLabel(). Some ↵Gravatar Googler2018-01-22
| | | | | | have already been changed to ConfiguredTargetAndTarget so there's fewer classes than I thought there would be. PiperOrigin-RevId: 182839243
* Remove one use of CustomMultiArgv in JavaCompileAction.Gravatar tomlu2018-01-22
| | | | PiperOrigin-RevId: 182837838
* Support DTD when processing resource files in the aapt2 pipelineGravatar Googler2018-01-22
| | | | | | | | Unfortunately, the getTag() function explicitly fails when it encounters a DTD item, so we need to do a bit of custom handling instead. RELNOTES: none PiperOrigin-RevId: 182821046
* Use the new option categories by defaultGravatar ccalvarin2018-01-22
| | | | | | | | | Bazel help output will now use the new categories by default, including for the generated html documentation at https://bazel.build/versions/master/docs/command-line-reference.html Issue #3758 - this switches to the new categories, but the grouping is still by command, which leads to duplicate options RELNOTES: None PiperOrigin-RevId: 182815006
* Only allow files created by the same rule as executable outputs of a rule.Gravatar Dmitry Lomov2018-01-22
| | | | | | | Fixes #4170. Change-Id: I308ee17eb769dcc6a94b90b1dd6cc2ccbe14e968 PiperOrigin-RevId: 182807196