aboutsummaryrefslogtreecommitdiffhomepage
Commit message (Collapse)AuthorAge
* Rationalize null-ness checks in RunfilesGravatar Ulf Adams2017-03-21
| | | | | | | | | | | This now also checks symlink maps for null pointers, which it previously did not. Unfortunately, there's still one case where we add a null target to Runfiles (to represent an empty file) - this happens in Runfiles itself, and this change prevents any callers from doing so. -- PiperOrigin-RevId: 150634481 MOS_MIGRATED_REVID=150634481
* Replace native AndroidStudioInfoAspect with an error message.Gravatar Googler2017-03-21
| | | | | | | | BUG=33295755 -- PiperOrigin-RevId: 150633735 MOS_MIGRATED_REVID=150633735
* Bazel client, Windows: fix server kill failuresGravatar Laszlo Csomor2017-03-21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fix the (spurious) error messages about the Bazel client's failure to kill the server process, with "Access Denied" errors. This was caused by our attempt to kill the server process twice, and the error was coming from the second attempt. The culprit was an unimplemented VerifyServerProcess method (which ensures that the PID read from the server.pid.txt indeed refers to a running Bazel server) which always returned false, to avoid accidentally killing an unrelated process that got the same PID as the last alive Bazel server. The new code follows the same logic as the Linux version of Bazel, namely storing the process' start time in a file next to the PID file, and checking that the process with said PID was indeed started at the time we read from the file. This change also fixes a problem that the now working VerifyServerProcess uncovered: we need to wait for the previous Bazel server to properly shut down before we can open the new jvm.out log file. Fixes https://github.com/bazelbuild/bazel/issues/2684 -- PiperOrigin-RevId: 150632429 MOS_MIGRATED_REVID=150632429
* Add ActionInput.getExecPath, which returns a PathFragmentGravatar Ulf Adams2017-03-21
| | | | | | | | | | | | Update some callers to use getExecPath, which generally results in less intermediate garbage generation (almost all callers need a PathFragment, not a String). Another small step towards #1593. -- PiperOrigin-RevId: 150631279 MOS_MIGRATED_REVID=150631279
* Rollback of commit b88e9f3ea66fa839185e88de7dad3e6af0b403b4.Gravatar Laszlo Csomor2017-03-21
| | | | | | | | Roll forward commit ae4b02fb21772effd6836599a7e1792b26ff95e0. -- PiperOrigin-RevId: 150627891 MOS_MIGRATED_REVID=150627891
* Document default_provider.Gravatar Vladimir Moskva2017-03-21
| | | | | | | | | The documentation is not final as default_provider is not completely implemented now, but it reflects its current state. -- PiperOrigin-RevId: 150627015 MOS_MIGRATED_REVID=150627015
* Use a relative path for the runfiles treeGravatar Ulf Adams2017-03-21
| | | | | | | | | | Add preconditions to enforce this and remove some now unnecessary code. A small step towards #1593. -- PiperOrigin-RevId: 150625693 MOS_MIGRATED_REVID=150625693
* Fix a bug whereupon a String was compared to a PathFragment.Gravatar Lukacs Berki2017-03-21
| | | | | | -- PiperOrigin-RevId: 150623623 MOS_MIGRATED_REVID=150623623
* BuildEventStreamer: fix handling of postedEvents Gravatar Klaus Aehlig2017-03-21
| | | | | | | | | | | | | Always initialize the set of postedEvents. Also, record the initial event as posted. In this way, the build event streamer can also handle events that should be posted after the BuildStartedEvent but are told the streamer about earlier. -- Change-Id: Ic796f2434434819e6c62633755411527a9dcb7e0 Reviewed-on: https://cr.bazel.build/9451 PiperOrigin-RevId: 150620387 MOS_MIGRATED_REVID=150620387
* Update to Error Prone version 2.0.19Gravatar Liam Miller-Cushon2017-03-21
| | | | | | | Release notes: https://groups.google.com/d/topic/error-prone-announce/sXXuFyDDY1c/discussion Change-Id: Ib43648dced8afc1f2e5abf3dffe6dd80305de854
* Update turbine versionGravatar Liam Miller-Cushon2017-03-21
| | | | Change-Id: I0af97cbe6cc8386d0b1ab9a0c6f3c108f05f800d
* Rollback of commit 59180a4ea66b1395b5b85defd732859ecae919ea.Gravatar Yue Gan2017-03-20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | *** Reason for rollback *** Break bazel-tests and many other jobs on CI. http://ci.bazel.io/job/bazel-tests/BAZEL_VERSION=HEAD,PLATFORM_NAME=linux-x86_64/651/console *** Original change description *** Add SpawnInputExpander helper class to arrange runfiles for spawn strategies This new class is a combination of SpawnHelper and our internal code; the plan is to migrate all spawn strategies to the new class. The strict flag should be enabled by default, but that's a breaking change, so we need to do it later. - Use it in SandboxStrategy. - Add ActionInput.getExecPath to return a PathFragment; this avoids lots of back and forth between path fragments and strings. This is a step towards #159... *** -- PiperOrigin-RevId: 150610616 MOS_MIGRATED_REVID=150610616
* Support aliases in the --experimental_stl attribute.Gravatar Lukacs Berki2017-03-20
| | | | | | -- PiperOrigin-RevId: 150610613 MOS_MIGRATED_REVID=150610613
* Fix formatting error in Java sandwich blog post.Gravatar Irina Iancu2017-03-20
| | | | | | -- PiperOrigin-RevId: 150602553 MOS_MIGRATED_REVID=150602553
* Rollback of commit a58f245a4b40c0ef961b1f30d96b16a9349711c3.Gravatar Tobias Werth2017-03-20
| | | | | | | | | | | | | | | *** Reason for rollback *** broke over 100k targets, in the depot, see [] *** Original change description *** Move library R generation to a separate action, ensuring the merging happens off the java critical path. -- PiperOrigin-RevId: 150602545 MOS_MIGRATED_REVID=150602545
* Add support to read inputs from directoriesGravatar Googler2017-03-20
| | | | | | -- PiperOrigin-RevId: 150595482 MOS_MIGRATED_REVID=150595482
* Add a test that a v2.2 format tarball used as a base image contains the ↵Gravatar Googler2017-03-20
| | | | | | | | appropriate ancestry. -- PiperOrigin-RevId: 150530623 MOS_MIGRATED_REVID=150530623
* Fix AndroidBinaryTest on Windows.Gravatar Adam Michael2017-03-20
| | | | | | -- PiperOrigin-RevId: 150501599 MOS_MIGRATED_REVID=150501599
* Create "internal" category of command-line options.Gravatar Michael Staib2017-03-20
| | | | | | | | | | | | | | | | | | | | This is intended to be used for "flags" which should never appear on the command line - things like configuration distinguishers, which are used internally and must be part of the build options, but should always be set to their default value at the top level. This is already a convention within Bazel, but doesn't actually work the way Bazel expects - flags with spaces can be set by simply escaping or quoting the spaces so that word splitting will not break on them. This means they can also be matched by config_settings, which pass a single string. Forbidding the parser from matching these flags solves both of these unintended cases. Existing cases like this have also been converted to internal. -- PiperOrigin-RevId: 150497246 MOS_MIGRATED_REVID=150497246
* Open source some tests for android_binary.Gravatar Adam Michael2017-03-20
| | | | | | -- PiperOrigin-RevId: 150484382 MOS_MIGRATED_REVID=150484382
* Scrubs OWNERS and METADATA file from third_party/bazel/site/ export.Gravatar Googler2017-03-20
| | | | | | -- PiperOrigin-RevId: 150480886 MOS_MIGRATED_REVID=150480886
* Refactor options converter logicGravatar Jon Brandvein2017-03-20
| | | | | | | | Moved default converters from parser implementation to Converters. Moved other helpers to OptionsData. Also factored out new function getFieldSingularType. -- PiperOrigin-RevId: 150473455 MOS_MIGRATED_REVID=150473455
* Open source ApkManifestActionTest.Gravatar Adam Michael2017-03-20
| | | | | | -- PiperOrigin-RevId: 150468384 MOS_MIGRATED_REVID=150468384
* Fix PathPackageLocatorTest to do case-insensitive string checks.Gravatar John Cater2017-03-20
| | | | | | -- PiperOrigin-RevId: 150467024 MOS_MIGRATED_REVID=150467024
* Automatically set --jobs based on the number of CPU threads.Gravatar Julio Merino2017-03-20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This change adds the new magic value "auto" to --jobs and makes this the default. When --jobs=auto, we determine the number of available CPU threads and set a reasonable value for --jobs based on this number. I'm explicitly not defining what "reasonable" means because we may want to change the heuristics later on. The goal here is to reduce the load on the system when running Bazel while not adversely affecting build times significantly. Previous versions of Bazel defaulted --jobs to 200, which could easily overload the local machine with a lot of processes. This value was derived from Blaze's default, which makes sense because most jobs are network-bound due to distributed execution; however, in the Bazel case, this never made sense and is actually harmful. This change was initiated by problems observed on Macs where Bazel would bring machines to their knees due to system resource overload. It's likely that the overload is caused by too much RAM usage rather than CPU, but both of these should go down with a more limited jobs value. Should help alleviate issue #1160. RELNOTES: The --jobs flag now defaults to "auto", which causes Bazel to use a reasonable degree of parallelism based on the local machine's capacity. -- PiperOrigin-RevId: 150466088 MOS_MIGRATED_REVID=150466088
* Make JavaCompileAction subclass SpawnActionGravatar Liam Miller-Cushon2017-03-20
| | | | | | | | | | | | | instead of rolling its out action logic. Also remove support for the 'min classpath' optimization. JavaCompileAction is a subclass (instead of a SpawnAction instance) only to allow tests to use the Java-specific getters that were added to JavaCompilationAction. -- PiperOrigin-RevId: 150463724 MOS_MIGRATED_REVID=150463724
* Move library R generation to a separate action, ensuring the merging happensGravatar Googler2017-03-20
| | | | | | | | off the java critical path. -- PiperOrigin-RevId: 150460041 MOS_MIGRATED_REVID=150460041
* Enable docker on local version of local remote build serverGravatar Googler2017-03-20
| | | | | | | | | | Allow the local version of local remote build server to pick up the temporary Docker override flags and start a command from within a docker container. -- PiperOrigin-RevId: 150456019 MOS_MIGRATED_REVID=150456019
* Add sh_test rule for help_test.sh.Gravatar John Cater2017-03-20
| | | | | | | | -- Change-Id: I9b1677b383f197e2884c7f68b6647cf8c641a863 Reviewed-on: https://cr.bazel.build/9411 PiperOrigin-RevId: 150445941 MOS_MIGRATED_REVID=150445941
* Add sourcepath to java_common.compileGravatar Irina Iancu2017-03-20
| | | | | | | | | | | | and remove support for -sourcepath through javacopts. Progress on #2606. Supporting -implicit:none by default will be done in an upcoming change. -- PiperOrigin-RevId: 150445185 MOS_MIGRATED_REVID=150445185
* BEP: Indicate caching status in TestResult Gravatar Klaus Aehlig2017-03-20
| | | | | | | | | | | | | | For a test result indicate if it was cached locally by the tool. Note that this bit will not be set for tests cached by the remote execution. Also clarify the meaning of the timing; it need not be set for locally cached test results, but it may (and in this case reporting the timing of the initial invocation of the cached test). -- Change-Id: Ic83c4a58c1a85f6f4da82138999eaa545d8f60a6 Reviewed-on: https://cr.bazel.build/9376 PiperOrigin-RevId: 150442579 MOS_MIGRATED_REVID=150442579
* Refactor benchmark for enabling CppCodeGenerator.Gravatar Yue Gan2017-03-20
| | | | | | -- PiperOrigin-RevId: 150440499 MOS_MIGRATED_REVID=150440499
* Build a version of Bazel with a bundled OpenJDK inside the binary.Gravatar Philipp Wollermann2017-03-20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We're using Azul Systems, Inc.'s Zulu® OpenJDK build[1], as it's a good vanilla build of OpenJDK available for our three most important platforms: zulu8.20.0.5-jdk8.0.121-linux_x64.tar.gz zulu8.20.0.5-jdk8.0.121-macosx_x64.zip zulu8.20.0.5-jdk8.0.121-win_x64.zip You can build & run a Bazel binary with an embedded JDK by simple doing: bazel build //src:bazel_with_jdk bazel-bin/src/bazel_with_jdk info The "bazel license" command prints the license of the embedded OpenJDK. We mirror the binaries and sources of the OpenJDK used for bundling on this website: https://bazel-mirror.storage.googleapis.com/openjdk/index.html RELNOTES: Bazel can now be built with a bundled version of the OpenJDK. This makes it possible to use Bazel on systems without a JDK, or where the installed JDK is too old. [1] http://www.azul.com/downloads/zulu/ -- PiperOrigin-RevId: 150440467 MOS_MIGRATED_REVID=150440467
* Fix link (maybe)?Gravatar Jon Brandvein2017-03-20
| | | | | | -- PiperOrigin-RevId: 150439226 MOS_MIGRATED_REVID=150439226
* Fix Label.toShorthandString() with non-main/default repositoryGravatar Googler2017-03-20
| | | | | | | | (repository name was added twice in a non-shorthand result). -- PiperOrigin-RevId: 150437337 MOS_MIGRATED_REVID=150437337
* Add the java-runtime, java-vm, java-home and character-encoding items to ↵Gravatar Philipp Wollermann2017-03-20
| | | | | | | | | | | | "bazel info". java-runtime and java-vm print version info about Bazel's JVM. java-home prints the path to Bazel's JVM. character-encoding prints the default character encoding of Bazel's JVM. -- PiperOrigin-RevId: 150437135 MOS_MIGRATED_REVID=150437135
* Flip deprecated_generated_xcode_project default to false.Gravatar Peter Schmitt2017-03-20
| | | | | | | | | This should be safe as it has already been set to false in the rc files for Blaze and Exoblaze. -- PiperOrigin-RevId: 150436179 MOS_MIGRATED_REVID=150436179
* Reword a commentGravatar Googler2017-03-20
| | | | | | -- PiperOrigin-RevId: 150435164 MOS_MIGRATED_REVID=150435164
* Add a new command "bazel license" that prints the license files of Bazel and ↵Gravatar Philipp Wollermann2017-03-20
| | | | | | | | all embedded open-source components. -- PiperOrigin-RevId: 150435047 MOS_MIGRATED_REVID=150435047
* Add CppCodeGenerator for bencharmk without enabling it. It will be enabled ↵Gravatar Yue Gan2017-03-20
| | | | | | | | in a following change. -- PiperOrigin-RevId: 150434910 MOS_MIGRATED_REVID=150434910
* windows: Improve env var handling of shell integration tests.Gravatar Philipp Wollermann2017-03-20
| | | | | | | | | | | | | | | | | | | | | | Use a unique TEST_TMPDIR for each running test on Windows, too. The old behavior caused shell tests to share the same TEST_TMPDIR, which caused conflicts when multiple tests were run in parallel. Set Bazel's TEST_TMPDIR root on Windows to c:/temp by default in TestStrategy. This avoids tripping the 260-character limit for paths. We still have to keep the override in testenv.sh for the time being, because Bazel's tests are often run with the latest released Bazel and thus we have to wait for a new Bazel release before we can remove the TEST_TMPDIR override from testenv.sh. Once that is done, the flag --test_tmpdir should also magically start working on Windows. Move the Python detection logic out of bazel_windows_example_test.sh into testenv.sh. This is better than copying that code into every new test's set_up method. -- PiperOrigin-RevId: 150433265 MOS_MIGRATED_REVID=150433265
* Fix broken link: s/html/md/Gravatar Googler2017-03-20
| | | | | | -- PiperOrigin-RevId: 150431342 MOS_MIGRATED_REVID=150431342
* Add SpawnInputExpander helper class to arrange runfiles for spawn strategiesGravatar Ulf Adams2017-03-17
| | | | | | | | | | | | | | | | | This new class is a combination of SpawnHelper and our internal code; the plan is to migrate all spawn strategies to the new class. The strict flag should be enabled by default, but that's a breaking change, so we need to do it later. - Use it in SandboxStrategy. - Add ActionInput.getExecPath to return a PathFragment; this avoids lots of back and forth between path fragments and strings. This is a step towards #1593. -- PiperOrigin-RevId: 150427021 MOS_MIGRATED_REVID=150427021
* Rollback of commit ae4b02fb21772effd6836599a7e1792b26ff95e0.Gravatar Yun Peng2017-03-17
| | | | | | | | | | | | *** Reason for rollback *** Broken MSVC Bazel build on CI https://github.com/bazelbuild/bazel/issues/2695 -- PiperOrigin-RevId: 150423895 MOS_MIGRATED_REVID=150423895
* Don't declare parameters of type Iterable<Path>Gravatar Liam Miller-Cushon2017-03-17
| | | | | | | | context: https://bugs.openjdk.java.net/browse/JDK-8150111 -- PiperOrigin-RevId: 150390207 MOS_MIGRATED_REVID=150390207
* Add a flag (--only_desugar_javac9_for_lint) to disable desugaring lambda ↵Gravatar Chengnian Sun2017-03-17
| | | | | | | | | | expressions for Android Lint. RELNOTES: n/a -- PiperOrigin-RevId: 150378522 MOS_MIGRATED_REVID=150378522
* Make mobile-install wait for debuggerGravatar Googler2017-03-17
| | | | | | -- PiperOrigin-RevId: 150372383 MOS_MIGRATED_REVID=150372383
* Sink automatic SDK frameworks into legacy compilation support.Gravatar Googler2017-03-17
| | | | | | -- PiperOrigin-RevId: 150353881 MOS_MIGRATED_REVID=150353881
* Add caching of computed file digests based on file metadata.Gravatar Julio Merino2017-03-17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This change modifies DigestUtils to add a cache of (path, inode, mtime, size) to the digest of the file for those digests that are computed by reading the file contents. The cache itself is optional because relying on file metadata to cache the file digests could lead to correctness issues. Enabling the cache is exposed via a new (undocumented) --cache_computed_file_digests flag that we can use post-release to tune the built-in values if they prove to be incorrect or problematic. For Bazel, enable this cache unconditionally because the rest of Bazel already relies on mtimes and other file metadata to determine changes to files. The rationale for this change is performance: once we have lost the in-memory file metadata (e.g. because of a flag flip), Bazel has to redigest all of the output files to recompute action cache keys. For a pathological case of rebuilding a large app with 5GB of outputs and then flipping the --[no]check_visibility flag on the command line, we get the following numbers before this change: ____Elapsed time: 11.170s, Critical Path: 8.34s ____Elapsed time: 11.027s, Critical Path: 8.20s ____Elapsed time: 11.084s, Critical Path: 7.46s ____Elapsed time: 11.051s, Critical Path: 6.61s ____Elapsed time: 11.211s, Critical Path: 7.81s ____Elapsed time: 10.884s, Critical Path: 8.20s ____Elapsed time: 11.385s, Critical Path: 8.12s ____Elapsed time: 11.723s, Critical Path: 8.18s ____Elapsed time: 11.327s, Critical Path: 7.73s ____Elapsed time: 11.028s, Critical Path: 7.89s And after this change: ____Elapsed time: 4.294s, Critical Path: 0.27s ____Elapsed time: 4.376s, Critical Path: 0.83s ____Elapsed time: 8.083s, Critical Path: 0.52s ____Elapsed time: 4.302s, Critical Path: 0.64s ____Elapsed time: 4.282s, Critical Path: 0.37s ____Elapsed time: 4.219s, Critical Path: 0.61s ____Elapsed time: 4.214s, Critical Path: 0.97s ____Elapsed time: 4.185s, Critical Path: 0.71s ____Elapsed time: 7.962s, Critical Path: 4.30s ____Elapsed time: 4.149s, Critical Path: 1.03s -- PiperOrigin-RevId: 150351444 MOS_MIGRATED_REVID=150351444
* Display an error message when there is a status command errorGravatar Kristina Chodorow2017-03-17
| | | | | | | | This was printing, fairly unhelpfully `ERROR: Process exited with status 127.` when the .sh file did not exist. -- PiperOrigin-RevId: 150344684 MOS_MIGRATED_REVID=150344684