aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/main/java/com/google/devtools
Commit message (Collapse)AuthorAge
* BEP: Add BuildFinished event. Gravatar Jakob Buchgraber2017-02-28
| | | | | | | | | | | | The build event protocol now emits a BuildFinished event at the end of a build. The event is a child of the BuildStarted event. The code changes were larger than expected, due to some refactoring in BuildEventStreamer. This was necessary as the BuildCompleteEvent now implements the BuildEvent interface and Guava's EventBus always invokes the most specialized subscriber method. Thus, the buildEvent(BuildEvent) and buildCompleted(BuildCompletedEvent) methods had to be merged. -- Change-Id: Id0c2bd7220dc8ce03128b7126587e212ee8ce836 Reviewed-on: https://cr.bazel.build/9053 PiperOrigin-RevId: 148788582 MOS_MIGRATED_REVID=148788582
* Rollback of commit 5e945570ec0b9079596756bf89437ac37e031c36.Gravatar Jon Brandvein2017-02-28
| | | | | | | | *** Reason for rollback *** -- PiperOrigin-RevId: 148781019 MOS_MIGRATED_REVID=148781019
* Add an event reporting about downloading progress Gravatar Klaus Aehlig2017-02-28
| | | | | | | | | | | | | The ProgressInputStream provides unstructured information about progress of downloading files in the form of Progress events. Add a new event type, to be posted over the event bus, providing structured information about the download progress. -- Change-Id: Idbbaa4325ade356e65ef7ef1a40e66730216b6fe Reviewed-on: https://cr.bazel.build/9113 PiperOrigin-RevId: 148772585 MOS_MIGRATED_REVID=148772585
* In SkyFunctionEnvironment post progress-like events immediately Gravatar Klaus Aehlig2017-02-28
| | | | | | | | | | | | | In Skyframe Evaluation, events reporting about progress are meant to be seen immediately by the environment. More over, they are not to be replayed when taking this SkyFunction out of cache. So change the custom implementation of the StoredEventHandler in the SkyFunctionEnvironment to forward appropriately. -- Change-Id: I30baf0088595ef684f16270f11668e980e65aa41 Reviewed-on: https://cr.bazel.build/9112 PiperOrigin-RevId: 148766400 MOS_MIGRATED_REVID=148766400
* Add constraint_setting and constraint_value rules, to enable defining Gravatar John Cater2017-02-28
| | | | | | | | | | | | platform-related constraints and values. Part of ongoing work on #2219. -- Change-Id: Ice370ee26469f4992faf72c0c95a1a3e51a9f9e7 Reviewed-on: https://cr.bazel.build/9091 PiperOrigin-RevId: 148758190 MOS_MIGRATED_REVID=148758190
* Add check that the WORKSPACE found in LocalRepositoryLookupFunction isn't a ↵Gravatar John Cater2017-02-28
| | | | | | | | | | | | directory. Fixes #2580. -- Change-Id: I6e1271a9c1442819e956f7fcdcb5da535ed027db Reviewed-on: https://cr.bazel.build/9110 PiperOrigin-RevId: 148751072 MOS_MIGRATED_REVID=148751072
* Clean up the semantics of input discovering actions a bit by making ↵Gravatar Lukacs Berki2017-02-28
| | | | | | | | | | | | updateInputs() and inputsKnown() non-overridable and removing setInputs(). This comes at the cost of adding a flag to every action instance that's not used for non-input-discovering actions, but I think that's a deal. Simpler APIs are good, mmmmkay? Also fixed a few pre-existing issues in TestAction and ObjcCompileAction. -- PiperOrigin-RevId: 148749734 MOS_MIGRATED_REVID=148749734
* Move UnixFileSystem to lib.unix, WindowsFileSystem to lib.windowsGravatar Ulf Adams2017-02-28
| | | | | | -- PiperOrigin-RevId: 148749485 MOS_MIGRATED_REVID=148749485
* Add cc_proto_library to Bazel Build Encyclopedia.Gravatar David Chen2017-02-28
| | | | | | -- PiperOrigin-RevId: 148697913 MOS_MIGRATED_REVID=148697913
* Reimplement blaze query using an async evaluation model. Use a concurrent ↵Gravatar Nathan Harmata2017-02-28
| | | | | | | | | | | | | | | | | | | backend for SkyQueryEnvironment's implementation in order to achieve parallelism. Advantages: -New design has no flaws that the old design had. -Code is structured so that deadlocks due to thread starvation are impossible (yup!). Disadvantages: -The meat of this change needs to all be in a single CL because every single QueryFunction and QueryExpression needs to be rewritten in the async style. Still TODO: -Fully embrace the async model in all QueryFunctions (e.g. 'rdeps', 'allpaths'). -Use concurrency in BlazeQueryEnvironment to achieve parallel evaluation for (non SkyQuery) 'blaze query' and genquery. -- PiperOrigin-RevId: 148690279 MOS_MIGRATED_REVID=148690279
* BEP: Add tags and output files to TargetComplete event Gravatar Jakob Buchgraber2017-02-28
| | | | | | | | | | | | | | | A target's tags and output files are reported as part of the TargetComplete event of the build event protocol (BEP). The output files are grouped by their corresponding output group. If an output file belongs to more than one output group it appears once in each output group. -- Change-Id: Ia37db68709850d8550e478dcc30064dc7366bd1b Reviewed-on: https://cr.bazel.build/8955 PiperOrigin-RevId: 148667599 MOS_MIGRATED_REVID=148667599
* sandbox should create regular empty files, not symlink to /dev/null.Gravatar Philipp Wollermann2017-02-28
| | | | | | | | | | | | | | Adds a test based on our Python rules that makes sure that this actually fixes the issue. Thanks to @duggelz for the suggestion. It seems like our Python rules are the only place that actually provides an EmptyFilesSupplier to Runfiles, so there's probably no simpler way to test this behavior in an integration test. Fix #1458. Fix #2394. -- PiperOrigin-RevId: 148656193 MOS_MIGRATED_REVID=148656193
* Handle TriState type in `bazel query --output=build`Gravatar Laurent Le Brun2017-02-27
| | | | | | -- PiperOrigin-RevId: 148643993 MOS_MIGRATED_REVID=148643993
* Clean up event busGravatar Klaus Aehlig2017-02-27
| | | | | | | | ...now that the ExtendedEventHandler can serve the same purpose. -- PiperOrigin-RevId: 148640618 MOS_MIGRATED_REVID=148640618
* Cleanup migration-only build variablesGravatar Marcel Hlopko2017-02-27
| | | | | | -- PiperOrigin-RevId: 148632169 MOS_MIGRATED_REVID=148632169
* Remove AbtractAction#getInputsForExtraAction() (the third time).Gravatar Lukacs Berki2017-02-27
| | | | | | | | | | This time, if the action discovers inputs, the extra action is made to depend on the outputs of the action so that by the time the extra action runs, the inputs of the original action are discovered. This avoids us having to think about the state the shadowed action may keep. Yes, actions should not keep state, but they do. Such is life. -- PiperOrigin-RevId: 148627715 MOS_MIGRATED_REVID=148627715
* Remove the deprecated com.google.devtools.build.lib.vfs.FileSystems classGravatar Ulf Adams2017-02-27
| | | | | | -- PiperOrigin-RevId: 148625618 MOS_MIGRATED_REVID=148625618
* More documentation for distributed caching and remote execution Gravatar Alpha Lam2017-02-27
| | | | | | | | | | | | | | Adds step by step documentation for remote caching feature and document how to run the remote execution demo. Fixes a small issue with interacting with WebDAV module of NGINX and Apache using --rest_cache_url feature. -- Change-Id: I5e98aa6707bf502eab0801ba637eae575ba26d42 Reviewed-on: https://cr.bazel.build/9031 PiperOrigin-RevId: 148546592 MOS_MIGRATED_REVID=148546592
* Remove flag --experimental_j2objc_srcjar_processing, and always use the new ↵Gravatar Rumou Duan2017-02-27
| | | | | | | | J2ObjC source jar transpilation support. -- PiperOrigin-RevId: 148501938 MOS_MIGRATED_REVID=148501938
* Reword comment about the current implementation of ^.Gravatar Nathan Harmata2017-02-27
| | | | | | -- PiperOrigin-RevId: 148488719 MOS_MIGRATED_REVID=148488719
* RELNOTES: Activate the "dead_strip" feature if objc binary stripping is enabled.Gravatar Googler2017-02-27
| | | | | | -- PiperOrigin-RevId: 148484425 MOS_MIGRATED_REVID=148484425
* Fixes issue with ObjcCompileAction where extra action funcitonality is unableGravatar Googler2017-02-27
| | | | | | | | to generate extra action proto file. -- PiperOrigin-RevId: 148479293 MOS_MIGRATED_REVID=148479293
* Update depset constructor/method docsGravatar Jon Brandvein2017-02-27
| | | | | | -- PiperOrigin-RevId: 148469323 MOS_MIGRATED_REVID=148469323
* Adds the new versions of the template substitutions into ios_test.Gravatar Sergio Campama2017-02-27
| | | | | | -- PiperOrigin-RevId: 148464084 MOS_MIGRATED_REVID=148464084
* Provide more reporting options to SkyFunctions Gravatar Klaus Aehlig2017-02-27
| | | | | | | | | | | | | With more specific information to be reported by Skyfunctions, e.g., to inform the build-event protocol on missing files, the EventHandler interface is no longer enough. Therefore, provide an enriched context for reporting events. -- Change-Id: I2d06166fe4d5b9054e24ad8c752fafc039e3f9f8 Reviewed-on: https://cr.bazel.build/8794 PiperOrigin-RevId: 148463437 MOS_MIGRATED_REVID=148463437
* Add more depset documentationGravatar Jon Brandvein2017-02-27
| | | | | | | | | | Updated class doc, added examples to depsets.md. Constructor/method doc updates will be a follow-up CL. -- PiperOrigin-RevId: 148463032 MOS_MIGRATED_REVID=148463032
* CrosstoolCompilationSupport registers a binary strip action when binaryGravatar Cal Peyser2017-02-27
| | | | | | | | stripping is enabled. -- PiperOrigin-RevId: 148458258 MOS_MIGRATED_REVID=148458258
* Fix allowed characters in package and restore a commentGravatar Damien Martin-Guillerez2017-02-24
| | | | | | | | Follow-up to commit cae43035f9e6957ad05fec047d015a98aa53f97b -- PiperOrigin-RevId: 148450575 MOS_MIGRATED_REVID=148450575
* Add host_cxxopt in parallel to host_copt. Gravatar Marcel Hlopko2017-02-24
| | | | | | | | | | Closes #2543. -- Change-Id: I0cd7566fc9ae91f3c1374eca61500a64b3cc8079 Reviewed-on: https://github.com/bazelbuild/bazel/pull/2543 PiperOrigin-RevId: 148449853 MOS_MIGRATED_REVID=148449853
* Rollback of commit e716ae46f359dc1361574f44569811ff80a758ac.Gravatar Ulf Adams2017-02-24
| | | | | | -- PiperOrigin-RevId: 148445872 MOS_MIGRATED_REVID=148445872
* Fix Cpp action cachingGravatar Ulf Adams2017-02-24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This combines both previous changes and extends them to work both with and without kchodorow@'s rollout of the exec root rearrangement. Unfortunately, each of these changes individually breaks something somewhere, so they must all go into a single commit. Change 1: CppCompileAction must return false from inputsKnown for .d pruning This is necessary (but not sufficient) for the action cache to work correctly. Consider the following sequence of events: 1. action is executed 2. .d pruning is performed 3. action cache writes entry with post-pruning inputs list 4. action gets regenerated (e.g., due to server restart) 5. the action cache calls inputsKnown(), which returns true 6. action cache checks entry from step 3 against pre-pruning inputs list, which results in a cache miss The action cache needs to know that the current list is not the final list, so inputsKnown() in step 5 must return false if .d pruning is enabled. Change 2: Fix artifact root discovery for external artifacts The SkyframeExecutor was assuming that all exec paths were coming from the main repository. Instead, rely on external exec paths to start with "../". Additional change 3: In addition, update the PackageRootResolverWithEnvironment and the HeaderDiscovery to use the single unified repository name guessing implementation. Previously, the PackageRootResolverWithEnvironment was poisoning the source artifact cache, which then caused subsequent lookups to return a bad artifact. Add a precondition to double-check that artifacts looked up by exec path have the correct source root. For compatibility with kchodorow@'s upcoming exec root refactor, if the exec path starts with "external", then assume it's coming from an external repository. This must be removed when that change is successfully rolled out, or it will break if anyone creates a package called 'external'. Additional change 4: On top of all of that, PackageRootResolverWithEnvironment and SkyframeExecutor must use the same source root computation as the Package class itself. I extracted the corresponding code to Root, and added comments both there and in Package to clearly indicate that these methods have to always be modified in sync. Fixes #2490. -- PiperOrigin-RevId: 148439309 MOS_MIGRATED_REVID=148439309
* Encore of commit 41c2a26eef89167e807cbc9f33487dc66bb757d3 that removed ↵Gravatar Lukacs Berki2017-02-24
| | | | | | | | | | | | | | | | | | | AbstractAction#getInputFilesForExtraAction(). Turns out, we didn't add *mandatory* inputs of the shadowed action to the extra action, thus, breakage. Original description: Remove AbstractAction#getInputFilesForExtraAction(). This method was used to return the discovered inputs for extra actions, but it turns out that we can use #discoverInputs() just as well. Note that this makes it possible for #discoverInputs() to be called more than once per action instance (once for the action and once for each extra action), but this appears to work. A followup change may be able to dispense with that, but let's take baby steps for now. Also note that this introduces synchronization between an action and its associated extra action. -- PiperOrigin-RevId: 148429641 MOS_MIGRATED_REVID=148429641
* Remove mention of the ignored flag "--output_descriptor_set".Gravatar Carmi Grushko2017-02-24
| | | | | | -- PiperOrigin-RevId: 148405662 MOS_MIGRATED_REVID=148405662
* Rollback of commit 786cfa2ed980e278c42ee474408844f7e3720385.Gravatar Kush Chakraborty2017-02-24
| | | | | | | | | | | | | | | | | | | | *** Reason for rollback *** Breaks dagger []: [] *** Original change description *** Separate the classpaths of the TestRunner with the test target, and use a separate Classloader to load the test target's classes. This enables a clean separation of the classes of the TestRunner with the target under test. This is achieved with the following steps: 1. Start the test runner with only the bare bones classpaths to the Test Runner's classes which are used by the system ClassLoader. 2. Have all the classpaths required to load the test target's classes in a TEST_TARGET_CLASSPATH envi... *** -- PiperOrigin-RevId: 148405598 MOS_MIGRATED_REVID=148405598
* Rollforward of "apple_binary extension_safe attribute results in ↵Gravatar Chris Parsons2017-02-24
| | | | | | | | | | | configuration transition on dependencies" This includes a fix: Propagate iquote appropriately from apple_binary so that generated headers of xctest apps are seen by ios_test -- PiperOrigin-RevId: 148403601 MOS_MIGRATED_REVID=148403601
* Expose proto_library, java_lite_proto_library, java_proto_library and ↵Gravatar Carmi Grushko2017-02-24
| | | | | | | | | | cc_proto_library to the outside world. RELNOTES: New rules in Bazel: proto_library, java_lite_proto_library, java_proto_library and cc_proto_library -- PiperOrigin-RevId: 148394617 MOS_MIGRATED_REVID=148394617
* Description redacted.Gravatar Googler2017-02-24
| | | | | | -- PiperOrigin-RevId: 148388306 MOS_MIGRATED_REVID=148388306
* Better error messaging if apple cc toolchain cannot locate xcodeGravatar Chris Parsons2017-02-24
| | | | | | -- PiperOrigin-RevId: 148382422 MOS_MIGRATED_REVID=148382422
* Read the PersistentMap's backing file into memory all at once when ↵Gravatar Googler2017-02-24
| | | | | | | | | | processing it. We are going to read the whole thing and convert it into data structures, anyway. This shaves some time off of server startup time. -- PiperOrigin-RevId: 148377493 MOS_MIGRATED_REVID=148377493
* All objc linking rules get the crosstool.Gravatar Cal Peyser2017-02-24
| | | | | | -- PiperOrigin-RevId: 148369723 MOS_MIGRATED_REVID=148369723
* Add the LABEL_KEYED_STRING_DICT type for attributes.Gravatar Michael Staib2017-02-24
| | | | | | | | | This enables both native and Skylark rules to declare attributes which have labels/Targets as keys, and have string values. -- PiperOrigin-RevId: 148365033 MOS_MIGRATED_REVID=148365033
* Remove duplicate genrule documentation on base class.Gravatar John Cater2017-02-24
| | | | | | | | -- Change-Id: Ie33953add6a582368b6b0da74c478a8dd301acb4 Reviewed-on: https://cr.bazel.build/9041 PiperOrigin-RevId: 148355280 MOS_MIGRATED_REVID=148355280
* Filter android_binary resources during analysisGravatar Googler2017-02-24
| | | | | | | | | | | | | | | | | | | | | | Before this change, resource_configuration_filters were only used to filter resources out of android_binary targets during resource processing. Instead, we can filter these unwanted resources out during analysis. This means we won't have to copy these resources for use in execution, and that execution itself will have a smaller set of inputs. This should produce a speed-up in android_binary targets with resource_configuration_filters. Also add a flag that controls this behavior. Currently, the flag defaults to not doing this prefiltering. We'll change that after further testing. Also, do some related cleanup: - Replace repeated used of the constant "resource_configuration_filters" with references to the new class - Pass around instances of the new class rather that List<String> objects meant to represent ResourceConfigurationFilters -- PiperOrigin-RevId: 148353501 MOS_MIGRATED_REVID=148353501
* Implicitly generate Proguard obfuscation mapping file for android_binary ↵Gravatar Andrew Pellegrini2017-02-24
| | | | | | | | | | targets when both resource shrinking and Proguard are enabled, as it is required by resource shrinking to work properly. RELNOTES: Automatically generate Proguard mapping when resource shrinking and Proguard are enabled. -- PiperOrigin-RevId: 148349205 MOS_MIGRATED_REVID=148349205
* Fix typo.Gravatar Nathan Harmata2017-02-24
| | | | | | -- PiperOrigin-RevId: 148349051 MOS_MIGRATED_REVID=148349051
* Report inconsistent aspect order error to the user.Gravatar Dmitry Lomov2017-02-24
| | | | | | -- PiperOrigin-RevId: 148342788 MOS_MIGRATED_REVID=148342788
* Expose rpath entries as a build variableGravatar Marcel Hlopko2017-02-24
| | | | | | | | Unlike commit e2239cc61ca170ff9a65e1a94c3344d2b272c9e2, this only adds "." to the rpath if isNativeDeps is true. -- PiperOrigin-RevId: 148330144 MOS_MIGRATED_REVID=148330144
* Pass in the "coverage enabled" flag on the C++ linkstamp compile command line.Gravatar Lukacs Berki2017-02-24
| | | | | | -- PiperOrigin-RevId: 148329920 MOS_MIGRATED_REVID=148329920
* Add ProtoJavaApiInfoAspectProvider to JavaProvider.Gravatar Irina Iancu2017-02-23
| | | | | | | | | Also moved ProtoJavaApiInfo*Provider to package com.google.devtools.build.lib.rules.java to avoid a dependency cycle. -- PiperOrigin-RevId: 148324664 MOS_MIGRATED_REVID=148324664
* Remove ctx.aspect_id and Target.aspect_ids.Gravatar Dmitry Lomov2017-02-23
| | | | | | -- PiperOrigin-RevId: 148322874 MOS_MIGRATED_REVID=148322874