aboutsummaryrefslogtreecommitdiffhomepage
Commit message (Collapse)AuthorAge
* Support multiple command lines / params files in SpawnAction.Gravatar tomlu2017-09-15
| | | | | | This is necessary for the upcoming Skylark implementation of param files. PiperOrigin-RevId: 168744486
* Add whitelists for android_resources removalGravatar Googler2017-09-15
| | | | | | | Add additional tooling for removing android_resources RELNOTES: none PiperOrigin-RevId: 168741510
* Add serialization support to BlazeDirectories (and .hashCode() and .equals() ↵Gravatar janakr2017-09-15
| | | | | | | | support into the bargain). Equality checking isn't that important since there's only one instance per Blaze server, but it keeps serialization semantics reasonable. PiperOrigin-RevId: 168735669
* Do not flatten resource artifacts in Android rules.Gravatar tomlu2017-09-15
| | | | | | This involves rather tediously rolling up each artifact type in its own individual nested set. PiperOrigin-RevId: 168729120
* Use top-level targets' configurations for convenience symlinks.Gravatar mstaib2017-09-15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This adds a new flag, --use_top_level_targets_for_symlinks. Configuration-specific convenience symlinks (i.e., (prefix)bin, (prefix)genfiles, (prefix)testlogs) previously pointed at the one top-level target configuration. If there were multiple top-level target configurations, which could only happen when --experimental_multi_cpu was used, then no symlinks would be created, though they would not be deleted either. With the flag on, the output directories of the configurations actually used by the top-level targets (after rule class transitions etc.) are compared. If all targets with non-null configurations have the same configuration (or, more specifically, if all targets with non-null configurations have configurations with the same output directory), then a symlink is created pointing at it. Otherwise, the symlink is deleted, to avoid confusion with stale symlinks from old builds. Known changes in behavior WITHOUT the flag turned on: * In the --experimental_multi_cpu case, non-configuration-specific convenience symlinks (i.e., (prefix)(workspace) and (prefix)out) will always be created, even though they previously wouldn't have been created at all in this case. (should be harmless) * In the --experimental_multi_cpu case, configuration-specific convenience symlinks will be created if all configs have the same output directory. (should be safe, or specifically, should never happen because multi-cpu would necessarily change the output path, but shouldn't hurt anything even if it did) * In the --experimental_multi_cpu case, configuration-based convenience symlinks will be deleted if some configs have a different output directory. (slightly more noticeable since that will be every build using experimental_multi_cpu, but then, it is experimental) RELNOTES: None. PiperOrigin-RevId: 168720843
* Remove warning about multiple options in copts.Gravatar Joe Finney2017-09-15
| | | | | | | | | Fixes #3526 Closes #3725. Change-Id: Ice068542e574661f9dff199f88a1e56fea191de3 PiperOrigin-RevId: 168720424
* Remove unused late-bound attributes for target and execution platforms.Gravatar jcater2017-09-15
| | | | PiperOrigin-RevId: 168703757
* Zipped LLVM multi-arch profiles is now supported.Gravatar Googler2017-09-15
| | | | | RELNOTES: None. PiperOrigin-RevId: 168703540
* BEP: Upon missing test targets, still generate a finished eventGravatar Klaus Aehlig2017-09-15
| | | | | | | | If a test command is aborted as no tests are found, still generate a BuildComplete event in the sequence of build events to properly report the exit status. Change-Id: Id811a116b309a26e67332947b3a5c66363b1ce9c PiperOrigin-RevId: 168703240
* Internal changeGravatar tomlu2017-09-15
| | | | PiperOrigin-RevId: 168699077
* Introduce "bazel help flags-as-proto" to print information about supported ↵Gravatar fwe2017-09-14
| | | | | | flags as a text protobuf. PiperOrigin-RevId: 168695297
* Move some legacy-only tests to the crosstool tests.Gravatar cpeyser2017-09-14
| | | | PiperOrigin-RevId: 168692738
* Only compute hostname once per server lifetimeGravatar hlopko2017-09-14
| | | | | | | | | | | | NetUtil.getShortHostName can take seconds on mac and on windows (like, 20!), since it performs reverse dns lookup. We already cached hostname for the BazelWorkspaceStatusModule, let's cache it for entire bazel server. Also make sure that users of the method understand it's cached. Fixes #3586. RELNOTES: None. PiperOrigin-RevId: 168691615
* Avoid wasting cpu/garbage formatting preconditions stringGravatar michajlo2017-09-14
| | | | | RELNOTES: None PiperOrigin-RevId: 168691489
* Implement PlatformBaseRule which describes the common settings for all ↵Gravatar juliexxia2017-09-14
| | | | | | platform-related rules PiperOrigin-RevId: 168690846
* Pass the UnparsedOptionValues when setting or adding option values.Gravatar ccalvarin2017-09-14
| | | | | | | | Stop breaking the value apart to be recombined later. Also stop using OptionValueDescriptions as though we have a final option when expanding flags for invocation policy. These values are explicitly the output from parsing the expansion strings, not yet converted or combined with other values of the same flag. After this change, only UnparsedOptionValueDescription should be used when strings of flags are parsed, and OptionValueDescription should be used when the final version of a flag is created or used. PiperOrigin-RevId: 168688063
* Create the "C++ and Bazel" and "Java and Bazel" pages.Gravatar Googler2017-09-14
| | | | PiperOrigin-RevId: 168687598
* Implemented a check for implicitly-exported deps in android_library, and ↵Gravatar jingwen2017-09-14
| | | | | | | | | raise a warning/error depending on --experimental_allow_android_library_deps_without_srcs (defaulted to true for a warning). Previously, users of generated android_library rules with this specific attribute combination do not see the warning message because the message comes from a Skylark macro. Once this is in, users having such a rule (even in their transitive, generated dependencies) will see the warning message. RELNOTES: Deprecated: Using the android_library.deps attribute to implicitly export targets to dependent rules. If your code is using this feature, Bazel will raise a warning. To fix, please use android_library.exports to explicitly specify exported targets. Run with --experimental_allow_android_library_deps_without_srcs=false to ensure forward compatibility when this feature is removed in a future release. PiperOrigin-RevId: 168686765
* Remove duplicated error handling in build variablesGravatar hlopko2017-09-14
| | | | | RELNOTES: None. PiperOrigin-RevId: 168683400
* Categorize C++ related optionsGravatar hlopko2017-09-14
| | | | | RELNOTES: None. PiperOrigin-RevId: 168682943
* Consolidate the "unparsed" option value tracking.Gravatar ccalvarin2017-09-14
| | | | | | | In preparation for linking the parsed and unparsed values of options, consolidate and standardize our representation of the flag values as we received them (what is meant by "unparsed" values in this case). This was being done separately in ParseOptionResult, which, with extra context added, is being folded into UnparsedOptionValueDescription. We now track how an option was provided and where it came from for all option parsing. RELNOTES: None. PiperOrigin-RevId: 168682082
* Add post-submit changes for ↵Gravatar brandjon2017-09-14
| | | | | | | https://github.com/bazelbuild/bazel/commit/aa1a4f2c3dfdb40bd0f4349cf313354a7543a5a8 RELNOTES: None PiperOrigin-RevId: 168677112
* Add ruperts@ to Bazel contributors.Gravatar ruperts2017-09-14
| | | | | RELNOTES: None. PiperOrigin-RevId: 168676227
* bep: Properly URI encode file pathsGravatar buchgr2017-09-14
| | | | | | RELNOTES: The Build Event Protocol's File.uri field is now properly encoded according to RFC2396. PiperOrigin-RevId: 168674865
* Introduce -c source_file -o output_file build variablesGravatar hlopko2017-09-14
| | | | | | | | | | | | Prior to this cl CompileCommandLine would (almost) unconditionally emit -c and -o flags. This cl removes this logic and relies on crosstool to emit these flags. This is another small step towards platform independent C++ rules. Memory use is not affected, since the build variables used by this cl are already exposed, this cl just forces crosstools to use it. RELNOTES: None. PiperOrigin-RevId: 168671507
* Skylint: report missing documentation for a function's return valueGravatar fzaiser2017-09-14
| | | | | | | | | | | | | | | | | | | | | | | | | | In addition to checking the function parameter documentation, skylint now also checks whether the return value is documented in a 'Returns:' section in the docstring. The same restrictions as for parameters apply: - Private functions need no documentation - If a function has a single line docstring, it need not document the return value. In addition, I improved the docstring parsing: - Previously, the beginning and end of a section (e.g. 'Args:', 'Returns:') were determined by line breaks. Now, they're determined by indentation and missing line breaks are reported. This change should make the docstring parser more robust. - Additional indentation is not warned against anymore. There are many situations where it makes sense, like example code. Both of these changes were motivated by the results of the linter on Skylark files "in the wild". RELNOTES: none PiperOrigin-RevId: 168660248
* Windows: Adding default --python_pathGravatar Yun Peng2017-09-14
| | | | | | | | | | | On Windows, Bazel client will try to find python.exe in $PATH. If succeed, then we pretend to add a --python_path option in the least important bazelrc file. Fixed https://github.com/bazelbuild/bazel/issues/3717 Change-Id: I8d97b0895f024d8d236f3b4b39f91c41d947a5fa PiperOrigin-RevId: 168659085
* Update Windows doc about building PythonGravatar pcloudy2017-09-14
| | | | | | | | BAZEL_PYTHON was only used for the old MSVC python wrapper script. After we use wrapper-free CROSSTOOL by default, it's not used anymore. It has nothing to do with building Python rules. The correct way to specify python interpreter is to use --python_path flag. RELNOTES: None PiperOrigin-RevId: 168655953
* Remove deepExecRoot from BlazeDirectories. It is now the default. Also ↵Gravatar janakr2017-09-14
| | | | | | inline constructor that did ServerDirectories creation inline: don't pollute production code for tests' convenience. PiperOrigin-RevId: 168652349
* Fix minor typo in RuleClass.Builder.RuleClassType.TEST validation message.Gravatar Googler2017-09-14
| | | | | RELNOTES: None PiperOrigin-RevId: 168652131
* Remove docker rules from @bazel_toolsGravatar Googler2017-09-14
| | | | | | | | | ... and lock down the visibility to only the Bazel project, please see https://github.com/bazelbuild/rules_docker instead. RELNOTES[INC]: @bazel_tools//tools/build_defs/docker:docker.bzl is no longer available, please see https://github.com/bazelbuild/rules_docker. PiperOrigin-RevId: 168650438
* Open-source some more serialization codecs, and create a PrecomputedValue ↵Gravatar janakr2017-09-14
| | | | | | codec. Since PrecomputedValues can contain any value, give them access to an ObjectCodecs instance so we don't have to have a whitelist inside PrecomputedValueCodec. PiperOrigin-RevId: 168624137
* Port BUILD dependency change from ↵Gravatar gregce2017-09-14
| | | | | | https://github.com/bazelbuild/bazel/commit/fd2cc7d1c1262c21dc7a119baf9aaa775fab6e54 to Bazel. PiperOrigin-RevId: 168619238
* Lots more cleanup of "dynamic configurations" comments and test code.Gravatar gregce2017-09-14
| | | | PiperOrigin-RevId: 168607439
* Adding jingwen@ to Bazel contributors.Gravatar jingwen2017-09-14
| | | | | RELNOTES: None. PiperOrigin-RevId: 168584689
* Cleanup todo from static config removalGravatar gregce2017-09-14
| | | | PiperOrigin-RevId: 168583913
* Static config removal TODO cleanup.Gravatar gregce2017-09-14
| | | | PiperOrigin-RevId: 168583577
* Internal changeGravatar tomlu2017-09-14
| | | | PiperOrigin-RevId: 168579567
* Remove concept of "processorFlags" from Bazel.Gravatar ajmichael2017-09-14
| | | | | | | They are just normal javacopts. The only user was Android databinding, so now we just merge databindings javacopts in with the rest of javacopts in AndroidCommon. RELNOTES: None PiperOrigin-RevId: 168578013
* Introduce empty "toolchain_category" rule for labels that will be used asGravatar cpeyser2017-09-14
| | | | | | | | categories of toolchains for the purpose of toolchain selection. Up to now, we've used the native toolchain_type rule for this purpose. That rule depends on a number of configuration fragments that supply build variables - we don't want toolchains to need to depend on those fragments as well. E.g. toolchain_type depends on JvmConfiguration, but we would like toolchains to work with --experimental_disable_jvm. PiperOrigin-RevId: 168577759
* Create the "Android and Bazel" and "Apple apps and Bazel" pages.Gravatar Googler2017-09-14
| | | | PiperOrigin-RevId: 168577347
* Adds the command line report protocol.Gravatar ccalvarin2017-09-14
| | | | | | | | This will be used by tools to pass Bazel their command lines, and by Bazel to report its command line(s) via the build event stream. See https://bazel.build/designs/2017/07/13/improved-command-line-reporting.html for additional context on why this is useful. This proto is intentionally vague about certain details of the command line, in order to be accommodating of future changes. However, it needs to be specific enough that it is very clear how a command line would be broken up into the different types of sections. PiperOrigin-RevId: 168576969
* Do not exclude testenv.py from the globGravatar dmarting2017-09-14
| | | | | | This made the srcs_test failing PiperOrigin-RevId: 168570687
* Open source tests for Android desugarer.Gravatar ajmichael2017-09-14
| | | | | | | These tests will fail with a helpful error message if you do not have android_sdk_repository set up. They currently require that platform 25 be installed in your SDK. RELNOTES: None PiperOrigin-RevId: 168570577
* Rollback context.actions.args() functionality.Gravatar tomlu2017-09-14
| | | | | | This will be rolled forward with a different API. PiperOrigin-RevId: 168566666
* Remove Path instance from Artifact.Gravatar tomlu2017-09-14
| | | | | | In the long run it would be good to remove the Path class altogether. PiperOrigin-RevId: 168560355
* Automated rollback of commit 72de1fe6bafa28fddcbc8cdc1ccbb59556996bfb.Gravatar dmarting2017-09-13
| | | | | | | | | | | | | | | | | | | | | | | *** Reason for rollback *** Roll-forward with fix *** Original change description *** Automated rollback of commit f5b8281f1f7599c67476663887db909a4206710e. *** Reason for rollback *** Read the wrong log, it is not timing out, actual failure. *** Original change description *** Open-source src/test/skylark/... This was means to be open-sourced from the beginning but an error in our set-up hide it from the open-source tree. PiperOrigin-RevId: 168526758
* bazel_bootstrap_distfile_test: fix breakageGravatar laszlocsomor2017-09-13
| | | | | | Fix bad `date` invocation submitted in unknown commit. PiperOrigin-RevId: 168517542
* docs,Windows: update Visual Studio requirementsGravatar laszlocsomor2017-09-13
| | | | | | See https://github.com/bazelbuild/bazel/issues/3109 PiperOrigin-RevId: 168509421
* bazel_bootstrap_distfile_test: add loggingGravatar laszlocsomor2017-09-13
| | | | | | | | | | | | Add logging to bazel_bootstrap_distfile_test.sh and to buildenv.sh in hopes of catching this bug: https://github.com/bazelbuild/bazel/issues/3618 For justification, see: https://github.com/bazelbuild/bazel/issues/3618#issuecomment-328857891 RELNOTES: none PiperOrigin-RevId: 168508723