aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/main/java/com/google/devtools
Commit message (Collapse)AuthorAge
...
* Change Bazel default android_manifest_merger to android.Gravatar Adam Michael2016-11-04
| | | | | | | | | | | | | The Firebase Android libraries contain lots of AARs with manifests that include ${applicationId}. As far as I can tell, tools/android/merge_manifests.py only allows for substitution of ${packageName} and not arbitrary placeholder substitution. The new aar_import rule exposes the AARs in <sdk>/extras which include include the Firebase Android libraries. RELNOTES: Default android_manifest_merger is now "android" which uses the official Android manifest merger. http://tools.android.com/tech-docs/new-build-system/user-guide/manifest-merger -- MOS_MIGRATED_REVID=138109902
* Use android javacopts for java_proto_library-related compilations.Gravatar Googler2016-11-04
| | | | | -- MOS_MIGRATED_REVID=138104417
* Make ProtoSourceFileBlacklist take an explicit list of .proto files to ↵Gravatar Carmi Grushko2016-11-03
| | | | | | | | | | | | blacklist. This is intead of taking an attribute name and reading it inside of the class. Motivation: using proto_lang_toolchain() rules means there's no longer an attribute that points at the blacklist. Instead, we have an attribute that points at the toolchain, which itself points at the blacklist. -- MOS_MIGRATED_REVID=138096096
* ProtoCompileActionBuilder takes a list of ToolchainInvocations instead of a ↵Gravatar Carmi Grushko2016-11-03
| | | | | | | map, to emphasize that order matters. -- MOS_MIGRATED_REVID=138090273
* Writes a machine readable representation of BuildEvents to a file (varint ↵Gravatar Eduardo Colaco2016-11-03
| | | | | | | | | | | | | | | | | | | delimited). Adds --experimental_build_event_binary_file option that enables varint delimited proto loggging to the specified file path Adds varint delimited BuildEventStreamTransport and BuildEventStreamerModule Adds BuildEventStreamerModule for configuring and setting up BuildEventStreamer and its associated BuildEventTransports. Adds BuildEventTransportFactory which creates a Set of transports from command options. Moves BuildEventStreamer configuration from BlazeCommandDispatcher and BuildEventStreamerModule -- Change-Id: If71f2b58654879c2509206da47e6d1a846bf397f Reviewed-on: https://bazel-review.googlesource.com/#/c/7010/ MOS_MIGRATED_REVID=138073726
* Implemented repository caching for native maven_jar rules.Gravatar Jingwen Chen2016-11-03
| | | | | | | GITHUB: #1752 -- MOS_MIGRATED_REVID=138072464
* Stop consulting the environment for "originating user" information.Gravatar Googler2016-11-03
| | | | | -- MOS_MIGRATED_REVID=138039276
* Use proto_lang_toolchain in java_lite_proto_library.Gravatar Carmi Grushko2016-11-03
| | | | | -- MOS_MIGRATED_REVID=138005602
* Copy android_manifest_merger from target configuration into host configuration.Gravatar Adam Michael2016-11-03
| | | | | -- MOS_MIGRATED_REVID=138004628
* Do not tickle TimestampGranularityMonitor for stable-status.txt no-op updates.Gravatar Julio Merino2016-11-03
| | | | | | | | | | | | | | | | | When rewriting stable-status.txt, which happens on each build, avoid updating the file's ctime and mtime if the new contents match what is already in the file. This prevents tickling the TimestampGranularityMonitor for what should be a no-op update, which in turn could cause null/incremental builds to stall for up to a second. The problem was magnified on macOS where the default HFS+ file system only has second-level granularity. (This also affects Linux, but because current Linux file systems have milli/nanosecond-level granularity, the wait imposed by TimestampGranularityMonitor is minimal and thus not generally noticeable.) -- MOS_MIGRATED_REVID=137983794
* Refactor MavenDownloader to be a subclass of HttpDownloader to streamline ↵Gravatar Jingwen Chen2016-11-03
| | | | | | | | | | | instantiation of HttpDownloader and RepositoryCache in BazelRepositoryModule. There are sufficient similarities between the download flows of HttpDownloader and MavenDownloader such that we can extend HttpDownloader to MavenDownloader, and reuse method headers such as checkCache and download. GITHUB: #1752 -- MOS_MIGRATED_REVID=137982375
* Adds flag to enable/disable apple_binary from generating and linking ObjC ↵Gravatar Sergio Campama2016-11-03
| | | | | | | protos natively. -- MOS_MIGRATED_REVID=137980688
* java_binary: fix runfiles dir creation on WindowsGravatar Laszlo Csomor2016-11-03
| | | | | | | | | | | | | | | | | Create the runfiles directory for the shell stub script (bazel-bin/foo/bar_bin and bazel-bin/foo/bar_bin.runfiles) but use the batch script as the runfiles provider's executable (bazel-bin/foo/bar_bin.cmd). This way we the shell stub script can still find its runfiles (under its parent directory + its base name + ".runfiles) while "bazel run" can also work on Windows. Fixes https://github.com/bazelbuild/bazel/issues/2025 See https://github.com/bazelbuild/bazel/issues/1925 -- MOS_MIGRATED_REVID=137965442
* Store and use commandId and cookie as ByteStringsGravatar Michajlo Matijkiw2016-11-03
| | | | | | | | | | | | | We wind up doing String -> UTF8 bytes conversion for every message serialized (this happens in protocol buffer land). Do the conversion once and reuse the immutable value instead of doing it for every chunk of output written. Keep this optimization local to RpcOutputStream where we see a lot of repitition - using ByteStrings in place of Strings can get confusing when it comes to logging, so only apply this optimization where it could count. -- MOS_MIGRATED_REVID=137964305
* Also provide test summaries in the build-event streamGravatar Klaus Aehlig2016-11-02
| | | | | | | | | | | For each test target, also have a test summary as children to this event. As test summaries are posted on the event bus anyway, it is enough to make then an instance of BuildEvent. -- Change-Id: Id53e5f1760548a1fa621b1667fdb4470f51a52e8 Reviewed-on: https://bazel-review.googlesource.com/#/c/6931 MOS_MIGRATED_REVID=137961100
* Rollback of commit 0c6e4cdab3c38f8751fb3b944ccaa53866e4c032.Gravatar Adam Michael2016-11-02
| | | | | | | | *** Reason for rollback *** Broke internal builds. -- MOS_MIGRATED_REVID=137959459
* Merge BlazeModule.getEnvironmentExtensions into serverInit / ServerBuilder.Gravatar Ulf Adams2016-11-02
| | | | | -- MOS_MIGRATED_REVID=137955061
* Improve overhead/safety of RecorderStreamGravatar Michajlo Matijkiw2016-11-02
| | | | | | | | | | Bypass converting bytes to string - RecordOutputStream is typically used to wrap stdout/err, which we write bytes to, the string step is waste. Make defensive copies of byte[]s passed to Event since Event doesn't. -- MOS_MIGRATED_REVID=137949714
* Multiplying strings with negative numbers no longer leads to an exception.Gravatar Florian Weikert2016-11-02
| | | | | | | This CL also contains a small refactoring that should make the introduction of list-int-mulitplication easier. -- MOS_MIGRATED_REVID=137938998
* Move createActionCache to ExecutorBuilder.Gravatar Ulf Adams2016-11-02
| | | | | -- MOS_MIGRATED_REVID=137936478
* Description redacted.Gravatar Yue Gan2016-11-02
| | | | | -- MOS_MIGRATED_REVID=137935119
* Add support for --keep-main-dex flag to RexGravatar Googler2016-11-02
| | | | | -- MOS_MIGRATED_REVID=137886595
* Add support for Rex package mapGravatar Googler2016-11-02
| | | | | -- MOS_MIGRATED_REVID=137877037
* Change Bazel default android_manifest_merger to android.Gravatar Adam Michael2016-11-02
| | | | | | | | | | | | | The Firebase Android libraries contain lots of AARs with manifests that include ${applicationId}. As far as I can tell, tools/android/merge_manifests.py only allows for substitution of ${packageName} and not arbitrary placeholder substitution. The new aar_import rule exposes the AARs in <sdk>/extras which include include the Firebase Android libraries. RELNOTES: Default android_manifest_merger is now "android" which uses the official Android manifest merger. http://tools.android.com/tech-docs/new-build-system/user-guide/manifest-merger -- MOS_MIGRATED_REVID=137875695
* Have query Lexer operated directly on StringGravatar Michajlo Matijkiw2016-11-02
| | | | | | | | No need for the char[] in the middle, prevents us from accidentally modifying input, or sucking up ram on huge queries. -- MOS_MIGRATED_REVID=137872573
* Use common logic to create proto action in j2objc proto aspect.Gravatar Rumou Duan2016-11-02
| | | | | -- MOS_MIGRATED_REVID=137871914
* Android native libraries compile with -mstackrealign for 32bit x86 clang.Gravatar Adam Michael2016-11-02
| | | | | | | | | | This is a workaround for a clang bug. See https://code.google.com/p/android/issues/detail?id=220159. RELNOTES: Fix for Android clang++ std::stack segfault on 32bit x86. See https://code.google.com/p/android/issues/detail?id=220159 -- MOS_MIGRATED_REVID=137871199
* Add logging to TimestampGranularityMonitor.Gravatar Julio Merino2016-11-02
| | | | | | | | These new log statements help in understanding what files trigger the TimestampGranularityMonitor's wait logic and when the wait is performed. -- MOS_MIGRATED_REVID=137868235
* Do not tickle TimestampGranularityMonitor for CONSTANT_METADATA artifacts.Gravatar Julio Merino2016-11-02
| | | | | | | | | | | | | | | | | | | | "Constant metadata" artifacts represent real files whose changes should be ignored by the build system. However, these artifacts were triggering the timestamp granularity checks in TimestampGranularityMonitor because the fact that they were "constant metadata" was not respected. Avoid this so that their regeneration does not cause the build to unnecessarily stall. One of these artifacts is the volatile workspace status file, which is unconditionally updated on each build. Before this fix, "blaze build" would get stuck for up to a second waiting for file system timestamps to catch up. With this fix, the artifact is ignored and the wait is gone. This problem is magnified on macOS where the default HFS+ file system only has second-level granularity. (This also affects Linux, but because current Linux file systems have milli/nanosecond-level granularity, the wait imposed by TimestampGranularityMonitor is minimal and thus not generally noticeable.) -- MOS_MIGRATED_REVID=137867586
* ProtoCompileActionBuilder takes ImmutableMap for toolchains, which has a ↵Gravatar Carmi Grushko2016-11-02
| | | | | | | predictable iteration order. -- MOS_MIGRATED_REVID=137864799
* Rollback, breaks dependent code.Gravatar Jon Brandvein2016-11-02
| | | | | -- MOS_MIGRATED_REVID=137864618
* Pad apple SDK version number strings to ensure there are at least two ↵Gravatar Chris Parsons2016-11-02
| | | | | | | | | components. In other words, ensure that a version number such as "10" is always padded as "10.0" when describing an apple sdk version number. -- MOS_MIGRATED_REVID=137836480
* Remove deprecation warning from ios_simulator_version flag. Its semantics ↵Gravatar Chris Parsons2016-11-02
| | | | | | | remain unchanged; it is overridden by ios_test "target_device" attribute. -- MOS_MIGRATED_REVID=137835927
* A version of ProtoCompileActionBuilder that uses proto_lang_toolchain() ↵Gravatar Carmi Grushko2016-11-02
| | | | | | | rules instead of a soup of methods. -- MOS_MIGRATED_REVID=137835755
* experimental_objc_library relies on ObjcProvider for compilation data, ↵Gravatar Cal Peyser2016-11-02
| | | | | | | | | exporting only CcLinkParamsProvider to provide cc-interop (see the current objc_library implementation). This allows experimental_objc_library to take advantage of ObjcProvider's direct-deps semantics for protos. -- MOS_MIGRATED_REVID=137826198
* Description redacted.Gravatar Googler2016-11-02
| | | | | -- MOS_MIGRATED_REVID=137800285
* Initial implementation of "dylib" attribute for apple_binary and ↵Gravatar Chris Parsons2016-11-02
| | | | | | | | | | | | apple_dynamic_library rules Provided values propagated from "dylib" dependencies will be compiled against the srcs of the rule, and linked together with the dependencies. It is worth noting that "dylibs" differs from "deps" in that there is no configuration transition along this edge. There is more work to be done on this attribute, so it remains undocumented. Namely, symbol deduping between dylib and statically-linked dependencies needs to be addressed. -- MOS_MIGRATED_REVID=137721599
* Refactor the module API to use the builder pattern for executor creation.Gravatar Ulf Adams2016-11-02
| | | | | | | This significantly simplifies several of our modules. -- MOS_MIGRATED_REVID=137713119
* Windows: java_binary can be an action executableGravatar Laszlo Csomor2016-10-31
| | | | | | | | | | | | | | | | | | This change introduces a new output of java_binary on Windows: %{name}.cmd, a Windows-compatible Java launcher script. This simply calls out to bash.exe passing the shell launcher we use on other platforms. This change allows java_binary to be the executable of a Skylark action or any SpawnAction. Fixes https://github.com/bazelbuild/bazel/issues/1925 RELNOTES[NEW]: Bazel on Windows: java_binary can now be a the executable of Skylark rule actions (ctx.action's executable argument) -- MOS_MIGRATED_REVID=137708331
* Add method getCurrentlyAvailableNodes to QueryableGraph and Walkable GraphGravatar Googler2016-10-31
| | | | | | | | | | It allows all graph implementations to return the list of nodes which are immediately available to be fetched. NOTE: Not-currently-available here does not mean the nodes do not exist in the graph. It simply means they are not ready to be fetched immediately yet. -- MOS_MIGRATED_REVID=137701432
* Allow calling attributes of built-in objects.Gravatar Vladimir Moskva2016-10-31
| | | | | | | | | If `f` is an object with an attribute `x` which is callable, it's valid now to call `f.x()` directly (caused a "no function called x" error before because .x is a attribute, not a method). -- MOS_MIGRATED_REVID=137698425
* Bring experimental_objc_library module semantics in line with those ofGravatar Cal Peyser2016-10-31
| | | | | | | | | | | objc_library. That is, a module map is always generated, but modules only used by the library if module maps are enabled. This is in contrast with previous behavior, under which modules were always used. -- MOS_MIGRATED_REVID=137697659
* ObjcCompileAction provides all headers to sandboxed execution. This allowsGravatar Cal Peyser2016-10-31
| | | | | | | headers pruned by .d pruning to be re-added if they are changed. -- MOS_MIGRATED_REVID=137697323
* Add experimental flag to stop requiring all transitive modules as inputs.Gravatar Googler2016-10-31
| | | | | | | | | Requiring all transitive modules to always be available can lead to long critical paths and even unnecessary compiles in combination with the prune_header_modules feature. -- MOS_MIGRATED_REVID=137696794
* Move Bazel{ActionListener,ExtraAction} rule to rules.extra and drop prefix.Gravatar Ulf Adams2016-10-31
| | | | | -- MOS_MIGRATED_REVID=137694143
* Fix typo in bazel docs: Borne -> Bourne.Gravatar Googler2016-10-31
| | | | | -- MOS_MIGRATED_REVID=137688913
* Small doc fixes for BazelActionListenerRule.Gravatar Ulf Adams2016-10-31
| | | | | -- MOS_MIGRATED_REVID=137682796
* Introduce proto_lang_toolchain().Gravatar Carmi Grushko2016-10-31
| | | | | | | RELNOTES: New rule: proto_lang_toolchain(), to support LANG_proto_library rules on multiple platforms. -- MOS_MIGRATED_REVID=137550563
* Verify (in test) that ObjcProvider keys are either exposed to skylark or ↵Gravatar Chris Parsons2016-10-31
| | | | | | | explicitly omitted -- MOS_MIGRATED_REVID=137547748
* Disable protobuf modulemap generation if it's a linking target. Correctly ↵Gravatar Sergio Campama2016-10-28
| | | | | | | configure protos intermediate artifacts to use the build configuration, if any provided. -- MOS_MIGRATED_REVID=137514384