| Commit message (Collapse) | Author | Age |
... | |
|
|
|
|
|
| |
RELNOTES: None.
PiperOrigin-RevId: 184619885
|
|
|
|
| |
PiperOrigin-RevId: 184587712
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
native skyframe implementation was actually quite incorrect in this case: It was adding a skyframe dependency on a FileValue for the output file. Without a transitive dependency on the source files and actions that determine the output file's state, this could never work (and explains why the incremental build would fail). Instead, we now depend on the Artifact corresponding to the output file instead.
This change updates the business logic RecursiveFilesystemTraversalFunction. This approach keeps the business logic of Fileset filesystem traversal centralized in RFTF.
To avoid making weird recursive Skyframe nodes in the output tree, we inline Skyframe dependencies and do direct filesystem operations over the output tree.
There are now three states we can be in when looking up a file:
1. Source file: As before, make a skyframe dep on the corresponding file
2. Top-level file of an output tree: Make a dep on the corresponding Artifact
3. Recursive file under an output directory: Do direct filesystem operations. It doesn't make sense to make Skyframe nodes corresponding to these files. In the future, I think we should consider failing fast on this case.
RELNOTES: None
PiperOrigin-RevId: 184556044
|
|
|
|
|
|
|
|
| |
essentially promote OwnedArtifact to ArtifactSkyKey and rename it to ArtifactSkyKey. The king is dead...
Also add some other execution-phase codecs.
PiperOrigin-RevId: 184552706
|
|
|
|
| |
PiperOrigin-RevId: 184540561
|
|
|
|
|
|
| |
SpecialArtifact.
PiperOrigin-RevId: 184539696
|
|
|
|
|
|
|
|
| |
We're now using ctime to detect file changes, so the timestamp granularity monitor should as well.
Unfortunately, we currently get nanosecond ctime from Linux, but then only return millis from FileStatus, so this doesn't change the accuracy of the monitor at all.
PiperOrigin-RevId: 184536539
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
child of the process where the Blaze client itself was run.
Limitations:
- Untested on Windows; it should work because ExecuteProgram() is implemented there, too, but since Windows doesn't support exec(), there is at least one process in between
Progress towards #2815.
RELNOTES[NEW]: The new "--direct_run" flag on "blaze run" lets one run interactive binaries.
PiperOrigin-RevId: 184528845
|
|
|
|
|
| |
RELNOTES: None.
PiperOrigin-RevId: 184498836
|
|
|
|
|
| |
RELNOTES: None.
PiperOrigin-RevId: 184492828
|
|
|
|
|
| |
RELNOTES:none
PiperOrigin-RevId: 184411715
|
|
|
|
|
|
|
|
| |
either a Label or a List<Label>. We can easily enforce this through static type checking, so do it.
This will help with LateBoundDefault serialization, since we don't have to serialize an arbitrary object.
PiperOrigin-RevId: 184347100
|
|
|
|
|
|
| |
declaration.
PiperOrigin-RevId: 184304653
|
|
|
|
|
|
|
|
|
| |
Bazel completely swallowed errors in some cases, e.g., if the pattern is
invalid like bazel build foo//bar:baz.
Note that it previously silently ignored empty targets if --experimental_skyframe_target_pattern_evaluator was passed, and now fails (which is consistent with legacy behavior). This is an intentional change, but may break users who are using the experimental flag and are passing empty strings to Bazel.
PiperOrigin-RevId: 184282856
|
|
|
|
|
|
|
| |
In scope of b/69780248 three new provider had been added to JavaInfo. This CL implements merge logic for its.
RELNOTES:none
PiperOrigin-RevId: 184273903
|
|
|
|
|
|
|
|
|
| |
This makes object_file_group work correctly for archiving (So far
object_file_group was only possible for linking, but with the introduction of
tree artifact support, it can appear also for archiving).
RELNOTES: Fix how libraries_to_link are expanded in the archiver command line.
PiperOrigin-RevId: 184258745
|
| |
|
|
|
|
|
| |
RELNOTES:
PiperOrigin-RevId: 184191201
|
|
|
|
|
|
|
|
|
|
|
|
| |
Check the no_proxy and NO_PROXY environment variables for a list of URLs that
should not use a proxy. If the requested URL matches the no_proxy list, don't
proxy the download.
Fixes #4299
Closes #4307.
PiperOrigin-RevId: 184149118
|
|
|
|
| |
PiperOrigin-RevId: 184144301
|
|
|
|
|
|
| |
CppCompileAction serialization.
PiperOrigin-RevId: 184141676
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
*** Reason for rollback ***
Breaks //third_party/msvc crosstool
*** Original change description ***
RELNOTES: Fix how libraries to link is specified to archiver actions.
start-lib/end-lib should not be passed to ar. Fix how the libraries to link are passed to ar by not using the generic feature "libraries_to_link"
PiperOrigin-RevId: 184140734
|
|
|
|
|
|
| |
This is needed to migrate JavaCompileAction away from CustomMultiArgv.
PiperOrigin-RevId: 184136486
|
|
|
|
|
|
|
| |
android_instrumentation_test.test_app
RELNOTES: None
PiperOrigin-RevId: 184063294
|
|
|
|
|
|
|
|
|
|
|
|
| |
of the same mapFn class.
This code tries to add protection against the user creating new mapFn instances per-rule. This would cause the nested set cache to be computed per-rule instead of shared across rule instances, causing memory bloat and slowdowns.
Since this can only happen in native code, we can get away with detecting this and crashing blaze. I think this is a better choice than silently allowing it / falling back to slow computations.
The user can override this behaviour by inheriting from CommandLineItem.CapturingMapFn, in which case the user is explicitly saying they assume responsibility for the number of instances of the mapFn the application will use.
PiperOrigin-RevId: 184061642
|
|
|
|
|
|
|
| |
ConfiguredTargetAndTarget instead of a ConfiguredTarget.
This is to assist in deprecating ConfiguredTarget.getTarget().
PiperOrigin-RevId: 184043491
|
|
|
|
|
|
|
| |
This allows writing Android testing rules that consume DeviceBrokerInfo.
RELNOTES: None
PiperOrigin-RevId: 184026202
|
|
|
|
|
|
|
|
|
| |
Instead of using ConcurrentHashMap, we use a dead-simple open addressed hash hable with a giant byte array with 16-byte slots. We then read or write fingerprints straight into and out of the array, obviating the need to generate intermediate garbage.
Locking mechanism is a read-write lock. This should be faster than full synchronisation for read-heavy loads.
RELNOTES: None
PiperOrigin-RevId: 184019301
|
|
|
|
|
|
|
| |
Fixes #3735.
RELNOTES: java_common.compile supports neverlink
PiperOrigin-RevId: 184017410
|
|
|
|
|
| |
RELNOTES: None.
PiperOrigin-RevId: 184016150
|
|
|
|
| |
PiperOrigin-RevId: 183990860
|
|
|
|
|
|
| |
CppCompileAction smaller improves serialization.
PiperOrigin-RevId: 183871454
|
|
|
|
| |
PiperOrigin-RevId: 183859414
|
|
|
|
|
|
|
|
|
| |
It is not compatible with multiple execution platforms.
Part of #4442.
Change-Id: I683beaae1624130352a6f02bae3f4dfff263ea00
PiperOrigin-RevId: 183855561
|
|
|
|
|
|
|
| |
Part of #4442.
Change-Id: Ia9c4403817d9c1e6497212712f96dbf6618138e9
PiperOrigin-RevId: 183855255
|
|
|
|
|
|
|
|
| |
If two SkyValue objects are equal, then Skyframe caches and returns the old one, instead of the new one. That's a problem for the detection of file changes, which uses the FileContentsProxy, which wasn't part of the equals check before this change.
Progress on #3360.
PiperOrigin-RevId: 183834897
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Resource qualifiers of the form "en_US" are deprecated for resources (in favor
of qualifiers of the form "en-rUS") but are apparently the recommended (if not
only) way of specifying locales in resource filter strings.
Removing the warning (and reverting any changes that tried following it) should
solve this problem - the original filter strings from the rule are passed
unmodified to aapt, but these filters are still "fixed" so that
android_ide_common (which doesn't support the "deprecated" qualifier form) can
still be used to filter resources in analysis.
RELNOTES: none
PiperOrigin-RevId: 183830253
|
|
|
|
| |
PiperOrigin-RevId: 183826311
|
|
|
|
|
| |
RELNOTES:none
PiperOrigin-RevId: 183806762
|
|
|
|
| |
PiperOrigin-RevId: 183733621
|
|
|
|
| |
PiperOrigin-RevId: 183731563
|
|
|
|
|
| |
RELNOTES: None
PiperOrigin-RevId: 183727976
|
|
|
|
|
|
|
|
|
|
|
| |
This removes the need for ConfigurationTransitionProxy.DATA by providing a
way for the C++ rule defs to directly inject the transition for all rules
to use.
Skylark attributes work differently, so they'll be addressed in another
change.
PiperOrigin-RevId: 183721293
|
|
|
|
|
|
|
| |
This will enable us to write testing rules in Skylark.
RELNOTES: None
PiperOrigin-RevId: 183719720
|
|
|
|
|
| |
RELNOTES:none
PiperOrigin-RevId: 183714603
|
|
|
|
|
|
| |
getting Target from the SkyframeExecutor's PackageManager.
PiperOrigin-RevId: 183710251
|
|
|
|
| |
PiperOrigin-RevId: 183677348
|
|
|
|
| |
PiperOrigin-RevId: 183668291
|
|
|
|
| |
PiperOrigin-RevId: 183662908
|
|
|
|
|
|
|
|
|
| |
Do this by exposing DeviceBrokerInfo and a constructor for it in android_common.
See AndroidInstrumentationTestTest for an example.
RELNOTES: None
PiperOrigin-RevId: 183432674
|