| Commit message (Collapse) | Author | Age |
|
|
|
|
|
|
| |
This is in preparation for fixing env handling as well as cache key (to use
env) computations in subclasses of SpawnAction.
PiperOrigin-RevId: 196626495
|
|
|
|
|
|
| |
(3-8x faster than StringCodec).
PiperOrigin-RevId: 196615858
|
|
|
|
|
|
|
|
|
| |
Use update() and other methods which properly respect the trimming
transition over those which don't. Avoid using the target configuration
if the configuration actually used by a target is available.
RELNOTES: None.
PiperOrigin-RevId: 196588405
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
*** Reason for rollback ***
Caused a memory regression
*** Original change description ***
Expose cc_common.create_compile_build_variables
This cl enabled skylark rules to create build variables used for C++ compile
actions (in a limited form, e.g. build variables for modules are not exposed
etc).
Working towards #4571.
RELNOTES: None
PiperOrigin-RevId: 196566686
|
|
|
|
|
| |
RELNOTES: None.
PiperOrigin-RevId: 196561473
|
|
|
|
|
| |
RELNOTES: None
PiperOrigin-RevId: 196553226
|
|
|
|
|
|
|
|
| |
BuildOptions$DiffForReconstruction serializations are reached in this way, so we get better efficiency. Also, it was already a custom codec, so less new handrolling.
Also use serialization framework for FragmentClassSet, instead of doing serialization directly. Default FragmentClassSet should be a constant, so it will serialize down to a byte or three. Future changes can make all the classes constants as well, if we're getting misses on them.
PiperOrigin-RevId: 196546279
|
|
|
|
|
|
|
|
| |
prevents Bazel from crashing on an ErrorInfo with an exception from
ActionExecutionFunction, which can contain an action, and therefore contain a
NestedSet.
PiperOrigin-RevId: 196533301
|
|
|
|
|
|
| |
BuildOptions$OptionsDiffForReconstruction. The fingerprint uniquely identifies the "baseline" BuildOptions object and the checksum uniquely identifies the "overlay", so we don't need to incorporate the rest of the data.
PiperOrigin-RevId: 196532013
|
|
|
|
|
| |
RELNOTES: None.
PiperOrigin-RevId: 196527806
|
|
|
|
| |
PiperOrigin-RevId: 196518906
|
|
|
|
|
|
|
| |
separate class
RELNOTES: None.
PiperOrigin-RevId: 196517537
|
|
|
|
|
|
|
| |
Since it's not a provider, it doesn't need the Info suffix anymore.
RELNOTES:none
PiperOrigin-RevId: 196505329
|
|
|
|
|
|
|
| |
Since it's not a provider, it doesn't need the Info suffix anymore.
RELNOTES:none
PiperOrigin-RevId: 196498526
|
|
|
|
|
| |
RELNOTES: None.
PiperOrigin-RevId: 196492364
|
|
|
|
|
|
|
|
| |
For flaky tests, Bazel may have cached information about multiple test attempts. In that case, we might want to post all of them on a subsequent cache hit, rather than posting only the passing attempt.
We currently subclass TestResult inside Google, which overrides the new getCachedTestAttempts method.
PiperOrigin-RevId: 196491575
|
|
|
|
|
|
|
|
|
|
|
| |
This cl enabled skylark rules to create build variables used for C++ compile
actions (in a limited form, e.g. build variables for modules are not exposed
etc).
Working towards #4571.
RELNOTES: None
PiperOrigin-RevId: 196491567
|
|
|
|
|
| |
RELNOTES:none
PiperOrigin-RevId: 196477775
|
|
|
|
|
|
|
|
|
| |
actually added for cc_library's include-attribute. For these, the same path is
present on the command line, but also ignored. For N of those directives, we
currently do O(N^2) prefix checks, which is unnecessarily expensive.
RELNOTES: None.
PiperOrigin-RevId: 196477307
|
|
|
|
|
|
| |
and continue to use the embedded JDK as the default host_javabase.
PiperOrigin-RevId: 196471714
|
|
|
|
| |
PiperOrigin-RevId: 196310244
|
|
|
|
| |
PiperOrigin-RevId: 196290095
|
|
|
|
|
| |
RELNOTES: None.
PiperOrigin-RevId: 196287081
|
|
|
|
|
|
|
| |
Apparently, making one for each target creates memory issues.
RELNOTES: none
PiperOrigin-RevId: 196275764
|
|
|
|
|
| |
RELNOTES: Allow java_toolchain.header_compiler to be an arbitrary executable
PiperOrigin-RevId: 196270007
|
|
|
|
| |
PiperOrigin-RevId: 196266567
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Fixes https://github.com/bazelbuild/bazel/issues/5157
If a user's default system locale is not `en`, `en_US` or `en_UK`, there may be a chance that `String#toUpperCase` will result in a string that does not exist in the Enum declaration. This is the case in #5157.
To fix this, it's either
1) setting the Locale in the individual `toUpperCase` calls or
2) set Locale to English by default from `Bazel.java`.
I chose the first because it seemed less intrusive, but I'm open to suggestions.
Closes #5184.
PiperOrigin-RevId: 196261078
|
|
|
|
|
|
|
|
|
|
|
| |
Since we always pass true as argument (meaning it's for dynamic library), we
don't need the part for executable. And we don't want more users of this method,
therefore removing.
This is encore of https://github.com/bazelbuild/bazel/commit/ecb30676bdd7f1783afb3886e57caa9d6b1b9aee
RELNOTES: None.
PiperOrigin-RevId: 196241212
|
|
|
|
|
| |
RELNOTES: None
PiperOrigin-RevId: 196232710
|
|
|
|
|
|
|
| |
I should have never submitted this as-is. Whoops!
RELNOTES: none
PiperOrigin-RevId: 196160496
|
|
|
|
|
|
|
|
| |
Because of the special nature of aar_import, I don't think it makes much sense
to split up the different parts - you always get everything out of the AAR.
RELNOTES: none
PiperOrigin-RevId: 196152640
|
|
|
|
|
|
|
|
|
|
|
|
| |
Create an AndroidBinaryDataInfo to wrap binary-specific artifacts that
shouldn't be exposed for libraries. This is currently only the final resource
APK.
Continue to extract attribute references from lower-level methods and bubble
them up to the top level.
RELNOTES: none
PiperOrigin-RevId: 196143940
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This provider wraps the other android data providers, as well as artifacts that
should only be made available for top-level Android targets.
This provider is required for some output (such as final data APK) to be
exposed to Skylark, and also makes it easy to pass information from
android_binary data processing to postprocessing actions, most notably resource
shrinking (next reviews).
RELNOTES: none
PiperOrigin-RevId: 196135042
|
|
|
|
| |
PiperOrigin-RevId: 196127040
|
|
|
|
|
| |
RELNOTES: none
PiperOrigin-RevId: 196024071
|
|
|
|
|
|
|
|
| |
Explicitly work with rele attributes at (or closer to) the top level rather
than deep in the code.
RELNOTES: none
PiperOrigin-RevId: 196004542
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Make AndroidSkylarkData abstract and add a getAndroidSemantics() method
The Skylark stamp_manifest rule should properly use AndroidSemantics to rename
the manifest as well, in keeping with the android_library rule.
AndroidLocalTest should do the same manifest renaming regardless of which
AndroidSemantics it is run under. Have it use a seperate method to do so.
RELNOTES: none
PiperOrigin-RevId: 195992300
|
|
|
|
|
| |
RELNOTES: none
PiperOrigin-RevId: 195977060
|
|
|
|
| |
PiperOrigin-RevId: 195973862
|
|
|
|
| |
PiperOrigin-RevId: 195971237
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
In a previous review, I left some setting controlled only by rule attributes.
Now actually specify them in Skylark method params.
Data binding and should mimic behavior in existing android_* rules.
For library, aapt_version cannot be passed in; we use the flag value.
I left the SDK attribute intact as it's private. People should be setting
defaults in rules but otherwise overriding SDK with flags, not parameters. This
mimics existing behavior.
RELNOTES: none
PiperOrigin-RevId: 195970351
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The R.class file, when available, is used in Java compilation. So it should be
exposed in its own provider as an output of resource processing.
The R.class file is marked as Neverlink and compiletime-only to ensure it
doesn't get inherited.
Change resource processing to return a SkylarkDict of providers. That way,
callers can easily get the provider they want, or use values() to get all the
providers.
Stop exposing R.class in AndroidResourcesInfo since we're exposing it in an
easier-to-consume way now.
Will update other methods that return multiple providers to do the same in
future reviews.
RELNOTES: none
PiperOrigin-RevId: 195871587
|
|
|
|
|
|
|
|
|
| |
This is to simplify the API that will eventually be exposed to Skylark.
Working towards #4571.
RELNOTES: None.
PiperOrigin-RevId: 195785588
|
|
|
|
|
| |
RELNOTES: None.
PiperOrigin-RevId: 195777400
|
|
|
|
|
| |
RELNOTES: none
PiperOrigin-RevId: 195719735
|
|
|
|
|
|
| |
contention and use a striped lock.
PiperOrigin-RevId: 195717688
|
|
|
|
|
|
|
| |
This provider needs to be the new type so we can expose Aar information in Skylark
RELNOTES: none
PiperOrigin-RevId: 195710606
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
There are a bunch of reasons this shouldn't be exposed:
- ResourceContainer is a glob of several unrelated bits of functionality
- We are working on getting rid of ResourceContainer in favor of things like
AndroidResources
- We should pass information between targets using providers, not internal
state like ResourceContainer
RELNOTES: none
PiperOrigin-RevId: 195704044
|
|
|
|
|
|
|
| |
This collapsing should be avoided when possible, and punted on until execution when needed.
RELNOTES: none
PiperOrigin-RevId: 195695290
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Add the R.class to the provider, but keep it nullable in case no
resource/manifest attributes were specified, in which case the R.class would
not be generated.
A previous change tried to actually generate it in that case, but even though I
think that's probably the right strategy for the long term, it's substantially
different behavior and out of scope of this migration.
RELNOTES: none
PiperOrigin-RevId: 195682271
|