| Commit message (Collapse) | Author | Age |
|
|
|
|
|
|
|
|
| |
- Replace the existing Retrier with Retrier2.
- Rename Retrier2 to Retrier and remove the old Retrier + RetryException
class.
RELNOTES: None.
PiperOrigin-RevId: 177835070
|
|
|
|
|
|
|
|
| |
Fixes https://github.com/bazelbuild/bazel/issues/4028
Closes #4029.
PiperOrigin-RevId: 177813419
|
|
|
|
|
|
|
| |
Fixes #4056.
Change-Id: Ia7425c2146f15e9293605ee3da53007805e82275
PiperOrigin-RevId: 177813070
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
JavaSkylarkApiProvider will be deprecated soon and replaced by JavaInfo.
Methods exposed:
NestedSet<Artifact> getTransitiveSourceJars()
NestedSet<Artifact> getTransitiveRuntimeDeps()
NestedSet<Artifact> getTransitiveDeps()
Also created helped method to eliminate all duplication code and refactored some methods with is.
RELNOTES:none
PiperOrigin-RevId: 177804645
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The stub template now looks for the python binary relative to the
modules if a relative path was provided. This correctly finds it
inside the runfiles folder both when the py_binary is the output,
and when the py_binary is called by another binary
(ie is data for it).
We also now add the binary and dependencies to the runfiles when it
is used as data so python is accesible.
Change-Id: I3bf6ff17265e72d964614ad66af22933c89f853d
PiperOrigin-RevId: 177803641
|
|
|
|
|
|
|
|
| |
Resolves issue https://github.com/bazelbuild/bazel/issues/4146
Closes #4147.
PiperOrigin-RevId: 177803394
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This is a roll-forward of https://github.com/bazelbuild/bazel/commit/e8d32b7c922f65539b74357711d5ad6b70934115, which broke some genrules, but without
some cleanup changes which I'm submitting separately, and with a fix for the
bug.
The problem was that I switched from withExecLocations(labels) to
withExecLocations(); the original code was in CommandHelper, and the new
code in GenRuleBase, so this was not obvious.
Also, we didn't have test coverage for this case - note that the specified
labels are _added_ to the default map of labels, rather than replacing the
default map of labels. This only matters if the dependent rule provides a
GenRuleSourcesProvider, which only a single (Google-internal) rule does.
PiperOrigin-RevId: 177802902
|
|
|
|
|
|
|
| |
RELNOTES:
First argument of 'load' must be a label. Path syntax is removed.
(label should start with '//' or ':').
PiperOrigin-RevId: 177802628
|
|
|
|
|
|
|
|
|
|
| |
The same information is accessible as JavaRuntimeInfo.java_executable_exec_path. In order to access that, add an implicit attribute that depends on @bazel_tools//tools/jdk:current_java_runtime, then do
ctx.attr._java_runtime[java_common.JavaRuntimeInfo].java_executable_exec_path .
RELNOTES[INC]: The path to the JVM executable is not accessible anymore as ctx.{fragments,host_fragments}.jvm.java_executable. Use JavaRuntimeInfo.java_executable_exec_path instead.
PiperOrigin-RevId: 177786910
|
|
|
|
|
|
|
| |
RELNOTES: Bazel's default hash function was changed from MD5 to SHA256.
In particular, this affects users of remote caching and execution, as
all hashes will be SHA256 by default.
PiperOrigin-RevId: 177740702
|
|
|
|
| |
PiperOrigin-RevId: 177708823
|
|
|
|
|
| |
RELNOTES: None.
PiperOrigin-RevId: 177695015
|
|
|
|
|
|
|
|
| |
Add new flag to specify the adb device serial number (--device).
Change ..._mi/launcher.sh to ..._mi/launcher (see unknown commit).
RELNOTES: None
PiperOrigin-RevId: 177662635
|
|
|
|
|
|
|
| |
* Extend RuleClassNamePredicate to be both inclusive or exclusive
* Attribute uses RuleClassNamePredicate instead of Predicate<RuleClass>
PiperOrigin-RevId: 177656647
|
|
|
|
|
|
|
| |
each Action.
RELNOTES: None.
PiperOrigin-RevId: 177652741
|
|
|
|
|
| |
RELNOTES: None
PiperOrigin-RevId: 177638999
|
|
|
|
|
|
|
|
|
| |
AndroidSemantics is for "pluggability". Defining static constants on the
interface does not do that. Furthermore, output group names are not something
we would want to change between internal and external.
RELNOTES: None
PiperOrigin-RevId: 177632488
|
|
|
|
|
|
|
| |
All call sites were just returning null if it failed anyways.
RELNOTES: None
PiperOrigin-RevId: 177632366
|
|
|
|
|
|
|
| |
Fixes #4173.
RELNOTES: None.
PiperOrigin-RevId: 177582228
|
|
|
|
|
|
|
|
| |
Flag is mobile-insall v1 only, and has not been used in the last 30 days.
This change is a NOP since the default value in //third_party/bazel/tools/android/incremental_install.py is 2.
RELNOTES: None
PiperOrigin-RevId: 177536782
|
|
|
|
|
|
|
| |
respecting the one version for java test flag, and enforcing one version on the _deploy.jar
RELNOTES: n/a
PiperOrigin-RevId: 177525487
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
*** Reason for rollback ***
Breaks lots of web_test targets (b/69963706)
*** Original change description ***
Implemented fix for case when 'use_testrunner' attribute works interconnected with 'main_class' in java_test rule.
for manual testing I used BUILD file:
java_test(
name = "mytest",
srcs = glob(["*.java"]),
main_class = "com.test.Test",
use_testrunner = 1,
)
RELNOTES: java_tests no complain when use_testrunner is explicitly set to 1 and main_class is set.
PiperOrigin-RevId: 177517757
|
|
|
|
|
|
|
| |
This will enable an easier transition from checked-in BUILD files to ones generated by copybara.
RELNOTES: None
PiperOrigin-RevId: 177514519
|
|
|
|
|
| |
RELNOTES: None
PiperOrigin-RevId: 177510583
|
|
|
|
| |
PiperOrigin-RevId: 177504645
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
ThinLTO and static linking of test suites is a bad combination since it results in a combinatorial explosion of the ThinLTO backends - each object file needs a separate LTO backend action per target. If you are static linking O(N) objects, and have O(M) targets, with ThinLTO you will get O(N*M) LTO backend jobs. This is because the whole program optimization step is per-target, and may make different decisions affecting the object files. With dynamic linking it isn't a problem, since the ThinLTO optimization happens at the .so level, which are shared across tests. And for statically-linked cc_binary it hasn't been an issue since typically only a single target is built at a time, unlike tests.
In general it isn't incredibly useful to run tests with ThinLTO, although most projects are in the habit of running their tests with the same options that they use to optimize their main binary (and most blueprints seem to be set up to share options between them). With ThinLTO since it is doing whole-program optimization, you are getting different whole-program optimizations for the main binary and each test binary, so it isn't the case that this will optimize the tests in the same exact way as the main binary anyway.
Therefore, when creating LTO backends for statically-linked *_test targets, skip the LTO indexing stage, and create (or use if already created) shared dummy LTO backend actions for each library. These LTO backends are fed an empty index, so they don't do any whole program optimization and are safe to share.
Enable this under a new feature so that we can enable it by default via blazerc but provide a facility to disable if needed.
RELNOTES: None
PiperOrigin-RevId: 177495858
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Refactor the FileSystem class to include the hash function as an
instance field. This allows us to have a different hash function
per FileSystem and removes technical debt, as currently that's
somewhat accomplished by a horrible hack that has a static method
to set the hash function for all FileSystem instances.
The FileSystem's default hash function remains MD5.
RELNOTES: None
PiperOrigin-RevId: 177479772
|
|
|
|
|
|
|
| |
This flag was turned on everywhere and can now be removed.
RELNOTES: none
PiperOrigin-RevId: 177478329
|
|
|
|
|
| |
RELNOTES: None
PiperOrigin-RevId: 177463650
|
|
|
|
| |
PiperOrigin-RevId: 177453738
|
|
|
|
| |
PiperOrigin-RevId: 177452571
|
|
|
|
|
|
|
|
|
|
|
|
| |
Don't make copies of Events on replay. The same events may be replayed a lot,
so it's better to copy before storing the events. Also avoid a copy if the
tag doesn't actually change.
The intent of this change is to reduce gc churn on incremental builds. When
I wrote this change (~a year ago), this was a noticable source of gc churn in
some benchmarks I ran at the time.
PiperOrigin-RevId: 177450696
|
|
|
|
|
|
|
| |
This is a partial roll-forward of https://github.com/bazelbuild/bazel/commit/e8d32b7c922f65539b74357711d5ad6b70934115, which was rolled back due to
genrule breakages - this part doesn't affect genrules, so it should be safe.
PiperOrigin-RevId: 177450542
|
|
|
|
| |
PiperOrigin-RevId: 177447905
|
|
|
|
|
| |
RELNOTES: in the Label() function, relative_to_caller_repository is now deprecated.
PiperOrigin-RevId: 177443907
|
|
|
|
|
|
|
|
|
|
| |
Bazel should display the root cause of a test failure to the user. For
example, if a test could not be executed on a remote executor due to
there being no network connection, then it shouldn't display the test
as failed but tell the user about the network error.
RELNOTES:
PiperOrigin-RevId: 177439578
|
|
|
|
|
|
|
|
|
|
|
| |
Slow read: a 1253924941-byte read from image.tar.gz took 5396ms.
is 221 MB/s, which is smokin' fast, not slow :P
Fixes: #3967
Change-Id: Ieca7464e0a670ade52f80172408334c9fc3a5b52
PiperOrigin-RevId: 177438364
|
|
|
|
|
|
|
| |
Debug messages (generated with Skylark's `print` function) used to be filtered out by the output filter: if such messages are generated during the analysis phase in a package different to the target package (e.g. if a user builds //foo:foo and the message is generated in a dependency //bar:bar), the message are not shown by default, which makes an erroneous impression that the code for //bar:bar hasn't been executed at all and interferes with debugging. Now the output filter doesn't affect debug messages at all.
RELNOTES: Debug messages generated by `print()` are not being filtered out by --output_filter anymore, it's recommended not to use them in production code.
PiperOrigin-RevId: 177431255
|
|
|
|
| |
PiperOrigin-RevId: 177428407
|
|
|
|
|
|
|
|
|
|
|
| |
It was previously sending each label individually over gRPC, where each call
has a lot of overhead.
This makes queries with a large amount of output _a lot_ faster. For an example
query where all packages are already loaded, I observe a difference of ~3.5s
before this change to ~1.6s after this change.
PiperOrigin-RevId: 177426957
|
|
|
|
|
|
|
|
|
| |
everywhere instead of duplicating process-wrapper --shell_arguments in Blaze.
To avoid a cyclic dependency, I broke up exec/local:local into exec/local:local and exec/local:options.
RELNOTES: None.
PiperOrigin-RevId: 177419268
|
|
|
|
|
| |
RELNOTES: None
PiperOrigin-RevId: 177414939
|
|
|
|
|
|
|
|
| |
This change allows java_plugins to be enabled for the set of packages
described by a package group, using a new java_plugin_configuration rule
that can be added to a java_toolchain configuration.
PiperOrigin-RevId: 177410831
|
|
|
|
|
|
|
| |
crashing.
RELNOTES: None
PiperOrigin-RevId: 177376100
|
|
|
|
|
|
|
|
|
| |
Make variables are derived from toolchain.
This will allow c++ targets to use c++ Make variables once platforms are
activated without declaring an explicit dependency on the c++ toolchain.
PiperOrigin-RevId: 177365568
|
|
|
|
|
|
|
|
|
| |
rules with access to the CcToolchainProvider.
cc_common is required to migrate open-source users of the Skylark endpoints on
CppConfiguration to CcToolchainProvider.
PiperOrigin-RevId: 177364710
|
|
|
|
|
|
|
| |
This key context can be used by actions to share partial key computations, for instance when computing MD5s for nested sets.
RELNOTES: None
PiperOrigin-RevId: 177359607
|
|
|
|
|
|
|
| |
If the check is useful, it can be done in the linter.
RELNOTES: None.
PiperOrigin-RevId: 177342483
|
|
|
|
| |
PiperOrigin-RevId: 177341750
|
|
|
|
|
|
| |
deps from a compressed GroupedList without uncompressing it. Also some minor GC improvements.
PiperOrigin-RevId: 177338852
|