aboutsummaryrefslogtreecommitdiffhomepage
Commit message (Collapse)AuthorAge
* 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
* A blog post about proto_library et al.Gravatar Carmi Grushko2017-02-28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | proto_library-dep-graph.png was generated from: digraph mygraph { node [shape=box]; "//src:zip_code.proto" [style="dashed"] "//src:address.proto" [style="dashed"] "//src:person.proto" [style="dashed"] "//src:person_java_proto" [shape="ellipse"] "//src:person_cc_proto" [shape="ellipse"] "//src:person_java_proto" "//src:person_java_proto" -> "//src:person_proto" "//src:person_cc_proto" "//src:person_cc_proto" -> "//src:person_proto" "//src:person_proto" "//src:person_proto" -> "//src:address_proto" "//src:person_proto" -> "//src:person.proto" "//src:person.proto" "//src:address_proto" "//src:address_proto" -> "//src:address.proto" "//src:address_proto" -> "//src:zip_code_proto" "//src:zip_code_proto" "//src:zip_code_proto" -> "//src:zip_code.proto" "//src:zip_code.proto" "//src:address.proto" } -- PiperOrigin-RevId: 148664921 MOS_MIGRATED_REVID=148664921
* 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
* Remove unnecessary python skylark rules and update example Gravatar Yu Yi2017-02-28
| | | | | | | | | | | | | | | | | | | | | | | * We already have native python rules, so the skylark ones are no longer unnecessary now * Leaving `load skylark rules` statement in the example may be misleading for newcomers Testing done: * re-compile bazel * use it to build example folder and run py target ``` shell ./compile.sh compile /usr/bin/bazel /home/yiyu/opt/bazel/output/bazel build //examples:all /home/yiyu/opt/bazel/output/bazel run //examples/py:bin ``` -- Change-Id: Icd82afff2b74e77c0bcc80687b04225baf28f6ad Reviewed-on: https://cr.bazel.build/9070 PiperOrigin-RevId: 148646895 MOS_MIGRATED_REVID=148646895
* 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
* Bazel client: add new ReadFile/WriteFile variantsGravatar Laszlo Csomor2017-02-27
| | | | | | | | | | | | | Instead of writing from / reading to a string, these variants take a buffer and a size. These methods will be used from ijar. See https://github.com/bazelbuild/bazel/issues/2157 -- PiperOrigin-RevId: 148635487 MOS_MIGRATED_REVID=148635487
* Regression test for ActionCache shutdown roundtrip Gravatar George Gensure2017-02-27
| | | | | | | | | | | | | | Determines whether an action cache loaded after bazel daemon shutdown is accurate to prevent C++ recompilation. Demonstrates the validity of a28b540 and should prevent future regressions in the input discovery space for C++. Closes #2586. -- Reviewed-on: https://github.com/bazelbuild/bazel/pull/2586 PiperOrigin-RevId: 148634934 MOS_MIGRATED_REVID=148634934
* Cleanup migration-only build variablesGravatar Marcel Hlopko2017-02-27
| | | | | | -- PiperOrigin-RevId: 148632169 MOS_MIGRATED_REVID=148632169
* Cleanup gitignore to ignore all /bazel-* directories.Gravatar John Cater2017-02-27
| | | | | | | | -- Change-Id: Ib75c9a2b86586efc07ff16dc44caa2e4f4e420c3 Reviewed-on: https://cr.bazel.build/9067 PiperOrigin-RevId: 148631186 MOS_MIGRATED_REVID=148631186
* 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
* More stable naming scheme for lambda classes in desugared android codeGravatar Googler2017-02-27
| | | | | | | | RELNOTES: More stable naming scheme for lambda classes in desugared android code -- PiperOrigin-RevId: 148506830 MOS_MIGRATED_REVID=148506830
* 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
* Remove shell highlighting which isn't supported by our version of jekyll. Gravatar John Cater2017-02-27
| | | | | | | | | | Fixes #2587. -- Change-Id: Ieaedd70c6b7561be3765fe41f81e3c3f388f9cc7 Reviewed-on: https://cr.bazel.build/9090 PiperOrigin-RevId: 148466063 MOS_MIGRATED_REVID=148466063
* 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
* Use datetime as horizontal axis.Gravatar Yue Gan2017-02-27
| | | | | | | | Add axis titles. -- PiperOrigin-RevId: 148457998 MOS_MIGRATED_REVID=148457998
* Suppress error for non-exhaustive switchesGravatar Liam Miller-Cushon2017-02-27
| | | | Change-Id: I4fee049a92201fc8995e7aaa860f123101016480
* Update to guava 21.0 and Error Prone version 2.0.18-20160224Gravatar Liam Miller-Cushon2017-02-27
| | | | Change-Id: I89875f8233092e2704142fc306f9ec60da739b5f
* Fix coverage section in the autodetected crosstool for windowsGravatar Marcel Hlopko2017-02-24
| | | | | | | | Fixes https://github.com/bazelbuild/bazel/issues/2582 -- PiperOrigin-RevId: 148455784 MOS_MIGRATED_REVID=148455784
* 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
* Remove the first result in benchmark, since it's slower than others.Gravatar Yue Gan2017-02-24
| | | | | | | | And a little refactor. -- PiperOrigin-RevId: 148446876 MOS_MIGRATED_REVID=148446876
* 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
* Revert "Upgrade //third_party/protobuf to v3.2.0"Gravatar Irina Iancu2017-02-24
| | | | | | | | | | | | | This reverts commit 2346f5a01561f695a2b2ba7655359d5020105077. It breaks bazel build in freebsd[1]. The solution is to patch https://svnweb.freebsd.org/ports/head/devel/protobuf/files/. I rolled-back this since the other builds will not automatically start if Bazel is broken. [1] http://ci.bazel.io/view/Bazel%20bootstrap%20and%20maintenance/job/Bazel/JAVA_VERSION=1.8,PLATFORM_NAME=freebsd-11/1312/ Change-Id: I7e939a4293d799ab6dd67f93d219d1efdf4cd901
* 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
* Fix broken linkGravatar Jon Brandvein2017-02-24
| | | | | | -- PiperOrigin-RevId: 148397556 MOS_MIGRATED_REVID=148397556
* Remove historical reference to test runners from user manual.Gravatar Michael Staib2017-02-24
| | | | | | -- PiperOrigin-RevId: 148397211 MOS_MIGRATED_REVID=148397211
* 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
* Add overview documentation on depsetsGravatar Jon Brandvein2017-02-24
| | | | | | -- PiperOrigin-RevId: 148377512 MOS_MIGRATED_REVID=148377512
* 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
* Add is_external support to PackageManifestParser.Gravatar Googler2017-02-24
| | | | | | -- PiperOrigin-RevId: 148375330 MOS_MIGRATED_REVID=148375330
* 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