| Commit message (Collapse) | Author | Age |
... | |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Change GetHashedBaseDir in the Bazel client on
Windows, to only use an alphabet of 32 characters,
not of 64. The 64-element alphabet contained
effective repetitions because path names on
Windows are case-insensitive.
Fixes https://github.com/bazelbuild/bazel/issues/5053
Change-Id: I2cfb40e32684ff42b95334e08e4d56ee318a57ca
Closes #5054.
Change-Id: I4225fd8a92634ff26ae2154af9298bda33bea6ac
PiperOrigin-RevId: 193507800
|
|
|
|
|
|
|
|
| |
This class will be used to tie a Spawn to a SpawnRunner, and isn't really a policy object. It will carry state such as the expanded inputs and expanded command line.
Currently a context can be passed between different SpawnRunners. This will be addressed independently, so a context is tied to a particular spawn runner.
PiperOrigin-RevId: 193501918
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- Allow overriding the gcov tool with the GCOV env variable in cc_configure
- Symlink the GCOV tool in collect-coverage.sh to a temporary location with
the name "gcov"
This allows the user to specify GCOV=llvm-cov in the environment of a bazel
build, which then leads to cc_configure picking up llvm-cov in the crosstool,
which the collect-coverage.sh script then uses as "gcov".
On linux distributions, the gcov tool does not generally work with clang
coverage output, so this provides at least a workaround for running coverage
with clang (by setting the GCOV env variable).
Closes #5040.
PiperOrigin-RevId: 193487773
|
|
|
|
| |
PiperOrigin-RevId: 193429470
|
|
|
|
| |
PiperOrigin-RevId: 193422658
|
|
|
|
|
|
|
| |
This code was failing to reset the SJD plugin before falling back, which
caused a reference to a JimFS Path in the original filesystem to leak.
PiperOrigin-RevId: 193421565
|
|
|
|
|
|
| |
RELNOTES: None.
PiperOrigin-RevId: 193421179
|
|
|
|
|
|
|
|
|
|
|
|
| |
*** Reason for rollback ***
Looks like this is using more cpu than I realized. Doesn't seem fixable short-term. This may need to be cherrypicked into the next canary if it shows up in profiling. See bug for details.
*** Original change description ***
Add ValueConstants helper to handle the increasingly complex logic for 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: 193403226
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This should be the last place the new data processing is needed.
MobileInstall is a bit trickier than normal data processing because it's out of
the way. I'm still using ApplicationManifest to wrap the manifest Artifact in a
lot of it, just because that makes more sense than passing around both
ApplicationManifest for use with old behavior and StampedAndroidManifest for
use with the new. Once we switch to entirely the new behavior, we can remove
ApplicationManifest entirely.
RELNOTES: none
PiperOrigin-RevId: 193392923
|
|
|
|
|
|
|
| |
by "blaze run --direct_run".
RELNOTES: None.
PiperOrigin-RevId: 193391379
|
|
|
|
| |
PiperOrigin-RevId: 193390754
|
|
|
|
|
| |
RELNOTES: none
PiperOrigin-RevId: 193381165
|
|
|
|
|
|
| |
https://github.com/spomorski/bazel/edit/patch-1/site/docs/install-ubuntu.md?pr=/bazelbuild/bazel/pull/5024
PiperOrigin-RevId: 193379306
|
|
|
|
|
|
|
|
| |
I like to have clean output on successful builds, and this PR suppresses informative print statements, by default, with the option of exposing them, if desired.
Closes #5037.
PiperOrigin-RevId: 193375345
|
|
|
|
|
|
|
|
| |
Updating macOS install instructions together with David.
Closes #5025.
PiperOrigin-RevId: 193374002
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The decoupled pipeline is safely hidden behind a flag.
I'm explicitly holding off on the MobileInstall code until next review, so we
sometimes create an ApplicationManifest object even in the new pipeline to pass
data to that code.
I'm not thrilled with the 'just call into the resource processor with different
settings' approach that I've reproduced in ProcessedAndroidData, but I don't
see a better way of doing things, and I think that breaking out the commonly
used settings makes things cleaner.
RELNOTES: none
PiperOrigin-RevId: 193373347
|
| |
|
|
|
|
|
| |
RELNOTES: None.
PiperOrigin-RevId: 193370435
|
|
|
|
|
|
|
|
|
|
|
|
| |
- Expose manifest merging logic from ApplicationManifest
- Use it to reimplement manifest merging in new AndroidManifest class
- Track merged resources zip in ResourceContainer - we shouldn't be forced to
use hacks to get it
- Clean up return type of ProcessedAndroidData.generateRClass - a ResourceApk
is the general type used to wrap fully processed data.
RELNOTES: none
PiperOrigin-RevId: 193367162
|
|
|
|
|
| |
RELNOTES: None.
PiperOrigin-RevId: 193364213
|
|
|
|
|
|
|
|
|
|
|
| |
The native version of http_archive is deprecated in favor of the
Skylark version. Both versions use the repository cache in the same
way, in fact, they eventually call the same HttpDownloader. So change
the integration tests to test the repository cache via the non-deprecated
repository function instead.
Change-Id: I2583af0d70a4e701ce6e6d5dc77ab2c734c367c3
PiperOrigin-RevId: 193363214
|
|
|
|
|
|
|
|
|
|
|
| |
* Change builder return type to Iterable<T> instead of IterableChain<T>. It is over-specified and unnecessary to state the return type so precisely.
* Optimize builder for cases where we add 0 or 1 iterables to the chain. In this case, we can simply return the underlying iterables without adding wrappers.
* Extract DedupingIterable, it doesn't have anything to do with IterablesChain and is only used in one place
RELNOTES: None
PiperOrigin-RevId: 193363048
|
|
|
|
|
|
|
|
|
|
|
|
| |
The decoupled pipeline is safely hidden behind a flag. Since we temporarily
have two different pipelines, this temporarily make AndroidLibrary messier, but
it will end up much cleaner once the old pipeline is removed.
The new pipeline should not be turned on until other Android rules are updated
to support it (next few changes).
RELNOTES: none
PiperOrigin-RevId: 193361608
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Now that we support decoupled asset and resource processing in the basic
pipeline, we can also support it in these actions.
ResourceShrinker actions, by design, does not use assets, so the change is
trivial.
For the AarGenerator, things get a bit more complex:
- Simplify needlessly complex code around AAR generation
- Move around special resource processing to generate AAR inputs in the case
where there are no local resources to go next to normal resource processing
- Also, clean up that code
- ResourceApk wrapper class has some fields which are non-null even in the case
where resources are inherited
- Always pass assets and resources seperately to the AarGenerator action
RELNOTES: none
PiperOrigin-RevId: 193355790
|
|
|
|
|
| |
RELNOTES: None
PiperOrigin-RevId: 193354556
|
|
|
|
|
|
|
|
|
|
|
| |
The AndroidResourceProcessingAction does all of asset parsing and merging and
all of resource parsing, merging, and validation except for R class generation,
all in one action. Add class to wrap the intermediate output of this action. It
can trigger R class generation to create a full ValidatedAndroidResources
object.
RELNOTES: none
PiperOrigin-RevId: 193350591
|
|
|
|
|
|
|
|
|
|
|
| |
Remove R class generation from AndroidCommon and instead invoke it just after
resource processing. This is much more intuitive, behaves the same, and will
make it easier to call into R class generation on the new pipeline.
Also, clean up some dead code (including newly-dead code) from AndroidCommon.
RELNOTES: none
PiperOrigin-RevId: 193345190
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
*** Reason for rollback ***
The no-cache tag is not respected (see b/77857812) and thus this breaks remote caching for all projects with symlink outputs.
*** Original change description ***
Only allow regular files and directories spawn outputs to be uploaded to a remote cache.
The remote cache protocol only knows about regular files and
directories. Currently, during action output upload, symlinks are
resolved into regular files. This means cached "executions" of an
action may have different output file types than the original
execution, which can be a footgun. This CL bans symlinks from cachable
spawn outputs and fixes http...
***
PiperOrigin-RevId: 193338629
|
|
|
|
|
|
|
|
|
|
|
|
| |
This is an immediate fix for a very nasty bug:
https://github.com/bazelbuild/bazel/issues/5038
Change-Id: I5e4f9fa13e5ac785514bc0dc4ce6cba9a88f33bb
Closes #5039.
Change-Id: I5e4f9fa13e5ac785514bc0dc4ce6cba9a88f33bb
PiperOrigin-RevId: 193315571
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
In the process, clean up SkylarkType-related tests.
- Factor test of EvalUtils.getSkylarkType logic from SkylarkEvaluationTest and ValidationTest to EvalUtilsTest.
- Move test of EvalUtils.getSkylarkType's behavior on lists to SkylarkListTest.
- Move other SkylarkType tests from ValidationTest to new SkylarkTypeTest and split them up a little.
- Throughout, don't use Bazel types like Artifact as test subjects.
RELNOTES: None
PiperOrigin-RevId: 193303463
|
|
|
|
|
|
|
|
|
|
|
| |
*** Reason for rollback ***
Breaks //third_party/java_src/copybara/java/com/google/copybara/config:parser:
[]
*** Original change description ***
PiperOrigin-RevId: 193292991
|
| |
|
|
|
|
| |
PiperOrigin-RevId: 193270108
|
|
|
|
| |
PiperOrigin-RevId: 193265266
|
|
|
|
|
|
|
|
| |
It is possible that $closeResource(...) is not used as the calls to it might
be eliminated by some optimization tools, such as Proguard.
RELNOTES: n/a.
PiperOrigin-RevId: 193262552
|
|
|
|
|
|
| |
INIT_ENV, and COMMIT.
PiperOrigin-RevId: 193261989
|
|
|
|
|
|
|
|
| |
2. Remove incorrect assertion in AnnotationVisitor.visit(String, Object), and
delegate the checking for arrays to visitArray(String).
RELNOTES: n/a.
PiperOrigin-RevId: 193256108
|
|
|
|
|
|
|
| |
Previously this was a member of SkylarkAttr, which didn't make much sense, as the function was not under the attr namespace. This moves configuration_field to a new spot for global functions, "SkylarkBuildApiGlobals".
RELNOTES: None.
PiperOrigin-RevId: 193253435
|
|
|
|
|
|
|
| |
The only things that remain are Provider subclasses, as they require special treatment. (Namely, they are referencable at the top level as a Provider and not a function.)
RELNOTES: None.
PiperOrigin-RevId: 193249523
|
|
|
|
|
|
|
|
|
|
|
| |
The ResourceApk object contains all the processed Android data. When assets are
decoupled, pass them in seperately.
I'll replace ResourceContainer with the ValidatedAndroidData interface as part
of the next review.
RELNOTES: none
PiperOrigin-RevId: 193223251
|
|
|
|
|
|
|
|
|
| |
- New flags to pass in asset deps
- Pass assets into merging in the monolithic action
- Field for asset deps in asset builder action
RELNOTES: none
PiperOrigin-RevId: 193211038
|
|
|
|
|
| |
RELNOTES: None
PiperOrigin-RevId: 193206695
|
|
|
|
|
| |
RELNOTES: None.
PiperOrigin-RevId: 193203414
|
|
|
|
|
|
|
| |
It will not work as expected, since config is already expanded by this point in options processing.
RELNOTES: None.
PiperOrigin-RevId: 193196664
|
|
|
|
|
|
|
|
| |
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: 193195986
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
I get failing tests without this flag in coverage mode.
Workaround is to pass --linkopt=-fprofile-arcs in Bazel.
Here are the steps that work at this time (with this change):
bazel coverage --strategy=TestRunner=standalone //my/funky:test
genhtml -o report-output-directory/ path/to/coverage.dat
Some progress on #1118.
PiperOrigin-RevId: 193193164
|
|
|
|
|
|
|
|
| |
- Move test_timeout to BuildConfiguration.
- Add test_timeout_seconds field to BEP TargetCompleteEvent.
- Deprecate test_timeout field in ExecutionInfo. Data is still written to deprecated field to allow consumer transition.
PiperOrigin-RevId: 193192636
|
|
|
|
|
|
|
|
|
|
| |
Merges assets using the newly created action.
Also, add BusyBoxActionBuilder to collect common boilerplate for spawning an
action that invokes the Android busybox.
RELNOTES: none
PiperOrigin-RevId: 193192621
|
|
|
|
|
|
|
|
|
| |
We're mostly adding convenience methods. This will be used by spawn runners and in Spawn construction, but we break it out now to lessen the size of the final CL.
We also pull out a CommandLineLimits class instead of using an int. This will partially help with readability, but it also likely that we will add a second constraint (max length of a single argument).
RELNOTES: None
PiperOrigin-RevId: 193191097
|
|
|
|
| |
PiperOrigin-RevId: 193185628
|