| Commit message (Collapse) | Author | Age |
|
|
|
|
|
|
| |
--
Change-Id: I2da9049019b3965975fab9b7f606d099d6eab2ff
Reviewed-on: https://bazel-review.googlesource.com/#/c/4040/
MOS_MIGRATED_REVID=128208129
|
|
|
|
|
|
|
|
|
|
| |
The naive algorithm was O(n*m) where n = number of precompiled libraries and
m = number of libraries linked during this rule. Ugly!
This one provides hopefully much more reasonable performance.
--
MOS_MIGRATED_REVID=128206057
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=128199284
|
|
|
|
|
|
|
|
| |
Focuses on documenting the Strings that PackageSpecifications can be
translated from and to.
--
MOS_MIGRATED_REVID=128195540
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=128192249
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=128184440
|
|
|
|
|
|
|
|
|
| |
pass the name of the injecting rule (e.g., java_proto_library), if the rule registered it.
Registration is done using AspectParameters and a specially-named key.
--
MOS_MIGRATED_REVID=128179548
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The execution root currently uses the basename of the workspace directory for
the workspace name, not the name in the WORKSPACE file. (For example, if our
sources were in /path/to/foo and our WORKSPACE file had workspace(name = "bar"),
our execution root would look like execroot/foo.)
This creates a symlink bar -> foo, so that accessing ../repo_name actually works
for the main repository.
RELNOTES[INC]: The main repository's execution root is under the main
repository's workspace name, not the source directory's basename. This shouldn't
have any effect on most builds, but it's possible it could break someone doing
weird things with paths in actions.
--
MOS_MIGRATED_REVID=128175455
|
|
|
|
|
|
|
| |
java_binary
--
MOS_MIGRATED_REVID=128169058
|
|
|
|
|
|
|
| |
--
Change-Id: I7c36fcfee46f4340aa6d17c03b6599beef45f524
Reviewed-on: https://bazel-review.git.corp.google.com/#/c/4062/1
MOS_MIGRATED_REVID=128167039
|
|
|
|
|
|
|
| |
--
Change-Id: Ied34278c63c74aaf2db5ad90d5f076b3bddbe396
Reviewed-on: https://bazel-review.git.corp.google.com/#/c/4061/
MOS_MIGRATED_REVID=128165927
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=128097235
|
|
|
|
|
|
|
|
|
| |
Aspect's name that participated, if there is one.
RELNOTES:
--
MOS_MIGRATED_REVID=128085414
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=128080879
|
|
|
|
|
|
|
| |
hashing is deterministic and uses a specific algorithm.
--
MOS_MIGRATED_REVID=128070666
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=128016662
|
|
|
|
|
|
|
|
|
| |
The things Rule needs it for aren't terribly complex. Instead inline
functionality where sensible, and refactor into static methods where not. This
reduces each Rule's memory footprint by 38%.
--
MOS_MIGRATED_REVID=128011760
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Before this change:
Any given cc_library can only contribute one library with a given name to
targets which depend on it. If an input library has the same name as the
cc_library which it is an input to, the decision of which to use is based
on the link mode. e.g.,
cc_library(
name = "foo",
srcs = ["foo.c", "libfoo.so"],
)
will only contribute libfoo.a (a static library containing foo.o) in static mode,
while it will only contribute libfoo.so (the precompiled shared library) in dynamic
mode.
This change alters cc_library's behavior in this case:
* If libfoo.a would be empty (i.e., there are no linkable sources), then
this is allowed. The libfoo.so from srcs is simply passed through. (Previously,
the empty libfoo.a would be forwarded.)
* Otherwise, this is an error.
In the case where there are multiple libraries in the srcs with the same
library identifier (lib[name].[a|so|lo]), cc_library will still choose one
based on the link mode. This behavior has not changed.
Similarly, cc_library will still choose one of its own outputs based on the
link mode. That behavior has not changed either.
RELNOTES[INC]: It is now an error to include a precompiled library (.a, .lo, .so)
in a cc_library which would generate a library with the same name
(e.g., libfoo.so in cc_library foo) if that library also contains other linkable
sources.
--
MOS_MIGRATED_REVID=127989348
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=127979748
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
ActionInputFileCache:
Change getDigest() to return the underlying byte[16] owned by each
FileArtifactValue.
Remove throws clause from getInputFromDigest(); this should be an
in-memory operation, and no implementation actually throws.
PerActionFileCache:
Invert mapping from artifact to digest only if needed. Remove interner,
as it was used only for the reverse map keys, not the returned values.
This should be a significant cpu savings as eagerly constructing the
reverse maps was a noticeable hotspot.
--
MOS_MIGRATED_REVID=127972359
|
|
|
|
|
|
|
| |
messages from manifest merging when using manifest_merger="android" on android_binary rules.
--
MOS_MIGRATED_REVID=127962630
|
|
|
|
|
|
|
| |
Fixes #1537.
--
MOS_MIGRATED_REVID=127945452
|
|
|
|
|
|
|
|
|
| |
For instance, for a simple .bzl program that just iterates over a range
of size 200M, the total running time drops from about two minutes to half
a minute.
--
MOS_MIGRATED_REVID=127942625
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The current approach for the py_binary wrapper means that deployed
instances of py_binary targets create child processes. This can be a
problem when you try to kill the py_binary target since signals and
such don't necessarily get passed along to the child process.
Using the exec functionality here should avoid this particular
problem. The overall behaviour should remain the same.
--
Change-Id: I20ef081e1da5b28a8aff8514d713b1c387ae7f7e
Reviewed-on: https://bazel-review.git.corp.google.com/#/c/4070/
MOS_MIGRATED_REVID=127929454
|
|
|
|
| |
MOS_MIGRATED_REVID=127927495
|
|
|
|
|
|
|
|
|
| |
//tools/objc/ios_test.sh.bazel_template. Also remove the iossim substitutions and runfiles in ios_test script register.
[]:
--
MOS_MIGRATED_REVID=127911427
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=127895738
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Forgot to do this, so we get compiler errors
since it can't find the R class imported under
the requested custom java package.
Also, avoid writing out the top-level R.class
file if there are no symbols. There is a test
that happens to check for this.
--
MOS_MIGRATED_REVID=127888913
|
|
|
|
|
|
|
| |
exception that caused the crash is an OOM. Too many systems wrap Errors in other exceptions, for instance https://github.com/google/guava/blob/master/guava-gwt/src-super/com/google/common/cache/super/com/google/common/cache/LocalCache.java#L267
--
MOS_MIGRATED_REVID=127845350
|
|
|
|
|
|
|
|
|
| |
Now we can use 'bazel run' to run cpp and java binary!
--
Change-Id: I84b597765dc77127f3fb701d7bd4a81f6dc44660
Reviewed-on: https://bazel-review.googlesource.com/#/c/4054
MOS_MIGRATED_REVID=127834930
|
|
|
|
|
|
|
|
|
|
|
| |
ExecutionInfo contains the tag "support-workers" set to "1" and fallback to non-worker execution if it is not present.
This will eventually allow us to safely automatically decide whether to use workers to execute an action or not.
RELNOTES[INC]: If you maintain a rule that uses persistent workers, you'll have to specify execution_requirements={"supports-workers": 1} in the ctx.action that intends to run a tool with workers. The WorkerSpawnStrategy will alert you with a warning message if you forget to make this change and fallback to non-worker based execution.
--
MOS_MIGRATED_REVID=127822788
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=127815874
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=127808009
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=127807675
|
|
|
|
|
|
|
|
|
| |
Skyframe globbing. This adds a log(n) factor to uses of globs, but getting globs to be returned in a reasonable order that can be emulated by legacy globbing is hard and bug-prone right now, and we must sort anyway if we are merging legacy and Skyframe globs.
Note that this log(n) factor is already present on clean builds with legacy globbing. If we end up seeing performance issues on incremental loading, we can investigate making GlobFunction efficiently return elements in sorted order. (We would still need to sort if merging legacy and Skyframe globs, but that should be a relatively rare occurrence, and can be dealt with by a more efficient merge sort if necessary.)
--
MOS_MIGRATED_REVID=127752554
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=127747661
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=127735980
|
|
|
|
|
|
|
| |
Fixes #1125.
--
MOS_MIGRATED_REVID=127719941
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
*** Reason for rollback ***
Let's launch open-source java_proto_library with strict-deps checking turned on by default.
*** Original change description ***
Unveil Bazel's proto_library and java_proto_library.
--
MOS_MIGRATED_REVID=127716437
|
|
|
|
|
|
|
| |
Instead have callers get it via package.
--
MOS_MIGRATED_REVID=127715494
|
|
|
|
|
|
|
| |
In theory, now we can cancel Ping() and Cancel() RPCs, too, but since we don't tell their UUID anyone, we are fine.
--
MOS_MIGRATED_REVID=127703598
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=127701838
|
|
|
|
|
|
|
| |
unlike System#currentTimeMillis().
--
MOS_MIGRATED_REVID=127697254
|
|
|
|
|
|
|
| |
Isn't strictly necessary, remove it before anyone decides they want to use it.
--
MOS_MIGRATED_REVID=127585617
|
|
|
|
|
|
|
|
|
| |
rather than a PRECOMPUTED value.
Having a stale TopLevelArtifactContext leads to invalidation of all the top level target nodes, causing time wasted due to a lot of cache hits for a null build.
--
MOS_MIGRATED_REVID=127585059
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Before this change:
Any given cc_library can only contribute one library with a given name to
targets which depend on it. If an input library has the same name as the
cc_library which it is an input to, the decision of which to use is based
on the link mode. e.g.,
cc_library(
name = "foo",
srcs = ["foo.c", "libfoo.so"],
)
will only contribute libfoo.a (a static library containing foo.o) in static mode,
while it will only contribute libfoo.so (the precompiled shared library) in dynamic
mode.
This change alters cc_library's behavior in this case:
* If libfoo.a would be empty (i.e., there are no linkable sources), then
this is allowed. The libfoo.so from srcs is simply passed through. (Previously,
the empty libfoo.a would be forwarded.)
* Otherwise, this is an error.
In the case where there are multiple libraries in the srcs with the same
library identifier (lib[name].[a|so|lo]), cc_library will still choose one
based on the link mode. This behavior has not changed.
Similarly, cc_library will still choose one of its own outputs based on the
link mode. That behavior has not changed either.
RELNOTES[INC]: It is now an error to include a precompiled library (.a, .lo, .so)
in a cc_library which would generate a library with the same name
(e.g., libfoo.so in cc_library foo) if that library also contains other linkable
sources.
--
MOS_MIGRATED_REVID=127569615
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=127543896
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=127538990
|
|
|
|
|
|
|
| |
--
Change-Id: I3255a14a60b7ae7749c49d5a885d92f4f19ec84f
Reviewed-on: https://bazel-review.git.corp.google.com/#/c/3980/
MOS_MIGRATED_REVID=127537367
|
|
|
|
|
|
|
|
|
| |
-XX:TieredStopAtLevel=1 instead of -client, as the latter is ignored on 64-bit JVMs since at least JDK 6.
The new flags have been shown to cut down CPU time by 50% due to reduced time spent in JIT and improving overall run time for short running actions, some times also cutting them in half.
--
MOS_MIGRATED_REVID=127536578
|