aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/main/java/com/google/devtools/build
Commit message (Collapse)AuthorAge
* Move --build_python_zip into PythonConfiguration.Gravatar mstaib2017-09-21
| | | | | | | | There's no need for it in the core configuration options, as it's used exclusively by Python rules. RELNOTES: None. PiperOrigin-RevId: 169435643
* remove long-deprecated incremental dexing flag that has no effectGravatar kmb2017-09-21
| | | | | | RELNOTES: remove unused --host_incremental_dexing flag PiperOrigin-RevId: 169433775
* Removing deprecated field total_input_file_count.Gravatar olaola2017-09-21
| | | | | | | | | See API Revisions design doc: https://docs.google.com/document/d/12c3oAPgedckLpue2yj0xGgJTEOyUm4mXWWBJ157J-8I/edit#heading=h.llz6ymkp07b1 The BuildInfo is now sent via RequestMetadata. TESTED=we never used this field PiperOrigin-RevId: 169432884
* Delete ios_application, ios_extension(_binary), objc_binary.Gravatar allevato2017-09-21
| | | | PiperOrigin-RevId: 169428146
* Add ability to write param files to disk.Gravatar tomlu2017-09-21
| | | | PiperOrigin-RevId: 169418286
* Only load the whitelist for Android targets if they use feature flags.Gravatar mstaib2017-09-21
| | | | | | | | | | | | | | Currently, every Android-related top-level target will use the feature flag whitelist, regardless of whether it has any feature flags. This change makes it so that these targets only load the whitelist if they need it. In the process, it moves the value of the whitelist from the attribute definition method to outside of it. Because it's a builder, this is only a minor change to each callsite. RELNOTES: None. PiperOrigin-RevId: 169405621
* Drop 32-bit architectures from builds with ios_mimimum_os > 11.0.Gravatar cparsons2017-09-21
| | | | | | | This change misses the corner case of builds which are entirely 32-bit (as opposed to mixed 32&64 bit) due to no legitimate place to report the error of such a build; execution will fail for such builds at the action level. RELNOTES: None. PiperOrigin-RevId: 169397354
* Passing Bazel metadata in gRPC headers.Gravatar olaola2017-09-21
| | | | | | TESTED=unit tests RELNOTES: none PiperOrigin-RevId: 169395919
* Improve the error message for toolchain selection when the default platform ↵Gravatar cpeyser2017-09-20
| | | | | | is not present. PiperOrigin-RevId: 169387061
* Expose 'registerAction' on SkylarkActionFactory.Gravatar dslomov2017-09-20
| | | | | | | | Replaces 'buildAndRegisterSpawnAction' now that ActionConstructionContext does not leak underlying rule. RELNOTES: None. PiperOrigin-RevId: 169385509
* Do not put sysroot into unfiltered_compile_flagsGravatar hlopko2017-09-20
| | | | | | | | | Now that we have dedicated sysroot variable, it is not necessary to have it in unfiltered_compile_flags (actually, it's bad to have it here because it assumes --sysroot= flag, and that doesn't work cross-platform). RELNOTES: None. PiperOrigin-RevId: 169384693
* Check parameter types for methods when multiple types are allowed.Gravatar dslomov2017-09-20
| | | | | | Fixes #3714 RELNOTES: None. PiperOrigin-RevId: 169382686
* Revert output groups name of cc_libraryGravatar pcloudy2017-09-20
| | | | | | | | Static libraries: cc_archive -> archive Dynamic libraries: cc_dynamic_library -> dynamic_library RELNOTES: None PiperOrigin-RevId: 169374373
* Remove $LANG from --experimental_strict_action_env help.Gravatar Benjamin Peterson2017-09-20
| | | | | | | This option does not in fact set a static $LANG envvar. Change-Id: I9fbc477194aa1a8723069bb89069be6fafb8df35 PiperOrigin-RevId: 169364740
* Add sanity check that the runfiles middleman root is a middleman rootGravatar ulfjack2017-09-20
| | | | | | This would have prevented a large breakage. PiperOrigin-RevId: 169364731
* Windows: Make dynamic libraries available to binary at runtimeGravatar Yun Peng2017-09-20
| | | | | | | | | | | When copy_dynamic_libraries_to_binary is enabled, we copy the shared libraries required by the binary to the binary's directory. Bazel will throw errors if there are confilct actions generating the same artifacts. Change-Id: I09a5a599ca0ec7a67efd49d5aa89481450fa4e90 PiperOrigin-RevId: 169364498
* Move ConfiguredTargetFunction dynamic config selection to its own class.Gravatar gregce2017-09-20
| | | | | | | | Also clarify the interfaces *TransitionResolver* - which determines what transition to apply to an input configuration and *ConfigurationResolver* - which determines the output configuration from that transition. PiperOrigin-RevId: 169311986
* Fix bug in NetUtil caching.Gravatar felly2017-09-20
| | | | | | | Fixes #3586. RELNOTES: None. PiperOrigin-RevId: 169303481
* Switch from using Iterable to Collection in the return type to be more explicit.Gravatar shreyax2017-09-20
| | | | PiperOrigin-RevId: 169278760
* Document the options in smaller commands.Gravatar ccalvarin2017-09-20
| | | | | RELNOTES: None. PiperOrigin-RevId: 169258065
* Always pass resource filters to aaptGravatar Googler2017-09-20
| | | | | | | | | | | | | | | | | It turns out that the code to filter in analysis, based on android_ide_common, isn't as strict as aapt is. In particular, given a language filter (like 'en'), aapt rejects language and region resources (like 'en-rUS') but android_ide_common does not. We could try to just patch this behavior, but it's probably indicative of larger inconsistancies between android_ide_common and aapt. As a result, always pass resource filters to aapt. In most cases, if we already filtered in analysis, few if any resources will be filtered out by aapt, so we'll still keep most of the performance gains we expected from filtering in analysis. RELNOTES: none PiperOrigin-RevId: 169254335
* Introduce --enabled_toolchain_types, which when set to the cpp toolchain ↵Gravatar cpeyser2017-09-20
| | | | | | causes the cc_toolchain dependency of cc targets to be selected using the platforms/toolchains constraint solving system. PiperOrigin-RevId: 169250621
* Include library R classes in runtime classpath for library but not binaryGravatar Googler2017-09-20
| | | | | | | | | | In general, R classes for Android libraries are used for compilation of those libraries and then thrown away. They are replaced by the R classes from the binary. Removing the unused android_library R classes will make binaries smaller. RELNOTES: none PiperOrigin-RevId: 169244068
* LateBoundDefault: enforce access to a single fragment (or none).Gravatar mstaib2017-09-19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Currently, there is no way to enforce that LateBoundDefaults only access the fragments that they declare. This means that LateBoundDefaults can fail to declare fragments at all, or declare the wrong ones, and still have no troubles. But when trimming, these fragments must be declared, because otherwise they will not necessarily be available. This change refactors LateBoundDefault to declare a single fragment type, not a set. All existing LateBoundDefaults use sets with a single element or no elements at all for their set of fragment classes, so this does not limit anything being done currently. To account for LateBoundDefaults which do not use configuration at all, typically those which only want to access the configured attribute map, it is possible for Void to be the fragment class which is requested. To account for LateBoundDefaults which need to access methods of the BuildConfiguration instance itself, it is possible for BuildConfiguration to be the fragment class which is requested; however, this is unsafe, so it is only a temporary state until a way to do this without also giving access to all of the fragments can be added. Drive-by refactoring: LateBoundDefaults' values are now typed. All actual production LateBoundDefaults were Label or List<Label> typed, through the LateBoundLabel and LateBoundLabelList subclasses. These subclasses have been removed, and LateBoundDefault has two type parameters, one for the type of its input, and one for the type of its output. RELNOTES: None. PiperOrigin-RevId: 169242278
* Automated rollback of commit 743dc14f9f30b80d6d821612f77186afb025477d.Gravatar dslomov2017-09-19
| | | | | | | | | | | | | | | | | | | | | | | *** Reason for rollback *** Rollforward with a fix *** Original change description *** Automated rollback of commit 0ee3aa622fc13b8a5072ebddf5cd65823413b4ff. *** Reason for rollback *** Likely causing artifact conflicts for middleman artifacts in some cases due to accidental change of getMiddlemanDir() to getBinDir() in RunfilesSupport.createManifestMiddleman. *** Original change description *** Cleanup ActionConstructionContext. Do not expose the underlying Rule. RELNOTES: None. PiperOrigin-RevId: 169241011
* Wrap runtime jars and proto sources going into runfiles in a stable order ↵Gravatar tomlu2017-09-19
| | | | | | | | nested set. This saves memory, as the nested set would otherwise become flattened. Assuming the jars don't have duplicates files with the same root relative path in the same runfiles tree this won't make any semantic difference. PiperOrigin-RevId: 169234428
* Defer expanding sources to path fragments until execution for source jar ↵Gravatar tomlu2017-09-19
| | | | | | actions. PiperOrigin-RevId: 169234341
* Implement support for Skylark param files.Gravatar tomlu2017-09-19
| | | | PiperOrigin-RevId: 169234249
* Do not duplicate build variables, reuse variables from cc toolchainGravatar hlopko2017-09-19
| | | | | | | | | | | Before this cl each linking and compilation action would contain a full copy of all build variables. However, some build variables can be reused, for the memory consumption benefit. With this cl, we contruct a Variables instance in the CcToolchain, and make it a parent of all per-linking and per-compilation variables. RELNOTES: None. PiperOrigin-RevId: 169233756
* Automated rollback of commit 0ee3aa622fc13b8a5072ebddf5cd65823413b4ff.Gravatar ulfjack2017-09-19
| | | | | | | | | | | | | | | *** Reason for rollback *** Likely causing artifact conflicts for middleman artifacts in some cases due to accidental change of getMiddlemanDir() to getBinDir() in RunfilesSupport.createManifestMiddleman. *** Original change description *** Cleanup ActionConstructionContext. Do not expose the underlying Rule. RELNOTES: None. PiperOrigin-RevId: 169230095
* Remove an unused method.Gravatar lberki2017-09-19
| | | | | RELNOTES: None. PiperOrigin-RevId: 169223392
* Expose full compile time jars in SkylarkGravatar elenairina2017-09-19
| | | | | | | | | | | There are several use cases for using full compile time jars instead of ijars (scala macros cannot use ijar, kotlin dependencies, etc). This change allows creating a provider with or without creating interface jars for compile time, exposing the right full/interface jars on target[JavaInfo].compile_jars and target[JavaInfo].full_compile_jars. For more details see https://github.com/bazelbuild/bazel/issues/3528. Fixes #3528 RELNOTES: java_common.create_provider is now supported with creating ijars by default. This introduces incompatibilities for existing users. Please set use_ijar=False if you don't want to use ijars. PiperOrigin-RevId: 169222793
* Inform SkyframeExecutor when a command starts.Gravatar janakr2017-09-19
| | | | PiperOrigin-RevId: 169179218
* Move RuleConfiguredTarget to lib.analysis.configuredtargets.Gravatar gregce2017-09-19
| | | | | | This is a trivial change with a large file footprint. PiperOrigin-RevId: 169169864
* Cleanup some databinding code that was messed up by ↵Gravatar ajmichael2017-09-19
| | | | | | | https://github.com/bazelbuild/bazel/commit/b30b3de23a7fa01b8290ace0e688d75405689825 RELNOTES: None PiperOrigin-RevId: 169169249
* Make ObjectCodecs.ClassKeyedBuilder more reasonableGravatar michajlo2017-09-19
| | | | | | | | | Not sure why we passed in Class<T>, ObjectCodec<? extends T> - it should really be the other way around, since ObjectCodec<T> should be able to serialize <? extends T>.... RELNOTES: None PiperOrigin-RevId: 169161061
* Remove flags with no effect from --dexopts_supported_in_dexmerger default in ↵Gravatar kmb2017-09-19
| | | | | | | | preparation for removing those flags from the tool. RELNOTES: none PiperOrigin-RevId: 169154032
* use toList.contains for depset containsKey instead of toSetGravatar cparsons2017-09-19
| | | | | | | This should be a slight performance improvement on the previous implementation, as NestedSet.toSet() calls toList() and then throws the contents into a set RELNOTES: None. PiperOrigin-RevId: 169150743
* Uploading failed action outputs to the remote cache, because even if the ↵Gravatar olaola2017-09-19
| | | | | | | | | tests fails, we still want to be able to download the logs and other outputs from CAS. This fixes a bug introduced by https://github.com/bazelbuild/bazel/commit/562fcf9f5dfd14daea718f77da95b43b1400689b. To reproduce: run a failing test vs a BES service, the test log would not be uploaded. TESTED=unit tests PiperOrigin-RevId: 169143428
* Remove unnecessary injection of precomputed values. Precomputed values are ↵Gravatar janakr2017-09-19
| | | | | | injected in BlazeCommandDispatcher#execExclusively. PiperOrigin-RevId: 169122571
* Cleanup ActionConstructionContext.Gravatar dslomov2017-09-19
| | | | | | | Do not expose the underlying Rule. RELNOTES: None. PiperOrigin-RevId: 169109552
* Unify buildevnts indicating build completionGravatar Klaus Aehlig2017-09-19
| | | | | | | ...by factoring out the common code parts. Change-Id: I2ead39ea218dd535af9684a81a7bbe29b558aa27 PiperOrigin-RevId: 169106854
* Fix documentation for android_sdk_repository.build_tools_version.Gravatar ajmichael2017-09-18
| | | | | RELNOTES: None PiperOrigin-RevId: 169092834
* Java Launcher: Create classpath jar with a random nameGravatar Yun Peng2017-09-18
| | | | | | | | | | | | | | | When the classpath is too long, the launcher creates a jar file to pass the classpath value. This change makes the jar file's name random. It fixed the bug that when running multiple instances of the same java binary, they all try to create the same classpath jar file. For example, when running java_test with shard_count > 1. Also, we delete the classpath jar file after the program finishes, so that we don't leave any garbages behind. Change-Id: I67926b3ef76dcb1806797e977ecaa7c6763c5cf2 PiperOrigin-RevId: 169087032
* Fix BEP to report SKIPPED with TargetCompletedId instead of ConfigurationIdGravatar Googler2017-09-18
| | | | PiperOrigin-RevId: 169067125
* RELNOTES: Fix documentation typo.Gravatar Googler2017-09-18
| | | | PiperOrigin-RevId: 169060289
* Change param file arg string to a format string instead of a prefix string.Gravatar tomlu2017-09-18
| | | | | | Makes it easier to do Skylark param file support which uses a format string. PiperOrigin-RevId: 169019600
* Project reorg: move *ConfiguredTarget to new configuredtargets/ pathGravatar gregce2017-09-18
| | | | | | | Exempt RuleConfiguredTarget in this change because that's liable to touch a billion files. PiperOrigin-RevId: 168929827
* Remove LipoTransition (and replace remaining LIPO_COLLECTOR references).Gravatar gregce2017-09-18
| | | | | | | | Rules should now be configured directly with patch transitions. This brings down our transition interfaces to: Transition, ConfigurationTransition, SplitTransition, PatchTransition. PiperOrigin-RevId: 168927364
* Fix PlatformInfo to correctly report all duplicate constraints, not just the ↵Gravatar John Cater2017-09-18
| | | | | | | first. Change-Id: I3d78418d2c51d09e3862fbab1854ae73a0b3253c PiperOrigin-RevId: 168889865