aboutsummaryrefslogtreecommitdiffhomepage
Commit message (Collapse)AuthorAge
* Open source unit tests for the objc rules.Gravatar cpeyser2017-07-06
| | | | PiperOrigin-RevId: 161010594
* Delete unused reuseJavaCompileActionsFromProtoLibrary.Gravatar carmi2017-07-06
| | | | | | | The flag was an unannounced roll-out flag, and nobody should have a reason to pass it manually, so no announcement is made. RELNOTES: None PiperOrigin-RevId: 161006423
* Create top-level configs dynamically: period.Gravatar gregce2017-07-06
| | | | | | | | | | | | | | | Before this change, top-level configs were still built statically, then cloned into dynamic configs to run the actual build. After this change, no static configuration should ever be created in a dynamically configured build. We're still keeping support for --experimental_dynamic_configs=off a bit longer to provide easy reversion on any bad surprises. But barring that we'll quickly move toward making --experimental_dynamic_configs=off a no-op, then ripping out Bazel's static configuration logic. PiperOrigin-RevId: 161005150
* Add a default for defaultsToSelf so dynamic transitions don't have to worry ↵Gravatar gregce2017-07-06
| | | | | | | | | | about it. This is only required because PatchTransition extends Attribute.Transition, which requires it. But it's only used for static configurations. So PatchTransition's implicit requirement is pointless and confusing. PiperOrigin-RevId: 161005131
* Remove the ToolchainConstructor class and change uses to be either aGravatar John Cater2017-07-06
| | | | | | | | | Label or a ToolchainInfo provider. Part of #2219. Change-Id: Ia09070717f54eea10e1ab0303253714b58768548 PiperOrigin-RevId: 160995546
* Fix expand_location to correctly use TransitiveInfoCollection instead ofGravatar John Cater2017-07-06
| | | | | | | | | the too-specific AbstractConfiguredTarget. Fixes #3309. Change-Id: Id614bb3b27c2ea164e4f87a4c1a9caa247f1980c PiperOrigin-RevId: 160991475
* Make 'platform_type' a mandatory attribute.Gravatar cparsons2017-07-06
| | | | | | | RELNOTES: '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. PiperOrigin-RevId: 160989393
* Rewrite the watcher / execution servers to use a thread-pool for executionGravatar ulfjack2017-07-06
| | | | | | | Also change them to use ListenableFuture, so multiple watchers can watch the same action execution. PiperOrigin-RevId: 160989277
* Improve the ToolchainInfo provider and add more data.Gravatar John Cater2017-07-06
| | | | | | | Part of #2219. Change-Id: Ie235d0a75fc50746331b20a7f2060e6d49ae48cb PiperOrigin-RevId: 160982987
* Fix LocalRepositoryLookupFunction to normalize paths so they are compared ↵Gravatar John Cater2017-07-06
| | | | | | | | | properly. Part of #2811. Change-Id: I15da53d1f6ec7f4a41f5d14fdd9dafd5ad82f9fc PiperOrigin-RevId: 160982624
* Require LValues to have at least one variable.Gravatar laurentlb2017-07-06
| | | | | | | | | | | | In other words, we now forbid these: [] = [] () = () _, [] = f() RELNOTES[INC]: lvalues must have define at least one variable (i.e. we forbid `[] = f()`). PiperOrigin-RevId: 160981283
* Assume crosstools that don't have 'no_legacy_features' feature need patchingGravatar hlopko2017-07-06
| | | | | | | | | | | | | Right now there are 2 ways how to control crosstool patches. If there is 'no_legacy_features' feature defined, no patching will be performed. If there is not, then depending on whether any c++ action_config is defined one set of patches is applied, or other set of patches is applied. It's a mess, and in the most cases, crosstools that do not define 'no_legacy_features' need the full patching. This cl fixes the crosstools that need the partial patching. RELNOTES: Crosstool patches are only applied if the toolchain doesn't define 'no_legacy_features' feature. PiperOrigin-RevId: 160979463
* RELNOTES: Add option for Android specific grte_topGravatar Googler2017-07-06
| | | | PiperOrigin-RevId: 160974656
* Rewrite blob upload to use temporary filesGravatar ulfjack2017-07-06
| | | | | | | | | | | | | | Previously, it was allocating in-memory buffers for upload, which caused it to run out of memory on large file uploads (or on many small uploads running simultaneously). Unfortunately, we don't create the temporary file in the right location (due to separation of the BlobStore from the ByteStreamServer), so we copy the file again to write it to the OnDiskBlobStore, which isn't ideal. There'll need to be another BlobStore API change to make that work, when the InMemoryBlobStore is gone. PiperOrigin-RevId: 160974550
* Try to clarify "unaffected by subinclude," and also stop mentioning ↵Gravatar cpovirk2017-07-06
| | | | | | | subinclude :) RELNOTES: None. PiperOrigin-RevId: 160974476
* Fix JSON expectationsGravatar Klaus Aehlig2017-07-05
| | | | | | | | With commit 97a1db383cc unnecessary whitespace in the JSON output was removed (which is a feature). Adapt the test expectation accordingly. Change-Id: I76026f45a80bc9d791833e0c37f546804052591f PiperOrigin-RevId: 160970633
* Handle problematic resource qualifiers in references to individual resourcesGravatar Googler2017-07-05
| | | | | | | | | ResourceFilter already handles problematic qualifiers in the resource_configuration_filters attribute. Also handle them in references to individual resources. RELNOTES: none PiperOrigin-RevId: 160969753
* Do not pass ruleKind from Java sandwich/aspects.Gravatar dslomov2017-07-05
| | | | | | | This gives non-sensical values in most cases. RELNOTES: None. PiperOrigin-RevId: 160959188
* Open source {workspace_layout,startup_options,option_processor}_test.Gravatar lpino2017-07-05
| | | | | | Additionally rewrite the option_processor_test to make it more flexible. PiperOrigin-RevId: 160958736
* Make integration tests more portableGravatar Klaus Aehlig2017-07-05
| | | | | | | | By avoiding paths that are too specific for a given system, and bringing option arguments before non-option arguments. Change-Id: I82acae94e2d9808c9e81a85018c6a0578da8bd42 PiperOrigin-RevId: 160957203
* Clean up string representations for labelsGravatar vladmos2017-07-05
| | | | | | | | | | | If --incompatible_descriptive_string_representations is passed, labels are converted to strings using `repr` differently: `Label("//package:name")` instead of `"//package:name"` This CL doesn't affect representations of other object types but provides the necessary infrastructure for it. PiperOrigin-RevId: 160955284
* Restore docs for javahotswap command.Gravatar dslomov2017-07-05
| | | | | RELNOTES: None. PiperOrigin-RevId: 160955162
* For topic about generate_workspace tool, fixed broken links and did some ↵Gravatar Googler2017-07-05
| | | | | | rewording. PiperOrigin-RevId: 160955003
* Change the SimpleBlobStore API to use Input/OutputStreamsGravatar ulfjack2017-07-05
| | | | | | | This avoid having to load all the data into memory at once in most cases, especially for large files. PiperOrigin-RevId: 160954187
* Android: zip_manifest_creator now runs on WindowsGravatar Laszlo Csomor2017-07-05
| | | | | | | | | And so does its test. See https://github.com/bazelbuild/bazel/issues/3264 Change-Id: I32dd906b94747d601254ab55e7962bf6cda058f4 PiperOrigin-RevId: 160953063
* Remove ide_build_info command.Gravatar dslomov2017-07-05
| | | | | RELNOTES: None. PiperOrigin-RevId: 160951982
* Call md5 instead of md5sum on FreeBSD as well.Gravatar Klaus Aehlig2017-07-05
| | | | | Change-Id: Ib4367b4bdc54460af85eb62e9e2db381b5fc155f PiperOrigin-RevId: 160951351
* Use the same data structure for native and Skylark providers.Gravatar dslomov2017-07-05
| | | | | | | | | The memory cost of adding Skylark provider is now the same as native. Skylark providers (declared and legacy) benefit from the same shape-sharing optimization as native providers. RELNOTES: None. PiperOrigin-RevId: 160944263
* Make 'load' a keywordGravatar laurentlb2017-07-05
| | | | | | | RELNOTES[INC]: `load` is now a language keyword, it cannot be used as an identifier PiperOrigin-RevId: 160944121
* blaze_util_freebsd.cc: gracefully handle server directory being NULLGravatar Klaus Aehlig2017-07-05
| | | | | | | | | | | | Gracefully handle the case that the working directory of the server process no longer exists in the file system. This happens if the directory in which bazel was called gets removed and later a directory with the same name is created; a particular such case is running bazel in integration tests. Closes #3324. PiperOrigin-RevId: 160938332
* Automated rollback of commit 480d6038905b3c8de09a362e2759fc6b8abe634c.Gravatar twerth2017-07-05
| | | | | | | | | | | | | | | *** Reason for rollback *** Breaks tests in current Blaze nightlies, see b/63296317 *** Original change description *** Add minSdkVersion optimization to Blaze. This optimization reduces the size of Android apps that use Proguard by ~0.2 - 0.3% depending on the minSdkVersion. RELNOTES: None. PiperOrigin-RevId: 160930942
* implement py_runtime ruleGravatar yiyu2017-07-05
| | | | | | | | | | * A user can use the py_runtime by `--python_top` flag, where the py_runtime can contain either: + an absolute path of a Python interpreter + a checked-in Python interpreter * A user can also use `--python_path` to point to a Python interpreter in an absolute path directly. PiperOrigin-RevId: 160901921
* fix singlejar signedness problemsGravatar Benjamin Peterson2017-07-05
| | | | | | | | | | | | while (total_written < count) { ~~~~~~~~~~~~~~^~~~~~~ Most of these can be fixed by simply by storing the return value of various functions in the right variable type. E.g., cen_offset32 can naturally be stored in uin32_t rather than uint64_t. Change-Id: I9f188ca541e4fe2587c636670807f56887e1655e PiperOrigin-RevId: 160897953
* Allow strings as default values of labelsGravatar vladmos2017-07-05
| | | | | | | Strings now can be passed to the default parameter of attr.label, attr.label_list, and attr.label_keyed_string_dict. PiperOrigin-RevId: 160896987
* Stop reusing gRPC stubs, that causes the deadline to be per-build rather ↵Gravatar olaola2017-07-05
| | | | | | than per-call. PiperOrigin-RevId: 160892006
* Allow the remote server to set its own default action timeout when Bazel ↵Gravatar olaola2017-07-05
| | | | | | | does not have one. Hardcoded value of 120 seconds is clearly a mistake. TESTED=remote worker PiperOrigin-RevId: 160891214
* Update SpawnAction to take an ActionEnvironmentGravatar ulfjack2017-07-05
| | | | | | | | | | Some of the callers are not using the proper one from the configuration, and are thus ignoring --action_env. Some are only using part of the configuration's action environment. I tried to carefully not change the semantics in any case. Semantic-changing changes come later. PiperOrigin-RevId: 160891204
* Forbid tabs for indentationGravatar laurentlb2017-07-05
| | | | | | RELNOTES[INC]: Using tabulation for identation is now fobidden in .bzl files PiperOrigin-RevId: 160888064
* Exposing the value of strict_java_deps flag to Skylark.Gravatar elenairina2017-07-05
| | | | | | | | | | Fixes #3295. Users requested this [1] and it is useful for example to pass it as a value to java_common.compile#strict_deps. [1] https://stackoverflow.com/questions/44827704/bazel-can-a-skylark-action-read-a-command-line-flag-strict-java-deps PiperOrigin-RevId: 160886151
* Better error handling in RemoteSpawnStrategyGravatar ulfjack2017-07-05
| | | | | | Make sure that we print the failing command / target in all cases. PiperOrigin-RevId: 160881591
* Add an on-disk storage option for the remote workerGravatar ulfjack2017-07-05
| | | | | | | | | | I'm planning to switch the remote worker over to the on-disk storage system, and delete the in-memory option. Currently, running a Bazel build with the in-memory storage system uses up over 50% of the total available memory on my machine (I only have 32 GB total), and grinds it to a complete halt (unless I close most of my apps) on a simple build of //src:bazel. PiperOrigin-RevId: 160877546
* build_windows_jni.sh: move file to subdirectoryGravatar Laszlo Csomor2017-07-05
| | | | | | | | | | | | | The script more logically belongs in src/main/native/windows than in src/main/native. Also move the //src/main/native:windows_jni rule into //src/main/native/windows:windows_jni, so the logic of building the JNI library is fully contained in that package. Change-Id: I96e19003932cc0ddc5af3471b0b31a1aec09b8fa PiperOrigin-RevId: 160876594
* Add configuration to terminal test summary, if neededGravatar aehlig2017-07-05
| | | | | | | | | | When showing the summary of test results on the terminal, for multi-configuration builds it can happen that the same label occurs twice (as the test was run for multiple configurations). In this case, also show the configuration (as mnemonics) for all tests in the summary. RELNOTES: None PiperOrigin-RevId: 160875427
* Also provide the configuration id of executed actionsGravatar Klaus Aehlig2017-07-05
| | | | | | | | | | In some cases, when the configuration is known anyway, it might help debug why an action failed. For the time being, we only report of id of the configuration without guaranteeing that details about the configuration are shown in the sream. Change-Id: I23bcad2f6407e03c7defcdd795629dfca2b1ea92 PiperOrigin-RevId: 160874546
* Only configure wrapper scripts when they are neededGravatar Yun Peng2017-07-05
| | | | | | | | | BAZEL_PYTHON is no logger needed if we don't use wrapper script. Also, decode stdout and stderr so that tests work with Python 3. Change-Id: I61b60775a51f8322b40f7682e6cf3f63e8e8b6cc PiperOrigin-RevId: 160874163
* Rename GrpcActionCache to GrpcRemoteCacheGravatar ulfjack2017-07-05
| | | | PiperOrigin-RevId: 160872755
* Remove implicit iteration from CrosstoolGravatar hlopko2017-07-05
| | | | | | | | | | | | | | | | | Up until now we allowed implicit iteration, e.g.: flag_group { flag: '%{some_sequence_variable}' } From now on, snippet above will raise an error. We require explicit 'iterate_over' message, e.g.: flag_group { iterate_over: 'some_sequence_variable' flag: '%{some_sequence_variable}' } RELNOTES: Implicit iteration in the CROSSTOOL has been removed, use explicit 'iterate_over' message. PiperOrigin-RevId: 160871888
* Move the SimpleBlobStore and implementations to a subpackageGravatar ulfjack2017-07-05
| | | | | | | | | | Also extend the API to throw exceptions rather than having to wrap or swallow. This is in preparation for adding yet another implementation using an on-disk cache. Having the RemoteWorker keep everything in memory is not good for my sanity. PiperOrigin-RevId: 160871586
* cleanup {get,set,unset}env() functions callsGravatar Thiago Farina2017-07-05
| | | | | | | | Instead, let's reuse the cross-platform {Get,Set,Unset}Env() functions when possible. Change-Id: I40b4ff09c66fe238d5b3d70e49f91705cea64b0c PiperOrigin-RevId: 160870850
* New flag `--incompatible_checked_arithmetic` to use checked arithmetics.Gravatar laurentlb2017-07-05
| | | | | | | RELNOTES: Evaluation will soon use checked arithmetics and throw an error instead of overflow/underflow. PiperOrigin-RevId: 160834366