aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/main/java/com
Commit message (Collapse)AuthorAge
...
* Move target pattern work to new util classGravatar John Cater2018-07-17
| | | | | Change-Id: Ib1a29a927fa6fd3f49e03efa3b73e1547df6cacd PiperOrigin-RevId: 204993474
* Expose AndroidSdkProvider to Skylark (as AndroidSdkInfo).Gravatar Googler2018-07-17
| | | | | RELNOTES: None. PiperOrigin-RevId: 204983634
* Update the AndroidProguardInfo provider so that it can be created from Skylark.Gravatar Googler2018-07-17
| | | | | RELNOTES: none. PiperOrigin-RevId: 204976789
* Expose ProguardSpecProvider to skylark.Gravatar Googler2018-07-17
| | | | | RELNOTES: None PiperOrigin-RevId: 204974291
* Move constraint value lookup to a new utility function.Gravatar John Cater2018-07-17
| | | | | Change-Id: I13645199a21991b1458264f9d9ac2db2736066b2 PiperOrigin-RevId: 204963740
* Move platform lookup to new dedicated helper class.Gravatar John Cater2018-07-17
| | | | | Change-Id: I2195a3f7d60e9835bc00d6f151ea91271fdccf6f PiperOrigin-RevId: 204954233
* Expose AndroidLibraryResourceClassJarProvider to skylark.Gravatar Googler2018-07-17
| | | | | RELNOTES: None PiperOrigin-RevId: 204953629
* NDK cpusupport: link against dlGravatar Gregor Jasny2018-07-17
| | | | | | | | | | The cpusupport code uses functions like dlopen, dlclose that require linking with libdl. Adding that library to the linkopts makes cpusupport self-contained. Closes #5559. PiperOrigin-RevId: 204948982
* Default to doing decoupled data processing in Android configurationGravatar asteinb2018-07-17
| | | | | | | | Also, fix a few NPEs this apparently exposes by having android_test and android_binary mobile_install explicitly specify merged resources. RELNOTES: none PiperOrigin-RevId: 204933164
* Expose AndroidCcLinkParamsProvider to Skylark as AndroidCcLinkParamsInfo.Gravatar Googler2018-07-17
| | | | | RELNOTES: None PiperOrigin-RevId: 204927047
* Add flags for disabling legacy crosstool fieldsGravatar hlopko2018-07-17
| | | | | | | | | | | | This cl adds following flags: * --experimental_disable_legacy_cc_compilation_api * --experimental_disable_legacy_cc_linking_api * --experimental_disable_linking_mode_flags * --experimental_disable_compilation_mode_flags * --experimental_disable_legacy_crosstool_fields RELNOTES: None PiperOrigin-RevId: 204924599
* [Skylark] Make range function lazy.Gravatar Taras Tsugrii2018-07-17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | range used to use MutableList which would eagerly allocate an array list with all range elements, which is not efficient for very large ranges or when only a small number of its elements are used. This implementation uses a constant amount of RAM and computes a value for each requested index. For the following Skylark snippet: ``` def check_content(t): if t == []: return t return False def modulo(n): return n % 797 N = 10000000 [check_content(i) for i in range(N)] [check_content(i) for i in range(N)] [modulo(i) for i in range(N)] [modulo(i) for i in range(N)] ``` the total runtime goes from ``` $ time bazel-bin/src/main/java/com/google/devtools/skylark/Skylark test.bzl bazel-bin/src/main/java/com/google/devtools/skylark/Skylark test.bzl 93.09s user 1.67s system 316% cpu 29.930 total ``` to ``` $ time bazel-bin/src/main/java/com/google/devtools/skylark/Skylark test.bzl bazel-bin/src/main/java/com/google/devtools/skylark/Skylark test.bzl 31.45s user 0.86s system 179% cpu 17.974 total ``` which reflects the reduced system time (fewer allocations) and performance. Closes #5240. PiperOrigin-RevId: 204918577
* fix deadlock in the bes upload. Fixes #5402Gravatar buchgr2018-07-17
| | | | | | | | | | | The synchronized block in sendBuildEvent is not needed at all, since all the logic in there is local to the method and thread safe. See the issue for more details. RELNOTES: None PiperOrigin-RevId: 204915541
* bes: fix bug where the bes upload would lose eventsGravatar buchgr2018-07-17
| | | | | | | | | | | | If a local file upload fails, then the build event gets lost. This was the case because of a bug in the implementation where local file upload errors are retried by the BES retrier. This is the root cause for the "Non-consecutive sequence number" errors we have been seeing recently. RELNOTES: None PiperOrigin-RevId: 204906550
* Pull out a class to hold the data that is transferred from a compilation actionGravatar Googler2018-07-17
| | | | | | | to the include scanner and slightly reshuffle code. RELNOTES: None. PiperOrigin-RevId: 204906167
* PiperOrigin-RevId: 204896222Gravatar Googler2018-07-17
|
* Expose BUILD and Starlark symbols.Gravatar Googler2018-07-17
| | | | PiperOrigin-RevId: 204889082
* Improve error reporting for BuildEventService{Module,Transport}Gravatar lpino2018-07-17
| | | | PiperOrigin-RevId: 204882046
* External repositories: disallow use of unexported repository rulesGravatar Klaus Aehlig2018-07-17
| | | | | | | | | | | Treat repository rules the same way as build rules: they may only be used, if exported by a Skylark file. It has never been intended to create external repositories by anonymous rules, and, in fact, for properly recording resolved information, it is necessary that all repository rules used can be referred to by an accessible name. Change-Id: Ib9259d58be66b033721a6f591656c45889f49931 PiperOrigin-RevId: 204872735
* 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
* 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
* 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
* 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
* 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
* 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
* 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
* 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