aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/main/java/com/google
Commit message (Collapse)AuthorAge
* Refactor root cause reporting in ConfiguredTargetFunctionGravatar ulfjack2018-05-29
| | | | | | We now track Causes instead of plain Labels, which will allow us to do better reporting in the future. Add basic tests. PiperOrigin-RevId: 198380468
* Add compilerFlagForMigrationDoNotUse field to cc_commonGravatar rosica2018-05-29
| | | | | | | This will help migration from config_setting.values{"compiler"} to config_setting.flag_values{"@bazel_tools//tools/cpp:compiler"} RELNOTES: None. PiperOrigin-RevId: 198377299
* Add CcSysrootAliasRuleGravatar dbabkin2018-05-29
| | | | | RELNOTES:none PiperOrigin-RevId: 198364550
* Remove CppCompileAction.optionalSourceFileGravatar hlopko2018-05-28
| | | | | | | It's unused. RELNOTES: NONE. PiperOrigin-RevId: 198316668
* Treat runfiles middlemen as aggregating middlemen.Gravatar Benjamin Peterson2018-05-28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The goal is to, for an action execution, make only a single skyframe edge to every required runfiles tree rather than an edge to every runfiles artifact directly. We accomplish this by pulling the runfiles artifacts' metadata for a particular runfiles tree through the appropriate runfiles middlemen artifact in one batch. This CL fixes https://github.com/bazelbuild/bazel/issues/3217. This change makes runfiles middlemen more similar to aggregating middlemen. We however continue to treat runfiles middlemen slightly differently than true aggregating middlemen. Namely, we do not expand runfiles middlemen into the final action inputs. The reasons for this are: 1. It can make latent bugs like https://github.com/bazelbuild/bazel/issues/4033 more severe. 2. The runfiles tree builder action's output MANIFEST contains absolute paths, which interferes with remote execution if its metadata is added to a cache hash. 3. In the sandbox, it causes the runfiles artifacts to be mounted at their exec path locations in addition to within the runfiles trees. This makes the sandbox less strict. (Perhaps tolerably?) 4. It saves a modicum of (transient) memory and time to not expand. If the first two issues are fixed, it could be a nice simplification to completely replace runfiles middlemen with aggregating middlemen. Change-Id: I2d2148297f897af4c4c6dc055d87f8a6fad0061e PiperOrigin-RevId: 198307109
* Add flags to help enforce that android_local_test does not depend directly ↵Gravatar tomlu2018-05-28
| | | | | | | on a proto_library. RELNOTES: None PiperOrigin-RevId: 198304295
* Clean up Java proto_library attributes.Gravatar tomlu2018-05-28
| | | | | RELNOTES: None PiperOrigin-RevId: 198304282
* Windows: Make environment variables case-insensitive when creating Windows ↵Gravatar Yun Peng2018-05-28
| | | | | | | | | | | | process If users pass the same environment variables with different cases, the last one will override the previous ones. Fixed https://github.com/bazelbuild/bazel/issues/5285 Change-Id: Ieec857553bc54a4ad9809455687551303037e240 PiperOrigin-RevId: 198303684
* Don't create a HashSet/Map just to copy them into the Immutable-counterpartGravatar Googler2018-05-28
| | | | | | | later. This wastes CPU cycles (directly and during GC). RELNOTES: None. PiperOrigin-RevId: 198302706
* Remove the unused TestRunnerAction.useTestRunner attribute.Gravatar lberki2018-05-28
| | | | | RELNOTES: None. PiperOrigin-RevId: 198302692
* Do not cache RepositoryResolvedEventsGravatar Klaus Aehlig2018-05-28
| | | | | | | | | | When recording the resolved state of rules, restrict to rules actually executed during the respective invocation. Cached return values can be confusing in a log that is about knowning what a fresh refetch would result in. Change-Id: I39688bf73e4e33fa1c6b0e00c52817c0ade3c0a4 PiperOrigin-RevId: 198301021
* Add an option --experimental_prune_cpp_input_discovery to stop C++ inputGravatar Googler2018-05-28
| | | | | | | | discovery at the boundary of modular headers. C++ modules generally should be self-contained and a using a C++ module doesn't require any of it's transitive source files to be present. PiperOrigin-RevId: 198299936
* CommandHelper: do not look up shell's pathGravatar Laszlo Csomor2018-05-28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The CommandHelper no longer looks up the shell interpreter's path itself. Instead its ctor takes the path as an argument. This change will allow incrementally migrating rules that use CommandHelper to start depending on the shell toolchain. Shell-using rules today only use the ShellConfiguration config fragment to look up the shell's path. In the future, more and more rules will also retrieve the active shell toolchain, and be able to: 1. use the auto-detected local shell interpreter's location, especially when it's not the default /bin/bash 2. use define different shell toolchains (different interpreter paths) for remote builds 3. gracefully fail the build if the machine has no shell installed but the action graph included a shell action See https://github.com/bazelbuild/bazel/issues/4319 Change-Id: I4da4e77e7d1fe57e8e4f5eb8820d03a840915e20 Closes #5283. Change-Id: I4da4e77e7d1fe57e8e4f5eb8820d03a840915e20 PiperOrigin-RevId: 198298315
* Enable --experimental_remote_spawn_cache by defaultGravatar ulfjack2018-05-28
| | | | | | | | | | | | | | | | | | | | | - It is now an error to specify the gRPC remote execution backend in combination with a local disk or HTTP-based cache. - It is now an error to specify both local disk and HTTP-based caches. Note that before this CL, enabling the local disk cache silently disabled remote execution - we now give an error in that case. With these combination no longer being accepted, remote execution being enabled now means that we only create a RemoteSpawnRunner, and don't provide a SpawnCache. This is not a semantic change - we never created both. In principle, it should be possible for users to combine local execution with remote caching for actions that are marked local or no-remote, and still use remote execution otherwise. However, Bazel cannot currently express this combination of execution strategies. RELNOTES: The --experimental_remote_spawn_cache flag is now enabled by default, and remote caching no longer needs --*_strategy=remote flags (it will fail if they are specified). PiperOrigin-RevId: 198280398
* Skylark: Exposes disabled features from rule context to SkylarkGravatar plf2018-05-28
| | | | | | WANT_LGTM=all RELNOTES:none PiperOrigin-RevId: 198269370
* Fix jdeps handling in java_common.compile(exports)Gravatar cushon2018-05-27
| | | | PiperOrigin-RevId: 198262096
* Remove accidentally-leftover @SkylarkCallable methods in FilesToRunProviderGravatar cparsons2018-05-25
| | | | | RELNOTES: None. PiperOrigin-RevId: 198126134
* Hand-roll PathFragment$Codec, to squeeze a bit of performance out of it.Gravatar janakr2018-05-25
| | | | PiperOrigin-RevId: 198124705
* Start migration of apple skylark build APIGravatar cparsons2018-05-25
| | | | | RELNOTES: None. PiperOrigin-RevId: 198107604
* Migrate JavaInfo and its dependencies to skylarkbuildapiGravatar cparsons2018-05-25
| | | | | RELNOTES: None. PiperOrigin-RevId: 198103940
* Migrate FilesToRunProvider, Target, and TemplateVariableInfo to skylarkbuildapiGravatar cparsons2018-05-25
| | | | | RELNOTES: None. PiperOrigin-RevId: 198095817
* Migrate cpp rules skylark objects to skylarkbuildapiGravatar cparsons2018-05-25
| | | | | RELNOTES: None. PiperOrigin-RevId: 198094324
* Skylark: Make 'cfg = "data"' a noop.Gravatar gregce2018-05-25
| | | | | | | This is no longer meaningful with the turndown of (C++) LIPO. PiperOrigin-RevId: 198092974
* Migrate platform-related skylark objects to skylarkbuildapiGravatar cparsons2018-05-25
| | | | | RELNOTES: None. PiperOrigin-RevId: 198086078
* Remove attribute read checks expecting a DATA transition.Gravatar gregce2018-05-25
| | | | | | | | | | | | | | This is a precursor to removing the DATA transition outright. While we could also have changed the Mode.DATA instances to Mode.TARGET (which would declare that we expect the attribute not to apply any transition), that would break existing definitions and make depot cleanup more delicate. Plus, these checks weren't being consistently applied across attributes anyway so they don't really offer much. A lot of this logic is really just leftover legacy from the pre-dynamic configuration days. PiperOrigin-RevId: 198085059
* Automated rollback of commit fd260c56b46fbf68a07b29b0fc1b8cdecc4fe854.Gravatar asteinb2018-05-25
| | | | | | | | | *** Reason for rollback *** Roll forward after fixing and rolling forward culprit CL. No changes besides rolling forward (masked by diffbase) RELNOTES: none PiperOrigin-RevId: 198084160
* support jdeps input in JavaInfo constructorGravatar kmb2018-05-25
| | | | PiperOrigin-RevId: 198081030
* Automated rollback of commit 372fbc2f016157b0331f83a20edad10d4b4cf9f7.Gravatar asteinb2018-05-25
| | | | | | | | | | | | | *** Reason for rollback *** Roll forward with fix: I was assuming that R.txt and symbols files are always set, but they can be null in some cases (especially in the old data processing pipeline). Properly handle them here. RELNOTES: none PiperOrigin-RevId: 198075743
* Implement unbounded deps() using ParallelVisitor for SkyQuery.Gravatar shreyax2018-05-25
| | | | PiperOrigin-RevId: 198074986
* Add command line arguments to JavaCompileInfo extra action proto.Gravatar tomlu2018-05-25
| | | | | RELNOTES: None PiperOrigin-RevId: 198071932
* Remove java support from proto_library.Gravatar tomlu2018-05-25
| | | | | | | | | | This is a rollforward of CL/197725926 after depot fix. NEW: Additional deletions of unused providers (no constructor call references). NEW[last rollforward]: Allow java_* rules to depend on proto_libraries via runtime_deps and exports. This should avoid the breakage that caused the original rollback. The edges are no-ops and could be removed. PiperOrigin-RevId: 198060345
* C++: Separates adding sources and private headers to CcCompilationHelperGravatar plf2018-05-25
| | | | | | | | This is part of a chain of CLs that will pull initialization of CcCompilationContext from CcCompilationHelper. RELNOTES:none PiperOrigin-RevId: 198060027
* Remove special casing from processes stat line.Gravatar Googler2018-05-25
| | | | | | | | Fixes #5263 RELNOTES: execution strategies line no longer handles differently the case where all processes have the same strategy. PiperOrigin-RevId: 198057496
* Provide ability to inject custom ConstraintSemantics behavior.Gravatar gregce2018-05-25
| | | | PiperOrigin-RevId: 198053509
* Automated rollback of commit 9d5c323a6e66842cfeb98462cf949dee58710fb8.Gravatar plf2018-05-25
| | | | | | | | *** Reason for rollback *** Crashes lots of targets in nightly blaze-2018.05.24-1: PiperOrigin-RevId: 198049395
* Automated rollback of commit 14c6d8edadb474cb72f5307b531a2699770f02d0.Gravatar plf2018-05-25
| | | | | | | | *** Reason for rollback *** Crashes lots of targets in nightly blaze-2018.05.24-1: PiperOrigin-RevId: 198041861
* Remove references to gcc from the documentation of Make variables.Gravatar lberki2018-05-25
| | | | | RELNOTES: None. PiperOrigin-RevId: 198036365
* Automated rollback of commit d62833f640690309e1a73aefa62de1d8821dc8ba.Gravatar plf2018-05-25
| | | | | RELNOTES:none PiperOrigin-RevId: 198025150
* When in use, always return ActionFS paths from the ActionExecutionContext. ↵Gravatar felly2018-05-24
| | | | | | | Instead,defer to ActionFS regarding the choice about delegation to top-level Filesystem. RELNOTES: None PiperOrigin-RevId: 197960416
* Clarify invariants for @SkylarkModule and @SkylarkCallableGravatar brandjon2018-05-24
| | | | | | | Also refactor away SkylarkModule.Resolver. RELNOTES: None PiperOrigin-RevId: 197955164
* Migrate OutputGroupInfo to skylarkbuildapiGravatar cparsons2018-05-24
| | | | | RELNOTES: None. PiperOrigin-RevId: 197949354
* Make @SkylarkModule detection (through superclasses/superinterfaces) ↵Gravatar cparsons2018-05-24
| | | | | | | | | well-defined. Moving forward, if a class not already annotated with @SkylarkModule has SkylarkModule supertypes A and B, then it must be the case that A is a type of B, or B is a type of A. The skylark type of a given class is dictated by the *most specific* superclass annotated with @SkylarkModule. RELNOTES: None. PiperOrigin-RevId: 197946898
* [Skylark] Size newly created arrays to avoid unnecessary re-allocations.Gravatar Taras Tsugrii2018-05-24
| | | | | | | | | | | | It's more efficient to use properly sized array builders to avoid having a need to dynamically adjust the size of the underlying array. The result is improved performance (no need to copy elements to newly created array) and better memory efficiency - no need to re-allocate and no extra space is wasted. Closes #5241. PiperOrigin-RevId: 197946723
* Migrate repository-related modules to skylarkbuildapiGravatar cparsons2018-05-24
| | | | | RELNOTES: None. PiperOrigin-RevId: 197941930
* Fix SkylarkCallable-annotation detection to appropriately handle methods ↵Gravatar cparsons2018-05-24
| | | | | | | with generic parameters RELNOTES: None. PiperOrigin-RevId: 197932265
* RemoteFileArtifactValue no longer tracks mtime.Gravatar shahan2018-05-24
| | | | PiperOrigin-RevId: 197924560
* Log serialized BuildConfigurationValue$Key and its size, for easier ↵Gravatar janakr2018-05-24
| | | | | | diagnosing of bloat. PiperOrigin-RevId: 197915327
* Migrate struct() to skylarkbuildapiGravatar cparsons2018-05-24
| | | | | RELNOTES: None. PiperOrigin-RevId: 197915097
* Expose [AndroidAssetsInfo].local_assets, [AndroidAssetsInfo].local_asset_dir ↵Gravatar Googler2018-05-24
| | | | | | | and [AndroidResourcesInfo].r_txt to Skylark. RELNOTES: none PiperOrigin-RevId: 197902129
* With ActionFS, there is no need to delete previous output files. These ↵Gravatar felly2018-05-24
| | | | | | should not exist. PiperOrigin-RevId: 197895718