aboutsummaryrefslogtreecommitdiffhomepage
Commit message (Collapse)AuthorAge
* Recompile linkstamps whenever any input of the owning action changes.Gravatar hlopko2018-02-22
| | | | | | | | | | | Linkstamps were not re-built when only volatile data changed, i.e. when we modified cc_binary source, linkstamp was not recompiled so we got old timestamps. The proper behavior is to recompile linkstamp whenever any input to cc_binary linking action changes. And the implementation in this cl solves this by adding all linking inputs as inputs to linkstamp compile action. RELNOTES: None. PiperOrigin-RevId: 186595143
* Do not unconditionally add gcc3 as a system include directory for stlGravatar hlopko2018-02-22
| | | | | | | Fixes #3507. RELNOTES: None. PiperOrigin-RevId: 186595099
* Add a test verifying legitmate path embeddingGravatar Klaus Aehlig2018-02-22
| | | | | | | | | | While rules that want to be called from different repositories may not make any assumptions about locations of their dependencies, they still may embed path obtained via expansion of $(location ...) into their files. Add tests verifying that this behavior is preserved. Change-Id: Id71588b4c128c15926d9190db507c9085fd17653 PiperOrigin-RevId: 186591069
* Fix test name in fallback xml when --run_under is used.Gravatar Benjamin Peterson2018-02-22
| | | | | | | | | | | When --run_under is used, the run-under wrapper will be injected in front of the normal test command line. So, it's incorrect to use the beginning of the command line to infer the test name. However, we can always get the underlying test executable with the TEST_BINARY environmental variable. Rename TEST_NAME to EXE to avoid future confusion. Fixes https://github.com/bazelbuild/bazel/issues/4588. Change-Id: I6fd05cca5e5441c13ee16290c4028ec84adec983 PiperOrigin-RevId: 186590311
* Update javadoc for some headers and include dirs methods.Gravatar Benjamin Peterson2018-02-22
| | | | | | | Methods that return NestedSet shouldn't claim they may return duplicates or their return value will have any sort of meaningful order. Change-Id: I98f92ec6ddbf4d35fea47b12bcd072bb1b0f1e43 PiperOrigin-RevId: 186585490
* Do not expand depset twice and store expanded in ctx.actions.run inputs.Gravatar tomlu2018-02-21
| | | | | | | | | | | | | | Previously, when inputs is a depset, we'd: * Expand it to a collection, then * Expand it again and add it as a flat list to the input builder This would be square on both performance and analysis time memory. Note that we _still_ expand the depset once to try to see if any input is a tool. This will have to be fixed in a future CL. RELNOTES: None PiperOrigin-RevId: 186566243
* add ability to move individual core library methodsGravatar kmb2018-02-21
| | | | | | RELNOTES: None. PiperOrigin-RevId: 186565673
* PiperOrigin-RevId: 186532302Gravatar ahumesky2018-02-21
|
* Add basic equality checking for ErrorInfo and tighten the interface for ↵Gravatar shreyax2018-02-21
| | | | | | ErrorInfoManager. PiperOrigin-RevId: 186524034
* Automated rollback of commit 11cc89a27544311111473dc7a17522635c2b6e70.Gravatar eaftan2018-02-21
| | | | | | | | | | | | | | *** Reason for rollback *** Superceded by https://github.com/bazelbuild/bazel/commit/e734c479956df7a675c61f531d769609d3af3e5d *** Original change description *** JavaBuilder accepts a new --testonly argument to mark compilations of test code. Error Prone will use these to distinguish between test and production code, e.g. for enforcing @VisibleForTesting. PiperOrigin-RevId: 186520809
* Bugfix: spawn output directories are not passed to remote execution.Gravatar olaola2018-02-21
| | | | | | | | This bug was invisible to out tests, because our RemoteWorker will work regardless of whether the output was listed as a file or as a directory. TESTED=same tests RELNOTES: None PiperOrigin-RevId: 186518904
* Disable mobile-install classic mode for internal users.Gravatar Googler2018-02-21
| | | | | RELNOTES: None. PiperOrigin-RevId: 186513938
* Use a separate implicit dependency for dexbuilder in proguarded android buildsGravatar kmb2018-02-21
| | | | | | RELNOTES: None. PiperOrigin-RevId: 186511953
* Add an alias to import_deps_checker. The follow-up cl will reference this aliasGravatar cnsun2018-02-21
| | | | | | | | | to check the completeness of the deps of aar_import targets. Followup cl of unknown commit RELNOTES: None. PiperOrigin-RevId: 186503514
* Recommend True and False for boolean attributes.Gravatar laurentlb2018-02-21
| | | | | RELNOTES: None. PiperOrigin-RevId: 186501019
* Deflake ParallelEvaluatorTest.errorBubblesToParentsOfTopLevelValue: error ↵Gravatar janakr2018-02-21
| | | | | | cannot finish building until top registers a dep on it, and we can only know that by listening to the addReverseDep call. PiperOrigin-RevId: 186499232
* Add --experimental_fix_deps_tool to JavaBuilderGravatar Googler2018-02-21
| | | | | RELNOTES: None PiperOrigin-RevId: 186494122
* Set default of --incompatible_disable_glob_tracking to trueGravatar laurentlb2018-02-21
| | | | | RELNOTES: None. PiperOrigin-RevId: 186470386
* Don't register linkstamp compile actions when we're doing thinlto indexing stepGravatar hlopko2018-02-21
| | | | | RELNOTES: None. PiperOrigin-RevId: 186456188
* C++: Migrate CcCompilationInfo to NativeInfoGravatar plf2018-02-21
| | | | | | | | The old TransitiveInfoProvider is deprecated. Providers used from Skylark should use NativeInfo as specified in[] RELNOTES:none PiperOrigin-RevId: 186447814
* C++: Renames CppCompilationContext to CcCompilationInfoGravatar plf2018-02-21
| | | | | | | This is in preparation for migrating to the new way of specifying providers as described in[] RELNOTES:none PiperOrigin-RevId: 186436462
* Clean up test tag handlingGravatar ulfjack2018-02-21
| | | | PiperOrigin-RevId: 186427907
* Apply interface invocation desugaring to renamed core libraries. Fix ↵Gravatar kmb2018-02-20
| | | | | | | | invokespecial invocations for core interfaces. RELNOTES: None. PiperOrigin-RevId: 186404206
* Internal changeGravatar felly2018-02-20
| | | | PiperOrigin-RevId: 186397865
* Deletes POLYMORPHIC strategy. ObjectCodec now uses runtime type information ↵Gravatar shahan2018-02-20
| | | | | | to select a codec. PiperOrigin-RevId: 186378153
* In TransitiveBaseTraversalFunction, only process the deps once we have all ↵Gravatar shreyax2018-02-20
| | | | | | the information we need. It is a waste of CPU time otherwise as we will just lose the state. Note that we don't pass the env directly into the processDeps function so this wasn't a skyframe restart optimization. Also, none of the state recorded in the processDeps for the direct label deps is used in computing the aspect deps, as we immediately call targetAndErrorIfAny#getTarget. PiperOrigin-RevId: 186373573
* Tool that scans a given Jar for references to select classes and outputs ↵Gravatar kmb2018-02-20
| | | | | | | | corresponding Proguard-style -keep rules RELNOTES: None. PiperOrigin-RevId: 186372769
* Update --flaky_test_attempts to also take a repeatable argument of the formGravatar jcater2018-02-20
| | | | | | | | | regex@attempts, similarly to --runs_per_test. Also re-arrange some option converters to be closer to their options. RELNOTES: flaky_test_attempts supports the regex@attempts syntax, like runs_per_test. PiperOrigin-RevId: 186358437
* Adds ObjectCodecRegistry to {Des|S}erializationContext.Gravatar shahan2018-02-20
| | | | | | | | | | | | * AutoCodec now delegates to the registry. * Adds getSuperclass logic for resolving a codec. * Small cleanups for classes that break the registry. TODO after this change: * Explicit CODEC definitions are no longer needed and existing ones should be cleaned up. * POLYMORPHIC is no longer be needed and should be cleaned up. PiperOrigin-RevId: 186351845
* Some autocodec changes required to serialize SpawnAction: double field and ↵Gravatar cpeyser2018-02-20
| | | | | | CharSequence fields. PiperOrigin-RevId: 186323424
* Inject the product name in the constructor where neededGravatar ulfjack2018-02-20
| | | | | | ...instead of passing it everywhere so we can rewrite the local env. PiperOrigin-RevId: 186316859
* Serialize MiddlemanAction and add strategy=Strategy.Polymorphic for Action andGravatar mjhalupka2018-02-20
| | | | | | AbstractAction. PiperOrigin-RevId: 186316435
* @AutoCodec some c++ linking data structures.Gravatar cpeyser2018-02-20
| | | | PiperOrigin-RevId: 186314781
* Decprecate native http_archiveGravatar Klaus Aehlig2018-02-20
| | | | | | | | | | | | | | | Since the skylark implementation of http_archive provides all the features available in the native http_archive and a few more (patching), there is no need to have to rule implementations doing the same thing. Hence deprecate the native one as part of our plan of moving more functionality to skylark. RELNOTES: The native http_archive rule is deprecated. Use the Skylark version available via load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive") instead. Change-Id: I107c2f25f5a37c67f56b4362e7c9d9ade8428c16 PiperOrigin-RevId: 186314624
* External repositories: document label expansionGravatar Klaus Aehlig2018-02-20
| | | | | | | | | | Add a test demonstrating how a repository can provide a rule with an implicit dependency on a target in its own repository in a way that works both, locally and remotely without the need to know the name of the repository the rule resides in. Change-Id: I2446be1ba16a382576800f8141da17331e64f8b1 PiperOrigin-RevId: 186314462
* Roll forward of ↵Gravatar olaola2018-02-20
| | | | | | | | | | | | | | | | | | https://github.com/bazelbuild/bazel/commit/3904ac33a983fd8faebba1b52bcac5a3ff942029 (https://github.com/bazelbuild/bazel/commit/3904ac33a983fd8faebba1b52bcac5a3ff942029). Fix #4625 by running the test process in a sub-shell. Apparently, nested background processes interfere with SIGINT handling in bash. I don't 100% understand why and how, but I do have a small bash script that demonstrates the problem: script A that spawns a background process, sends it a SIGINT, and verifies it was received. The script works, *unless* run in the background by a process B; this extra layer of backgrounding cause process A's logic to stop working. See experimental/users/olaola/shell/ for examples. See also https://stackoverflow.com/questions/48847722/nested-background-processes-and-sigint-handling *** Original change description *** Fixing test-setup.sh occasionally missing stdout/stderr, on systems where "tail --pid" is supported. The solutions aren't mine, the new test was taken from Ola's unknown commit and the way to avoid race condition courtesy of sethkoehler@ Mitigates #4608 for compatible Linux systems. TESTED=presubmits, manual shell tests on new bazel RELNOTES: None PiperOrigin-RevId: 186312008
* Docs: remove reference to supplying an absolute path to --javabase.Gravatar Gregg Donovan2018-02-20
| | | | | | | | This option was removed in https://github.com/bazelbuild/bazel/commit/2ea4fa26281175c316651ec50784b820a9f409cf. Closes #4509. PiperOrigin-RevId: 186311923
* Fix env for local fallback (from remote exec) on Windows and LinuxGravatar ulfjack2018-02-20
| | | | PiperOrigin-RevId: 186309181
* Fix typo in cache download failure warningGravatar Alex Ryan2018-02-20
| | | | | | Closes #4646. PiperOrigin-RevId: 186301842
* Improve some of the names in CommandLine.Gravatar tomlu2018-02-20
| | | | PiperOrigin-RevId: 186298405
* Add linter check for deprecated ctx methods.Gravatar laurentlb2018-02-20
| | | | | RELNOTES: None. PiperOrigin-RevId: 186297559
* Bazel client: remove dead codeGravatar Laszlo Csomor2018-02-20
| | | | | | | | | Remove the static kAsciiPropertyBits data from strings.cc and replace its only reference with simpler code. Change-Id: I95fb12b7d4bca4589ae64603b63019ee6e12bfc2 PiperOrigin-RevId: 186295165
* Accept proto paths relative to proto_source_root as direct dependencies.Gravatar elenairina2018-02-20
| | | | | | | | | | | This will make protoc see as direct dependencies the .proto files that were included using the proto_source_root flag. Until now, Bazel passed to protoc the direct dependencies of a target as the path relative to the WORKSPACE, which made it fail when a shorter path, relative to the package was used. Progress on #4544. RELNOTES: None. PiperOrigin-RevId: 186294997
* http_archive: fix doc-stringGravatar Klaus Aehlig2018-02-20
| | | | | | | | | Since the http_archive inherits the native download_and_extract function, the support of plain tar archives introduced in 4c8fa1bab507fa7f0a1cbeac0724751d9b574f89 applies here as well. Fix the doc strings accordingly. Change-Id: Ica4037215abf7498c3a8ec9f21ac32b2e59e8966 PiperOrigin-RevId: 186293816
* Provide a hacky way to get an ActionInput from BinToolsGravatar ulfjack2018-02-20
| | | | | | | | | | | | We have two places in internal code that require an ActionInput for an embedded tool. The embedded tool is currently not declared as an input to the corresponding actions, which in turn causes the remote execution to stat the file directly through SingleBuildFileCache. I'm working on removing SingleBuildFileCache, so this needs to be solved. This is the quick-and-dirty fix. A more principled fix might be to check in the relevant tools instead of embedding them into Bazel, but it's also significantly more work. PiperOrigin-RevId: 186292203
* Add example in Skylint docGravatar laurentlb2018-02-20
| | | | PiperOrigin-RevId: 186290994
* Propagating whether there was a cache hit in the SpawnResult.Gravatar olaola2018-02-20
| | | | | | | | So far, nobody uses it, but I want to start using this field soon. TESTED=unit test RELNOTES: None PiperOrigin-RevId: 186290375
* Add additional tests for Filesets with symlinksGravatar ulfjack2018-02-20
| | | | | | | | | - Make sure that we correctly resolve symlinks starting with ./ and ../. This is currently failing, although it's working at head. From my reading, https://github.com/bazelbuild/bazel/commit/a729b9b4c3d7844a7d44934bf3365f92633c0a60 changes PathFragment.getRelative to always normalize the return value, which it wasn't doing before. PiperOrigin-RevId: 186289431
* http_archive: allow parameter for a single URLGravatar Klaus Aehlig2018-02-20
| | | | | | | | | | | ...to ease transition from the native http_archive rule. In this way, switching from the native http_archive rule to the skylark one literally is only adding load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive") Change-Id: I0d3a16ad9ab046b975ea64c97dd201e7a9d70a6a PiperOrigin-RevId: 186285020
* Route fdo logic that deals with the path to the fdo profile through ↵Gravatar Googler2018-02-20
| | | | | | | | | | CcToolchainProvider As --fdo_optimize can point to a label, the path to the fdo profile can not be reliably determined in CppConfiguration. In order to enable the fdo features (which depend on the path to the fdo profile), the logic from CppConfiguration.configurationEnabledFeatures() has been moved to CcCommon.configureFeatures(). The latter method has access to the fdo profile path through CcToolchainProvider. RELNOTES: None. PiperOrigin-RevId: 186278311