| Commit message (Collapse) | Author | Age |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
*** Reason for rollback ***
Roll forward of directory name change
*** Original change description ***
Automated g4 rollback of commit 1d9e1ac90197b1d3d7b137ba3c1ada67bb9ba31b.
*** Reason for rollback ***
Breaks //src/test/shell/integration:force_delete_output_test
*** Original change description ***
Symlink output directories to the correct directory name
If the workspace directory is /path/to/my/proj and the name in the WORKSPACE
file is "floop", this will symlink the output directories to
output_base/execroot/floop instead of output_base/execroot/proj.
More prep for #1262, fixes #1681.
PiperOrigin-RevId: 156892980
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
one.
This isn't a principled solution, but since it depends on /usr/bin/lcov, it should never be relied on at all. It's mostly a courtesy to people who came to use C++ coverage in Bazel before we removed it.
Fixes #2685.
Progress on #1118.
RELNOTES: None.
PiperOrigin-RevId: 156866370
|
|
|
|
|
|
|
|
|
|
|
| |
action is present in extra actions attached to it.
Also rename cc_inc_library test to something that reflects better what it does (there was already a test case that did not have anything to do with cc_inc_library)
Fixes #2790 .
RELNOTES: None.
PiperOrigin-RevId: 156854584
|
|
|
|
|
|
|
|
|
|
|
|
| |
Add an option allowing to set a hard limit on the number of characters
bazel will write to stdout/stderr (combined). In this way, it can be
avoided to overwhelm the user with information (especially, if the
invocation of bazel is wrapped in some way). Once the limit is approaching,
bazel will try hard to meaningfully reduce the output, but will ultimately
resort to just dropping output completely.
Change-Id: I49cce96cc6a025c9753632dd489021766df81077
PiperOrigin-RevId: 156849105
|
|
|
|
|
|
|
|
|
|
|
| |
advisable when overriding #equals().
Intricacies within Skyframe prevented us from adding this method before, but whatever those were are not a problem anymore. This was empirically proven by making the change, looking at the set of tests that failed when I last tried this, then finding that they don't fail.
The reason for the original failures will stay obscured by the mists of time forever.
RELNOTES: None.
PiperOrigin-RevId: 156835875
|
|
|
|
|
| |
RELNOTES: None
PiperOrigin-RevId: 156747534
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
java_library.exports and java_import.runtime_deps|exports|deps will now
accept any label from a rule that has a JavaProvider declared provider.
Note that java_library.deps|runtime_deps already had this feature and
this simply extends that privilege.
This relies on the fact that both those targets (via JavaCommon) are
simply searching for jars via JavaProvider anyway.
Added test for passing a custom Skylark rule (that provides a
JavaProvider) can successfully be added to the deps, runtime_deps, and
exports of java_library, java_import, and java_binary (where
appropriate).
Added integration tests for java_library.exports|runtime_deps (the basic
sandwich already tests deps) and java_import.exports|runtime_deps.
Note that custom Skylark rules are still unable to provide or propagate
a JavaNativeLibraryProvider, which results from a cc dependency. Also,
the deps argument for java_import is somewhat odd.
Change-Id: I7b2c19c6b99516ce524e8c82193d0c73e2d66530
PiperOrigin-RevId: 156740729
|
|
|
|
|
|
| |
If a target appeared in 2 different attributes, it is not processed twice, even if different aspects were applied to the different attributes. In that case, only one of the aspects is applied. This commit fixes this by checking which aspects have been applied to the target, instead of checking if the target was already processed.
PiperOrigin-RevId: 156738275
|
|
|
|
|
|
|
|
| |
And while at it cleanup all the calls of CppHelper.getToolchain and
CppHelper.getFdoSupport.
RELNOTES: None.
PiperOrigin-RevId: 156716291
|
|
|
|
|
|
|
|
|
| |
using multiple threads.
The immediate upside is that if multiple packages load the same bzl file, that file will only be read once when using loadPackages().
RELNOTES: None
PiperOrigin-RevId: 156621988
|
|
|
|
|
|
|
|
| |
In both Python 2 and Python 3, the operator // is used for int division.
With Python 3, operator / is for float division.
RELNOTES: None.
PiperOrigin-RevId: 156582262
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Update the command line flags used by remote execution/caching as well as the
build event service (BES).
Major changes:
- Remote execution/caching and BES share flags for authentication and TLS.
- Removed API Key authentication from BES, as it's not being used.
- Add TLS support to BES upload.
- Add --bes_project_id flag. If set, the value is propagated as part of BES
lifecycle events.
For reviewers:
Start your review at CommonRemoteAndBesOptions, BuildEventServiceOptions and
RemoteOptions. The other changes are mostly automatic IDE renames of fields and
flag updates in shell script tests.
RELNOTES: None.
PiperOrigin-RevId: 156553857
|
|
|
|
|
|
|
|
|
|
|
| |
This rule specifies a host binary that is run as part of an android_instrumentation_test. It merely collects options, support APKs and the runfiles for the host binary and passes them along to the upcoming android_instrumentation_test rule.
Note that this CL does _not_ install the rule, so this CL does not make it usable by anyone. Once the other android testing rules are ready, we will install them all.
One small step towards https://github.com/bazelbuild/bazel/issues/903.
RELNOTES: None
PiperOrigin-RevId: 156553198
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
[]
This change has been automatically generated by an Error Prone check that
detects incorrect argument ordering on calls to assertEquals-style methods. See
[]
Cleanup change automatically generated by javacflume/refactory
Refactoring: third_party/java_src/error_prone/project/core/src/main/java/com/google/errorprone/bugpatterns/argumentselectiondefects:AssertEqualsArgumentOrderChecker_refactoring
Tested:
TAP --sample for global presubmit queue
[]
PiperOrigin-RevId: 156539781
|
|
|
|
|
|
|
|
| |
This doesn't really expose new information, because one can iterate over the existing getTargets() and recreate the map.
Moreover, the map is immutable, so there's no risk in returning it to the user.
RELNOTES: None
PiperOrigin-RevId: 156349797
|
|
|
|
|
|
|
| |
Fixes #2938 where concurrently running tests can step on each other.
Change-Id: I1d75dd323149c4f892f8d5a28c1abf9ff055abca
PiperOrigin-RevId: 156340949
|
|
|
|
|
|
|
|
| |
Also expose both sides to Skylark.
Part of #2219.
Change-Id: I4d749dd9981fe33f75310acb0ec3927cff6f28fe
PiperOrigin-RevId: 156340638
|
| |
|
|
|
|
|
| |
RELNOTES: None
PiperOrigin-RevId: 156321468
|
|
|
|
|
|
|
|
|
|
| |
ToolchainConstructor is used to create instances of ToolchainInfo, for
toolchain-aware rule sets.
Part of #2219.
Change-Id: Iae4e519b156910cc28704b3ca5b11e57dd561107
PiperOrigin-RevId: 156303854
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Previously, it was possible to have
//package:foo : barbaz
and
//package:foobar : baz
hash to the same value, making it very easy for users to cause a hash
collision by accident. This adds a zero byte after each string so that the
hash will differentiate the two.
RELNOTES: None.
PiperOrigin-RevId: 156216723
|
|
|
|
|
|
| |
This works, because: "If the host is null then an InetAddress representing an address of the loopback interface is returned. See RFC 3330 section 2 and RFC 2373 section 2.5.3." (http://download.java.net/jdk7/archive/b123/docs/api/java/net/InetAddress.html#getByName(java.lang.String))
PiperOrigin-RevId: 156188515
|
|
|
|
|
|
|
| |
No functional changes.
Change-Id: Ia87c19b70dd1ff8fa7465ad90c499cf351b9687b
PiperOrigin-RevId: 156188343
|
|
|
|
|
|
|
|
| |
It's unneeded syntactic sugar, we can re-introduce it later if it seems
warranted.
Change-Id: If41e10f96ae0b6ac522a1da36237ff1b3c91757d
PiperOrigin-RevId: 156184854
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
*** Reason for rollback ***
Causes crash bug in certain circumstances.
*** Original change description ***
Implement dynamically configured LIPO builds.
Quick overview:
- provide a dynamic interface for getting the artifact owner
configuration
- provide a (dynamic) RuleTransitionFactory LIPO_ON_DEMAND to replace
the (static) RuleClass.Configurator LIPO_ON_DEMAND. Eventually
we'll remove the rule class configurator interface entirely.
This doesn't actually turn dynamic LIPO on. So the direct effect of
this change should be a no-op. The flip will come in a followup
change. For now, dynamic...
PiperOrigin-RevId: 156180015
|
|
|
|
|
|
|
|
|
|
|
| |
implementation.
A first step towards applying the same memory optimizations we do for
native provider representation to Skylark providers (declared and
legacy).
RELNOTES: None.
PiperOrigin-RevId: 156111749
|
|
|
|
| |
PiperOrigin-RevId: 156086443
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Aapt used to require resource locale qualifiers with regions of the form
'en_US', rather than the correct Android 'en-rUS'. The resource qualifier
processing code used by ResourceFilter cannot handle the (incorrect) Aapt
format.
However, for backwards compatability, we want to continue supporting the Aapt
format. Handle it by using a regex to replace the old format with the correct
format when parsing.
RELNOTES: none
PiperOrigin-RevId: 156072395
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
*** Reason for rollback ***
Likely cause for b/38172480 ("blaze now waits for all processes spawned by local tests to terminate") and b/38194553 ("Server terminated abruptly (error code: 14, error message: 'Endpoint read failed'").
I have a fix almost ready, but it consists of many lines of new code - we shouldn't rush that into Bazel's 0.5.0 release. Instead, let's roll this back, do a release using the known good older process-wrapper and then go forward in 0.5.1 with a better and well tested new version of this.
*** Original change description ***
process-wrapper: Wait for all (grand)children before exiting.
This uses Linux's PR_SET_CHILD_SUBREAPER and FreeBSD's PROC_REAP_ACQUIRE features to become an init-like process for all (grand)children spawned by process-wrapper, which allows us to a) kill them reliably and then b) wait for them reliably. Before this change, we only killed the main child, waited for it, then fired off a kill -9 on the process group, without waiting for it. This led to a race condition where Bazel would try to use...
***
PiperOrigin-RevId: 156068188
|
|
|
|
|
|
|
| |
* isShellCommand is now passed directly to SpawnAction
* Getting the associated params file action was a test-only thing. We can pull this out of the action graph instead.
PiperOrigin-RevId: 156060366
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
I'm not sure why our test suite thinks this passes, but if you look at
the output it's:
FAILED: terminated because this command returned a non-zero status:
/home/kchodorow/.cache/bazel/_bazel_kchodorow/732c1e8a78acec61831f6448799afba1/execroot/bazel/bazel-out/local-fastbuild/bin/src/test/shell/integration/runfiles_test.runfiles/io_bazel/src/test/shell/integration/runfiles_test:143: in call to test_foo_runfiles
sort: cannot read: MANIFEST: No such file or directory
sort: cannot read: MANIFEST2: No such file or directory
PASSED: test_foo_runfiles
This fixes the test to actually check what it's supposed to.
PiperOrigin-RevId: 156057745
|
|
|
|
|
|
|
|
| |
By removing the now unnecessary call to Path#resolveSymbolicLinks we can save a
few stat's per action execution.
Change-Id: Iee157e941c1cd3515ff5ea3b7f410824c24cf44d
PiperOrigin-RevId: 155946544
|
|
|
|
|
|
|
|
|
|
|
|
| |
This is basically a rollback of https://github.com/bazelbuild/bazel/commit/3e2329a73ffd5d60e5e2babe60ebe5bf322c07da, except this solves the
reason why the feature was removed in the first place. We now create
the helper files necessary to make files unreadable in Linux in Bazel's
Java code and manage their lifetime there.
Request was filed by a user here:
http://stackoverflow.com/questions/43849651/how-to-lock-down-the-bazel-filesystem-sandbox
PiperOrigin-RevId: 155913246
|
|
|
|
|
| |
RELNOTES: proto_library.strict_proto_deps no longer exists.
PiperOrigin-RevId: 155900531
|
|
|
|
| |
PiperOrigin-RevId: 155900259
|
|
|
|
|
|
|
| |
It's okay to disable it for now since Persistent Test Runner is still under development, and no one should be using it.
RELNOTES: None
PiperOrigin-RevId: 155864334
|
|
|
|
|
|
| |
Progress on the java sandwich #2614 in an effort to make the Java compilation exposed to Skylark as similar as possible to java_library's API.
PiperOrigin-RevId: 155861145
|
|
|
|
|
|
|
| |
This is needed until java_common.compile will be strong enough to replace
java_library, exposing all its features.
PiperOrigin-RevId: 155773169
|
|
|
|
|
|
|
|
|
| |
As JSON is a widely supported format, also add a transport writing
the build events in JSON format. This will allow more tools to get
status reports about builds.
Change-Id: I7e5901cc65d927b93c8fc9bcd2d2baa7e707f09e
PiperOrigin-RevId: 155750964
|
|
|
|
|
|
|
|
|
| |
ANDROID_SDK_API_LEVEL was previously set by a script that parsed that
platforms/ directory of the SDK. Now this functionality is handled by
android_sdk_repository which autodetects the available API levels.
Change-Id: Ifbbc5499444f465929b9d70bf488ff5ba3c4cded
PiperOrigin-RevId: 155747062
|
|
|
|
|
|
|
| |
Workaround for https://github.com/bazelbuild/bazel/issues/2983
Change-Id: Ib7eb2acff9a3bd1eee304d2d329d2a525a91eee1
PiperOrigin-RevId: 155722499
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
*** Reason for rollback ***
Fixes memory issue that caused this CL to be rolled back.
*** Original change description ***
Automated g4 rollback of commit cbbb423663b154d82e3dfa5e9a56839583987999.
*** Reason for rollback ***
Need to roll this back as part of http://b/38171368
*** Original change description ***
RELNOTES: Effectively remove sysroot from CppConfiguration and allow it to use select statements.
PiperOrigin-RevId: 155651879
|
|
|
|
|
|
|
|
|
| |
This disallows to have any statement in a .bzl file before a load() statement.
RELNOTES:
load() statements should be called at the top of .bzl files, before any
other statement. This convention will be enforced in the future.
PiperOrigin-RevId: 155636719
|
|
|
|
|
| |
Change-Id: I23e38767e18a90b2262a38bf8f4b347e06d1de8d
PiperOrigin-RevId: 155630560
|
|
|
|
|
|
|
|
|
|
|
| |
*** Reason for rollback ***
Need to roll this back as part of http://b/38171368
*** Original change description ***
RELNOTES: Effectively remove sysroot from CppConfiguration and allow it to use select statements.
PiperOrigin-RevId: 155547813
|
|
|
|
|
|
|
|
| |
This is useful for dealing with all the existing implementations in the face of
interface changes that are irrelevant.
RELNOTES: None
PiperOrigin-RevId: 155525021
|
|
|
|
|
|
|
|
|
| |
While investigating #1972, I wrote this test to evaluate a potential
solution. This test caught the fact that the solution didn't work, which
makes it valuable for future changes to the sandbox.
Change-Id: I435e9b9543374554c09d8d7c0918c24d9dc8f19d
PiperOrigin-RevId: 155500491
|
|
|
|
|
|
|
|
|
| |
This unifies our code to use just one standard implementation to get the
entire expanded input files for a Spawn, including from Filesets and
Runfiles.
Change-Id: I1e286508adf0a9aeddf70934b010e6fcc144c4a7
PiperOrigin-RevId: 155497273
|
|
|
|
|
|
|
|
|
|
|
| |
In multi-architecture builds, a target might be built several times,
for the different architectures. Make the target completion events for
those distinguishable by indicating the architecture for which the target
was built. Also add the needed event for the expansion of a target to
target-configuration pairs.
Change-Id: I95ef2c81166077163dd686db4671f672160efe1d
PiperOrigin-RevId: 155491076
|
|
|
|
|
|
|
|
|
| |
This gives us better reliability for detecting file changes; especially in
cases where tools intentionally do not update mtime.
Fixes #1525.
PiperOrigin-RevId: 155490849
|