aboutsummaryrefslogtreecommitdiffhomepage
Commit message (Collapse)AuthorAge
* Remove old intellij aspect code bundled with BazelGravatar Googler2017-07-31
| | | | PiperOrigin-RevId: 163538636
* Auto-generate BUILD files for src/java_tools/singlejarGravatar ulfjack2017-07-31
| | | | | | | | | This and further changes may contain minor modifications to BUILD files that don't serve any apparent purpose. The reason for these changes is that we're switching from checked-in BUILD files to generated BUILD files, and there may be small differences between these files. PiperOrigin-RevId: 163525889
* Expose to Skylark Strings instead of PathFragments from CppConfiguration.Gravatar dslomov2017-07-31
| | | | | | | | | | The only way to use those was in the `ctx.action(...executable...)` parameter, made that accept string. Fixes #2931. RELNOTES: None. PiperOrigin-RevId: 163511248
* Framework dependency subtraction uses runfiles path instead of full artifact ↵Gravatar cparsons2017-07-31
| | | | | | | path RELNOTES: None. PiperOrigin-RevId: 163484010
* Provide a lambda interface for custom mock rule class behavior.Gravatar gregce2017-07-31
| | | | | | | | | | This extends the "easy use" idea of MockRule from just custom attributes to full-on custom behavior. For a proof of concept, also port Bazel's late-bound attribute tests. PiperOrigin-RevId: 163483121
* Java tutorial: update images of dependency graphsGravatar László Csomor2017-07-31
| | | | | | | | | The images reflect the Bazel query outputs rendered as SVG as of: https://github.com/bazelbuild/examples/commit/a49d26c90bb3f5e41a253de8e069a854c74da904 Change-Id: I0c9bc8f434c420245f2e8c6e6b56a0ae4ab99f09 PiperOrigin-RevId: 163476862
* Slight refactor of helper methods in TestStrategy.Gravatar nharmata2017-07-31
| | | | | RELNOTES: None PiperOrigin-RevId: 163471182
* Remove the type data from ToolchainInfo, it is reduntant with ↵Gravatar John Cater2017-07-31
| | | | | | | | | DeclaredToolchainInfo. Fixes #3458. Change-Id: I24dd6d9d24432b9aaf0229de658f07e465ad63cb PiperOrigin-RevId: 163466882
* Use dynamically configured resource filteringGravatar Googler2017-07-31
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Actually hook up the resource filtering configuration transitions to AndroidConfiguration's topLevelConfigurationHook. Dynamic configuration is inefficient when multiple configurations are used. Multiple configurations result in splitting the build graph and duplicating work. To avoid using multiple configurations as much as possible, dynamically configured resource filtering will only be applied for top-level android_binary targets. When android_binary targets are included as dependencies, it's very likely that multiple binaries with many shared dependencies but different configurations would be used. Only applying dynamic filtering to top-level binaries removes this concern. It is still possible to build multiple top-level binary targets with different configurations at once. Previous versions of this code considered not using dynamic configuration in that case as well, but that raised some unanswered questions about whether Bazel's invariants should allow modifying one target's configuration based solely on targets that happen to be building in parallel. As a result, that optimization is not included for now; we assume that developers manually building multiple similar binaries at once is relatively rare (plus, dynamically configured resource filtering in general is not turned on by default and will not be turned on by default until we're confident the benefits outweigh the costs). RELNOTES: none PiperOrigin-RevId: 163464415
* Adjust chocolatey package for new artifact namesGravatar Peter Mounce2017-07-31
| | | | | | Closes #3466. PiperOrigin-RevId: 163459450
* Only report progress after a build has started.Gravatar Benjamin Peterson2017-07-31
| | | | | | | | | | | | Rather than assuming that all events are part of a build until NoBuildEvent or BuildCompleteEvent are posted, only start reporting build progress after a BuildStartingEvent or a NoBuildEvent with showProgress() true happens. This fixes https://github.com/bazelbuild/bazel/issues/3449. Change-Id: I78372a2286a4595cf3301c998be2c9036ad0f4b7 PiperOrigin-RevId: 163447622
* Apply native binary launcher to sh_binaryGravatar Yun Peng2017-07-31
| | | | | | | | | | | | This change: 1. Added launcher to @bazel_tools If the host platform is Windows, we use a prebuilt launcher.exe , otherwise the launcher needs to be built with MSVC first. 2. Launching sh_binary using native launcher. Change-Id: I5a63135455057fbfe04ff0cce7ec7994ef0c347a PiperOrigin-RevId: 163442540
* Remove dead codeGravatar dslomov2017-07-28
| | | | | RELNOTES: None. PiperOrigin-RevId: 163436254
* Correctly include proto runtimes from transitive proto_library's, and their ↵Gravatar carmi2017-07-28
| | | | | | | | | | | transitive dependencies, in the list of transitive jars that a java_xxx_proto_library rule exposes. This fixes b/63723368, in a way that no action is required. The new behavior is guarded by a flag. RELNOTES: None PiperOrigin-RevId: 163421788
* Automated rollback of commit ed6f653834ac5069c6ab0fb871bc41554fbf36f1.Gravatar ulfjack2017-07-28
| | | | | | | | | | | | | | | | | | | | | | | | | | *** Reason for rollback *** The original change actually works, but our export process was using an old configuration. *** Original change description *** Automated rollback of commit d164e6679650c50197f4aac1a31d65010dd7bc04. *** Reason for rollback *** Relies on https://github.com/bazelbuild/bazel/commit/ecd3ff16277729abb1baea66e51b3bd0835af01e, which removes src/tools/benchmark/BUILD file: see https://github.com/bazelbuild/bazel/commit/ecd3ff16277729abb1baea66e51b3bd0835af01e *** Original change description *** Auto-export src/tools/benchmark/**/BUILD This and further changes may contain minor modifications to BUILD files that don't serve any apparent purpose. The reason for these changes is that we're switching from checked-in BUILD... *** PiperOrigin-RevId: 163392962
* Release script: remove non-needed `xargs echo`Gravatar dmarting2017-07-28
| | | | | | They are the root cause of #3459. PiperOrigin-RevId: 163392890
* Assert that declared providers are not TransitiveInfoProviders.Gravatar dslomov2017-07-28
| | | | | | | Also fix the remaining violations. RELNOTES: None. PiperOrigin-RevId: 163391215
* Fix confusing semantics for Attribute.Builder.allowedRuleClasses.Gravatar gregce2017-07-28
| | | | | | | | | | 1) Update the javadocs. 2) Clarify that allowedRuleClases and allowedRuleClassesWithWarning must be disjoint sets. 3) Enforce 2). 4) Fix error messaging when only "with warnings" is set. PiperOrigin-RevId: 163379567
* Disable desugaring try-with-resources when --min_sdk_version is above 18.Gravatar cnsun2017-07-28
| | | | | RELNOTES: None PiperOrigin-RevId: 163376758
* Remove MetadataHandler.isRegularFileGravatar ulfjack2017-07-28
| | | | | | | Instead use MetadataHandler.getMetadata().isFile(), which is basically what isRegularFile did before. PiperOrigin-RevId: 163351014
* Add an introduction to what external repositories areGravatar kchodorow2017-07-28
| | | | PiperOrigin-RevId: 163348233
* Replace create_embedded_tools.sh with a faster Python version.Gravatar Philipp Wollermann2017-07-28
| | | | | | | | | This is functionally equivalent, but ~30x faster on Windows, ~2x faster on macOS and ~1.5x faster on Linux. RELNOTES: None. Change-Id: Ib4a7e10400a3955e47772425acfce2d9530de462 PiperOrigin-RevId: 163346634
* Make all WithLegacySkylarkName providers declared providers.Gravatar dslomov2017-07-28
| | | | | RELNOTES: None. PiperOrigin-RevId: 163343931
* Copy build_python_zip and enable_runfiles flags to the host config.Gravatar philwo2017-07-28
| | | | | | Fixes a bug where the flags would be ignored during Bazel's compile.sh bootstrap. PiperOrigin-RevId: 163341779
* Remove unused module-related optionsGravatar hlopko2017-07-28
| | | | | RELNOTES: None. PiperOrigin-RevId: 163338873
* Windows: detect if started from Windows ExplorerGravatar Laszlo Csomor2017-07-28
| | | | | | | | | | | | | Bazel now detects whether it was started from a command line (or as a subprocess), or from Windows Explorer (by clicking its icon). In the latter case it displays an error message asking the user to run it from a command line, and waiting for a keypress so the user has time to read this message. Change-Id: I4b0430e30d2f1f243cec6ff63cb3abac907e60e3 PiperOrigin-RevId: 163338527
* Release 0.5.3 (2017-07-27)Gravatar Bazel Release System2017-07-27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Baseline: 88518522a18df5788736be6151fc67992efe2aad Cherry picks: + 820a46af10808396873c36d0f331e533118cf0c6: Automated rollback of commit 6d6e87297fe8818e4c374fdfabfbcf538bca898a. + ccfb2df69ecf4746f5a15e1295af995c3a45aa94: Allow py_binary to be the executable of a Skylark action or any SpawnAction on Windows. + 06534911696838e720c8681f6f568c69d28da65e: Fix string representation for the Root class + cd159bcee72a7f377621b45409807231a636f9e2: sandbox: Allow UNIX sockets on macOS even when block-network is used. + ad73cba3caa2e08ad61ea9ca63f9111cde1f48d1: Fix python_stub_template.txt to be compatible with Python 2.4. + 9a63aff8bb771af8917903fbbc9df3b708e2c0ed: Create Windows ZIP release artifact using Bazel + 5e576637b5705aff0a7bf56b5077463dffcd712f: Automated rollback of commit 820a46af10808396873c36d0f331e533118cf0c6. + b6e29ca217b02c3ba499b85479a3830f59c9b9b6: Use the correct function to generate the release notes + 0f3481ba6364f24ef76b839bdde06ae7883c9bd9: Include <cinttypes> instead of <stdint.h> Incompatible changes: - The --output=location flag to 'bazel query' cannot be used with query expressions that involve the 'buildfiles' or 'loadfiles' operators. This also applies to 'genquery' rules. - Operators for equality, comparison, 'in' and 'not in' are no longer associative, e.g. x < y < z is now a syntax error. Before, it was parsed as: (x < y) < z. - In strings, octal sequences greater than \377 are now forbidden (e.g. "\\600"). Previously, Blaze had the same behavior as Python 2, where "\\450" == "\050". - Using tabulation for identation is now fobidden in .bzl files - `load` is now a language keyword, it cannot be used as an identifier - lvalues must have define at least one variable (i.e. we forbid `[] = f()`). - Fixed a bug whereby multiple load() statements could appear on the same line - -extra_checks:off is no longer supported; use -XepDisableAllChecks instead - java_common.java_toolchain_attr is removed. Depend on the java_toolchain_alias() rule to accomplish the same thing. - cc_common.cc_toolchain_attr and java_common.java_runtime_attr are not supported anymore and were replaced with the cc_toolchain_alias() and java_runtime_alias() rules. New features: - Zipped LLVM profiles are now supported. - LIPO maps to ThinLTO for LLVM builds. - Change to handle LLVM FDO zipped profile contents correctly. Important changes: - Windows: bazel clean --expunge works - First argument of 'load' should be a label. Path syntax is deprecated (label should start with '//' or ':'). - Octal prefix '0' is deprecated in favor of '0o' (use 0o777 instead of 0777). - The extension_safe attribute of apple_binary no longer validates transitive dependencies are compiled against extension_safe APIs. - Parentheses around the tuple are now mandatory in [a for b in c if 1, 2] - Adjust the thresholds for --test_verbose_timeout_warnings so that it can recommending timeout increases and won't recommend timeouts that are too close to the actual timeout. - Iterating on a `depset` object is deprecated. If you need an iterable, call the `.to_list()` method first. - Bazel now uses tools from action_configs in Crosstool by default (as oposed to using top level tools). - Incremental dexing errors on combination of --multidex=off and either --main-dex-list or --minimal-main-dex. - When using the dictionary literal syntax, it is now an error to have duplicated keys (e.g. {'ab': 3, 'ab': 5}). - New property on android_sdk: aapt2 Choose the version of aapt on android_binary - Add idl_preprocessed attribute to android_library, so that preprocessed aidl files can be passed to android_library for compiling - Bazel's remote_worker backend for remote execution supports sandboxing on Linux now. Check https://github.com/bazelbuild/bazel/blob/master/src/tools/remote_w orker/README.md for details. - Allows flags that expand to take values. - Make querying attributes formed by selector lists of list types more efficient by no longer listing every possible combination of attribute value but by more compactly storing the possible values of the list. - Writing build events to a file is no longer experimental - set --rewrite_calls_to_long_compare to false by default. - ObjC and C++ coverage feature is unified under name 'coverage' - Enable --incremental_dexing for Android builds by default. Note that some dexopts are incompatible with incremental dexing, including --force-jumbo. - Evaluation will soon use checked arithmetics and throw an error instead of overflow/underflow. - Implicit iteration in the CROSSTOOL has been removed, use explicit 'iterate_over' message. - Add option for Android specific grte_top - Crosstool patches are only applied if the toolchain doesn't define 'no_legacy_features' feature. - 'platform_type' is now a mandatory attribute on apple_binary and apple_static_library rules. If this change breaks your build, feel free to add platform_type = 'ios' to any apple_binary and apple_static_library targets in your project, as this was the previous default behavior. - Remove apple_watch2_extension build rule. Users should be using the skylark watchos_application and watchos_extension rules. https://github.com/bazelbuild/rules_apple has details. - Check stderr to detect if connected to a terminal. Deprecate --isatty. - Commands that shut down the server (like "shutdown") now ensure that the server process has terminated before the client process terminates. - Remove apple_watch1_extension and apple_watch_extension_binary rules. Users should be using the skylark watchos_application and watchos_extension rules. https://github.com/bazelbuild/rules_apple has details. - Windows: Wrapper-less CROSSTOOL becomes default now. set USE_MSVC_WRAPPER=1 if you still want to use wrapper script.
* remote: Delete output files created by failed download.Gravatar Jakob Buchgraber2017-07-27
| | | | | | | | | | If a remote download fails, delete any output files that might have already been created. Else, this might intefere with a subsequent locally executed actions that expects none of its output files to exist. See #3452. Change-Id: I467a97d05606c586aa257326213940a37dad9dd5 PiperOrigin-RevId: 163336093
* Include <cinttypes> instead of <stdint.h>Gravatar Damien Martin-Guillerez2017-07-27
| | | | | | | | | | | cinttypes is the C++ header that should replace stdint.h. Not using the correct header was leading to compilation error on CentOS 6.7 Fixes #3455. To be cherry-picked for #3375. Change-Id: I6df22134a4a4902ec9fa7ecdfaeb5408eacf3564 PiperOrigin-RevId: 163334651
* Windows: check in the icon resource fileGravatar Laszlo Csomor2017-07-27
| | | | | | | | | | | | | | | | | | | | The icon resource is a simple object file, built by rc.exe, but rc.exe is part of the Windows Kit, not of Visual Studio, and we have no reliable way to locate it, so we can't reliably rebuild the icon resource from source. Rather than having a brittle genrule that may or may not find the resource compiler, thus may or may not successfully build the icon resource and thus fail the whole build for //src:bazel.exe, let's just use a prebuilt object file. In a subsequent commit I'll add a script that can rebuild this file. Change-Id: Ia1f31ca9e78378088f93c9db144a2b708d690893 PiperOrigin-RevId: 163332738
* bazel-tests.json: remove trailing commaGravatar Klaus Aehlig2017-07-27
| | | | | | | Trailing commas are not part of the JSON specification. Change-Id: Icbfc072b448e422a3cdb7fd827fbfb392611d344 PiperOrigin-RevId: 163331760
* Rename set to depsetGravatar vladmos2017-07-27
| | | | | | The `set` constructor is obsolete and will be removed in the future. PiperOrigin-RevId: 163331591
* Remove unused send_transitive_header_module_srcs optionGravatar hlopko2017-07-27
| | | | | RELNOTES: None. PiperOrigin-RevId: 163331254
* Add .ipp extension as a C++ header typeGravatar hlopko2017-07-27
| | | | | | | | | | | | From one of the boost gurus: If you want to split up your template sources into interface and implementation (there are lots of good reasons to do that, including controlling instantiation), you can't very well use the same name (foo.hpp) twice, and foo.cpp wouldn't be appropriate for either one. foo.ipp clearly delineates the file as an implementation file intended to be #included in foo.hpp. RELNOTES: None. PiperOrigin-RevId: 163329612
* Use the .bazel.build URL instead of the googleapis.com oneGravatar dmarting2017-07-27
| | | | PiperOrigin-RevId: 163326705
* Exclude test/java/ in instrumentation_filter defaultGravatar Googler2017-07-27
| | | | | | | | The computed default used in bazel coverage excludes both javatests/ and test/java. Having the stated default exclude only one of those is needlessly confusing. (Even though in practice that static default will rarely be used.) Also updates the comment about the computed default, since that logic has moved. PiperOrigin-RevId: 163325837
* BEP ActionExecuted: fix typoGravatar Klaus Aehlig2017-07-27
| | | | | | | The value of stderr should go to the stderr field, not the stdout field. Change-Id: Ic5341220b2e4207aa42570d3683c66131dac38cc PiperOrigin-RevId: 163324715
* Add missing test dependency to unbreak the buildGravatar Jakob Buchgraber2017-07-27
| | | | | | | Introduced by b344e2c5a97b0eeacb796db20bb894f21283d358 Change-Id: I942b63cd52520a37e5bf2c7b04f3eed1615ec71e PiperOrigin-RevId: 163323682
* Fix a crash when Skylark rule re-exports SkylarkApiProvider.Gravatar dslomov2017-07-27
| | | | | | | | Also PintoSourcesContextProvider should not be a SkylarkApiProvider: it is not facade for anything but a provider in its own right. RELNOTES: None. PiperOrigin-RevId: 163323130
* remote: Don't upload failed action to cache. Fixes #3452Gravatar Jakob Buchgraber2017-07-27
| | | | | | | Also, restructure the code for better read- and testability. Change-Id: Ibdd0413f89e4687b836b768a9e7d6315234cb825 PiperOrigin-RevId: 163322658
* CI build.sh: delete unused codeGravatar Damien Martin-Guillerez2017-07-27
| | | | | | | This code was replaced by code on the CI side where it belongs. Change-Id: I67741f27aee5f133fe29f8e1d57b843d96f3f9ea PiperOrigin-RevId: 163320045
* Move the configuration file for Bazel jobs to our own repositoryGravatar Damien Martin-Guillerez2017-07-27
| | | | | | | | | | This will allow to update the file that explains how to build and test Bazel at the same time that Bazel evolves. Fixes bazelbuild/continuous-integration#99 Change-Id: I2ab8641a6eb5d8cf7ea95667bd6b3af42be5a420 PiperOrigin-RevId: 163320005
* Rollforward of commit b8514f533d4546d3bfbec3700012f2bbeffd1c37Gravatar Damien Martin-Guillerez2017-07-27
| | | | | | | | | | | Add stdout to default XML file and generate XML file on timeout This time corretly quote XML output: - Remove invalid UTF-8 characters - Wrap stdout in a CDATA Change-Id: I70bf38641d1946418e7b8e3b4e44ba0820e7b3c6 PiperOrigin-RevId: 163317477
* Windows: Bazel now has an iconGravatar Laszlo Csomor2017-07-27
| | | | | Change-Id: I50a093d4ee1352d7e8958148fec5d577b5eaf00d PiperOrigin-RevId: 163316612
* Fix NPE when passing null Location to XMLStreamException.Gravatar Googler2017-07-27
| | | | PiperOrigin-RevId: 163291269
* Fixing #3380: output stack traces and informative messages.Gravatar olaola2017-07-27
| | | | | | | | Also added tests specifically for the output, to ensure we don't break it again. TESTED=remote worker, unit tests RELNOTES: fixes #3380 PiperOrigin-RevId: 163283558
* Define an outgoing rule transition interface.Gravatar gregce2017-07-27
| | | | | | | | | | This lets a parent choose a transition for its dep based on the dep's rule class. Implement (experimental) dynamic Android resource filtering trimming with this. PiperOrigin-RevId: 163259052
* Resource filtering should preserve all matching artifacts, despite shared namesGravatar Googler2017-07-27
| | | | | | | | | | | | | | | | | | Before this change, density-based resource filtering tracked resources by qualifiers and name. Resources with density qualifiers specified would go into this code, but only one resource would be chosen from each each (qualifier, name) pair. Instead, track the resource using its entire path, this tracking resources with the same name seperately. Also, in case multiple resource are passed to the resource processing action, resource filtering only ignores a file if its name was in the list of resources to ignore *and* it does not exist. Otherwise, legitimate resources with the same name as a filtered resource might be ignored. RELNOTES: none PiperOrigin-RevId: 163235681
* Add configuration and target label to ActionCompletedId.Gravatar Eduardo Colaco2017-07-27
| | | | | | | | This is a first step on moving the configuration checksum and target label from the ActionExecuted payload and into ActionCompletedId. Change-Id: I989c9b708cd2a4172f6483d97bc7842d9841e3a8 PiperOrigin-RevId: 163233097
* Fix bug where we incorrectly skip over subdirectories named 'external'. ↵Gravatar mschaller2017-07-27
| | | | | | We're actually just trying to skip over packages named '//external'. PiperOrigin-RevId: 163230119