aboutsummaryrefslogtreecommitdiffhomepage
Commit message (Collapse)AuthorAge
* git_repository: remove .git directoryGravatar Klaus Aehlig2018-07-17
| | | | | | | | | | | While we do not expect any targets to actually depend on the contents of the .git subdirectory of an external repository, it is still a non-reproducible part of an external git repository, blocking all attempts to demonstrate reproducibility of that the given rule. Change-Id: Id1e08013a8ca33d4b4c4b053b9423f75d771dfc1 PiperOrigin-RevId: 204872242
* Automated rollback of commit eb587075b0d6ffab1cf9e69ede1b7e547905e547.Gravatar janakr2018-07-16
| | | | | | | | | | *** Reason for rollback *** Depot has been fixed. RELNOTES[INC]: If the same artifact is generated by two distinct but identical actions, and a downstream action has both those actions' outputs in its inputs, the artifact will now appear twice in the downstream action's inputs. If this causes problems in Skylark actions, you can use the uniquify=True argument in Args.add_args. PiperOrigin-RevId: 204827477
* Fix comments.Gravatar Googler2018-07-16
| | | | | RELNOTES: None PiperOrigin-RevId: 204817013
* Expose AndroidPreDexJarProvider to Skylark as AndroidPreDexJarInfo.Gravatar Googler2018-07-16
| | | | | RELNOTES: None PiperOrigin-RevId: 204809750
* AndroidIdeInfoProvider exposed to Skylark (as AndroidIdeInfo).Gravatar Googler2018-07-16
| | | | | RELNOTES: None. PiperOrigin-RevId: 204801047
* Automated rollback of commit 44c53dcf661ef7c0fdf484c26d3eedf7d2be7593.Gravatar jingwen2018-07-16
| | | | | | | | | | | | | | | | | | | | *** Reason for rollback *** Failing on Windows: https://buildkite.com/bazel/bazel-bazel/builds/3409#825fcb71-bf05-4e59-98a3-1272957d6588 *** Original change description *** Add //examples/... to postsubmit CI pipeline While fixing https://github.com/bazelbuild/bazel/issues/3663, I figured that it'll be great to build_test all of the targets in //examples/..., on top of the Android ones. Tested manually on Ubuntu, macOS and Windows machines. Fixes https://github.com/bazelbuild/bazel/issues/3663 Closes #5108. PiperOrigin-RevId: 204800755
* Add --incompatible_disable_deprecated_attr_params to disable some deprecated ↵Gravatar cparsons2018-07-16
| | | | | | | parameters of the skylark attr module. RELNOTES: None. PiperOrigin-RevId: 204797954
* Ensure BEP file output stream is flushed promptly.Gravatar Googler2018-07-16
| | | | | | | | | | | | | | | | | | Tulsi uses BEP json output in its UI, to simulate Bazel terminal outptut. This means we have to promptly flush the stream. It's sufficient to do flushing at the granularity of whole events, not any specific count of bytes, since whole events are what's being consumed by the user. To balance IO throughput and interactivity, let's flush at a regular sub-second interval. (The alternative solution of using a stream with smaller buffer could still end up with small-sized event descriptions buffered arbitrarily long; and abandoning buffering altogether would be suboptimal for throughput when writing a long sequence of small build events.) RELNOTES: None. PiperOrigin-RevId: 204790794
* Make AndroidAssetsInfo createable from Skylark.Gravatar Googler2018-07-16
| | | | | RELNOTES: None. PiperOrigin-RevId: 204788478
* Add //examples/... to postsubmit CI pipelineGravatar Jingwen Chen2018-07-16
| | | | | | | | | | | | While fixing https://github.com/bazelbuild/bazel/issues/3663, I figured that it'll be great to build_test all of the targets in //examples/..., on top of the Android ones. Tested manually on Ubuntu, macOS and Windows machines. Fixes https://github.com/bazelbuild/bazel/issues/3663 Closes #5108. PiperOrigin-RevId: 204785212
* Skylark debugger: show contents of SkylarkValue objects when serializing.Gravatar brendandouglas2018-07-16
| | | | | | | Temporary solution finding the SkylarkCallable fields using reflection, mirroring the existing handling of ClassObject. PiperOrigin-RevId: 204779295
* http.bzl: Use allow_single_file for labelsGravatar Ed Baunton2018-07-16
| | | | | | | | | | | To match the label declarations in git.bzl, use `allow_single_file` for workspace and build file labels. Per https://docs.bazel.build/versions/master/skylark/lib/attr.html#label this restricts the labels to specify only a single file. Closes #5561. PiperOrigin-RevId: 204773387
* Rewrite swift_binary_test.bzl using new skylark cc toolchain apiGravatar hlopko2018-07-16
| | | | | | | This is a part of the https://github.com/bazelbuild/bazel/issues/4571 effort. RELNOTES: None PiperOrigin-RevId: 204754855
* Add implicit mapping from "@mainrepo" to "@". This fixes the issue where ↵Gravatar Danna Kelmer2018-07-16
| | | | | | | | | | referencing the main repository using its name caused bazel to treat it as a separate external repository. Closes #5586. Fixes #3115. RELNOTES: None PiperOrigin-RevId: 204752150
* Second cl for verbose workspaces (ability to log certain potentially ↵Gravatar Googler2018-07-16
| | | | | | | | | | | | | | non-hermetic events that happen as part of repository rules). Defining representation for Execute events for workspace logging. In the future: - Add more events - Allowing to specify log file rather than dumping to INFO - Log levels, full or alerts only RELNOTES: None PiperOrigin-RevId: 204748436
* Remove fallback for SDKROOT as all users of this script are setting the ↵Gravatar kaipi2018-07-16
| | | | | | environment properly. PiperOrigin-RevId: 204738902
* C++: Remove CcDynamicLibrariesForRuntime.Gravatar plf2018-07-16
| | | | | | | | | | | This was providing runtime libraries. This provider is redundant because the same libraries are in CcLinkParamsStore. Note to sheriff: Shouldn't break anything. If any, breakages would most likely be in Go test rules. I will look at the nightly tomorrow anyway. The breakages in the linked TGP re-run are not caused by this change, later re-runs have unrelated changes. TESTED=[] RELNOTES:none PiperOrigin-RevId: 204738136
* Release 0.15.1 (2018-07-16)Gravatar Bazel Release System2018-07-16
| | | | | | | | | | | | | | | | | | | | | | | | | | | Baseline: b93ae42e8e693ccbcc387841a17f58259966fa38 Cherry picks: + 4b80f2455e7e49a95f3a4c9102a67a57dad52207: Add option to enable Docker sandboxing. + 6b1635279e8b33dc1ac505ac81825e38f8797a14: Allow disabling the simple blob caches via CLI flag overrides. + 4ec0a7524913ab2c4641368e3f8c09b347351a08: Use BUILD.bazel instead of BUILD for external projects + 2ff8c5fd919ad7316d06c6303e8d7b51315d4c61: Release 0.15.0 (2018-06-26) + 8ff87c164f48dbabe3b20becd00dde90c50d46f5: Fix autodetection of linker flags + c4622ac9205d2f1b42dac8c598e83113d39e7f11: Fix autodetection of -z linker flags + d3228b61f633cdc5b3f740b641a0836f1bd79abd: remote: limit number of open tcp connections by default. Fixes #5491 Important changes: - In remote caching we limit the number of open TCP connections to 100 by default. The number can be adjusted by specifying the --remote_max_connections flag.
* C++: New functionality exposed to Skylark for external libs.Gravatar plf2018-07-16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - CcLinkingInfo has a getter for CcLinkParams. - Artifacts and linkopts of CcLinkParams are accessible. - CcCompilationInfo constructor now accepts defines and include dirs. - CcCompilation now has getters for headers, defines and include dirs. CcCompiilationInfo( headers=depset([Artifacts]), defines=depset([Strings]), include_dirs=depet([Strings]) CcCompilationInfo.headers CcCompilationInfo.defines CcCompilationInfo.include_dirs -- cc_common.merge([CcLinkingInfos]) returns CcLinkingInfo -- CcLinkingInfo.static_shared_params CcLinkingInfo.static_no_shared_params CcLinkingInfo.no_static_shared_params CcLinkingInfo.no_static_no_shared_params -- CcLinkParams.libraries CcLinkParams.linkopts CcLinkParams.dynamic_libraries_for_runtime RELNOTES:none PiperOrigin-RevId: 204700779
* Test suite to verify contracts of @SkylarkCallable and @SkylarkModule which ↵Gravatar cparsons2018-07-13
| | | | | | | are difficult or impossible to verify by annotation processor. RELNOTES: None. PiperOrigin-RevId: 204540521
* Improve build API support in the fakebuildapi, allowing Skydoc to run on ↵Gravatar cparsons2018-07-13
| | | | | | | | | files which define new provider types and instantiate Labels. Also improve docstring usage in attr definitions by doing whitespace trimming. RELNOTES: None. PiperOrigin-RevId: 204537623
* Remove unused mapGravatar dannark2018-07-13
| | | | | RELNOTES: None PiperOrigin-RevId: 204533485
* Reference bazel rather than blaze in user message.Gravatar schmitt2018-07-13
| | | | | RELNOTES: None. PiperOrigin-RevId: 204531667
* Fix misspelling in ↵Gravatar kush2018-07-13
| | | | | | | https://github.com/bazelbuild/bazel/commit/b39c69394c5e7991ca8d04efac2142c22947a7c5 RELNOTES: None PiperOrigin-RevId: 204522278
* Expose AndroidIdlProvider to Skylark (as AndroidIdlInfo).Gravatar Googler2018-07-13
| | | | | RELNOTES: none PiperOrigin-RevId: 204514591
* Add toString to RepositoryMappingValueGravatar dannark2018-07-13
| | | | | RELNOTES: None PiperOrigin-RevId: 204514384
* Remove SkylarkCallable.mandatoryPositionalsGravatar cparsons2018-07-13
| | | | | RELNOTES: None. PiperOrigin-RevId: 204505003
* Drop module-info "class" in Android desugaringGravatar kmb2018-07-13
| | | | | | RELNOTES: None. PiperOrigin-RevId: 204492527
* Set file uploader in BEP integration test to "local".Gravatar tomlu2018-07-13
| | | | | | | This doesn't actually exist, but if the name isn't found in the uploader map then it defaults to "local". RELNOTES: None PiperOrigin-RevId: 204483720
* Remove documentation for the old Actions provider.Gravatar cparsons2018-07-13
| | | | | | | This old provider will be deprecated, and removing documentation for this type is of higher priority as it conflicts with the documentation for "actions", another skylark type. RELNOTES: None. PiperOrigin-RevId: 204480354
* Fix Skydoc's following of imports to correctly process absolute labels.Gravatar cparsons2018-07-13
| | | | | | | Previously, any absolute label (starting with double slash) would be converted to an absolute path, instead of a path relative to the current workspace directory. RELNOTES: None. PiperOrigin-RevId: 204472080
* Add option to turn on strict deps for the java compilation of proto generatedGravatar twerth2018-07-13
| | | | | | | Java code. RELNOTES: None PiperOrigin-RevId: 204471346
* Code Cleanup: Simplify the ResolvedFile interface by removing unnecessary ↵Gravatar kush2018-07-13
| | | | | | | test hooks. RELNOTES: None PiperOrigin-RevId: 204468647
* Stop setting G3_VERSION_INFO C++ linkstamp variable.Gravatar Googler2018-07-13
| | | | | | RELNOTES: No longer define G3_VERSION_INFO for c++ linkstamp compiles, as it was a duplicate of G3_TARGET_NAME. PiperOrigin-RevId: 204466459
* C++: Implements py_wrap_cc in SkylarkGravatar plf2018-07-13
| | | | | RELNOTES:none PiperOrigin-RevId: 204463998
* Remove bazel info crosstool-configurationGravatar hlopko2018-07-13
| | | | | | | It was not opensourced, and even internally was not used. And we hate having internal-only code. RELNOTES: None. PiperOrigin-RevId: 204441702
* Windows,JNI: graceful error-handlingGravatar Laszlo Csomor2018-07-13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | CreateJunction and DeletePath are now more resilient to errors: - CreateJunction opens the junction path to check its target requesting fewer rights and with greater sharing permission. This way it can check junction targets even if the junction name is opened by another process with no sharing. - DeletePath attempts to call FindFirstFileW if GetFileAttributesW fails with ERROR_ACCESS_DENIED. There's hardly any info about this error mode online, except for a code comment in the .NET CoreFX library. (See new code comments in this commit.) Also: - Change the error codes for DeletePath. - Wrap the DeletPath error codes in a struct for better readability. Fixes https://github.com/bazelbuild/bazel/issues/5433 Change-Id: I5b6e0f27b5b22c1cf00da90104495eda84178283 Closes #5590. Change-Id: I5b6e0f27b5b22c1cf00da90104495eda84178283 PiperOrigin-RevId: 204438994
* For all top-level artifacts, track the labels that own them when that is ↵Gravatar janakr2018-07-13
| | | | | | | | available. The owning labels are the labels of the top-level configured targets that requested this artifact to be built (there may be many such targets). In cases where the artifact is added not through a configured target (build-info artifacts and coverage artifacts), the label of the artifact's owner is used. PiperOrigin-RevId: 204432951
* Stop requiring the creation and storage of FileStateValues within ↵Gravatar kush2018-07-12
| | | | | | | | | ResolvedFile objects. While this does not eliminate the need for stat operation yet, it gets rid of one usage of the stat result (and is also a self contained change) RELNOTES: None PiperOrigin-RevId: 204417559
* make tests for singlejar's --check_desugar_deps flag run in Bazel's CIGravatar kmb2018-07-12
| | | | | | RELNOTES: None. PiperOrigin-RevId: 204388732
* Read a byte array instead of a certain number of bytes that are indicated by aGravatar mjhalupka2018-07-12
| | | | | | | preceding integer when serializing BuildOptions.DiffForReconstruction. Reorder the cache map inserts due to a subtle race condition that can occur. PiperOrigin-RevId: 204376273
* Update Bazel and Android sidebar links to provide direct links to core resourcesGravatar jingwen2018-07-12
| | | | | RELNOTES: None. PiperOrigin-RevId: 204320776
* Do not expose interface building related variables in the Skylark C++ ↵Gravatar hlopko2018-07-12
| | | | | | | toolchain API RELNOTES: None. PiperOrigin-RevId: 204291210
* Sort expansions of aggregating middlemen by exec file path. These commonlyGravatar Googler2018-07-12
| | | | | | | | | | | | | contain a large set of files required for a particular toolchain that are added to every single compile action. Some exeutors in turn sort all action inputs in order to properly cache, deduplicate and serialize them. Sorting the expansion of these middlemen needs to be done only once and a later sorting together with a bunch of other action input files is much faster (as Java's TimSort algorithm is effectively linear with mostly sorted inputs). RELNOTES: None. PiperOrigin-RevId: 204285426
* remote: add a ByteStreamBuildEventArtifactUploaderGravatar buchgr2018-07-12
| | | | | | | | | | | | | | | This change allows local files referenced by the BEP/BES protocol to be uploaded to a ByteStream gRPC service. The ByteStreamUploader is now implicitly also used by the BES module which has a different lifecycle than the remote module. We introduce reference counting to ensure that the channel is closed after its no longer needed. This also fixes a bug where we currently leak one socket per remote build until the Bazel server is shut down. RELNOTES: None PiperOrigin-RevId: 204275316
* Simplify (hopefully) usage of modules during input discovery. Goals:Gravatar Googler2018-07-12
| | | | | | | | | | | - Don't duplicate usedModules into additionalInputs (this shouldn't be necessary). - Use ImmutableLists instead of ImmutableSets where possible to reduce memory consumption. - Use set operations to make the code more readable. RELNOTES: None. PiperOrigin-RevId: 204268489
* Make spend_cpu_time more reliable by tracking time.Gravatar jmmv2018-07-12
| | | | | | | | | | | | | | | | | | | | | | First, make the function that wastes user time keep track of how much processor time has been used so far, and make the function that wastes system time track overall wall time. This is to minimize the number of "overhead" system calls, which can tamper with our measurements. Second, make the loop of the function that wastes user time more costly so that modern processors don't run it too fast. Otherwise, the overhead to track used time becomes significant in system time and makes our tests fail. This should fix the flakiness observed in our process-wrapper tests when run on the modern CPUs that the iMac Pros carry. Tested: I haven't been able to reproduce the flakiness. Running the spend_cpu_time binary by hand reports very accurate timings for both system and user time, even when pausing the program while it runs. RELNOTES: None. PiperOrigin-RevId: 204264910
* Move output option down to specific query option.Gravatar twerth2018-07-12
| | | | | | | | They're different anyway and we will need this to set a different default value for aquery. RELNOTES: None PiperOrigin-RevId: 204259933
* Automated rollback of commit f4a3dd9b8124dc7b2795f89e6700881b66371e4f.Gravatar lberki2018-07-12
| | | | | | | | | | | | | | | | | | | | *** Reason for rollback *** Breaks //devtools/blaze/integration:{[]_test_test,gdp_validation_test} and at leats //contentads/supermixer/server:supermixer . *** Original change description *** Refactor handling of API generation in JavaPluginInfoProvider Instead of keeping two copies of state for the API-generating and non-API-generating cases, create a 'JavaPluginInfo' abstraction to contain all state for each case, and then keep two copies in the top-level JavaPluginInfoProvider provider. This will make it easier and less error-prone to add additional state to the provider. PiperOrigin-RevId: 204258844
* Windows,tests: port bazel_rules_testGravatar Laszlo Csomor2018-07-12
| | | | | | | | | | | | | | //src/test/shell/bazel:bazel_rules_test now runs on Windows. See https://github.com/bazelbuild/bazel/issues/4292 Change-Id: If88daa9c65689ae8363ee83cfd401c3200215c74 Closes #5571. Change-Id: If88daa9c65689ae8363ee83cfd401c3200215c74 PiperOrigin-RevId: 204256609