aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/main/java/com/google/devtools/build/lib
Commit message (Collapse)AuthorAge
* Partial rollback of commit 2661abb96b1fe51fb726a63eb08698564a82eb20.Gravatar hlopko2018-05-18
| | | | | | | | | | | | | | | | *** Reason for rollback *** Breaks perf regtest *** Original change description *** Split user_link_flags from legacy_link_flags The difference between them is that user_link_flags will stay after we remove legacy fields from the crosstool. RELNOTES: None. PiperOrigin-RevId: 197180518
* Move various visitor classes into their own classes. ParallelSkyQueryUtils ↵Gravatar shreyax2018-05-18
| | | | | | is currently quite large and hard to navigate. Also, rename AbstractRdepsVisitor to AbstractEdgeVisitor as there is nothing specific about rdeps involved. PiperOrigin-RevId: 197177966
* Fork RuleContext.ErrorReporter to create a Skylark-friendly RuleErrorConsumerGravatar asteinb2018-05-18
| | | | | | | | | | | | | | The new error consumer is simple to create from @SkylarkCallable methods, so we won't need to pass SkylarkRuleContext into those methods for that reason anymore. Create a new abstract class, rather than expand the existing AbstractRuleErrorConsumer class, since the latter is already being extended and used in a variety of tests, and I prefer not to have to migrate all of them as needed. Add Javadoc to make clear that this class should not be used similarly. RELNOTES: none PiperOrigin-RevId: 197148849
* bes: disable best effort upload by default.Gravatar buchgr2018-05-18
| | | | | | | | | | | | Disabling best effort upload means that a build will wait for the BES upload to finish and also that it will fail if the BES upload fails. We are planning on removing/deprecating the best effort upload functionality eventually. RELNOTES: None PiperOrigin-RevId: 197148222
* Skylark debug server: add serialization codeGravatar Googler2018-05-18
| | | | | | | Small self-contained part of the debug server (see unknown commit for the larger picture). PiperOrigin-RevId: 197140094
* Delete Java support from proto_library.Gravatar tomlu2018-05-18
| | | | | RELNOTES: None PiperOrigin-RevId: 197136304
* Move coverageSupport and coverageReportGenerator from BuildConfiguration toGravatar dbabkin2018-05-18
| | | | | | | TestConfiguration. RELNOTES:none PiperOrigin-RevId: 197135911
* C++: Add more parameters to Skylark API needed for match_clifGravatar plf2018-05-18
| | | | | RELNOTES:none PiperOrigin-RevId: 197132493
* Add support of empty target to LateBoundAlias.Gravatar dbabkin2018-05-18
| | | | | RELNOTES:none PiperOrigin-RevId: 197132230
* Refactor artifact_name_pattern in CROSSTOOLGravatar pcloudy2018-05-18
| | | | | | | | Instead of using a string pattern, we replace it with a prefix and an extension. RELNOTES: NONE PiperOrigin-RevId: 197132215
* Changing SymlinkTreeStrategy not to use spawns.Gravatar Googler2018-05-18
| | | | | RELNOTES: An internal action for symlinking runfiles will use Command instead of a Spawns. This should have no functional chages; the only user visible consequence should be that the internal action is no longer be included in statistics when calculating processes count. PiperOrigin-RevId: 197131917
* Remove the "--as_test" command line option to "bazel run".Gravatar lberki2018-05-18
| | | | | | RELNOTES[INC]: "bazel run --noas_test" is not supported anymore. PiperOrigin-RevId: 197126838
* Remove "bazel run --nodirect_run".Gravatar lberki2018-05-18
| | | | | | | RELNOTES[INC]: Bazel now always runs binaries in with "bazel run" in interactive mode. The "--nodirect_run" command line option is now a no-op. PiperOrigin-RevId: 197121535
* Remove RuleErrorException from RuleConfiguredTargetBuilder.build signature.Gravatar dbabkin2018-05-18
| | | | | RELNOTES:none PiperOrigin-RevId: 197117392
* Allows ActionFS to delegate to other file systems.Gravatar shahan2018-05-17
| | | | PiperOrigin-RevId: 197055263
* Support for ThinLTO to be enabled implicitly with FDOGravatar Googler2018-05-17
| | | | | | | | | | Allows for ThinLTO to be enabled once the --features=fdo_implicit_thinlto feature is enabled in the crosstool. Also allows for --features=-thin_lto to override and prevent ThinLTO from being enabled. This is essentially the same as https://github.com/bazelbuild/bazel/commit/8e3afccd8bea45105752ddeb33bde111c556fb8b but for instrumentation FDO instead of AFDO. RELNOTES: None. PiperOrigin-RevId: 197038710
* RELNOTES: Update the skylark DefaultInfo documentation to spell out ↵Gravatar Googler2018-05-17
| | | | | | runfiles, data_runfiles and default_runfiles PiperOrigin-RevId: 197017350
* Rename BuildEventConverters to BuildEventContextGravatar ulfjack2018-05-17
| | | | | | | This is in preparation for adding options to the class, which can be used to modify the behavior of build events posted to the BEP. PiperOrigin-RevId: 196997573
* Missing space in TargetPatternPhaseValue.toString()Gravatar shahan2018-05-17
| | | | PiperOrigin-RevId: 196996468
* Expose RuleContext methods in ActionConstructionContextGravatar asteinb2018-05-17
| | | | | | | | | | | | | - Common methods for creating artifacts - Convenience method for registering action Also, create a new getUniqueDirectoryArtifact method that doesn't require a root directory to be passed in - every call I've seen to getUniqueDirectoryArtifact always uses RuleContext#getBinOrGenfilesDirectory ffor this value. RELNOTES: none PiperOrigin-RevId: 196993195
* Makes BuildConfigurationValue.Key.toString() a bit more informative.Gravatar shahan2018-05-17
| | | | PiperOrigin-RevId: 196991801
* Rename CommandAction.getEnvironment, add AbstractAction.getEnvironmentGravatar ulfjack2018-05-17
| | | | | | | | | | | | | | | This is a cleanup to clarify the code. 1. The getEnvironment method in the CommandAction interface does not have access to the clientEnv, so it's return value is necessarily incomplete. Rename to getIncompleteEnvironmentForTesting. 2. Add a final getEnvironment method to AbstractAction, which returns the ActionEnvironment, which is intended to be a complete description of the intended final environment of the action (technically, of any spawn running within the action). This is not currently used, but is provided to prevent action subclasses to add such a method (it may be used in the future). PiperOrigin-RevId: 196991091
* uid related fixes in docker sandboxGravatar Siddhartha Bagaria2018-05-17
| | | | | | | | uid and gid of -1 (set when not linux) can not really be used anywhere. Closes #5165. PiperOrigin-RevId: 196974660
* Remove AbruptException(ExitCode exitCode) constructor.Gravatar lpino2018-05-17
| | | | | | | | | This constructor was creating an Exception with a null message leading to possible NullPointerExceptions in a few places in our codebase. The call sites have been replaced with calls to AbruptException(String message, ExitCode exitCode) with a meaningful message. PiperOrigin-RevId: 196973540
* Fix Cpp{Compile,Link}Action environment and cache key computationGravatar ulfjack2018-05-17
| | | | | | | | | | These were previously ignoring the inhertied environment, i.e., --action_env=PATH did _not_ result in the PATH variable being forwarded from the client environment. Fixes #5142. PiperOrigin-RevId: 196966822
* Fix modules returning command optionsGravatar ulfjack2018-05-17
| | | | | | | Nobody reads the documentation, apparently. It also clearly states that getCommonCommandOptions should be used to add options to all commands. PiperOrigin-RevId: 196965665
* Automated rollback of commit 4ba134f008719a52c1f74dc070121017d0b08f44.Gravatar hlopko2018-05-17
| | | | | RELNOTES: None. PiperOrigin-RevId: 196953169
* Split user_link_flags from legacy_link_flagsGravatar hlopko2018-05-16
| | | | | | | | The difference between them is that user_link_flags will stay after we remove legacy fields from the crosstool. RELNOTES: None. PiperOrigin-RevId: 196940832
* Build support for passing a software cache prefetching hints file.Gravatar Googler2018-05-16
| | | | | | | | | This flag assumes llvm supports an experimental 'prefetch-hints-flag' flag. The Bazel support simply plumbs the provided file through to the compiler. The flag is independent from the other fdo_ flags, and may be applied in any combination with them. RELNOTES: Introduce build support for providing cache prefetch hints. PiperOrigin-RevId: 196916547
* Internal changeGravatar cpeyser2018-05-16
| | | | PiperOrigin-RevId: 196881464
* remote/exec: always mark files executable.Gravatar Jakob Buchgraber2018-05-16
| | | | | | | | | | | | The main motivation for this change is to act as a workaround for #4751. Additionally, this reduces the number of stat() system calls significantly e.g. by 50% when building Bazel (600K vs 1.2M). cc: @werkt @ola-rozenfeld Closes #5204. PiperOrigin-RevId: 196878093
* Replace use of output_object_file with output_file in CROSSTOOLS.Gravatar hlopko2018-05-16
| | | | | RELNOTES: None. PiperOrigin-RevId: 196870840
* Include broken packages in rbuildfiles responseGravatar mschaller2018-05-16
| | | | | | | | | | Also allow overrides for SkyQuery's getBuildFileTargetsForPackageKeysAndProcessViaCallback. Lastly, some cleanup in ParallelSkyQueryUtils. RELNOTES: SkyQuery's rbuildfiles now returns targets corresponding to broken packages. PiperOrigin-RevId: 196868692
* Remove glob list from native rulesGravatar laurentlb2018-05-16
| | | | | | | | Since the glob() function now returns a standard list, some code can be simplified. RELNOTES: None. PiperOrigin-RevId: 196867957
* Make ImportDepsCheckingLevel.ERROR essentially the same as STRICT_ERROR, ↵Gravatar cnsun2018-05-16
| | | | | | | checking direct dependencies. RELNOTES: None. PiperOrigin-RevId: 196860008
* Passes the runfile manifest artifact into RunfilesSupplierImpl so that it canGravatar shahan2018-05-16
| | | | | | | | be filtered by spawn inputs downstream. Documents why the manifest is passed to the RunfilesSupplierImpl constructor. PiperOrigin-RevId: 196858753
* Remove --incompatible_disable_glob_tracking flag.Gravatar laurentlb2018-05-16
| | | | | | RELNOTES: Flag `--incompatible_disable_glob_tracking` is removed. PiperOrigin-RevId: 196852718
* Enable manual trimming of config_feature_flags.Gravatar mstaib2018-05-16
| | | | | | | This enables users of config_feature_flags to specify the flags used by the transitive closure of a particular target in the transitive_configs attribute of all targets. It also adds a flag - --enforce_transitive_configs_for_config_feature_flag - which enforces this specification and uses it to trim the set of flags available to that target. RELNOTES: None. PiperOrigin-RevId: 196846092
* Create {Un}ManagedBuildEventServiceGrpcClient to allow customization of the ↵Gravatar lpino2018-05-16
| | | | | | | channel used to connect with BES. RELNOTES: none. PiperOrigin-RevId: 196845127
* Fix embedded JDK LICENSE handling for JDK 9Gravatar cushon2018-05-16
| | | | PiperOrigin-RevId: 196840344
* Add libc_top attribute to cc_toolchain in preparation for moving config data ↵Gravatar jcater2018-05-16
| | | | | | out of CppConfiguration. PiperOrigin-RevId: 196838680
* Port bazelrc flags into their own module.Gravatar ccalvarin2018-05-16
| | | | | | | | | This way the documentation logs them correctly as named "bazel," and describes the correct behavior. Needed for #4502. RELNOTES: None. PiperOrigin-RevId: 196837021
* remote: recursively delete incomplete downloaded output directory.Gravatar Jakob Buchgraber2018-05-16
| | | | | | | | Fixes #5047 Closes #5209. PiperOrigin-RevId: 196832678
* Properly quote $(location ) expansion for the shellGravatar Klaus Aehlig2018-05-16
| | | | | | | | | | | ...by using the ShellEscaper rather than the ad-hoc "escaping" in LocationExpander. Fixes #5190. At least to the extend that a context-independent quoting can work. Change-Id: I858662861a2504139c19d773690aef2befc23948 PiperOrigin-RevId: 196832574
* In TestsInSuiteValue, replace Target member with Label. This makesGravatar cpeyser2018-05-16
| | | | | | TestsInSuiteValue serializable. PiperOrigin-RevId: 196831698
* Support .afdo profiles in fdo_profileGravatar rosica2018-05-16
| | | | | RELNOTES: None. PiperOrigin-RevId: 196825564
* Expose local_proguard_specs to Skylark.Gravatar Googler2018-05-16
| | | | | RELNOTES: none PiperOrigin-RevId: 196824775
* Make inclusion of the zipper executable in CcToolchain depend solely on ↵Gravatar rosica2018-05-16
| | | | | | | | | | whether FDO optimization is used (--fdo_optimize or --fdo_profile) As part of the work of removing usage of c++ toolchain from CppConfiguration, CppConfiguration#isLLVMCompiler method needs to be removed. Currently, CppConfiguration#shouldIncludeZipperInToolchain (former CppConfiguration#isLLVMOptimizedFdo) method uses the CppConfiguration#isLLVMCompiler method to determine whether the compiler is LLVM and conditionally includes the zipper if the compiler is LLVM and FDO optimization is in place. Instead of rerouting the information on the compiler and FDO profile through FeatureFlagInfo, we make the inclusion of the zipper executable depend only on usage of FDO optimization. PiperOrigin-RevId: 196819907
* Filtering the legacy important_outputs field in the BEP by source, middlemanGravatar ulfjack2018-05-16
| | | | | | | | This change makes the field match the semantics of the legacy mechanism that is not open source. This is intended for migration only and the field should not be used otherwise (that is why the field is deprecated). PiperOrigin-RevId: 196817282
* test failure: print stacktrace on I/O errorGravatar Laszlo Csomor2018-05-16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Print the stacktrace of unexpected I/O errors in StandaloneTestStrategy, to ease diagnosing the root cause of the exception. See https://github.com/bazelbuild/bazel/issues/4924 Without the stacktrace, all we see in BuildKite is, for example: ``` ERROR: Caught I/O exception: java.io.IOException: C:/users/b/_bazel_b/bnp8s_vg/execroot/io_bazel/_tmp/b6bda2f0385d1152d3a7f550c6cc1938/_bazel_b/install/23a47abea50baae4d7e032437c1cecc9/_embedded_binaries/embedded_tools/jdk/bin/java.exe (Permission denied) ERROR: C:/build/buildkite-worker-windows-java8-lfl8-1/bazel/google-bazel-presubmit/src/test/py/bazel/BUILD:71:1: Couldn't build file src/test/py/bazel/bazel_windows_test/test.log: failed: unexpected I/O exception: C:/users/b/_bazel_b/bnp8s_vg/execroot/io_bazel/_tmp/b6bda2f0385d1152d3a7f550c6cc1938/_bazel_b/install/23a47abea50baae4d7e032437c1cecc9/_embedded_binaries/embedded_tools/jdk/bin/java.exe (Permission denied) ``` The above log contains no information on what exactly tried accessing java.exe and how, and why it failed. With a stacktrace I'm hoping to shed light on the culprit. Change-Id: I4f3851cd1bc1b2b348217de5b41069591a8f4446 Closes #5207. Change-Id: I792f4a36c1e31ca6332db2dc2d37bd8e597050b3 PiperOrigin-RevId: 196815410