aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/main/java/com
Commit message (Collapse)AuthorAge
...
* Update format implementation in ctx.actions.args.Gravatar tomlu2018-04-16
| | | | | | | Since we're only supporting a single %s anyway, make this explicit in the docs, fail in the analysis phase, and use a more efficient format method in the implementation. RELNOTES: None PiperOrigin-RevId: 193099585
* Re-add an accidentally removed line in skylark docgenGravatar cparsons2018-04-16
| | | | | RELNOTES: None. PiperOrigin-RevId: 193093782
* Introduce tools attribute to ctx.actions.run and friends.Gravatar tomlu2018-04-16
| | | | | | | | | This will allow us to stop iterating all inputs in an expensive manner looking for tools so we can add their runfiles. If users specify the 'tools' attribute, it is assumed they know what they are doing and inputs will no longer be scanned for tools. RELNOTES: Introduce 'tools' attribute to ctx.actions.run. PiperOrigin-RevId: 193092258
* Add ValueConstants helper to handle the increasingly complex logic for ↵Gravatar janakr2018-04-16
| | | | | | value-equality-tested constants. Main hurdle is efficiently testing to see if a Collection is a value constant without trying to do work on Collections that can't possibly be value constants. PiperOrigin-RevId: 193085625
* Create @SkylarkGlobalLibrary annotation, allowing classes/interfaces with ↵Gravatar cparsons2018-04-16
| | | | | | | | | global skylark functions to use @SkylarkCallable instead of @SkylarkSignature. Also migrate skylark's global "rule" function to @SkylarkCallable, thus demonstrating the new feature. RELNOTES: None. PiperOrigin-RevId: 193085313
* Provider and dependency container for Android assetsGravatar asteinb2018-04-16
| | | | | | | | | | | | These classes will allow a reasonable asset-only merging action in the next change. The relationship between AndroidAssetsInfo and AssetDependencies is a bit messy; I based it on the existing resource provider and dependencies class rather than come up with something radically different. RELNOTES: none PiperOrigin-RevId: 193085304
* Independently parse assetsGravatar asteinb2018-04-16
| | | | | | | This is the first step in processing assets completely seperately from resources. RELNOTES: none PiperOrigin-RevId: 193076991
* Rollback https://github.com/bazelbuild/bazel/pull/5007Gravatar cparsons2018-04-16
| | | | | | | It breaks downstream rules_nodejs. See https://github.com/bazelbuild/bazel/issues/5028 for details. RELNOTES: None. PiperOrigin-RevId: 193074798
* Implement positional overloads for ctx.actions.args.Gravatar tomlu2018-04-16
| | | | | | | | | | | We now support calls like: args = ctx.action.args() args.add("--foo", value) args.add_all("--foo", values) RELNOTES: Support two-arg overloads for ctx.actions.args (eg. args.add("--foo", val)) PiperOrigin-RevId: 193074060
* Introduce NestedSetCodecWithStore, which serializes NestedSet using a ↵Gravatar cpeyser2018-04-16
| | | | | | process-global bimap of fingerprints to NestedSet contents. PiperOrigin-RevId: 193063717
* repository_ctx.download_and_extract: mention cache in documentationGravatar Klaus Aehlig2018-04-16
| | | | | | | | | Since the repository_cache is now enabled by default, extend the documentation of the download_and_extract method to mention its effect, if a sha256 checksum is specified. Change-Id: I3cb714e60a5957e338ceb83fe4f1a3c6eaf64960 PiperOrigin-RevId: 193053375
* Remove a stale comment: srcs-less java_library rules no longer forward their ↵Gravatar cushon2018-04-16
| | | | | | deps PiperOrigin-RevId: 193053186
* Resource processing pipeline uses interface instead of ResourceContainerGravatar asteinb2018-04-16
| | | | | | | | | This allows us to use either the new AndroidResources object and its children (which are fully decoupled from asset processing) or the old ResourceContainer. We'll actually turn on decoupled asset and resource processing in an upcoming change. We still need to create an asset-only pipeline and handle the binary case. RELNOTES: none PiperOrigin-RevId: 193047924
* This CL adds log entry protos and logging handlers for bytestream Read and ↵Gravatar Googler2018-04-16
| | | | | | Write so that they are logged. I'm open to suggestions for the logging format for these calls, since we don't want to log the actual contents of reads/writes because of their size. PiperOrigin-RevId: 193047886
* Properly expose resource artifacts in MergableAndroidData interfaceGravatar asteinb2018-04-16
| | | | | | | | | | | In hindsight, I should have done this a few changes ago, but the relevant change is already submitted. We need the artifacts for use in some cases where we want to use AndroidResources and ResourceContainer interchangably during migration. RELNOTES: none PiperOrigin-RevId: 193038067
* Roll forward of ↵Gravatar philwo2018-04-16
| | | | | | | | | | | | | | | | | | | | https://github.com/bazelbuild/bazel/commit/656a0bab1e025ff3c27d595284a4bf1c5a8d8028 with test (unknown commit) and fix. Big round of sandbox fixes / performance improvements. - The number of stat() syscalls in the SymlinkedSandboxedSpawn was way too high. Do less, feel better. - When using --experimental_sandbox_base, ensure that symlinks in the path are resolved. Before this, you had to check whether on your system /dev/shm is a symlink to /run/shm and then use that instead. Now it no longer matters, as symlinks are resolved. - Remove an unnecessary directory creation from each sandboxed invocation. Turns out that the "tmpdir" that we created was no longer used after some changes to Bazel's TMPDIR handling. - Use simpler sandbox paths, by using the unique ID for each Spawn provided by SpawnExecutionPolicy instead of a randomly generated temp folder name. This also saves a round-trip from our VFS to NIO and back. Clean up the sandbox base before each build to ensure that the unique IDs are actually unique. ;) - Use Java 8's Process#isAlive to check whether a process is alive instead of trying to get the exitcode and catching an exception. Closes #4913. PiperOrigin-RevId: 193031017
* Create gen source jar in java_common.compile().Gravatar elenairina2018-04-16
| | | | PiperOrigin-RevId: 193029216
* bash: Add a toolchain for local Bash.Gravatar Laszlo Csomor2018-04-16
| | | | | | | | | | | | | | | | | | | Bazel automatically detects the local Bash and creates a custom toolchain rule for it. Later, rules that use Bash will require this toolchain and retrieve Bash's path from it instead of relying on hardcoded paths or the `--shell_executable` flag. See https://github.com/bazelbuild/bazel/issues/4319 Change-Id: Idd8242a20d202b1f5a56cddac95b625c6c08ede9 Closes #4980. Change-Id: Ic2406a4da260b284e15852070d58472ca18340af PiperOrigin-RevId: 193022708
* Push using ruleContext.getDisabledFeatures() outside of creating ↵Gravatar hlopko2018-04-16
| | | | | | | | | | FeatureConfiguration The goal is to enable creation of feature configuration without the rule context. This will enable us to have cleaner API for this in Skylark. RELNOTES: None PiperOrigin-RevId: 193017868
* C++: Wrap CcLinkParamsInfo with CcLinkingInfo.Gravatar plf2018-04-16
| | | | | | | CcLinkingInfo will eventually wrap all C++ linking providers. CcLinkParamsInfo is no longer a provider and will be renamed in a later CL. RELNOTES:none PiperOrigin-RevId: 193011702
* Fix some typos.Gravatar Googler2018-04-16
| | | | PiperOrigin-RevId: 193003375
* Remove vestiges of support for 'reduced runtime classpaths'Gravatar cushon2018-04-14
| | | | PiperOrigin-RevId: 192914109
* Made j2objc translation flags accessible to Skylark, to migrate builds usingGravatar Googler2018-04-13
| | | | | | | | | | j2objc_library's --j2objc_translation_flags to future Skylark replacement rule. DELTA=42 (39 added, 0 deleted, 3 changed) DELTA_BY_EXTENSION=java=42 RELNOTES: None. PiperOrigin-RevId: 192838435
* PiperOrigin-RevId: 192832950Gravatar carmi2018-04-13
|
* Filter ValidatedAndroidResourcesGravatar asteinb2018-04-13
| | | | | | | | | Transitive ValidatedAndroidResource objects will, in future reviews, be used in resource processing (replacing transitive ResourceContainers). To support this, we must be able to filter these objects. RELNOTES: none PiperOrigin-RevId: 192825260
* Add DurationCodecGravatar Googler2018-04-13
| | | | | | This is required for moving --test_timeout from ExecutionOptions to BuildConfiguration.Options PiperOrigin-RevId: 192815911
* Allow validation action to run just against resourcesGravatar asteinb2018-04-13
| | | | | | | | | | This is the last step of decoupling assets and resources for the basic android_library path, but more work still needs to be done in future changes (for additional library features like aar exporting, and for top-level targets like android_binary). RELNOTES: none PiperOrigin-RevId: 192815261
* Remove value equality check for proguardingGravatar asteinb2018-04-13
| | | | | | | | | ErrorProne has been complaining about this for a while, and unless there's something incredibly clever going on that I'm missing (in which case we should document it), using equals() should be just as effective. RELNOTES: none PiperOrigin-RevId: 192809127
* Resource-only merge actionGravatar asteinb2018-04-13
| | | | | | | | | | | | | | | | | | | Create wrapper for merged resources, and methods to make it from parsed resources. Currently just reuse the ResourceDependencies class to provide resource dependencies; we could create an interface and another class, but this class is good enough (and will be resource-specific once we finish decoupling assets, resources, and manifests). Note that, like the previous parse action, merging sometimes has a dependency on the stamped manifest, so resources and manifests will only be mostly decoupled. Also, make the merge action not require an output manifest for cases like this. RELNOTES: none PiperOrigin-RevId: 192805891
* Perform the TTV-land DTC visitation during SkyQuery's internal parallel ↵Gravatar nharmata2018-04-13
| | | | | | | | | visitation of the DTC of the 'universe' argument of the 'rdeps' function. TTVs alone are sufficient. RELNOTES: None PiperOrigin-RevId: 192801683
* This CL adds log entry protos and logging handlers for Watch, ↵Gravatar Googler2018-04-13
| | | | | | FindMissingBlobs, GetActionResult so that they are logged. unknown commit must be submitted before this for Watch calls to be logged properly. PiperOrigin-RevId: 192794535
* Use canonical EMPTY_ARGS JavaCompilationArgs object if all nested set ↵Gravatar janakr2018-04-13
| | | | | | builders are empty, and @AutoCodec EMPTY_ARGS. PiperOrigin-RevId: 192788787
* Adding toolchain support for j2objc protosGravatar Mike Lewis2018-04-13
| | | | | | | | | | Ran into an issue where it wasn't possible to add protos to blacklist for j2objc toolchain and was getting duplicate symbols for the descriptor protos. This change should make it consistent with the other proto rules which use a toolchain. Was able to remove bespoke and uncustomizable proto blacklist for j2objc. Closes #4064. PiperOrigin-RevId: 192787964
* Delete dead flags.Gravatar carmi2018-04-13
| | | | | RELNOTES: None PiperOrigin-RevId: 192773999
* Implement absolute_path_profile attribute to fdo_profile rule along with an ↵Gravatar Googler2018-04-13
| | | | | | | | | | | | | | | | | option to disable it This attribute allows fdo_profile to accept profiles under absolute path. It can be disabled with --enable_fdo_profile_absolute_path=false. Example: fdo_profile( name = "fdo_profile", absolute_path_profile = "/absolute/path/to/profile.profraw" ) RELNOTES: Introduce absolute_path_profile attribute that allows fdo_profile to accept absolute paths. PiperOrigin-RevId: 192763631
* Use a regular file when exposing empty files instead of /dev/null.Gravatar jmmv2018-04-13
| | | | | | | | | Exposing devices through a FUSE mount point is possible but accessing them requires the file system to be mounted -odev, which needs root privileges for security reasons. Because we cannot ask sandboxfs to be mounted this way, change our code to instead use a regular empty file when necessary. PiperOrigin-RevId: 192761352
* Remove "experimenatal" tag from option repository_cacheGravatar Klaus Aehlig2018-04-13
| | | | | | | | | | | This option has been renamed form --experimental_repository_cache to --repository_chache and enabled by default in 6e0933886d3c6b7f68075da4bdb08500ce2b6f86 to reflect that it is no longer experimental and an essential cache. Remove the OptionMetadataTag.EXPERIMENTAL tag to also reflect this in the categorization of that option. Change-Id: I947156388a01dea2e60410065afae085bd292374 PiperOrigin-RevId: 192759945
* Introduce `--incompatible_disallow_filetype` to remove the `FileType` function.Gravatar laurentlb2018-04-13
| | | | | | | | RELNOTES: `FileType` is deprecated and will be removed soon. Try the `--incompatible_disallow_filetype` flag to ensure your code is forward-compatible. PiperOrigin-RevId: 192758063
* Automated rollback of commit 7edc5d49c8e764ab2bdf19e3a9fb58ea30fa708f.Gravatar dbabkin2018-04-13
| | | | | | | | | | | | *** Reason for rollback *** b/77997997 *** Original change description *** Remove the Blaze strict java deps exemption for Android databinding. Use the JavaBuilder processor exemption list instead of disabling strict deps for the affected rules outright. This narrows the degree to which the exemption is applied, and prevents other strict deps violations from accruing on targets that enable databinding. PiperOrigin-RevId: 192755946
* Remove unused args from JavaSemantics#addProviders.Gravatar elenairina2018-04-13
| | | | PiperOrigin-RevId: 192743013
* Remove JavaRuntimeJarProvider.Gravatar elenairina2018-04-13
| | | | PiperOrigin-RevId: 192736049
* Add a --as_test flag to "blaze run" that can be used to tell Blaze not to ↵Gravatar lberki2018-04-13
| | | | | | | use the test environment when a test is invoked with "blaze run". RELNOTES: None. PiperOrigin-RevId: 192733014
* Rename CommandLinesAndParamFiles -> CommandLines.Gravatar tomlu2018-04-13
| | | | | | | When going ahead with the implementation, the full name felt too verbose. CommandLines still shows that we have a list of command lines, and the attached param file info is secondary enough that I'm comfortable omitting the name. RELNOTES: None PiperOrigin-RevId: 192731592
* Change BuildOptions.DiffForReconstruction.toString() to use MoreObjects insteadGravatar mjhalupka2018-04-12
| | | | | | of a StringBuilder. PiperOrigin-RevId: 192681870
* Provide parallel implementations of bounded allrdeps and rdeps.Gravatar nharmata2018-04-12
| | | | | RELNOTES: None PiperOrigin-RevId: 192681579
* Remove dead code from SkylarkDocumentationCollectorGravatar cparsons2018-04-12
| | | | | RELNOTES: None. PiperOrigin-RevId: 192669617
* Prefix-compress strings during memoizing serialization.Gravatar janakr2018-04-12
| | | | PiperOrigin-RevId: 192662977
* Remove docgen corner case on undocumented data structures, as these are no ↵Gravatar cparsons2018-04-12
| | | | | | | | | longer relevant. Verified by building documentation for Bazel at HEAD. RELNOTES: None. PiperOrigin-RevId: 192659718
* Make resource merging action builder able to take just resourcesGravatar asteinb2018-04-12
| | | | | | | | | | | | In the next review, this will be used to merge resources (without assets) To support this, we need to pass around a stamped manifest with the parsed resources (since manifests cannot be decoupled fully from resource processing - aar_import means that stamped manifests are the only guaranteed way to get package information). RELNOTES: none PiperOrigin-RevId: 192649272
* Make statically linking cpp-runtimes as a crosstool feature.Gravatar Googler2018-04-12
| | | | | | | | | This cl should result in no user-visible change. It simply sets the feature based on the field in the crosstool proto. A subsequent cl will expose this feature for people to actually use. PiperOrigin-RevId: 192641438