aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/main/java/com
Commit message (Collapse)AuthorAge
* Prefix all --bes_keywords with "user_keyword=<keyword>" before publishing to ↵Gravatar Googler2017-11-07
| | | | | | | | | | 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
* Remove an unused JavaClasspathModeGravatar cushon2017-11-07
| | | | PiperOrigin-RevId: 174818556
* Prefer catastrophic action execution exceptions to non-catastrophic ones. ↵Gravatar janakr2017-11-07
| | | | | | | | This is both probably what the user most cares about, and also restores a Skyframe invariant, that as a catastrophic exception bubbles up, it stays catastrophic. There is actually no hard Skyframe requirement for that, so we could consider relaxing it, but I'm willing to keep it for now. PiperOrigin-RevId: 174759976
* Introduce cc_toolchain_type, which exports c++ make variables. UseGravatar cpeyser2017-11-07
| | | | | | //tools/cpp:toolchain_type as the canonical c++ toolchain. PiperOrigin-RevId: 174759558
* Add more assertions about test suite expansion behaviorGravatar Googler2017-11-07
| | | | | | | | | | | 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
* Some minor quality of life improvements related to the fact that the default ↵Gravatar nharmata2017-11-07
| | | | | | | | | | value of --max_idle_secs is 15s when the TEST_TMPDIR environment variable is set. (i) Add a log line to blaze.INFO when the server shuts itself down due to idleness. (ii) Mention the --max_idle_secs default in the existing stderr spam when TEST_TMPDIR is set. RELNOTES: None PiperOrigin-RevId: 174745511
* Break dependency on vfs from the interface of syntax and cmdline.Gravatar tomlu2017-11-06
| | | | | | | | 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
* Close HTML tag typosGravatar Googler2017-11-06
| | | | | RELNOTES: None PiperOrigin-RevId: 174719828
* Default experimental flags to trueGravatar Googler2017-11-06
| | | | | | | RELNOTES: AAR manifest files will come from the processed resource APK if it exists. RELNOTES: None for Blaze users. PiperOrigin-RevId: 174622961
* Add optional user execution time and system execution time fields to ↵Gravatar ruperts2017-11-06
| | | | | | | TerminationStatus, and also add a TerminationStatus.Builder and tests. RELNOTES: None. PiperOrigin-RevId: 174557303
* Use Durations to store wall, user and system execution time in SpawnResults, ↵Gravatar ruperts2017-11-06
| | | | | | | and make cumulative execution times available in ActionResults. RELNOTES: None PiperOrigin-RevId: 174553272
* Automated rollback of commit 0dffc49f528c4c6e641221060e41aa6896310bdf.Gravatar Googler2017-11-06
| | | | | | | | | | | *** Reason for rollback *** This doesn't seem to be correct. I was confused by an example where a target is excluded from being run, but still built. *** Original change description *** RELNOTES: Document interaction between test_suite and target exclusions PiperOrigin-RevId: 174536378
* Expose late-bound-attributes to Skylark.Gravatar cparsons2017-11-06
| | | | | 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
* Switch ExtraActionFactory and GenRuleBase to the Expander APIGravatar ulfjack2017-11-06
| | | | | | | This changes the order in which expansions happen, which could change the semantics in subtle ways. PiperOrigin-RevId: 174518778
* Make ErrorInfo#toString more informative.Gravatar janakr2017-11-06
| | | | PiperOrigin-RevId: 174508154
* Move CppConfiguration#getHostSystemName, #getTestOnlyLinkOptions, ↵Gravatar cpeyser2017-11-06
| | | | | | #getObjCopyOptionsForEmbedding, #getLdOptionsForEmbedding and #getDefaultSysroot to CcToolchainProvider. PiperOrigin-RevId: 174508128
* Tweak java runfiles resolution.Gravatar Benjamin Peterson2017-11-06
| | | | | | | | | | | | | | | | | | | Building a binary rule does not generally ensure that the runfiles trees of its transitive data dependencies are up-to-date, so it's generally a bad idea to use a dependency's runfiles tree from the primary target. See https://github.com/bazelbuild/bazel/issues/3919 for an example of the problems this can cause. This CL ensures that we pick the primary target's runfiles tree when executing a java_binary from a runfiles tree. This makes the Java runfiles path resolution similar to that of the Python rules. (See commit [1].) [1] 58ee85afcab07374dabc5493c780cbe3369b644f ("Don't follow symlink when looking for python module space") Change-Id: I412ede5cf02ab2c407e45a2b262442ca67df9ba6 PiperOrigin-RevId: 174501597
* Cleanup stream use in canonical list of options.Gravatar ccalvarin2017-11-06
| | | | | | | Follow up to https://github.com/bazelbuild/bazel/commit/c50cd13c75a2a1685f5ac9bd70561ac1e50722e7 RELNOTES: None. PiperOrigin-RevId: 174498205
* Remove CppConfiguration#getFeatures in favor ofGravatar cpeyser2017-11-06
| | | | | | CcToolchainProvider#getFeatures. PiperOrigin-RevId: 174492427
* Schedule LtoBackendAction when creating LtoBackendArtifactGravatar Googler2017-11-06
| | | | | | | | | | | | | There is no need to defer the action creation and scheduling, which happens shortly thereafter, and just requires saving a bunch of information on the LtoBackendArtifact. This is preliminary restructuring that will aid some larger changes for making tests that use static linking more efficient when built with ThinLTO (for b/67424063). RELNOTES: None PiperOrigin-RevId: 174490283
* Refactor LateBoundDefault to be abstract, in preparation for being ↵Gravatar cparsons2017-11-06
| | | | | | | subclassed by a skylark-specific implementation RELNOTES: None. PiperOrigin-RevId: 174486116
* Remove legacy implementation of objc compilation/archiving/linking.Gravatar cpeyser2017-11-06
| | | | PiperOrigin-RevId: 174481563
* Filter local and transitive resources togetherGravatar Googler2017-11-06
| | | | | | | | | | | | | | | | | | Whether a resource is accepted or rejected by density-based resource filtering is dependent on what other resources are available. When filtering resources in execution, this was taken into account - resources were filtered after merging. To replicate this behavior when filtering in analysis, we must look at both local and transitive resources before we actually filter anything. This process makes filtering with dynamic configuration extremely inefficient, since the NestedSet of transitive resources must be collapsed at each library target. We can fix this by only looking at the transitive resources at the top-level target, even when using dynamic filtering. I'm not implementing that in this change, however, since dynamic filtering is relatively low priority and this review is already pretty big. Note that some of the messiness around filtering ResourceDependencies and NestedSet<ResourceContainer> will go away once those NestedSets are removed. Also, stop filtering resources in android_test, since android_test can never specify resource filters. RELNOTES: none PiperOrigin-RevId: 174474491
* Don't keep set of LTO backend artifacts on link actionGravatar Googler2017-11-06
| | | | | | | | | | Small cleanup to avoid saving a set of the LTOBackendArtifact objects on the CppLinkAction. They can be accessed from the CppLinkActionBuilder, and keeping them on the CppLinkAction prevents them from being GC'ed when the builder is destroyed. RELNOTES: None PiperOrigin-RevId: 174469228
* Add rootpath(s) and execpath(s) functions to template expansionGravatar ulfjack2017-11-03
| | | | | | | | | | | | | | | | In addition to the $(location) function, we now also support $(rootpath) and $(execpath) functions. Unfortunately, we have to do this in two places since the Skylark API for expand_location has to continue calling into LocationExpander in order to preserve its semantic contract. Progress on #2475. RELNOTES[NEW]: In addition to $(location), Bazel now also supports $(rootpath) to obtain the root-relative path (i.e., for runfiles locations), and $(execpath) to obtain the exec path (i.e., for build-time locations) PiperOrigin-RevId: 174454119
* Avoid crash when a test and its alias are specified on the command line for ↵Gravatar lberki2017-11-03
| | | | | | | "blaze test". RELNOTES: None. PiperOrigin-RevId: 174386473
* Automated rollback of commit 8cb1d2fb460a9caf47df58d7ff051d31080a77cb.Gravatar ulfjack2017-11-03
| | | | | | | | | | | | | | | | | | | | | | | | | *** Reason for rollback *** Roll forward again without the changes to expand_location, but with the trimming fix from https://github.com/bazelbuild/bazel/commit/19617360121635a77ffec99b84d825e7d9b260b1. *** Original change description *** Automated rollback of commit ca77f608e486bf7aa762565d25bf7b9e30f2268c. This also rolls back unknown commit. *** Reason for rollback *** Affected expand_location Skylark API semantics - it no longer accepts ${abc} or plain dollar signs, but complains. *** Original change description *** Extend TemplateExpander to handle $(func param) expansion Rewrite the Expander to use the new functionality; also rewrite the Skylark expand_location function to use it. PiperOrigin-RevId: 174384095
* Automated rollback of commit 5d42ae10195cd1acb9612df3a3d520f09b0c3e39.Gravatar cpeyser2017-11-03
| | | | | | | | | | | | | *** Reason for rollback *** Breaks alphago targets. *** Original change description *** Remove CppConfiguration#getFeatures in favor of CcToolchainProvider#getFeatures. PiperOrigin-RevId: 174373331
* When force_pic is on, build linkstamp objects with PIC.Gravatar Googler2017-11-03
| | | | | | | | | | Previously, linkstamp objects would be built without -fPIC. When linked into a PIE binary, this leads to text relocations, which causes IFUNC resolution to segfault (the resolution function is called while the binary is mapped RW). RELNOTES: None. PiperOrigin-RevId: 174366114
* Remove unused LegacyParamsFilePreProcessor. Removed test cases from ↵Gravatar apell2017-11-03
| | | | | | | OptionsParserTest are implemented in ParamsFilePreProcessorTest, ShellQuotedParamsFilePreProcessorTest and UnquotedParamsFilePreProcessorTest. RELNOTES: None. PiperOrigin-RevId: 174359569
* Move getManifestForRule implementation into default method.Gravatar dannark2017-11-03
| | | | | RELNOTES: None PiperOrigin-RevId: 174355404
* Mark authorization-related errors as user errorsGravatar Googler2017-11-03
| | | | | | | Since the problem or the means to fix it is usually on the user side. RELNOTES=none PiperOrigin-RevId: 174348233
* Pass build_id to mobile-install deploy scriptGravatar Googler2017-11-03
| | | | PiperOrigin-RevId: 174343502
* Switch on tracking of specific option priorities.Gravatar ccalvarin2017-11-03
| | | | | | | Make sure that multiple calls to parse() follow each other sequentially. This is necessary for blazerc expansion, which occurs first in command order, then blazerc order. RELNOTES: None. PiperOrigin-RevId: 174343241
* Fix typo in BlazeModule#blazeShutdown javadoc.Gravatar ajmichael2017-11-02
| | | | | RELNOTES: None PiperOrigin-RevId: 174229364
* Roll forward support for test resource inheritance behind a flagGravatar Googler2017-11-02
| | | | | RELNOTES: None PiperOrigin-RevId: 174219672
* Don't require --keep_going to discard graph edges. It's unnecessary.Gravatar janakr2017-11-02
| | | | PiperOrigin-RevId: 174202685
* removed "This is useful for Skylark..." Duplicate text from load() docGravatar Googler2017-11-02
| | | | | RELNOTES: None. PiperOrigin-RevId: 174199997
* Expose Apple Multi-architecture Split Transition to Skylark.Gravatar cparsons2017-11-02
| | | | | | | This omits validation for this transition, which will follow in a future change. RELNOTES: None. PiperOrigin-RevId: 174183651
* Automated rollback of commit 02a5b0fe11de1abe1c6f124413b847f0ecf6c4dd.Gravatar cparsons2017-11-02
| | | | | | | | | | | | | | | *** Reason for rollback *** Breaks Blaze nightly Example failing test: [] *** Original change description *** Allow android_test to properly inherit resources RELNOTES: none PiperOrigin-RevId: 174182803
* Add a 'estimateCurrentNumUniqueValues' method to MultisetSemaphore.Gravatar nharmata2017-11-01
| | | | | RELNOTES: None PiperOrigin-RevId: 174062560
* Rename ResourceFilter to ResourceFilterFactoryGravatar Googler2017-11-01
| | | | | | | | | | | In the next review, to handle issues around density filtering, ResourceFilterFactory will return another object that actually handles filtering. To ensure stuff is named properly, rename ResourceFilter to ResourceFilterFactory now so that the new class can be called ResourceFilter. This is a straightforward automated refactor, followed with some automated reformatting to make linting happy. I used the name ResourceFilterFactory, rather than the more concise ResourceFilters, as this class actually contains state (both around what filtering should currently do and about what resources were filtered out) and isn't just a helper class. RELNOTES: none PiperOrigin-RevId: 174049618
* Cosmetic refactor of some of the helper methods used by ↵Gravatar nharmata2017-11-01
| | | | | | | | | ParallelSkyQueryUtils.RBuildFilesVisitor. Also a minor tweak of the batch size for feeding results to the callback. Also correctly use the packageSemaphore in SkyQueryEnvironment's non-parallel implementation of rbuildfiles. RELNOTES: None PiperOrigin-RevId: 174039067
* Clean up LocalResourceContainer.BuilderGravatar Googler2017-11-01
| | | | | | | | | | | | | LocalResourceContainer.Builder is referenced a bunch of times, but most of those calls are identical. Replace them with a couple of factory methods. This lets us make the builder private. Additionally, LocalResourceContainer called attributeError() on the 'resources' attribute, even though 'resource_files' is now used most of the time instead. Now, the error is always given for the correct attribute. RELNOTES: none PiperOrigin-RevId: 174038035
* Move CppConfiguration#toolchainNeedsPic, #getRuntimeSysroot, andGravatar cpeyser2017-10-31
| | | | | | #getSolibDirectory to CcToolchainProvider. PiperOrigin-RevId: 174032021
* Move AndroidLocalTestBase.Gravatar dannark2017-10-31
| | | | | RELNOTES:None PiperOrigin-RevId: 173976330
* Automated rollback of commit c6b6dbadd0a93936c51154b25abc5fbba8f2d1af.Gravatar janakr2017-10-31
| | | | | | | | Not a totally clean rollback because of the intervening https://github.com/bazelbuild/bazel/commit/b5158a9a677b149e04e844c40a01e9a9dde40783. *** Reason for rollback *** PiperOrigin-RevId: 173957187
* Fixes EvaluationResult BuilderGravatar Googler2017-10-31
| | | | | RELNOTES: None PiperOrigin-RevId: 173950304
* Remove --incremental_dexing_binary_types.Gravatar ajmichael2017-10-31
| | | | | | | It has been set to all for a bit now. It is not in any teams blazerc/tap configs. RELNOTES: --incremental_dexing_binary_types has been removed. All builds are supported by incremental dexing (modulo proguard and some blacklisted dx flags). PiperOrigin-RevId: 173931117
* Migrate CppConfiguration#supportsGoldLinker, supportsDynamicLinker,Gravatar cpeyser2017-10-31
| | | | | | supportsEmbeddedRuntimes, supportsExecOrigin to CcToolchainProvider. PiperOrigin-RevId: 173928009