| Commit message (Collapse) | Author | Age |
|
|
|
|
|
|
|
|
|
|
| |
When copy_dynamic_libraries_to_binary is enabled, we copy the shared
libraries required by the binary to the binary's directory.
Bazel will throw errors if there are confilct actions generating the
same artifacts.
Change-Id: I09a5a599ca0ec7a67efd49d5aa89481450fa4e90
PiperOrigin-RevId: 169364498
|
|
|
|
|
| |
RELNOTES: none
PiperOrigin-RevId: 169363593
|
|
|
|
|
| |
RELNOTES: None.
PiperOrigin-RevId: 169334039
|
|
|
|
|
|
|
|
| |
Also clarify the interfaces *TransitionResolver* - which determines what
transition to apply to an input configuration and *ConfigurationResolver*
- which determines the output configuration from that transition.
PiperOrigin-RevId: 169311986
|
|
|
|
|
|
|
| |
Fixes #3586.
RELNOTES: None.
PiperOrigin-RevId: 169303481
|
|
|
|
| |
PiperOrigin-RevId: 169301145
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
and TEST_UNDECLARED_OUTPUTS_ANNOTATIONS_DIR to Bazel.
After this change:
- Any files written to the TEST_UNDECLARED_OUTPUTS_DIR directory will be zipped up and added to an outputs.zip file under bazel-testlogs.
- Files will be listed in a MANIFEST file under bazel-testlogs.
- Any files written to TEST_UNDECLARED_OUTPUTS_ANNOTATIONS_DIR will be concatenated together into an ANNOTATIONS file under bazel-testlogs.
This provides a channel for tests to provide extra information outside of the test output itself. This is useful for things like verbose server logs.
Note: The //src/test/shell/bazel:bazel_test_test target has a pre-existing breakage (see https://github.com/bazelbuild/bazel/issues/3727). But the new tests pass.
RELNOTES: Tests can now write files to TEST_UNDECLARED_OUTPUTS_DIR and TEST_UNDECLARED_OUTPUTS_ANNOTATIONS_DIR and these will be reflected under bazel-testlogs.
PiperOrigin-RevId: 169282528
|
|
|
|
| |
PiperOrigin-RevId: 169278760
|
|
|
|
|
| |
RELNOTES: None.
PiperOrigin-RevId: 169258065
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
It turns out that the code to filter in analysis, based on android_ide_common,
isn't as strict as aapt is.
In particular, given a language filter (like 'en'), aapt rejects language and
region resources (like 'en-rUS') but android_ide_common does not.
We could try to just patch this behavior, but it's probably indicative of
larger inconsistancies between android_ide_common and aapt. As a result, always
pass resource filters to aapt. In most cases, if we already filtered in
analysis, few if any resources will be filtered out by aapt, so we'll still
keep most of the performance gains we expected from filtering in analysis.
RELNOTES: none
PiperOrigin-RevId: 169254335
|
|
|
|
|
|
| |
causes the cc_toolchain dependency of cc targets to be selected using the platforms/toolchains constraint solving system.
PiperOrigin-RevId: 169250621
|
|
|
|
|
|
|
|
|
|
| |
In general, R classes for Android libraries are used for compilation of those
libraries and then thrown away. They are replaced by the R classes from the
binary. Removing the unused android_library R classes will make binaries
smaller.
RELNOTES: none
PiperOrigin-RevId: 169244068
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Add recursive test_suite rules for all tests that
ci.bazel.io runs for Windows, and set the
top-level test_suite as the CI test target.
Doing so shortens the command line and works
around https://github.com/bazelbuild/bazel/issues/3742
I verified that the old set of tests are the same
as the new set.
Change-Id: Id8d5da3f0c03c9b8969a9f8e1e9a3096888365aa
PiperOrigin-RevId: 169242858
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Currently, there is no way to enforce that LateBoundDefaults only access
the fragments that they declare. This means that LateBoundDefaults can
fail to declare fragments at all, or declare the wrong ones, and still
have no troubles.
But when trimming, these fragments must be declared, because otherwise
they will not necessarily be available.
This change refactors LateBoundDefault to declare a single fragment type,
not a set. All existing LateBoundDefaults use sets with a single element
or no elements at all for their set of fragment classes, so this does not
limit anything being done currently.
To account for LateBoundDefaults which do not use configuration at all,
typically those which only want to access the configured attribute map,
it is possible for Void to be the fragment class which is requested.
To account for LateBoundDefaults which need to access methods of the
BuildConfiguration instance itself, it is possible for BuildConfiguration
to be the fragment class which is requested; however, this is unsafe, so
it is only a temporary state until a way to do this without also giving
access to all of the fragments can be added.
Drive-by refactoring: LateBoundDefaults' values are now typed. All actual
production LateBoundDefaults were Label or List<Label> typed, through the
LateBoundLabel and LateBoundLabelList subclasses. These subclasses have
been removed, and LateBoundDefault has two type parameters, one for the
type of its input, and one for the type of its output.
RELNOTES: None.
PiperOrigin-RevId: 169242278
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
*** Reason for rollback ***
Rollforward with a fix
*** Original change description ***
Automated rollback of commit 0ee3aa622fc13b8a5072ebddf5cd65823413b4ff.
*** Reason for rollback ***
Likely causing artifact conflicts for middleman artifacts in some cases due to accidental change of getMiddlemanDir() to getBinDir() in RunfilesSupport.createManifestMiddleman.
*** Original change description ***
Cleanup ActionConstructionContext.
Do not expose the underlying Rule.
RELNOTES: None.
PiperOrigin-RevId: 169241011
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
There is a vexingly large world of possible option types, each with its own quirks of how it interfaces with new inputs as they come in: values can be
- overridden (default)
- concatenated (allowMultiple)
- flattened (allowMultiple that accepts list inputs)
- disappear into additional flag inputs (expansion flags)
Or some combination of the above, in the case of flags with implicit dependencies and wrapper options.
Begin removing the error-prone treatment of all option types with conditional branches. This model of the different options will make it much easier to isolate the option-type specific logic with the command-line parsing logic. Flags that affect other flags (implicit requirements, expansions, and wrappers) will be migrated in a later change.
This CL does not change flag parsing semantics, just migrates the current parsing logic to the new class structure.
RELNOTES: None.
PiperOrigin-RevId: 169239182
|
|
|
|
|
|
|
|
| |
nested set.
This saves memory, as the nested set would otherwise become flattened. Assuming the jars don't have duplicates files with the same root relative path in the same runfiles tree this won't make any semantic difference.
PiperOrigin-RevId: 169234428
|
|
|
|
|
|
| |
actions.
PiperOrigin-RevId: 169234341
|
|
|
|
| |
PiperOrigin-RevId: 169234249
|
|
|
|
|
|
|
|
|
|
|
| |
Before this cl each linking and compilation action would contain a full copy of
all build variables. However, some build variables can be reused, for the
memory consumption benefit. With this cl, we contruct a Variables instance in
the CcToolchain, and make it a parent of all per-linking and per-compilation
variables.
RELNOTES: None.
PiperOrigin-RevId: 169233756
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
*** Reason for rollback ***
Likely causing artifact conflicts for middleman artifacts in some cases due to accidental change of getMiddlemanDir() to getBinDir() in RunfilesSupport.createManifestMiddleman.
*** Original change description ***
Cleanup ActionConstructionContext.
Do not expose the underlying Rule.
RELNOTES: None.
PiperOrigin-RevId: 169230095
|
|
|
|
|
|
|
|
|
| |
Those files are not linked anywhere and where removed by the
export process either by accident or for better support from IntelliJ.
According to ij.bazel.build a non linked target will not be analyzed
so it should be safe.
PiperOrigin-RevId: 169229654
|
|
|
|
|
|
|
| |
This change is the //third_party counterpart of
https://bazel-review.googlesource.com/c/bazel/+/16910
Change-Id: I56d285a0d4b3eb369f678525b111f16bf3a7da5c
|
|
|
|
|
| |
RELNOTES: None.
PiperOrigin-RevId: 169223392
|
|
|
|
|
|
|
|
|
|
|
| |
There are several use cases for using full compile time jars instead of ijars (scala macros cannot use ijar, kotlin dependencies, etc). This change allows creating a provider with or without creating interface jars for compile time, exposing the right full/interface jars on target[JavaInfo].compile_jars and target[JavaInfo].full_compile_jars.
For more details see https://github.com/bazelbuild/bazel/issues/3528.
Fixes #3528
RELNOTES: java_common.create_provider is now supported with creating ijars by default. This introduces incompatibilities for existing users. Please set use_ijar=False if you don't want to use ijars.
PiperOrigin-RevId: 169222793
|
|
|
|
| |
PiperOrigin-RevId: 169179218
|
|
|
|
|
|
| |
This is a trivial change with a large file footprint.
PiperOrigin-RevId: 169169864
|
|
|
|
|
|
|
| |
https://github.com/bazelbuild/bazel/commit/b30b3de23a7fa01b8290ace0e688d75405689825
RELNOTES: None
PiperOrigin-RevId: 169169249
|
|
|
|
| |
PiperOrigin-RevId: 169163737
|
|
|
|
|
|
|
|
|
| |
Not sure why we passed in Class<T>, ObjectCodec<? extends T> - it should really
be the other way around, since ObjectCodec<T> should be able to serialize <?
extends T>....
RELNOTES: None
PiperOrigin-RevId: 169161061
|
|
|
|
|
|
|
|
| |
preparation for removing those flags from the tool.
RELNOTES: none
PiperOrigin-RevId: 169154032
|
|
|
|
|
|
|
| |
This should be a slight performance improvement on the previous implementation, as NestedSet.toSet() calls toList() and then throws the contents into a set
RELNOTES: None.
PiperOrigin-RevId: 169150743
|
|
|
|
|
|
|
|
|
| |
tests fails, we still want to be able to download the logs and other outputs from CAS.
This fixes a bug introduced by https://github.com/bazelbuild/bazel/commit/562fcf9f5dfd14daea718f77da95b43b1400689b. To reproduce: run a failing test vs a BES service, the test log would not be uploaded.
TESTED=unit tests
PiperOrigin-RevId: 169143428
|
|
|
|
|
|
| |
injected in BlazeCommandDispatcher#execExclusively.
PiperOrigin-RevId: 169122571
|
|
|
|
| |
PiperOrigin-RevId: 169116918
|
|
|
|
|
|
|
| |
Do not expose the underlying Rule.
RELNOTES: None.
PiperOrigin-RevId: 169109552
|
|
|
|
|
|
|
| |
...by factoring out the common code parts.
Change-Id: I2ead39ea218dd535af9684a81a7bbe29b558aa27
PiperOrigin-RevId: 169106854
|
|
|
|
|
|
|
|
|
|
|
| |
Previously, they assumed android-25 but Bazel CI does not have android-25
installed. In practice, these tests do not care which version is used so we
should use //tools/android:defaults_jar which selects the jar based on the
configuration. However, that target does not produce the jar as a runfile, it
is only useful currently for neverlink compilation.
RELNOTES: None
PiperOrigin-RevId: 169104539
|
|
|
|
| |
PiperOrigin-RevId: 169101689
|
|
|
|
|
| |
RELNOTES: None
PiperOrigin-RevId: 169092834
|
|
|
|
| |
PiperOrigin-RevId: 169087881
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
When the classpath is too long, the launcher creates a jar file to pass
the classpath value. This change makes the jar file's name random.
It fixed the bug that when running multiple instances of the same java binary,
they all try to create the same classpath jar file. For example, when
running java_test with shard_count > 1.
Also, we delete the classpath jar file after the program finishes, so
that we don't leave any garbages behind.
Change-Id: I67926b3ef76dcb1806797e977ecaa7c6763c5cf2
PiperOrigin-RevId: 169087032
|
|
|
|
|
|
|
|
|
| |
...by quoting the delimiter of the here-documents, instead of the
documents themselves. This is possible as the here-documents are
constants in that test (not depending on the test setup).
Change-Id: If272060ce9f6384821e4bd0bd9033925bd1efe9c
PiperOrigin-RevId: 169080394
|
|
|
|
| |
PiperOrigin-RevId: 169067125
|
|
|
|
| |
PiperOrigin-RevId: 169060289
|
|
|
|
|
|
|
|
|
|
| |
When printing envvars, use "${FOO:-}" instead of
"${FOO}", so the test won't fail if an envvar is
undefined.
See https://github.com/bazelbuild/bazel/issues/3618
PiperOrigin-RevId: 169059836
|
|
|
|
|
|
| |
Makes it easier to do Skylark param file support which uses a format string.
PiperOrigin-RevId: 169019600
|
|
|
|
|
|
|
| |
Exempt RuleConfiguredTarget in this change because that's liable to touch
a billion files.
PiperOrigin-RevId: 168929827
|
|
|
|
|
|
|
|
| |
Rules should now be configured directly with patch transitions.
This brings down our transition interfaces to: Transition, ConfigurationTransition, SplitTransition, PatchTransition.
PiperOrigin-RevId: 168927364
|
|
|
|
|
|
| |
This also migrates the example to the new rules_apple ios_application rule, since the native Bazel rule is being deleted.
PiperOrigin-RevId: 168902357
|